/*====================================================
    PART 2A
    GLOBAL STYLES + HEADER + HERO FOUNDATION
====================================================*/

/*=========================
  VARIABLES
=========================*/

:root{

    --primary:#173F7A;
    --secondary:#0F2C56;
    --accent:#F6B019;

    --white:#FFFFFF;
    --light:#F8FAFC;
    --border:#E5E7EB;

    --text:#374151;
    --text-light:#6B7280;

    --container:1200px;
    --header-height:90px;
    --hero-height:calc(100vh - var(--header-height));

    --radius:14px;

    --shadow-sm:0 8px 24px rgba(0,0,0,.06);
    --shadow-md:0 18px 45px rgba(0,0,0,.10);

    --transition:.35s ease;

}


/*=========================
  RESET
=========================*/

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'DM Sans',sans-serif;
    color:var(--text);
    background:#fff;
    overflow-x:hidden;

}

img{

    display:block;
    max-width:100%;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}


/*=========================
  TYPOGRAPHY
=========================*/

h1{

    font-family:'Playfair Display',serif;

    font-size:clamp(2rem,2vw,3.2rem);

    line-height:1.15;

    color:var(--primary);

    font-weight:700;

}

h1 span{

    color:var(--accent);

}

.hero-description{

    font-size:1.1rem;

    line-height:1.8;

    color:var(--text-light);

}

.hero-tag{

    color:var(--accent);

    text-transform:uppercase;

    letter-spacing:2px;

    font-weight:700;

    font-size:.88rem;

}


/*=========================
  CONTAINER
=========================*/

.container{

    width:min(var(--container),92%);
    margin:auto;

}


/*=========================
  BUTTONS
=========================*/

.btn-primary,
.btn-secondary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 30px;

    border-radius:999px;

    font-weight:600;

    transition:var(--transition);

}

.btn-primary{

    background:var(--accent);

    color:#fff;

}

.btn-primary:hover{

    transform:translateY(-2px);

    box-shadow:var(--shadow-md);

}

.btn-secondary{

    background:#fff;

    color:var(--primary);

    border:2px solid var(--primary);

}

.btn-secondary:hover{

    background:var(--primary);

    color:#fff;

}

.home-whatsapp-btn{

    background:var(--primary);

    color:#79FF9D;

    border:2px solid rgba(255,255,255,.45);

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:8px;

}

.home-whatsapp-btn:hover{

    background:var(--secondary);

    color:#79FF9D;

    border-color:rgba(255,255,255,.62);

}


/*=========================
  HEADER
=========================*/

header{

    height:var(--header-height);

    position:sticky;

    top:0;

    background:#fff;

    z-index:1000;

    box-shadow:0 1px 12px rgba(0,0,0,.05);

}

header .container{

    height:100%;

    display:flex;

    align-items:center;

    justify-content:space-between;

}

.logo img{

    height:58px;

}

nav ul{

    display:flex;

    gap:36px;

}

nav a{

    color:var(--primary);

    font-weight:500;

    transition:var(--transition);

}

nav a:hover,
nav a.active{

    color:var(--accent);

}

header .btn-primary{

    background:#F6B019 !important;
    color:#FFFFFF !important;

}

header .btn-primary:hover{

    background:#F6B019 !important;

}

.footer-cta .btn-primary{

    background:#F6B019;

}


/*=========================
  HERO SECTION
=========================*/

.hero{

    position:relative;

    overflow:hidden;

    background:#fff;

    --hero-height:calc(72vh - var(--header-height));
    padding:48px 0 48px;

}

.hero-slider{

    position:relative;

    min-height:var(--hero-height);

}


/*=========================
  SLIDES
=========================*/

.slide{

    position:absolute;

    inset:0;

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:opacity .8s ease;

}

.slide.active{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

}


/*=========================
  COMMON HERO LAYOUT
=========================*/

.hero-content{

    width:min(var(--container),92%);

    margin:auto;

    min-height:calc(var(--hero-height) - 10px);

    display:grid;

    align-items:center;

    gap:40px;

}

.hero-left{

    position:relative;

    z-index:10;

}

.hero-right{

    position:relative;

    z-index:5;

}


/*=========================
  COMMON IMAGE
=========================*/

.hero-image{

    display:block;

    max-width:100%;

    height:auto;

}


/*=========================
  BUTTON GROUP
=========================*/

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}


/*=========================
  NAVIGATION ARROWS
=========================*/

.prev,
.next{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:52px;

    height:52px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:var(--primary);

    font-size:22px;

    cursor:pointer;

    box-shadow:var(--shadow-sm);

    transition:var(--transition);

    z-index:50;

}

.prev{

    left:40px;

}

.next{

    right:40px;

}

.prev:hover,
.next:hover{

    background:var(--accent);

    color:#fff;

}


/*=========================
  DOTS
=========================*/

.slider-dots{

    position:absolute;

    left:50%;

    bottom:40px;

    transform:translateX(-50%);

    display:flex;

    gap:12px;

    z-index:50;

}

.dot{

    width:12px;

    height:12px;

    border-radius:50%;

    background:#D1D5DB;

    cursor:pointer;

    transition:var(--transition);

}

.dot.active{

    background:var(--accent);

    transform:scale(1.2);

}


/*=========================
  ANIMATION
=========================*/

