/* =========================================================
   PH INTERNATIONAL PUBLIC SCHOOL
   COMPLETE MAIN STYLE.CSS
   Responsive Desktop + Tablet + Mobile
   ========================================================= */

/* =========================
   GLOBAL IMPORTS
========================= */
@import url('variables.css');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


/* =========================
   GLOBAL
========================= */
*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
    width:100%;
    max-width:100%;
}

body{
    width:100%;
    max-width:100%;
    min-width:0;
    font-family:'Poppins',sans-serif;
    background:#f8f9fc;
    color:#222;
    line-height:1.7;
    overflow-x:hidden;
}

a{
    text-decoration:none;
}

img{
    max-width:100%;
    display:block;
}

button,
input,
textarea,
select{
    font-family:inherit;
}

.container{
    max-width:1200px;
}

section{
    width:100%;
    max-width:100%;
}


/* =========================
   TOP BAR
========================= */
.top-bar{
    background:#8B0000;
    color:#fff;
    padding:8px 0;
    font-size:14px;
}

.top-bar i{
    color:#FFD700;
    margin-right:5px;
}

.social-icons a{
    color:#fff;
    margin-left:15px;
    transition:.3s;
}

.social-icons a:hover{
    color:#FFD700;
}


/* =========================================================
   HERO SLIDER
   IMPORTANT: This website uses SWIPER, not Bootstrap Carousel
========================================================= */

.hero-slider{
    position:relative;
    width:100%;
    max-width:100%;
    margin-top:0 !important;
    overflow:hidden;
}

