/* ==========================================================
   MERITZA CLASSES
   HOME - HERO
   Version : 4.1.0

   IMPORTANT:
   Hero owns its internal layout only.

   Homepage section-to-section spacing is controlled by
   the global homepage spacing system in spacing.css.
========================================================== */


/* ==========================================================
   HERO SHELL
========================================================== */

.mc-hero-shell{

    position:relative;

    margin-top:
        var(--mc-navbar-height);

    overflow:hidden;

    background:
        linear-gradient(
            180deg,
            #102653 0%,
            #123563 32%,
            #184879 68%,
            #245A8F 100%
        );

}


/* ==========================================================
   HERO SHELL OVERLAY
========================================================== */

.mc-hero-shell::before{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    background:
        radial-gradient(
            circle at 78% 28%,
            rgba(212,175,55,.10) 0%,
            transparent 24%
        ),
        radial-gradient(
            circle at 82% 55%,
            rgba(255,255,255,.06) 0%,
            transparent 32%
        );

    z-index:0;

}


.mc-hero-shell > *{

    position:relative;

    z-index:1;

}


/* ==========================================================
   HERO BACKGROUND ILLUSTRATION
   Pull illustration closer to hero content
========================================================== */

.mc-hero-background {

    position: absolute;

    top: 50%;

    right: 35px;

    left: auto;

    width: auto;

    height: 100%;

    max-width: 100%;

    display: block;

    object-fit: contain;

    object-position: center center;

    transform: translateY(-50%);

    z-index: 0;

    pointer-events: none;

}


/* ==========================================================
   HERO SECTION
========================================================== */

.mc-hero{

    position:relative;

    z-index:1;

    overflow:hidden;

    padding:
        var(--mc-home-section-padding-top)
        0
        var(--mc-home-section-padding-bottom);

}


/* ==========================================================
   HERO HEIGHT
   COMPACT DESKTOP HERO
========================================================== */

@media (min-width:992px){

    .mc-hero{

        padding-top:40px;

        padding-bottom:30px;

    }

}


/* ==========================================================
   HERO CONTAINER
========================================================== */

.mc-hero .mc-container{

    position:relative;

    z-index:2;

}


/* ==========================================================
   HERO CONTENT
========================================================== */

.mc-hero-content{

    position:relative;

    z-index:2;

    width:55%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    padding-right:30px;

}


/* ==========================================================
   HERO BADGE
========================================================== */

.mc-hero-badge{

    display:inline-flex;

    align-items:center;

    gap:6px;

    width:max-content;

    padding:5px 10px;

    margin-bottom:12px;

    border:
        1px solid
        rgba(212,175,55,.40);

    border-radius:
        var(--mc-radius-pill);

    background:
        rgba(212,175,55,.08);

    color:#FFFFFF;

    font-size:.68rem;

    line-height:1.2;

    font-weight:600;

}


.mc-hero-badge i{

    color:
        var(--mc-gold);

    font-size:.75rem;

}


/* ==========================================================
   HERO TITLE
========================================================== */

.mc-hero-content > .mc-title-line{

    display:block;

    color:#FFFFFF;

    font-size:2.15rem;

    font-weight:700;

    line-height:1.06;

    letter-spacing:-.6px;

}


.mc-hero-content > .mc-title-highlight{

    display:block;

    margin:2px 0 3px;

    color:
        var(--mc-gold) !important;

    font-size:3.75rem;

    font-weight:850;

    line-height:.94;

    letter-spacing:-1.5px;

}


.mc-hero-content >
.mc-title-highlight +
.mc-title-line{

    margin-bottom:11px;

}


/* ==========================================================
   HERO DESCRIPTION
========================================================== */

.mc-hero-description{

    max-width:520px;

    margin:
        0 0 24px;

    color:
        rgba(255,255,255,.94);

    font-size:.96rem;

    font-weight:400;

    line-height:1.65;

}


/* ==========================================================
   HERO BUTTONS
========================================================== */

.mc-hero-actions{

    display:flex;

    align-items:center;

    gap:12px;

    flex-wrap:wrap;

    margin-bottom:14px;

}


.mc-hero-actions .mc-hero-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:180px;

    height:42px;

    padding:0 20px;

    border-radius:9px;

    font-size:.88rem;

    font-weight:700;

    line-height:1;

    text-decoration:none;

    transition:
        all .25s ease;

}


/* ==========================================================
   BOOK FREE COUNSELLING
========================================================== */

.mc-hero-actions .mc-hero-btn-light{

    background:#FFFFFF;

    border:
        1px solid
        #FFFFFF;

    color:
        var(--mc-primary);

}