@keyframes fadeIn{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:992px){

    header .container{

        flex-direction:column;

        justify-content:center;

        gap:16px;

        padding:15px 0;

    }

    header{

        height:auto;

    }

    nav ul{

        gap:20px;

        flex-wrap:wrap;

        justify-content:center;

    }

    .hero{

        margin-top:20px;
        overflow:visible;
        --hero-height:auto;

    }

    .hero-slider{

        min-height:0;

    }

    .hero-content{

        min-height:0;
        padding-bottom:64px;

    }

    .slide{

        position:static;
        inset:auto;
        display:none;
        opacity:1;
        visibility:visible;
        pointer-events:none;
        transition:none;

    }

    .slide.active{

        display:block;
        pointer-events:auto;

    }

    .slider-dots{

        bottom:18px;

    }

    .prev,
    .next{

        display:none;

    }

}

@media(max-width:768px){

    .hero-buttons{

        flex-direction:column;

    }

    .btn-primary,
    .btn-secondary{

        width:100%;

    }

}

/*====================================================
    PART 2B
    SLIDE 1 - HOME
====================================================*/

/*=========================
  LAYOUT
=========================*/

.slide-home .hero-content{

    grid-template-columns:48% 52%;

}

.slide-home .hero-left{

    max-width:560px;

}

.slide-home .hero-right{

    display:flex;

    justify-content:flex-end;

    align-items:center;

}


/*=========================
  TAG
=========================*/

.slide-home .hero-tag{

    margin-bottom:18px;

}


/*=========================
  HEADING
=========================*/

.slide-home h1{

    margin-bottom:18px;
    font-size:clamp(2.2rem,3.2vw,3.9rem);

}


/*=========================
  DESCRIPTION
=========================*/

.slide-home .hero-description{

    max-width:520px;

    margin-bottom:20px;

}


/*=========================
  BUTTONS
=========================*/

.slide-home .hero-buttons{

    margin-top:10px;

}


/*=========================
  IMAGE
=========================*/

.slide-home .hero-image{

    width:100%;

    max-width:520px;

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:992px){

    .slide-home .hero-content{

        grid-template-columns:1fr;

        text-align:center;

        gap:40px;

    }

    .slide-home .hero-left{

        max-width:700px;

        margin:auto;

    }

    .slide-home .hero-description{

        margin-left:auto;

        margin-right:auto;

    }

    .slide-home .hero-buttons{

        justify-content:center;

    }

    .slide-home .hero-right{

        justify-content:center;

    }

    .slide-home .hero-image{

        max-width:520px;

    }

}


@media(max-width:768px){

    .slide-home .hero-content{

        gap:30px;

    }

    .slide-home .hero-image{

        max-width:420px;

    }

}


@media(max-width:576px){

    .slide-home .hero-image{

        width:100%;

        max-width:340px;

    }

}

/*====================================================
    PART 2C
    SLIDE 2 - WHY AUSTRALIA
====================================================*/


/*=========================
  LAYOUT
=========================*/

.slide-australia .hero-content{

    grid-template-columns:48% 52%;

}

.slide-australia .hero-left{

    max-width:560px;

}

.slide-australia .hero-right{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}


/*=========================
  CONTENT
=========================*/

.slide-australia .hero-tag{

    margin-bottom:18px;

}

.slide-australia h1{

    margin-bottom:18px;
    font-size:clamp(2.2rem,3.2vw,3.9rem);

}

.slide-australia .hero-description{

    max-width:540px;

    margin-bottom:20px;

}


/*=========================
  HERO IMAGE
=========================*/

.slide-australia .hero-image{

    width:100%;

    max-width:520px;

    position:relative;

    z-index:5;

}


/*=========================
  BACKGROUND BLOB
=========================*/

.hero-blob{

    position:absolute;

    width:400px;

    height:400px;

    border-radius:50%;

    background:rgba(229,154,23,.08);

    top:54%;

    left:56%;

    transform:translate(-52%,-54%);

    z-index:1;

}


/*=========================
  FLOATING CARDS
=========================*/

.floating-card{

    position:absolute;

    display:flex;

    align-items:center;

    gap:14px;

    padding:16px 18px;

    min-width:220px;

    background:#fff;

    border-radius:14px;

    box-shadow:var(--shadow-md);

    z-index:10;

}


/*=========================
  CARD ICON
=========================*/

.icon-circle{

    width:52px;

    height:52px;

    border-radius:50%;

    background:#FFF6E8;

    color:var(--accent);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:20px;

    flex-shrink:0;

}


/*=========================
  CARD TEXT
=========================*/

.card-text h4{

    color:var(--primary);

    font-size:1rem;

    margin-bottom:4px;

}

.card-text p{

    color:var(--text-light);

    font-size:.9rem;

    line-height:1.4;

}


/*=========================
  CARD POSITIONS
=========================*/

.card-top-left{

    top:50px;

    left:-20px;

}

.card-top-right{

    top:95px;

    right:-20px;

}

.card-bottom-left{

    bottom:90px;

    left:-35px;

}

.card-bottom-right{

    bottom:45px;

    right:-10px;

}


/*=========================
  DECORATIVE CURVES
=========================*/

.curve{

    position:absolute;

    border:2px dashed rgba(229,154,23,.30);

    border-radius:50%;

    z-index:2;

}

.curve-1{

    width:110px;

    height:110px;

    top:105px;

    left:75px;

    border-right:none;

    border-bottom:none;

}

.curve-2{

    width:95px;

    height:95px;

    top:170px;

    right:80px;

    border-left:none;

    border-bottom:none;

}

.curve-3{

    width:100px;

    height:100px;

    bottom:145px;

    left:90px;

    border-right:none;

    border-top:none;

}