.hero-slider .heroSwiper{
    position:relative;
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.hero-slider .swiper-wrapper{
    width:100%;
}

.hero-slider .swiper-slide{
    position:relative;
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.hero-slider .hero-slide{
    position:relative;
    width:100%;
    max-width:100%;
    height:auto;
    overflow:hidden;
}

.hero-slider .hero-slide > img{
    display:block;
    width:100%;
    max-width:100%;
    height:calc(100vh - 92px);
    min-height:620px;
    object-fit:cover;
    object-position:center center;
}

.hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(
        90deg,
        rgba(0,0,0,.72),
        rgba(0,0,0,.28)
    );
}

.hero-content{
    position:absolute;
    left:8%;
    right:auto;
    bottom:16%;
    width:auto;
    max-width:720px;
    z-index:5;
    color:#fff;
    text-align:left;
}

.hero-content h5{
    color:#FFD700;
    font-size:18px;
    font-weight:600;
    letter-spacing:5px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.hero-content h1{
    color:#fff;
    font-size:64px;
    line-height:1.08;
    font-weight:800;
    margin:0 0 20px;
}

.hero-content p{
    color:#fff;
    font-size:22px;
    line-height:1.6;
    margin:0 0 30px;
}

.hero-btn,
.hero-btn-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 34px;
    margin-right:12px;
    margin-bottom:10px;
    border-radius:50px;
    font-weight:600;
    transition:.3s ease;
}

.hero-btn{
    background:#FFC107;
    color:#111;
}

.hero-btn:hover{
    background:#FFD54F;
    color:#111;
    transform:translateY(-3px);
}

.hero-btn-outline{
    background:transparent;
    color:#fff;
    border:2px solid #fff;
}

.hero-btn-outline:hover{
    background:#fff;
    color:#111;
    transform:translateY(-3px);
}


/* Swiper arrows */
.hero-slider .swiper-button-next,
.hero-slider .swiper-button-prev{
    width:58px;
    height:58px;
    border-radius:50%;
    background:rgba(0,0,0,.45);
    color:#fff;
    transition:.3s;
}

.hero-slider .swiper-button-next:hover,
.hero-slider .swiper-button-prev:hover{
    background:#FFC107;
    color:#111;
}

.hero-slider .swiper-button-next::after,
.hero-slider .swiper-button-prev::after{
    font-size:25px;
    font-weight:700;
}

.hero-slider .swiper-button-next{
    right:25px;
}

.hero-slider .swiper-button-prev{
    left:25px;
}


/* Swiper pagination */
.hero-slider .swiper-pagination{
    bottom:25px !important;
}

.hero-slider .swiper-pagination-bullet{
    width:11px;
    height:11px;
    background:#fff;
    opacity:.7;
}

.hero-slider .swiper-pagination-bullet-active{
    background:#FFC107;
    opacity:1;
}


/* =========================
   SECTION COMMON
========================= */
.section-padding{
    padding:90px 0;
}

.section-title{
    text-align:center;
    font-size:42px;
    font-weight:700;
    margin-bottom:50px;
    position:relative;
}

.section-title::after{
    content:"";
    display:block;
    width:90px;
    height:4px;
    background:#FFC107;
    margin:15px auto;
    border-radius:20px;
}


/* =========================
   ABOUT
========================= */
.about-section{
    background:#fff;
}

.about-img{
    overflow:hidden;
    border-radius:20px;
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.about-img img{
    width:100%;
    transition:.5s;
}

.about-img:hover img{
    transform:scale(1.05);
}

.about-content h6{
    color:#8B0000;
    font-weight:600;
    letter-spacing:2px;
    margin-bottom:10px;
}

.about-content h2{
    font-size:44px;
    font-weight:700;
    margin-bottom:20px;
}

.about-content p{
    color:#666;
    font-size:16px;
    line-height:1.9;
    margin-bottom:18px;
}

.about-btn{
    display:inline-block;
    background:#8B0000;
    color:#fff;
    padding:14px 34px;
    border-radius:40px;
    font-weight:600;
    transition:.3s;
}

.about-btn:hover{
    background:#650000;
    color:#fff;
    transform:translateY(-3px);
}


/* =========================
   PRINCIPAL / DIRECTOR
========================= */
.principal-box{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.35s;
}

.principal-box:hover{
    transform:translateY(-8px);
}

.principal-img img{
    width:100%;
}

.principal-content{
    padding:30px;
}

.principal-content h3{
    font-weight:700;
    margin-bottom:10px;
}

.principal-content span{
    color:#8B0000;
    font-weight:600;
}

.principal-content p{
    color:#666;
    margin-top:20px;
    line-height:1.9;
}


/* =========================
   FEATURES
========================= */
.feature-box{
    background:#fff;
    padding:35px;
    border-radius:20px;
    text-align:center;
    transition:.35s;
    box-shadow:0 15px 35px rgba(0,0,0,.06);
    height:100%;
}

.feature-box:hover{
    transform:translateY(-8px);
    box-shadow:0 25px 40px rgba(0,0,0,.12);
}

.feature-icon{
    width:85px;
    height:85px;
    margin:0 auto 25px;
    border-radius:50%;
    background:#8B0000;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:32px;
}

.feature-box h4{
    font-weight:700;
    margin-bottom:15px;
}

.feature-box p{
    color:#666;
}


/* =========================
   FACILITIES
========================= */
.facility-card{
    transition:.4s;
    border-radius:15px;
    overflow:hidden;
}

.facility-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(0,0,0,.15);
}


/* =========================
   GALLERY
========================= */
.gallery-section{
    background:#f8f9fc;
}

.gallery-item{
    position:relative;
    overflow:hidden;
    border-radius:18px;
    margin-bottom:30px;
    box-shadow:0 15px 30px rgba(0,0,0,.08);
}

.gallery-item img,
.gallery-image{
    width:100%;
    height:260px;
    object-fit:cover;
    transition:.5s;
}

.gallery-item:hover img,
.gallery-item:hover .gallery-image{
    transform:scale(1.08);
}

.gallery-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    display:flex;
    justify-content:center;
    align-items:center;
    opacity:0;
    transition:.4s;
}

.gallery-item:hover .gallery-overlay{
    opacity:1;
}

.gallery-overlay i{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#fff;
    color:#8B0000;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:24px;
}

.filter-btn{
    margin:5px;
    border-radius:30px;
    padding:10px 25px;
}

.filter-btn.active{
    background:#0d6efd;
    color:#fff;
}


/* =========================
   NOTICE
========================= */
.notice-card{
    border:none;
    border-radius:18px;
    background:#fff;
    padding:30px;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
    transition:.35s;
    height:100%;
}

.notice-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.notice-card h5{
    color:#111;
    font-weight:700;
    margin-bottom:15px;
}

.notice-card p{
    color:#666;
    line-height:1.8;
}