.mc-hero-actions .mc-hero-btn-light:hover{

    background:#F3F6FA;

    border-color:#F3F6FA;

    color:
        var(--mc-primary);

    transform:
        translateY(-1px);

}


/* ==========================================================
   EXPLORE TUTORS
========================================================== */

.mc-hero-actions .mc-hero-btn-gold{

    background:
        var(--mc-gold);

    border:
        1px solid
        var(--mc-gold);

    color:
        var(--mc-primary);

}


.mc-hero-actions .mc-hero-btn-gold:hover{

    background:#E8CF72;

    border-color:#E8CF72;

    color:
        var(--mc-primary);

    transform:
        translateY(-1px);

}


/* ==========================================================
   HERO VISUAL
========================================================== */

.mc-hero-visual {

    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

    padding-right: 0;

}


.mc-hero-image {

    display: block;

    width: 100%;

    max-width: 640px;

    height: auto;

    object-fit: contain;

    margin-left: auto;

    margin-right: auto;

    transform: none;

}

/* ==========================================================
   ACADEMIC BACKGROUND
========================================================== */

.mc-hero-academic-bg{

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:38%;

    pointer-events:none;

    z-index:0;

    overflow:hidden;

}


.academic-symbol{

    position:absolute;

    color:
        rgba(255,255,255,.055);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight:500;

    white-space:nowrap;

    user-select:none;

    animation:
        academicFloat
        10s ease-in-out
        1 forwards;

}


/* ==========================================================
   ACADEMIC SYMBOL POSITIONS
========================================================== */

.symbol-1{

    left:4%;

    bottom:18%;

    font-size:3rem;

}


.symbol-2{

    left:15%;

    bottom:48%;

    font-size:2rem;

}


.symbol-3{

    left:25%;

    bottom:12%;

    font-size:1.4rem;

}


.symbol-4{

    left:38%;

    bottom:55%;

    font-size:2.8rem;

}


.symbol-5{

    left:48%;

    bottom:18%;

    font-size:1.8rem;

}


.symbol-6{

    left:59%;

    bottom:50%;

    font-size:2.4rem;

}


.symbol-7{

    left:69%;

    bottom:15%;

    font-size:2rem;

}


.symbol-8{

    left:77%;

    bottom:52%;

    font-size:1.5rem;

}


.symbol-9{

    left:84%;

    bottom:20%;

    font-size:1.4rem;

}


.symbol-10{

    left:91%;

    bottom:58%;

    font-size:1.2rem;

}


.symbol-11{

    left:54%;

    bottom:65%;

    font-size:2.2rem;

}


.symbol-12{

    left:31%;

    bottom:72%;

    font-size:1.1rem;

}


/* ==========================================================
   ACADEMIC BACKGROUND ANIMATION
========================================================== */

@keyframes academicFloat{

    0%{

        opacity:0;

        transform:
            translateY(18px)
            rotate(-2deg);

    }

    100%{

        opacity:1;

        transform:
            translateY(0)
            rotate(0deg);

    }

}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width:991.98px){

    .mc-hero{

        padding:
            var(--mc-home-section-padding-top-tablet)
            0
            var(--mc-home-section-padding-bottom-tablet);

        text-align:center;

    }


    .mc-hero-content{

        width:100%;

        max-width:760px;

        margin-inline:auto;

        padding-right:0;

        align-items:center;

    }


    .mc-hero-content >
    .mc-title-line{

        font-size:2.05rem;

    }


    .mc-hero-content >
    .mc-title-highlight{

        font-size:3.45rem;

    }


    .mc-hero-description{

        margin-inline:auto;

    }


    .mc-hero-actions{

        justify-content:center;

    }


    .mc-hero-visual{

        margin-top:
            var(--mc-space-40);

    }


    .mc-hero-image{

        max-width:640px;

        transform:none;

        margin-inline:auto;

    }

}