.curve-4{

    width:90px;

    height:90px;

    bottom:95px;

    right:70px;

    border-left:none;

    border-top:none;

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:992px){

    .slide-australia .hero-content{

        grid-template-columns:1fr;

        text-align:center;

        gap:40px;

    }

    .slide-australia .hero-left{

        max-width:700px;

        margin:auto;

    }

    .slide-australia .hero-description{

        margin-left:auto;

        margin-right:auto;

    }

    .slide-australia .hero-buttons{

        justify-content:center;

    }

    .slide-australia .hero-right{

        justify-content:center;

    }

    .slide-australia .hero-image{

        max-width:500px;

    }

    .floating-card{

        display:none;

    }

    .curve{

        display:none;

    }

}


@media(max-width:768px){

    .slide-australia .hero-image{

        max-width:420px;

    }

}


@media(max-width:576px){

    .slide-australia .hero-image{

        max-width:340px;

    }

}

/*====================================================
    PART 2D
    SLIDE 3 - YOUR JOURNEY
====================================================*/


/*=========================
  LAYOUT
=========================*/

.slide-consultation .hero-content{

    grid-template-columns:48% 52%;

}

.slide-consultation .hero-left{

    max-width:580px;

}

.slide-consultation .hero-right{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}


/*=========================
  CONTENT
=========================*/

.slide-consultation .hero-tag{

    margin-bottom:18px;

}

.slide-consultation h1{

    margin-bottom:18px;
    font-size:clamp(2.2rem,3.2vw,3.9rem);

}

.slide-consultation .hero-description{

    max-width:560px;

    margin-bottom:18px;

}


/*=========================
  SERVICES LIST
=========================*/

.journey-services{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:14px 32px;

    margin:28px 0 34px;

}


.journey-service{

    display:flex;

    align-items:center;

    gap:12px;

}


.journey-service i{

    color:var(--accent);

    font-size:18px;

    flex-shrink:0;

}


.journey-service span{

    color:var(--primary);

    font-size:1rem;

    font-weight:600;

}


/*=========================
  HERO IMAGE
=========================*/

.slide-consultation .hero-image{

    width:90%;

    max-width:500px;

    position:relative;

    z-index:5;

    margin-left:auto;

}


/*=========================
  BACKGROUND BLOB
=========================*/

.slide-consultation .hero-blob{

    position:absolute;

    width:400px;

    height:400px;

    border-radius:50%;

    background:rgba(23,63,122,.06);

    top:56%;

    left:54%;

    transform:translate(-52%,-56%);

    z-index:1;

}

/*=========================
  BUTTON SPACING
=========================*/

.slide-consultation .hero-buttons{

    margin-top:10px;

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:992px){

    .slide-consultation .hero-content{

        grid-template-columns:1fr;

        text-align:center;

        gap:40px;

    }

    .slide-consultation .hero-left{

        max-width:700px;

        margin:auto;

    }

    .slide-consultation .hero-description{

        margin-left:auto;

        margin-right:auto;

    }

    .slide-consultation .hero-buttons{

        justify-content:center;

    }

    .slide-consultation .hero-right{

        justify-content:center;

    }

    .slide-consultation .hero-image{

        max-width:460px;

    }

    .journey-services{

	max-width:520px;

	margin:28px auto;

	}

}


@media(max-width:768px){

.journey-services{

    grid-template-columns:1fr;

    gap:14px;

}

    .slide-consultation .hero-image{

        max-width:390px;

    }

}


@media(max-width:576px){

    .slide-consultation .hero-image{

        max-width:340px;

    }

    .journey-step{

        padding:14px 16px;

    }

}

/*====================================================
    PART 4A
    QUICK ACCESS
====================================================*/


/*=========================
  SECTION
=========================*/

.quick-access{

    padding:56px 0;

    background:#F8FAFC;

}


/*=========================
  SECTION HEADING
=========================*/

.section-heading{

    text-align:center;

    margin-bottom:45px;

}


.section-tag{

    color:var(--accent);

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:.90rem;

    font-weight:700;

    margin-bottom:14px;

}


.section-heading h2{

    font-family:'Playfair Display',serif;

    font-size:clamp(1.8rem,2.5vw,2.8rem);

    color:var(--primary);

    font-weight:700;

}


/*=========================
  GRID
=========================*/

.quick-grid{

    display:grid;

    grid-template-columns:repeat(5,170px);

    justify-content:center;

    gap:18px;

}


/*=========================
  CARD
=========================*/

.quick-card{

    background:#FFFFFF;

    border-radius:16px;

    padding:18px 16px;

    text-align:center;

    text-decoration:none;

    box-shadow:var(--shadow-sm);

    transition:var(--transition);

    display:flex;

    flex-direction:column;

    justify-content:space-between;

    align-items:center;

    min-height:145px;

}


.quick-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-md);

}


/*=========================
  ICON
=========================*/

.quick-icon{

    width:48px;

    height:48px;

    border-radius:12px;

    background:#FFF6E8;

    color:var(--accent);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:20px;

    margin-bottom:14px;

}


/*=========================
  TITLE
=========================*/

.quick-card h3{

    font-size:0.90rem;

    line-height:1.35;

    color:var(--primary);

    font-weight:600;

    margin-bottom:16px;

}


.highlight-title{

    color:var(--accent);

}


/*=========================
  ARROW
=========================*/

.quick-arrow{

    width:32px;

    height:32px;

    border-radius:50%;

    border:1px solid var(--border);

    display:flex;

    justify-content:center;

    align-items:center;

    color:var(--primary);

    transition:var(--transition);

}