/* =========================
   COUNTER
========================= */
.counter-section{
    background:#8B0000;
    padding:80px 0;
    color:#fff;
}

.counter-box{
    text-align:center;
}

.counter-box h2{
    font-size:48px;
    font-weight:700;
}

.counter-box p{
    margin-top:10px;
    font-size:18px;
}


/* =========================
   TESTIMONIALS
========================= */
.testimonial-section{
    background:#fff;
}

.testimonial-card{
    background:#fff;
    padding:35px;
    border-radius:20px;
    text-align:center;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.4s;
}

.testimonial-card:hover{
    transform:translateY(-8px);
}

.testimonial-card img{
    width:90px;
    height:90px;
    border-radius:50%;
    margin:0 auto 20px;
    object-fit:cover;
}

.testimonial-card h4{
    margin-top:15px;
    font-weight:700;
}

.testimonial-card span{
    color:#8B0000;
}

.testimonial-card p{
    color:#666;
    margin-top:15px;
}


/* =========================
   CTA
========================= */
.cta-section{
    background:linear-gradient(135deg,#8B0000,#c40000);
    color:#fff;
    text-align:center;
    padding:90px 0;
}

.cta-section h2{
    font-size:48px;
    font-weight:700;
}

.cta-section p{
    font-size:20px;
    margin:20px 0 35px;
}

.cta-btn{
    background:#fff;
    color:#8B0000;
    padding:15px 40px;
    border-radius:50px;
    font-weight:700;
    transition:.3s;
}

.cta-btn:hover{
    background:#FFD700;
    color:#111;
}


/* =========================
   FOOTER
========================= */
.footer-premium{
    background:#111;
    color:#fff;
    padding:70px 0 20px;
}

.footer-premium h4{
    font-size:24px;
    font-weight:700;
    margin-bottom:20px;
}

.footer-premium p{
    color:#ccc;
    line-height:1.9;
}

.footer-links{
    list-style:none;
    padding:0;
}

.footer-links li{
    margin-bottom:12px;
}

.footer-links a{
    color:#ccc;
    transition:.3s;
}

.footer-links a:hover{
    color:#FFD700;
    padding-left:5px;
}

.copyright{
    border-top:1px solid rgba(255,255,255,.08);
    margin-top:40px;
    padding-top:20px;
    text-align:center;
    color:#bbb;
}

.copyright a{
    color:#FFD700;
    font-weight:600;
}

.copyright a:hover{
    color:#fff;
}


/* =========================
   WHATSAPP
========================= */
.whatsapp-float{
    position:fixed;
    right:20px;
    bottom:90px;
    width:60px;
    height:60px;
    border-radius:50%;
    background:#25D366;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:30px;
    box-shadow:0 15px 35px rgba(0,0,0,.25);
    z-index:9999;
    transition:.3s;
}

.whatsapp-float:hover{
    transform:scale(1.08);
    color:#fff;
}


/* =========================
   BACK TO TOP
========================= */
#backToTop,
#topBtn{
    position:fixed;
    right:20px;
    bottom:20px;
    width:52px;
    height:52px;
    border:none;
    border-radius:50%;
    background:#0d6efd;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    display:none;
    justify-content:center;
    align-items:center;
    z-index:9998;
    box-shadow:0 10px 25px rgba(0,0,0,.2);
    transition:.3s;
}

#backToTop:hover,
#topBtn:hover{
    transform:translateY(-5px);
    background:#084298;
}


/* =========================
   PAGE BANNER
========================= */
.page-banner{
    position:relative;
    background-size:cover !important;
    background-position:center !important;
}

.page-banner::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
}

.page-banner .container{
    position:relative;
    z-index:2;
}


/* =========================
   CARDS / FORMS
========================= */
.card{
    border-radius:18px;
}

.form-control,
.form-select{
    padding:12px;
    border-radius:10px;
}

.form-control:focus,
.form-select:focus{
    box-shadow:none;
    border-color:#0d6efd;
}

label{
    font-weight:600;
    margin-bottom:6px;
}

.btn-primary{
    padding:12px 35px;
    font-weight:600;
    transition:.3s;
}

.btn-primary:hover{
    transform:translateY(-2px);
}


/* =========================
   ADMISSION POPUP
========================= */
.admission-popup{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.82);
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:999999;
    animation:fadeIn .35s ease;
}

