:root{
  --navy:#06294a; --navy2:#0a365f; --yellow:#f8c515; --yellow2:#ffd83d;
  --text:#26384b; --muted:#687789; --light:#f6f8fb; --white:#fff;
  --shadow:0 12px 35px rgba(6,41,74,.10); --radius:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body{font-family:Inter,Arial,sans-serif;color:var(--text);line-height:1.65;background:#fff}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
.container{width:min(1180px,92%);margin:auto}
.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fff;box-shadow:0 3px 20px rgba(0,0,0,.08)}
.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{width:58px;height:58px}
.brand strong{display:block;font-size:13px;letter-spacing:.3px;color:var(--navy)}
.brand small{display:block;font-size:9px;color:#777}
.main-nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:700;text-transform:uppercase}
.main-nav a{transition:.2s}
.main-nav a:hover{color:#c69700}
.nav-admission{background:var(--yellow);padding:11px 18px;border-radius:5px;color:var(--navy)!important}
.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--navy)}
.hero{height:690px;position:relative;overflow:hidden;margin-top:78px;background:#122}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.02);transition:opacity .7s}
.hero-slide.active{opacity:1}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,42,.78),rgba(3,24,42,.18))}
.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:1180px}
.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--yellow)}
.hero h1{font-family:Poppins,sans-serif;font-size:54px;line-height:1.12;max-width:700px;margin:15px 0}
.hero h1 em{font-style:normal;color:var(--yellow)}
.hero p{max-width:610px;font-size:17px}
.hero-actions{display:flex;gap:14px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;padding:12px 23px;font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:.4px;cursor:pointer}
.btn-primary{background:var(--yellow);color:var(--navy)}
.btn-dark{background:var(--navy);color:#fff}
.btn-outline{border:1px solid #fff;color:#fff;background:transparent}
.hero-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:42px;height:42px;border:1px solid #fff;border-radius:50%;background:rgba(0,0,0,.15);color:#fff;font-size:30px;cursor:pointer}
.hero-arrow.prev{left:25px}.hero-arrow.next{right:25px}
.hero-dots{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:7px}
.hero-dots button{width:8px;height:8px;border:0;border-radius:50%;background:#fff;opacity:.5;cursor:pointer}
.hero-dots button.active{opacity:1;background:var(--yellow)}
.section{padding:85px 0}.light{background:var(--light)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
h2{font-family:Poppins,sans-serif;font-size:36px;line-height:1.2;color:var(--navy);margin:8px 0 22px}
h2 span{color:#d7a800}
.about p{color:var(--muted);margin-bottom:15px}
.about-image{position:relative}.about-image img{border-radius:var(--radius);width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:var(--shadow)}
.image-badge{position:absolute;bottom:20px;left:20px;background:var(--yellow);padding:13px 18px;border-radius:10px;display:flex;gap:10px;align-items:center;color:var(--navy)}
.image-badge strong{font-size:28px}.image-badge span{font-size:11px;font-weight:700;line-height:1.3}
.section-heading{text-align:center;margin-bottom:42px}.section-heading h2{margin-bottom:0}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.feature-grid article{text-align:center;padding:28px 18px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}
.feature-icon{width:64px;height:64px;margin:0 auto 15px;background:#fff3c9;border-radius:50%;display:grid;place-items:center;font-size:27px}
.feature-grid h3{font-size:16px;color:var(--navy);margin-bottom:8px}.feature-grid p{font-size:13px;color:var(--muted)}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.photo-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.photo-card img{width:100%;height:190px;object-fit:cover}.photo-card div{padding:16px}.photo-card h3{font-size:16px;color:var(--navy)}.photo-card p{font-size:12px;color:var(--muted)}
.inline-heading{display:flex;justify-content:space-between;align-items:end;text-align:left}.inline-heading h2{margin-bottom:0}.text-link{font-weight:800;color:var(--navy);font-size:13px}
.events-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.event-card{position:relative;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.event-card>img{width:100%;height:180px;object-fit:cover}.event-date{position:absolute;top:12px;left:12px;background:var(--navy);color:#fff;border-radius:7px;padding:7px 10px;text-align:center;line-height:1}.event-date b{display:block;font-size:19px}.event-date small{font-size:9px;color:var(--yellow);font-weight:800}.event-body{padding:16px}.event-body h3{font-size:15px;color:var(--navy)}.event-body p{font-size:12px;color:var(--muted)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:12px}
.gallery-item{border:0;background:none;padding:0;cursor:pointer;overflow:hidden;border-radius:12px}.gallery-item.wide{grid-column:span 2}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.05)}
.testimonials{background:var(--navy);color:#fff}.testimonials h2{color:#fff}.testimonials .section-kicker{color:var(--yellow)}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
blockquote{background:#fff;color:var(--text);border-radius:12px;padding:28px;font-size:15px;box-shadow:var(--shadow)}
blockquote:before{content:'“';font-size:42px;line-height:.5;color:var(--yellow);font-weight:800}
blockquote cite{display:block;margin-top:18px;font-size:11px;font-style:normal;font-weight:800;color:var(--navy)}
.admission-strip{background:var(--yellow);padding:28px 0}.admission-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.admission-inner span{font-size:11px;font-weight:800;letter-spacing:2px}.admission-inner h2{margin:2px 0;font-size:25px}.admission-inner p{font-size:13px}.admission-actions{display:flex;align-items:center;gap:14px}.phone{font-weight:800;color:var(--navy);font-size:14px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact p{color:var(--muted);margin:12px 0}.socials{display:flex;gap:15px;margin-top:20px;color:var(--navy);font-size:13px;font-weight:800}
.contact-form{display:grid;gap:13px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #dbe1e8;border-radius:7px;padding:13px 14px;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--yellow)}.contact-form small{color:#17803b}
.footer{background:#041f39;color:#cbd7e3;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:40px}.footer-logo{width:55px;margin-bottom:10px}.footer h3{color:#fff;font-size:14px}.footer h4{color:#fff;margin-bottom:12px}.footer a,.footer p{display:block;font-size:12px;margin:5px 0;color:#b9c7d4}.copyright{text-align:center;border-top:1px solid rgba(255,255,255,.1);padding:16px;font-size:11px}
.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:2000;place-items:center;padding:30px}.lightbox.open{display:grid}.lightbox img{max-width:95vw;max-height:88vh;object-fit:contain}.lightbox button{position:absolute;top:20px;right:30px;border:0;background:none;color:#fff;font-size:42px;cursor:pointer}
@media(max-width:900px){
  .main-nav{position:absolute;top:78px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:15px 5%;gap:0;box-shadow:0 10px 20px rgba(0,0,0,.08)}
  .main-nav.open{display:flex}.main-nav a{padding:12px 0}.nav-admission{text-align:center}
  .menu-toggle{display:block}.hero{height:620px}.hero h1{font-size:42px}.feature-grid,.card-grid,.events-grid{grid-template-columns:repeat(2,1fr)}
  .two-col,.contact-grid{grid-template-columns:1fr;gap:40px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.gallery-item.wide{grid-column:span 2}
  .testimonial-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.admission-inner{flex-direction:column;align-items:flex-start}
}
@media(max-width:600px){
  .container{width:90%}.nav-wrap{min-height:68px}.brand img{width:50px;height:50px}.brand strong{font-size:11px}.brand small{font-size:8px}
  .main-nav{top:68px}.hero{margin-top:68px;height:570px}.hero-content{justify-content:center}.hero h1{font-size:34px}.hero p{font-size:14px}.hero-arrow{width:34px;height:34px;font-size:24px}.hero-arrow.prev{left:10px}.hero-arrow.next{right:10px}
  .hero-actions{flex-direction:column;align-items:flex-start}.btn{padding:11px 18px}
  .section{padding:60px 0}h2{font-size:29px}.feature-grid,.card-grid,.events-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:130px}.gallery-item.wide{grid-column:span 2}
  .inline-heading{display:block}.inline-heading .text-link{display:inline-block;margin-top:12px}.testimonial-grid{gap:14px}
  .admission-actions{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr;gap:25px}
}
.school-map {
    margin-top: 25px;
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
}

.school-map iframe {
    display: block;
    width: 100%;
    height: 300px;
    border: 0;
}

.map-button {
    margin-top: 15px;
}


.map-button a {
    display: inline-block;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.3px;
}
/* ================================
   TESTIMONIAL SLIDER
================================ */

.testimonial-slider {
  width: 100%;
  overflow: hidden;
  position: relative;
  margin-top: 35px;
}

.testimonial-track {
  display: flex;
  transition: transform 0.7s ease-in-out;
}

.testimonial-card {
  min-width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 40px 50px;
  text-align: center;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08);
}

.quote-icon {
  font-size: 55px;
  line-height: 40px;
  font-weight: 800;
  margin-bottom: 15px;
}

.testimonial-card p {
  max-width: 850px;
  margin: 0 auto 25px;
  font-size: 17px;
  line-height: 1.8;
}

.testimonial-card cite {
  display: block;
  font-style: normal;
  font-weight: 700;
}

/* Dots */

.testimonial-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 25px;
}

.testimonial-dots .dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
  transition: all 0.3s ease;
}

.testimonial-dots .dot.active {
  width: 25px;
  border-radius: 10px;
}

/* Mobile */

@media (max-width: 768px) {

  .testimonial-card {
    padding: 30px 20px;
  }

  .testimonial-card p {
    font-size: 15px;
    line-height: 1.7;
  }

  .quote-icon {
    font-size: 45px;
  }
}
/* =====================================================
   PREMIUM ADMISSION SECTION
===================================================== */

.admission-section {
    background: linear-gradient(
        135deg,
        #06294a 0%,
        #0a365f 55%,
        #06294a 100%
    );

    padding: 90px 0;
    color: #fff;
    position: relative;
    overflow: hidden;
}


/* Decorative circles */

.admission-section::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(248,197,21,.07);
    top: -180px;
    right: -120px;
}

.admission-section::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(248,197,21,.05);
    bottom: -150px;
    left: -100px;
}


/* Heading */

.admission-heading {
    position: relative;
    z-index: 2;
    text-align: center;
    margin-bottom: 55px;
}

.admission-heading > span {
    color: #f8c515;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
}

.admission-heading h2 {
    color: #fff;
    font-size: 42px;
    margin: 10px 0 12px;
}

.admission-heading h2 strong {
    color: #f8c515;
}

.admission-heading p {
    color: rgba(255,255,255,.78);
    font-size: 16px;
}


/* Main wrapper */

.admission-wrapper {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 65px;

    align-items: center;
}


/* Left */

.admission-content {
    padding-right: 20px;
}

.admission-kicker {
    color: #f8c515;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.admission-content > h2 {
    color: #fff;
    font-family: Poppins, sans-serif;
    font-size: 36px;
    line-height: 1.2;
    margin: 12px 0 20px;
}

.admission-content > h2 strong {
    color: #f8c515;
    display: block;
}

.admission-description {
    color: rgba(255,255,255,.82);
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 28px;
}


/* Features */

.admission-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.admission-feature {
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px;

    background: rgba(255,255,255,.07);

    border: 1px solid rgba(255,255,255,.08);

    border-radius: 12px;

    transition: .3s ease;
}

.admission-feature:hover {
    background: rgba(248,197,21,.12);
    transform: translateY(-4px);
}

.feature-icon {
    width: 42px;
    height: 42px;

    flex-shrink: 0;

    display: grid;
    place-items: center;

    background: rgba(248,197,21,.15);

    border-radius: 10px;

    font-size: 21px;
}

.admission-feature h3 {
    color: #fff;
    font-size: 14px;
    margin-bottom: 2px;
}

.admission-feature p {
    color: rgba(255,255,255,.62);
    font-size: 11px;
    margin: 0;
}


/* Contact */

.admission-contact {
    display: flex;
    align-items: center;
    gap: 20px;

    margin-top: 30px;

    padding-top: 25px;

    border-top: 1px solid rgba(255,255,255,.12);
}

.admission-phone span {
    display: block;
    color: #f8c515;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.admission-phone a {
    display: block;
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    margin-top: 3px;
}

.admission-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 11px 18px;

    background: #25d366;
    color: #fff;

    border-radius: 7px;

    font-size: 12px;
    font-weight: 800;

    transition: .3s ease;
}

.admission-whatsapp:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(37,211,102,.25);
}


/* =====================================================
   FORM CARD
===================================================== */

.admission-card {
    background: #fff;

    color: #26384b;

    padding: 32px;

    border-radius: 20px;

    box-shadow:
        0 25px 70px rgba(0,0,0,.25);

    position: relative;
}


/* Yellow top line */

.admission-card::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 5px;

    background: #f8c515;

    border-radius: 20px 20px 0 0;
}


/* Form heading */

.admission-card-header {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-bottom: 8px;
}

.form-icon {
    width: 48px;
    height: 48px;

    display: grid;
    place-items: center;

    background: #fff4c7;

    border-radius: 12px;

    font-size: 23px;
}

.admission-card-header > div:last-child span {
    color: #c69700;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.admission-card-header h3 {
    color: #06294a;
    font-family: Poppins, sans-serif;
    font-size: 25px;
    line-height: 1.2;
    margin-top: 2px;
}

.form-subtitle {
    color: #687789;
    font-size: 12px;
    margin-bottom: 22px;
}


/* Form */

.admission-form {
    display: grid;
    gap: 15px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
}

.form-field {
    display: flex;
    flex-direction: column;
}

.form-field label {
    color: #26384b;
    font-size: 11px;
    font-weight: 700;
    margin-bottom: 6px;
}

.form-field label b {
    color: #e11d48;
}

.form-field input,
.form-field select,
.form-field textarea {
    width: 100%;

    border: 1px solid #dce2e8;

    border-radius: 7px;

    padding: 11px 12px;

    font-size: 12px;

    color: #26384b;

    background: #fff;

    outline: none;

    transition: .25s ease;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
    border-color: #f8c515;

    box-shadow:
        0 0 0 3px rgba(248,197,21,.12);
}

.form-field textarea {
    resize: vertical;
}


/* Submit */

.admission-submit {
    width: 100%;

    border: 0;

    background: #f8c515;

    color: #06294a;

    padding: 14px 20px;

    border-radius: 8px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    font-size: 12px;
    font-weight: 800;

    cursor: pointer;

    transition: .3s ease;
}

.admission-submit strong {
    font-size: 20px;
}

.admission-submit:hover {
    background: #ffd83d;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(248,197,21,.25);
}


/* Success message */

.admission-form-message {
    text-align: center;

    color: #17803b;

    font-size: 12px;

    font-weight: 700;

    min-height: 18px;
}

.form-security {
    display: block;

    text-align: center;

    color: #8a96a3;

    font-size: 10px;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 900px) {

    .admission-wrapper {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .admission-content {
        padding-right: 0;
    }

}


@media (max-width: 600px) {

    .admission-section {
        padding: 65px 0;
    }

    .admission-heading {
        margin-bottom: 35px;
    }

    .admission-heading h2 {
        font-size: 29px;
    }

    .admission-heading p {
        font-size: 13px;
    }

    .admission-content > h2 {
        font-size: 28px;
    }

    .admission-features {
        grid-template-columns: 1fr;
    }

    .admission-contact {
        flex-direction: column;
        align-items: flex-start;
    }

    .admission-card {
        padding: 23px 18px;
        border-radius: 15px;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .admission-card-header h3 {
        font-size: 21px;
    }

}
.floating-call-btn {
    position: fixed;
    right: 20px;
    bottom: 90px;
    width: 58px;
    height: 58px;
    background:#58b9ca;;
    color: #fff;
   border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    text-decoration: none;
    box-shadow: 0 5px 18px rgba(0,0,0,0.25);
    z-index: 9999;
    transition: all 0.3s ease;
    /* Default Vibration */
    animation: callVibrate 1.8s infinite;
}


/* Call Button Vibration */
@keyframes callVibrate {

    0%, 40%, 100% {
        transform: translateX(0);
    }

    42% {
        transform: translateX(-4px) rotate(-4deg);
    }

    44% {
        transform: translateX(4px) rotate(4deg);
    }
    46% {
        transform: translateX(-4px) rotate(-4deg);
    }
    48% {
        transform: translateX(4px) rotate(4deg);
    }
    50% {
        transform: translateX(0);
    }
}

.floating-call-btn:hover {
    transform: scale(1.1);
    color: #fff;
    animation: none;
}

/* Mobile */
@media (max-width: 600px) {
    .floating-call-btn {
        right: 15px;
        bottom: 80px;
        width: 55px;
        height: 55px;
        font-size: 26px;
    }
}