.quick-card:hover .quick-arrow{

    background:var(--accent);

    color:#FFFFFF;

    border-color:var(--accent);

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:1200px){

    .quick-grid{

        grid-template-columns:repeat(3,1fr);

    }

}


@media(max-width:768px){

    .quick-access{

        padding:56px 0;

    }

    .section-heading{

        margin-bottom:34px;

    }

    .section-heading h2{

        font-size:2rem;

    }

    .quick-grid{

        grid-template-columns:repeat(2,1fr);

        gap:20px;

    }

}


@media(max-width:576px){

    .quick-grid{

        grid-template-columns:1fr;

    }

    .quick-card{

        min-height:220px;

    }

}

/*====================================================
    PART 5A
    MEET DEEPIKA
====================================================*/


/*=========================
  SECTION
=========================*/

.about{

    padding:60px 0;

    background:#FFFFFF;

}


/*=========================
  LAYOUT
=========================*/

.about-content{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:70px;

    align-items:start;

}

.about-left{

    padding-top:0px;

}

/*=========================
  IMAGE
=========================*/

.about-image{

    width:100%;

    border-radius:24px;

    display:block;

    box-shadow:var(--shadow-md);

}


/*=========================
  HEADING
=========================*/

.about-right h2{

    font-family:'Playfair Display',serif;

    font-size:2.6rem;

    color:var(--primary);

    margin-bottom:16px;

    line-height:1.2;

}


.about-right h2 span{

    color:var(--accent);

}


/*=========================
  DESIGNATION
=========================*/

.about-designation{

    font-size:1rem;

    font-weight:600;

    color:var(--accent);

    margin-bottom:28px;

}


/*=========================
  CONTENT
=========================*/

.about-text{

    font-size:1.05rem;

    line-height:1.9;

    color:var(--text);

    margin-bottom:36px;

}


/*=========================
  HIGHLIGHTS
=========================*/

.about-highlights{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px 30px;

    margin-bottom:40px;

}


.highlight-item{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:500;

    color:var(--primary);

}


.highlight-item i{

    color:var(--accent);

    font-size:18px;

}


/*=========================
  QUOTE
=========================*/

.about-quote{

    background:#F8FAFC;

    border-left:4px solid var(--accent);

    border-radius:16px;

    padding:24px 28px;

    width:100%;

    max-width:460px;

    margin-top:22px;

    margin-bottom:0;

    position:relative;

}


.about-quote i{

    color:var(--accent);

    font-size:26px;

    margin-bottom:12px;

}


.about-quote p{

    font-style:italic;

    line-height:1.8;

    color:var(--text);

    margin:0;

}


/*=========================
  BUTTONS
=========================*/

.about-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}


/*=========================
  RESPONSIVE
=========================*/

@media(max-width:992px){

    .about-content{

        grid-template-columns:1fr;

        gap:50px;

        text-align:center;

    }

    .about-image{

        max-width:420px;

        margin:auto;

    }

    .about-highlights{

        grid-template-columns:1fr;

    }

    .highlight-item{

        justify-content:center;

    }

    .about-buttons{

        justify-content:center;

    }

}


@media(max-width:768px){

    .about{

        padding:56px 0;

    }

    .about-right h2{

        font-size:2rem;

    }

    .about-text{

        font-size:1rem;

    }

}

/*====================================================
            STUDY OPTIONS
====================================================*/
.study-options{
    padding:56px 0;
    background:#ffffff;
    overflow:hidden;
}


.study-options .section-heading{

    text-align:center;

    margin-bottom:52px;

}


.study-options .section-tag{

    display:inline-block;

    font-size:0.82rem;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:0.22em;

    color:#D89B13;

    margin-bottom:18px;

}


.study-options h2{

    font-family:'Playfair Display',serif;

    font-size:clamp(1.8rem,2.5vw,2.8rem);

    font-weight:700;

    line-height:1.15;

    letter-spacing:-0.02em;

    color:#0E2A57;

    margin:0;

}



/*====================================================
            SLIDER
====================================================*/

.study-slider-wrapper{
    position:relative;
    overflow:visible;
    padding-bottom:18px;
}


.study-slider{
    display:flex;
    gap:24px;
    overflow-x:hidden;
    overflow-y:visible;
    scroll-behavior:smooth;
    padding-bottom:20px;
}

.study-slider::-webkit-scrollbar{
    display:none;
}



/*====================================================
            CARD
====================================================*/

.study-card{

    min-width:220px;
    flex:none;

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    text-decoration:none;

    box-shadow:0 10px 28px rgba(0,0,0,.08);

    transition:.35s ease;

}


.study-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 40px rgba(0,0,0,.15);

}


.study-card img{

    width:100%;

    height:245px;

    object-fit:cover;

    display:block;

    transition:.45s ease;

}


.study-card:hover img{

    transform:scale(1.05);

}



/*====================================================
            CONTENT
====================================================*/

.study-content{

    padding:18px 24px 20px;

    text-align:center;

}


.study-content h3{

    font-family:'DM Sans',sans-serif;

    font-size:1rem;

    font-weight:700;

    color:#0E2A57;

    line-height:1.35;

    display:flex;

    align-items:center;

    justify-content:center;

    min-height:70px;

    margin:0 0 16px;

    overflow:hidden;

    text-overflow:ellipsis;

}


.study-content h3::after{

    display:none;

}


.explore-link{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    font-size:0.675rem;

    font-weight:600;

    color:#0E2A57;

    transition:.3s ease;

}


.study-card:hover .explore-link{

    color:#D89B13;

}