.popup-box{
    width:95%;
    max-width:720px;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    position:relative;
    box-shadow:0 25px 60px rgba(0,0,0,.45);
    animation:popupScale .45s ease;
}

.popup-box img{
    width:100%;
    display:block;
}

.popup-close{
    position:absolute;
    top:12px;
    right:18px;
    font-size:34px;
    color:#fff;
    cursor:pointer;
    font-weight:bold;
    text-shadow:0 2px 10px rgba(0,0,0,.6);
}

.popup-buttons{
    display:flex;
    justify-content:center;
    gap:15px;
    flex-wrap:wrap;
    padding:20px;
}

.apply-btn,
.whatsapp-btn{
    padding:14px 28px;
    border-radius:40px;
    color:#fff;
    font-weight:600;
    transition:.3s;
}

.apply-btn{
    background:#8B0000;
}

.apply-btn:hover{
    background:#c40000;
    color:#fff;
}

.whatsapp-btn{
    background:#25D366;
}

.whatsapp-btn:hover{
    background:#1fb858;
    color:#fff;
}


/* =========================
   LOADER
========================= */
.page-loader{
    position:fixed;
    inset:0;
    background:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:9999999;
}

.loader-circle{
    width:60px;
    height:60px;
    border:5px solid #eee;
    border-top:5px solid #8B0000;
    border-radius:50%;
    animation:spin 1s linear infinite;
}


/* =========================
   UTILITY
========================= */
.shadow-lg{
    box-shadow:0 20px 45px rgba(0,0,0,.12)!important;
}

.radius{
    border-radius:20px;
}

.transition{
    transition:.35s;
}

.hover-up:hover{
    transform:translateY(-8px);
}

.fade-up{
    animation:fadeUp 1s ease;
}


/* =========================
   ANIMATIONS
========================= */
@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fadeIn{
    from{opacity:0;}
    to{opacity:1;}
}

@keyframes popupScale{
    from{
        opacity:0;
        transform:scale(.8);
    }
    to{
        opacity:1;
        transform:scale(1);
    }
}

@keyframes spin{
    from{transform:rotate(0);}
    to{transform:rotate(360deg);}
}



/* =========================================================
   FINAL NAVBAR
   header.css is NOT required
========================================================= */

.premium-navbar{
    width:100%;
    min-height:88px;
    background:#1b1b1b !important;
    position:relative;
    z-index:10000;
    box-shadow:0 5px 20px rgba(0,0,0,.18);
}

.premium-navbar .container{
    min-height:88px;
    display:flex;
    align-items:center;
}

.navbar-brand{
    display:flex !important;
    align-items:center !important;
    min-width:0;
    padding-top:0;
    padding-bottom:0;
}

.logo{
    width:58px !important;
    height:58px !important;
    object-fit:contain;
    flex-shrink:0;
}

.school-title{
    margin-left:12px;
    min-width:0;
}

.school-title h5{
    margin:0;
    color:#fff !important;
    font-size:20px;
    line-height:1.25;
    font-weight:700;
    white-space:nowrap;
}

.school-title span{
    display:block;
    margin-top:4px;
    color:#FFD700 !important;
    font-size:12px;
    line-height:1.2;
    white-space:nowrap;
}

.navbar-collapse{
    flex-grow:1;
}

.navbar-nav{
    align-items:center;
}