@media (min-width:768px)
and (max-width:991.98px){

    .mc-hero{

        padding-top:38px;

        padding-bottom:28px;

    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:767.98px){

    .mc-hero{

        padding:
            var(--mc-home-section-padding-top-mobile)
            0
            var(--mc-home-section-padding-bottom-mobile);

    }


    .mc-hero-content >
    .mc-title-line{

        font-size:1.75rem;

    }


    .mc-hero-content >
    .mc-title-highlight{

        font-size:3rem;

    }


    .mc-hero-description{

        font-size:.95rem;

        margin-bottom:20px;

    }


    .mc-hero-actions{

        flex-direction:column;

        width:100%;

    }


    .mc-hero-actions
    .mc-hero-btn{

        width:100%;

        min-width:100%;

    }


    .mc-hero-visual{

        margin-top:
            var(--mc-space-32);

    }


    .mc-hero-image{

        width:100%;

        max-width:100%;

        transform:none;

    }


    .mc-hero-academic-bg{

        height:30%;

    }


    .academic-symbol{

        opacity:.65;

    }

}

/* ==========================================================
   MOBILE — HIDE HERO ILLUSTRATION
   The hero SVG is loaded by hero.php as .mc-hero-background.
   This rule lives in hero.css because hero.css is loaded after
   the global app.css and therefore must own this override.
========================================================== */

@media (max-width: 767.98px) {

    .mc-hero-shell .mc-hero-background {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        max-width: 0 !important;
        pointer-events: none !important;
    }

    .mc-hero-shell .mc-hero-academic-bg {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
}


/* ==========================================================
   MERITZA PWA / MOBILE HERO - FINAL OVERRIDE
   This block is intentionally last in hero.css so it wins
   over the original Hero mobile rules and the PWA stylesheet.
========================================================== */

@media (max-width: 767.98px) {

    .mc-home-page.mc-pwa-mobile .mc-hero-shell {

        height:
            152px !important;

        min-height:
            152px !important;

        margin:
            6px 13px 0 !important;

        border-radius:
            20px !important;

        overflow:
            hidden !important;

        background:
            linear-gradient(
                135deg,
                #0A1946 0%,
                #123563 52%,
                #184879 100%
            ) !important;

        background-image:
            linear-gradient(
                135deg,
                #0A1946 0%,
                #123563 52%,
                #184879 100%
            ) !important;

        background-color:
            #0A1946 !important;
    }


    .mc-home-page.mc-pwa-mobile .mc-hero {

        height:
            152px !important;

        min-height:
            152px !important;

        padding:
            0 15px !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        text-align:
            center !important;

        background:
            transparent !important;

        background-image:
            none !important;
    }


    .mc-home-page.mc-pwa-mobile .mc-hero .mc-container {

        width:
            100% !important;

        max-width:
            none !important;

        height:
            100% !important;

        padding:
            0 !important;

        margin:
            0 auto !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;
    }


    .mc-home-page.mc-pwa-mobile .mc-hero-content {

        width:
            100% !important;

        max-width:
            100% !important;

        height:
            100% !important;

        padding:
            0 !important;

        margin:
            0 auto !important;

        display:
            flex !important;

        flex-direction:
            column !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        text-align:
            center !important;
    }


    .mc-home-page.mc-pwa-mobile
    .mc-hero-content > .mc-title-line,

    .mc-home-page.mc-pwa-mobile
    .mc-hero-content > .mc-title-highlight {

        margin-left:
            auto !important;

        margin-right:
            auto !important;

        text-align:
            center !important;
    }


    .mc-home-page.mc-pwa-mobile
    .mc-hero-content > .mc-title-line {

        font-size:
            25px !important;

        line-height:
            1.03 !important;

        margin-top:
            0 !important;

        margin-bottom:
            0 !important;
    }


    .mc-home-page.mc-pwa-mobile
    .mc-hero-content > .mc-title-highlight {

        font-size:
            25px !important;

        line-height:
            1.03 !important;

        margin-top:
            2px !important;

        margin-bottom:
            2px !important;
    }


    .mc-home-page.mc-pwa-mobile .mc-hero-actions {

        width:
            100% !important;

        margin:
            10px 0 0 !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        flex-direction:
            column !important;
    }


    .mc-home-page.mc-pwa-mobile
    .mc-hero-actions .mc-hero-btn-light {

        width:
            100% !important;

        min-width:
            100% !important;

        min-height:
            38px !important;

        height:
            38px !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        margin:
            0 auto !important;

        text-align:
            center !important;
    }


    /*
     * Keep mobile Hero decorative layers hidden so they
     * cannot visually lighten or shift the Hero content.
     */

    .mc-home-page.mc-pwa-mobile
    .mc-hero-background,

    .mc-home-page.mc-pwa-mobile
    .mc-hero-academic-bg {

        display:
            none !important;

        visibility:
            hidden !important;

        opacity:
            0 !important;
    }


    .mc-home-page.mc-pwa-mobile
    .mc-hero-shell::before {

        background:
            radial-gradient(
                circle at 78% 28%,
                rgba(212,175,55,.10) 0%,
                transparent 24%
            ),
            radial-gradient(
                circle at 82% 55%,
                rgba(255,255,255,.06) 0%,
                transparent 32%
            ) !important;
    }
}