.explore-link i{

    font-size:18px;

    margin-left:2px;

}



/*====================================================
            ARROWS
====================================================*/

.study-prev,
.study-next{

    position:absolute;

    top:40%;

    transform:translateY(-50%);

    width:58px;

    height:58px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:#0E2A57;

    box-shadow:0 8px 22px rgba(0,0,0,.12);

    cursor:pointer;

    z-index:20;

    transition:.3s ease;

}


.study-prev{

    left:-28px;

}


.study-next{

    right:-28px;

}


.study-prev:hover,
.study-next:hover{

    background:#0E2A57;

    color:#fff;

}



/*====================================================
            DOTS
====================================================*/

.study-slider-dots{

    display:flex;

    justify-content:center;

    gap:12px;

    margin-top:10px;

}


.study-slider-dots span{

    width:12px;

    height:12px;

    border-radius:50%;

    background:#D9DDE5;

    transition:.3s;

    cursor:pointer;

}


.study-slider-dots span.active{

    background:#0E2A57;

    transform:scale(1.2);

}



/*====================================================
            RESPONSIVE
====================================================*/

@media(max-width:1200px){

    .study-card{

        flex:0 0 calc((100% - 48px)/3);

    }

}


@media(max-width:768px){

    .study-options{

        padding:56px 0;

    }

    .study-options h2{

        font-size:2.3rem;

    }

    .study-card{

        flex:0 0 85%;

    }

    .study-card img{

        height:220px;

    }

    .study-prev,
    .study-next{

        display:none;

    }

}

/* ==========================================================
   WHY ASPIRE OZ
========================================================== */

.why-aspire{
    padding:56px 0;
    background:linear-gradient(180deg,#fff,#fbfcfe);
    overflow:hidden;
    position:relative;
}

/* subtle glow behind wheel */
.why-aspire::before{
    content:"";
    position:absolute;
    left:50%;
    top:56%;
    transform:translate(-50%,-50%);
    width:760px;
    height:760px;
    background:radial-gradient(circle,
        rgba(8,43,104,.04),
        transparent 70%);
    pointer-events:none;
}

.why-aspire .container{
    width:min(1320px,92%);
    margin:auto;
    position:relative;
    z-index:2;
}

/* ----------------------------------------------------------
   HEADER
---------------------------------------------------------- */

.why-aspire .section-header{
    text-align:center;
    max-width:820px;
    margin:0 auto 40px;
}

.section-tag{
    display:inline-block;
    color:#C58A00;
    letter-spacing:3px;
    font-size:13px;
    font-weight:700;
    margin-bottom:12px;
    text-transform:uppercase;
}

.why-aspire .section-header h2{
    margin:0 0 12px;
    font-size:clamp(1.8rem,2.5vw,2.8rem);
    line-height:1.05;
}

.why-aspire .section-header p{
    max-width:620px;
    margin:auto;
}

/* ----------------------------------------------------------
   3 COLUMN LAYOUT
---------------------------------------------------------- */

.why-layout{

    display:grid;

    grid-template-columns:
        220px
        470px
        350px;

    column-gap:45px;

    justify-content:center;

    align-items:center;
}

/* ----------------------------------------------------------
   TRUST COLUMN
---------------------------------------------------------- */

.why-trust{

    display:flex;

    flex-direction:column;

    justify-content:center;

    gap:36px;

    height:430px;
}

.trust-item{

    display:flex;

    align-items:center;

    gap:20px;
}

.trust-icon{

    width:62px;

    height:62px;

    flex:none;
}

.trust-item h4{

    margin:0;

    font-size:1rem;

    font-weight:600;

    line-height:1.25;

    color:#17397D;
}

/* ----------------------------------------------------------
   WHEEL
---------------------------------------------------------- */

.why-wheel{

    display:flex;

    justify-content:center;

    align-items:center;
}

.why-wheel svg{

    width:100%;

    max-width:430px;

    height:auto;

    filter:drop-shadow(0 18px 35px rgba(8,43,104,.08));
}

#aspireWheel circle:first-of-type{

    fill:#fff;

    stroke:#EEF2F6;

    stroke-width:1;
}

#aspireWheel .wheel-item path{

    stroke:#fff;

    stroke-width:4;

    transition:.35s;
}

#aspireWheel .wheel-item:hover path,
#aspireWheel .wheel-item.active path{

    transform:scale(1.03);

    transform-origin:300px 300px;
}

#aspireWheel text{

    font-family:'Poppins',sans-serif;
    font-size:14px;
    font-weight:600;
    fill:#173E68;
    text-anchor:middle;
    user-select:none;
}

/* ----------------------------------------------------------
   CONTENT PANEL
---------------------------------------------------------- */

.why-content{

    width:100%;

    max-width:340px;

    background:#fff;

    border-radius:22px;

    padding:32px;

    border:1px solid #EEF2F6;

    box-shadow:
        0 14px 32px rgba(8,43,104,.06),
        0 28px 60px rgba(8,43,104,.05);
}

.why-panel.active{

    display:block;

    animation:fadePanel .4s ease;
}

.why-panel h3{

    margin:0 0 14px;

    font-size:1.6rem;

    line-height:1.2;

    font-weight:700;

    color:#17397D;
}

.why-panel p{

    margin:0 0 22px;

    font-size:15px;

    line-height:1.7;
}

.why-panel ul{

    list-style:none;

    padding:0;

    margin:0;
}

.why-panel li{

    position:relative;

    padding-left:34px;

    margin-bottom:12px;

    font-size:15px;

    font-weight:600;

    color:#17397D;
}