.navbar-nav .nav-link{
    position:relative;
    color:#fff !important;
    font-size:16px;
    font-weight:600;
    margin-left:20px;
    padding:10px 0 !important;
    transition:.3s;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{
    color:#FFD700 !important;
}

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:2px;
    width:0;
    height:2px;
    background:#FFD700;
    transition:.3s;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after{
    width:100%;
}

.navbar-nav .btn-warning{
    background:#FFC107 !important;
    border:0 !important;
    color:#111 !important;
    font-weight:700;
    padding:12px 25px !important;
    border-radius:40px !important;
    margin-left:20px;
    box-shadow:none !important;
}

.navbar-nav .btn-warning:hover{
    background:#FFD54F !important;
    color:#111 !important;
    transform:translateY(-2px);
}

.navbar-toggler{
    display:none;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:transparent !important;
    padding:7px 8px !important;
}

.navbar-toggler i{
    color:#fff !important;
    font-size:25px;
}

@media (max-width:991px){

    .premium-navbar{
        min-height:70px !important;
    }

    .premium-navbar .container{
        min-height:70px !important;
        width:100% !important;
        max-width:100% !important;
        padding-left:12px !important;
        padding-right:12px !important;
    }

    .navbar-brand{
        max-width:calc(100% - 55px) !important;
    }

    .logo{
        width:43px !important;
        height:43px !important;
    }

    .school-title{
        margin-left:8px;
        overflow:hidden;
    }

    .school-title h5{
        font-size:14px !important;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .school-title span{
        font-size:9px !important;
        overflow:hidden;
    }

    .navbar-toggler{
        display:block !important;
        margin-left:auto !important;
        flex-shrink:0;
    }

    .navbar-collapse{
        position:absolute !important;
        top:70px !important;
        left:10px !important;
        right:10px !important;
        width:auto !important;
        max-width:none !important;
        margin:0 !important;
        padding:12px 15px !important;
        background:#111 !important;
        border-radius:0 0 14px 14px !important;
        box-shadow:0 15px 35px rgba(0,0,0,.35) !important;
        z-index:10001 !important;
    }

    .navbar-collapse:not(.show){
        display:none !important;
    }

    .navbar-collapse.show{
        display:block !important;
    }

    .navbar-nav{
        width:100% !important;
        align-items:stretch !important;
        margin:0 !important;
        padding:0 !important;
    }

    .navbar-nav .nav-item{
        width:100% !important;
    }

    .navbar-nav .nav-link{
        display:block !important;
        width:100% !important;
        margin:0 !important;
        padding:12px 8px !important;
        color:#fff !important;
        border-bottom:1px solid rgba(255,255,255,.10);
    }

    .navbar-nav .nav-link:hover,
    .navbar-nav .nav-link.active{
        color:#FFC107 !important;
    }

    .navbar-nav .nav-link::after{
        display:none !important;
    }

    .navbar-nav .btn-warning{
        display:block !important;
        width:100% !important;
        margin:14px 0 4px !important;
    }
}

@media (max-width:400px){

    .logo{
        width:38px !important;
        height:38px !important;
    }

    .school-title h5{
        font-size:13px !important;
    }

    .school-title span{
        font-size:8px !important;
    }
}

/* =========================================================
   TABLET
========================================================= */
@media (max-width:991px){

    .hero-slider{
        margin-top:0 !important;
    }

    .hero-slider .hero-slide > img{
        height:78vh;
        min-height:560px;
    }

    .hero-content{
        left:5%;
        right:5%;
        bottom:12%;
        max-width:90%;
        text-align:center;
        margin:auto;
    }

    .hero-content h1{
        font-size:44px;
    }

    .hero-content p{
        font-size:18px;
    }

    .hero-btn,
    .hero-btn-outline{
        padding:13px 28px;
    }

    .section-title{
        font-size:36px;
    }

    .cta-section h2{
        font-size:38px;
    }

    .counter-box{
        margin-bottom:30px;
    }
}


/* =========================================================
   MOBILE
========================================================= */
@media (max-width:768px){

    html,
    body{
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
    }

    /* Header */
    .premium-navbar{
        width:100% !important;
        max-width:100% !important;
    }

    .premium-navbar > .container{
        width:100% !important;
        max-width:100% !important;
        padding-left:15px !important;
        padding-right:15px !important;
    }

    .navbar-brand{
        min-width:0 !important;
        max-width:calc(100% - 55px) !important;
    }

    .logo{
        width:42px !important;
        height:42px !important;
        flex-shrink:0 !important;
    }

    .school-title{
        min-width:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .school-title h5{
        font-size:15px !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    .school-title span{
        font-size:10px !important;
        white-space:nowrap !important;
        overflow:hidden !important;
    }

    /* Mobile menu */
    .navbar-collapse{
        width:100% !important;
        max-width:100% !important;
        background:#111 !important;
        padding:15px !important;
        margin-top:10px !important;
        border-radius:12px !important;
    }

    .navbar-nav{
        width:100%;
    }

    .navbar-nav .nav-item{
        width:100%;
    }

    .navbar-nav .nav-link{
        width:100%;
        padding:12px 10px;
        margin:0 !important;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .navbar-nav .btn{
        width:100%;
        margin-top:12px;
    }

    /* =========================
       HERO - MOBILE FIX
    ========================= */

    .hero-slider{
        width:100vw !important;
        max-width:100vw !important;
        min-width:100vw !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding:0 !important;
        overflow:hidden !important;
    }

    .hero-slider .heroSwiper{
        width:100vw !important;
        max-width:100vw !important;
        min-width:100vw !important;
        margin:0 !important;
        padding:0 !important;
        overflow:hidden !important;
    }

    .hero-slider .swiper-wrapper{
        width:100% !important;
    }

    .hero-slider .swiper-slide{
        width:100vw !important;
        max-width:100vw !important;
        min-width:100vw !important;
        margin:0 !important;
        padding:0 !important;
    }

    .hero-slider .hero-slide{
        width:100vw !important;
        max-width:100vw !important;
        min-width:100vw !important;
        overflow:hidden !important;
    }

    .hero-slider .hero-slide > img{
        display:block !important;
        width:100vw !important;
        max-width:none !important;
        min-width:100vw !important;
        height:78vh !important;
        min-height:550px !important;
        object-fit:cover !important;
        object-position:center center !important;
    }

    .hero-overlay{
        width:100% !important;
    }

    /* Hero content */
    .hero-slider .hero-content{
        position:absolute !important;
        left:0 !important;
        right:0 !important;
        top:50% !important;
        bottom:auto !important;
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        padding:0 45px !important;
        transform:translateY(-35%) !important;
        text-align:center !important;
    }

    .hero-content h5{
        font-size:14px !important;
        letter-spacing:3px !important;
        margin-bottom:12px !important;
    }

    .hero-content h1{
        width:100% !important;
        max-width:100% !important;
        font-size:32px !important;
        line-height:1.15 !important;
        margin-bottom:16px !important;
    }

    .hero-content p{
        width:100% !important;
        max-width:100% !important;
        font-size:15px !important;
        line-height:1.5 !important;
        margin-bottom:22px !important;
    }

    .hero-btn,
    .hero-btn-outline{
        display:flex !important;
        width:100% !important;
        max-width:280px !important;
        margin:8px auto !important;
        padding:12px 18px !important;
    }

    /* Hero arrows */
    .hero-slider .swiper-button-prev,
    .hero-slider .swiper-button-next{
        width:48px !important;
        height:48px !important;
        top:55% !important;
    }

    .hero-slider .swiper-button-prev{
        left:10px !important;
    }

    .hero-slider .swiper-button-next{
        right:10px !important;
    }

    .hero-slider .swiper-button-prev::after,
    .hero-slider .swiper-button-next::after{
        font-size:20px !important;
    }

    .hero-slider .swiper-pagination{
        bottom:15px !important;
    }

    /* Sections */
    .section-padding{
        padding:60px 0;
    }

    .section-title{
        font-size:30px;
    }

    .about-content h2{
        font-size:30px;
    }

    .about-content p{
        font-size:15px;
    }

    .feature-box,
    .notice-card,
    .facility-card,
    .testimonial-card{
        margin-bottom:25px;
    }

    .cta-section{
        padding:60px 20px;
    }

    .cta-section h2{
        font-size:32px;
    }

    .cta-section p{
        font-size:16px;
    }

    .footer-premium{
        text-align:center;
    }

    .footer-links{
        margin-top:20px;
    }

    .popup-buttons{
        flex-direction:column;
    }

    .apply-btn,
    .whatsapp-btn{
        width:100%;
        text-align:center;
    }

    .whatsapp-float{
        width:54px;
        height:54px;
        right:15px;
        bottom:80px;
        font-size:26px;
    }

    #backToTop,
    #topBtn{
        width:48px;
        height:48px;
        right:15px;
        bottom:20px;
    }

    img{
        max-width:100%;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */
@media (max-width:576px){

    .hero-slider{
        margin-top:0 !important;
    }

    .hero-slider .hero-slide > img{
        width:100vw !important;
        min-width:100vw !important;
        height:78vh !important;
        min-height:550px !important;
        object-position:center center !important;
    }

    .hero-slider .hero-content{
        padding-left:42px !important;
        padding-right:42px !important;
    }

    .hero-content h1{
        font-size:29px !important;
    }

    .hero-content p{
        font-size:14px !important;
    }

    .hero-btn,
    .hero-btn-outline{
        max-width:270px !important;
        font-size:14px;
    }

    .hero-slider .swiper-button-prev,
    .hero-slider .swiper-button-next{
        width:48px !important;
        height:48px !important;
    }

    .section-title{
        font-size:28px;
    }

    .popup-box{
        width:94%;
    }
}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */
@media (max-width:400px){

    .school-title h5{
        font-size:13px !important;
    }

    .school-title span{
        font-size:9px !important;
    }

    .logo{
        width:38px !important;
        height:38px !important;
    }

    .hero-slider .hero-content{
        padding-left:38px !important;
        padding-right:38px !important;
    }

    .hero-content h1{
        font-size:26px !important;
    }

    .hero-content p{
        font-size:13px !important;
    }

    .hero-btn,
    .hero-btn-outline{
        max-width:250px !important;
        padding:11px 15px !important;
    }
}


/* =========================================================
   FINAL HERO MOBILE OVERRIDES
========================================================= */

@media (max-width:768px){

    .hero-slider,
    .hero-slider .heroSwiper,
    .hero-slider .swiper-wrapper,
    .hero-slider .swiper-slide,
    .hero-slider .hero-slide{
        width:100vw !important;
        max-width:100vw !important;
        min-width:100vw !important;
        margin-left:0 !important;
        margin-right:0 !important;
        overflow:hidden !important;
    }

    .hero-slider .hero-slide > img{
        display:block !important;
        width:100vw !important;
        max-width:none !important;
        min-width:100vw !important;
        height:78vh !important;
        min-height:550px !important;
        object-fit:cover !important;
        object-position:center center !important;
    }

    .hero-slider .hero-content{
        left:0 !important;
        right:0 !important;
        top:50% !important;
        bottom:auto !important;
        width:100% !important;
        max-width:100% !important;
        padding:0 45px !important;
        margin:0 !important;
        transform:translateY(-35%) !important;
        text-align:center !important;
    }

    .hero-slider .hero-content h5{
        font-size:14px !important;
        letter-spacing:3px !important;
        margin-bottom:12px !important;
    }

    .hero-slider .hero-content h1{
        font-size:32px !important;
        line-height:1.15 !important;
        margin-bottom:16px !important;
    }

    .hero-slider .hero-content p{
        font-size:15px !important;
        line-height:1.5 !important;
        margin-bottom:22px !important;
    }

    .hero-slider .hero-btn,
    .hero-slider .hero-btn-outline{
        display:flex !important;
        width:100% !important;
        max-width:280px !important;
        margin:8px auto !important;
        padding:12px 18px !important;
    }

    .hero-slider .swiper-button-prev,
    .hero-slider .swiper-button-next{
        width:48px !important;
        height:48px !important;
        top:55% !important;
    }

    .hero-slider .swiper-button-prev{left:10px !important;}
    .hero-slider .swiper-button-next{right:10px !important;}
}

@media (max-width:576px){

    .hero-slider .hero-slide > img{
        width:100vw !important;
        min-width:100vw !important;
        height:680px !important;
        min-height:680px !important;
        object-fit:cover !important;
        object-position:center center !important;
    }

    .hero-slider .hero-content{
        top:52% !important;
        padding-left:48px !important;
        padding-right:48px !important;
        transform:translateY(-50%) !important;
    }

    .hero-slider .hero-content h5{
        font-size:13px !important;
    }

    .hero-slider .hero-content h1{
        font-size:29px !important;
    }

    .hero-slider .hero-content p{
        font-size:14px !important;
    }

    .hero-slider .hero-btn,
    .hero-slider .hero-btn-outline{
        width:230px !important;
        max-width:230px !important;
        padding:11px 15px !important;
        font-size:14px !important;
    }

    .hero-slider .swiper-button-prev,
    .hero-slider .swiper-button-next{
        width:46px !important;
        height:46px !important;
        top:55% !important;
    }

    .hero-slider .swiper-button-prev{left:8px !important;}
    .hero-slider .swiper-button-next{right:8px !important;}
}