.why-panel li:before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    width:24px;

    height:24px;

    border-radius:50%;

    background:#F6B019;

    color:#fff;

    font-size:12px;

    display:flex;

    align-items:center;

    justify-content:center;
}

/* ----------------------------------------------------------
   CONTROLS
---------------------------------------------------------- */

.why-controls{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:18px;

    padding-top:18px;

    border-top:1px solid #EEF2F6;
}

.why-prev,
.why-next{

    width:44px;

    height:44px;

    border:none;

    border-radius:50%;

    background:#082B68;

    color:#fff;

    font-size:16px;

    cursor:pointer;

    box-shadow:0 12px 20px rgba(8,43,104,.16);
}

.why-dots{

    display:flex;

    gap:8px;
}

.why-dots span{

    width:10px;

    height:10px;
    cursor:pointer;

    transition:.3s;

    border-radius:50%;

    background:#D7DCE4;
}

.why-dots span.active{

    width:14px;

    height:14px;

    border-radius:20px;

    background:#082B68;
}

/* ----------------------------------------------------------
   ANIMATION
---------------------------------------------------------- */

@keyframes fadePanel{

    from{

        opacity:0;

        transform:translateY(12px);
    }

    to{

        opacity:1;

        transform:translateY(0);
    }
}

/* ----------------------------------------------------------
   RESPONSIVE
---------------------------------------------------------- */

@media(max-width:1100px){

    .why-layout{

        grid-template-columns:1fr;

        gap:55px;

        justify-items:center;
    }

    .why-trust{

        height:auto;

        gap:26px;
    }

    .why-content{

        max-width:100%;
    }
}

@media(max-width:768px){

    .why-aspire{

        padding:70px 0;
    }

    .why-wheel svg{

        max-width:340px;
    }

    .why-content{

        padding:30px;
    }

    .why-panel h3{

        font-size:1.75rem;
    }
}

@media(max-width:480px){

    .why-wheel svg{

        max-width:290px;
    }

    .trust-item{

        gap:16px;
    }

    .trust-icon{

        width:52px;

        height:52px;
    }

    .trust-item h4{

        font-size:1rem;
    }
}

/*=========================================================
   FOOTER
=========================================================*/

.footer{

    padding:56px 0 28px;

    background:linear-gradient(180deg,#F8FAFD 0%,#FFFFFF 100%);

    position:relative;

    overflow:hidden;

}

.footer .container{

    width:min(1320px,92%);

    margin:auto;

}


/*=========================================================
   FOOTER CARD
=========================================================*/

.footer-card{

    position:relative;
    display:grid;

    grid-template-columns:
        1.35fr
        1.52fr
        1.05fr
        1.12fr;
    gap:28px;
    background:#FFFFFF;
    padding:26px 40px;
    align-items:start;
    border-radius:26px;
    border:1px solid #EEF2F6;
    box-shadow:
        0 18px 40px rgba(8,43,104,.06),
        0 35px 70px rgba(8,43,104,.05);
}

.footer-card .footer-col{
    position:relative;
    z-index:2;
}

.footer-illustration{
    position:absolute;
    left:16px;
    bottom:-4px;
    width:420px;
    max-width:42%;
    opacity:.35;
    pointer-events:none;
    z-index:1;
}


/*=========================================================
   COMMON COLUMN
=========================================================*/

.footer-col{

    display:flex;

    flex-direction:column;

}


/*=========================================================
   BRAND COLUMN
=========================================================*/

.footer-brand{

    justify-content:flex-start;

}


.footer-logo{

    display:inline-block;

    margin-bottom:26px;

}


.footer-logo img{

    width:180px;

    height:auto;

    display:block;

}


.footer-brand h3{

    margin:0;

    font-size:14px;

    line-height:1.8;
    margin-bottom:0;
    font-weight:500;

    color:#6B7280;

}


.footer-line{

    width:60px;

    height:3px;

    background:#F6B019;

    border-radius:50px;

    margin:18px 0;

}


.footer-brand p{

    margin:0;

    max-width:280px;

    font-size:15px;

    line-height:1.6;

    color:#5F6B7D;

}


/*=========================================================
   COLUMN HEADINGS
=========================================================*/

.footer-col h4{

    margin:0 0 16px;

    color:#4338CA;

    font-size:14px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    position:relative;

    padding-bottom:8px;

}

.footer-col h4::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:32px;
    height:4px;
    border-radius:2px;
    background:#F6B019;
}

.footer-follow{
    margin:16px 0 12px;
    font-size:14px;
    font-weight:700;
    letter-spacing:1px;
    color:#4338CA;
    position:relative;
    padding-bottom:8px;
}

.footer-follow::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:32px;
    height:4px;
    border-radius:2px;
    background:#F6B019;
}

.footer-heading-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    margin-right:10px;
    border-radius:8px;
    background:#E8ECFF;
    color:#17397D;
    font-size:14px;
}

.footer-col:not(.footer-contact) ul li{
    position:relative;
    padding-left:18px;
}

.footer-col-quick{
    padding-right:24px;
    border-right:1px solid #E8ECFF;
}

.footer-col-services{
    padding-left:2px;
}

.footer-quick-links{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    column-gap:32px;
    row-gap:0;
}

.footer-quick-links ul li{
    margin-bottom:12px;
}

.footer-quick-links ul li:last-child{
    margin-bottom:0;
}

.footer-quick-links a{
    white-space:nowrap;
}

.footer-col:not(.footer-contact) ul li::before{
    content:'›';
    position:absolute;
    left:0;
    top:0;
    color:#F6B019;
    font-size:16px;
    line-height:1.8;
}

.footer-follow{
    margin:22px 0 14px;
    font-size:12px;
    letter-spacing:1.8px;
    color:#4338CA;
}

/*=========================================================
   QUICK LINKS
=========================================================*/

.footer-links ul{

    list-style:none;

    margin:0;

    padding:0;

}

.footer-card ul{

    list-style:none;

    margin:0;

    padding:0;

}

.footer-card ul li{

    margin-bottom:12px;

}

.footer-card ul li:last-child{

    margin-bottom:0;

}

@media (max-width:1280px){

    .footer-quick-links a{
        white-space:normal;
    }

}

.footer-card ul li a{

    color:#4338CA;

    font-size:14px;

    font-weight:500;

    line-height:1.8;

    text-decoration:none;

    transition:.3s;

}

.footer-links a:hover{

    color:#F6B019;

    padding-left:6px;

}


/*=========================================================
   SOCIAL ICONS
=========================================================*/

.social-icons{

    display:flex;

    gap:18px;

    margin-bottom:26px;

}

.social-icons a{

    width:56px;

    height:56px;

    border-radius:50%;

    border:1px solid transparent;

    background:#E8ECFF;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#17397D;

    font-size:22px;

    text-decoration:none;

    transition:.35s;

}

.social-icons a:hover{

    background:#17397D;

    color:#FFFFFF;

    border-color:#17397D;

    transform:translateY(-3px);

    box-shadow:0 12px 24px rgba(8,43,104,.16);

}

.social-icons a[href*="facebook.com"]{

    background:#1877F2;

    color:#FFFFFF;

}

.social-icons a[href*="facebook.com"]:hover{

    background:#166FE5;

    color:#FFFFFF;

    border-color:#166FE5;

}

.social-icons a[href*="instagram.com"]{

    background:linear-gradient(135deg,#F58529 0%,#DD2A7B 38%,#8134AF 72%,#515BD4 100%);

    color:#FFFFFF;

}

.social-icons a[href*="instagram.com"]:hover{

    background:linear-gradient(135deg,#F58529 0%,#DD2A7B 38%,#8134AF 72%,#515BD4 100%);

    color:#FFFFFF;

    border-color:transparent;

}

.social-icons a[href*="linkedin.com"]{

    background:#0A66C2;

    color:#FFFFFF;

}

.social-icons a[href*="linkedin.com"]:hover{

    background:#084D94;

    color:#FFFFFF;

    border-color:#084D94;

}


/*=========================================================
   HAVE QUESTIONS
=========================================================*/

.footer-contact-box{

    border-left:3px solid #F6B019;

    padding-left:18px;

    margin-bottom:14px;

}

.footer-contact-box h5{

    margin:0 0 4px;

    font-size:1.2rem;

    font-weight:700;
    margin-bottom:2px;

    color:#17397D;

}

.footer-contact-box p{

    margin:0;

    font-size:15px;

    color:#5F6B7D;

    line-height:1.35;

}


/*=========================================================
   CONTACT LIST
=========================================================*/

.contact-list{

    list-style:none;

    margin:0;

    padding:0;

}

.contact-list li{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:10px;
    line-height:1.6;

    font-size:14px;

    color:#5F6B7D;

}

.footer-contact .contact-text{
    color:#4338CA;
}

.footer-contact .contact-text i{
    color:#F6B019;
}

.contact-list li i{

    width:24px;

    color:#F6B019;

    font-size:20px;

    text-align:center;

}

.contact-list a{

    color:#17397D;

    text-decoration:none;

    transition:.3s;

}

.contact-list a:hover{

    color:#F6B019;

}

/*=========================================================
   FOOTER CTA
=========================================================*/

.footer-cta{

    position:relative;

    display:grid;

    grid-template-columns:minmax(0,1fr) auto;

    align-items:center;

    gap:28px;

    margin-top:24px;

    padding:28px 36px;

    border-radius:32px;

    background:#F7F9FF;

    border:1px solid #E6EBF8;

}

.footer-cta::before{
    content:"";
    position:absolute;
    top:20px;
    bottom:20px;
    left:calc(100% - 220px);
    width:1px;
    background:rgba(67,56,202,.12);
}

.footer-cta-text{

    max-width:720px;

}

.footer-cta-tag{

    display:inline-block;

    margin-bottom:8px;

    font-size:0.95rem;

    font-weight:700;

    color:#17397D;

    text-transform:uppercase;

    letter-spacing:1px;

}

.footer-cta-text p{

    margin:0;

    color:#334155;

    font-size:1rem;

    line-height:1.6;

}

.footer-cta-action{

    text-align:right;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:flex-end;

    gap:10px;

    padding-left:24px;

}

.footer-cta-action p{

    margin:0;

    font-size:1.1rem;

    font-weight:700;

    color:#17397D;

    display:inline-flex;

    align-items:center;

    justify-content:flex-end;

    gap:10px;

}

.footer-cta-action p .footer-cta-action-text{
    display:inline-block;
    font-family:'Caveat',cursive;
    font-size:1.32rem;
    font-weight:400;
    font-style:italic;
    letter-spacing:0.4px;
    transform:skewX(-6deg);
}

.footer-cta-action p i{
    color:#17397D;
    font-size:1.1rem;
}

@media (max-width:1100px){

    .footer-cta::before{
        display:none;
    }

}

/*=========================================================
   FOOTER BOTTOM
=========================================================*/

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:24px;

    padding-top:18px;

    border-top:1px solid #E8EDF3;

}

@media (max-width:1100px){

    .footer-card{

        grid-template-columns:1fr 1fr;

    }

    .footer-cta{

        flex-direction:column;

        align-items:flex-start;

        text-align:left;

    }

    .footer-cta-action{

        width:100%;

        text-align:left;

    }

}

@media (max-width:768px){

    .footer-card{

        grid-template-columns:1fr;

    }

    .footer{

        padding:50px 0 30px;

    }

    .footer-bottom{

        flex-direction:column;

        align-items:flex-start;

        gap:12px;

    }

    .footer-policy{

        flex-direction:column;

        align-items:flex-start;

        gap:10px;

    }

}

.footer-bottom p{

    margin:0;

    font-size:15px;

    color:#7A8797;

}

.footer-policy{

    display:flex;

    align-items:center;

    gap:14px;

}

.footer-policy span{

    color:#C7CFD9;

}

.footer-policy a{

    color:#7A8797;

    text-decoration:none;

    font-size:15px;

    transition:.3s;

}

.footer-policy a:hover{

    color:#17397D;

}


/*=========================================================
   GLOBAL FOOTER LINK HOVER
=========================================================*/

.footer a{

    transition:all .30s ease;

}

.footer a:hover{

    text-decoration:none;

}


/*=========================================================
   ICON TRANSITIONS
=========================================================*/

.footer i{
    transition:.30s;
}

.footer .fas,
.footer .fa-solid{
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.footer .far,
.footer .fa-regular{
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
}

.footer .fab,
.footer .fa-brands{
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}

.footer a:hover i{

    transform:scale(1.08);

}


/*=========================================================
   TEXT SELECTION
=========================================================*/

.footer{

    -webkit-font-smoothing:antialiased;

    -moz-osx-font-smoothing:grayscale;

}


/*=========================================================
   ACCESSIBILITY
=========================================================*/

.footer a:focus-visible,

.social-icons a:focus-visible{

    outline:2px solid #F6B019;

    outline-offset:4px;

    border-radius:8px;

}

/*=========================================================
   RESPONSIVE
=========================================================*/

/* ---------- Large Tablets ---------- */

@media (max-width:1100px){

    .footer-card{

        grid-template-columns:1fr 1fr;

        gap:50px;

    }

    .footer-brand{

        grid-column:1 / -1;

    }

    .footer-brand p{

        max-width:600px;

    }

    .footer-col-quick{
        padding-right:0;
        border-right:none;
    }

}


/* ---------- Tablets ---------- */

@media (max-width:768px){

    .footer{

        padding:60px 0 30px;

    }

    .footer-card{

        grid-template-columns:1fr;

        gap:45px;

        padding:42px 50px;

        border-radius:22px;

    }

    .footer-brand{

        text-align:center;

        align-items:center;

    }

    .footer-logo{

        margin-bottom:22px;

    }

    .footer-logo img{

        width:190px;

    }

    .footer-line{

        margin:22px auto;

    }

    .footer-brand p{

        max-width:100%;

    }

    .footer-col h4{

        margin-bottom:16px;

    }

    .footer-links ul{

        text-align:center;

    }

    .footer-contact-box{

        border-left:none;

        border-top:3px solid #F6B019;

        padding-left:0;

        padding-top:18px;

        margin-bottom:18px;

    }

    .social-icons{

        justify-content:center;

    }

    .contact-list li{

        justify-content:center;

        text-align:center;

    }

    .footer-bottom{

        flex-direction:column;

        gap:18px;

        text-align:center;

    }

}


/* ---------- Mobile ---------- */

@media (max-width:576px){

    .footer{

        padding:44px 0 24px;

    }

    .footer .container{

        width:94%;

    }

    .footer-card{

        padding:28px 20px;

        gap:32px;

        border-radius:18px;

    }

    .footer-logo img{

        width:165px;

    }

    .footer-brand h3{

        font-size:14px;

    }

    .footer-brand p{

        font-size:15px;

        line-height:1.5;

    }

    .footer-col h4{

        font-size:13px;

        letter-spacing:1.5px;

    }

    .footer-links li{

        margin-bottom:10px;

    }

    .footer-links a{

       font-size:16px;
       line-height:1.4;

    }

    .social-icons{

        gap:14px;

        margin-bottom:18px;

    }

    .social-icons a{

        width:48px;

        height:48px;

        font-size:18px;

    }

    .footer-contact-box h5{

        font-size:1.25rem;

    }

    .footer-contact-box p{

        font-size:15px;

    }

    .contact-list li{

        font-size:15px;

        gap:12px;

        margin-bottom:16px;

        flex-wrap:wrap;

    }

    .footer-contact .contact-list li{

        justify-content:flex-start;

        text-align:left;

        flex-wrap:nowrap;

    }

    .contact-list li i{

        font-size:18px;

    }

    .footer-bottom{

        margin-top:28px;

        padding-top:22px;

    }

    .footer-bottom p,

    .footer-policy a{

        font-size:14px;

    }

    .footer-policy{

        flex-wrap:wrap;

        justify-content:center;

        gap:10px;

    }

}


/* ---------- Small Phones ---------- */

@media (max-width:380px){

    .footer-card{

        padding:26px 18px;

    }

    .footer-logo img{

        width:145px;

    }

    .footer-brand h3{

        font-size:1.4rem;

    }

    .social-icons a{

        width:44px;

        height:44px;

        font-size:16px;

    }

}

