   * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

html, body{
  max-width:100%;
  overflow-x:hidden;
  font-family: 'Poppins', sans-serif;
}


/* WhatsApp Icon */
#whatsapp-icon {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
}

#whatsapp-icon img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #25D366;
  padding: 10px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
}



/* ========================
   Top Bar
======================== */
/* ========================
   Top Bar FIX
======================== */
.top-bar{
    background:#1f4ea3;
    color:#fff;
    font-size:14px;
    padding:6px 0;
}

/* full width layout */
.top-bar .container{
    max-width:1400px;
    width:95%;
    margin:auto;
}

/* keep everything in one row */
.flex-between{
    display:flex;
    justify-content:space-between;
    align-items:center;
    white-space:nowrap; /* 🔥 prevents wrapping */
}

/* spacing */
.top-left,
.top-right{
    display:flex;
    align-items:center;
    gap:18px;
}


/* ========================
   Navbar
======================== */
.navbar{
    background:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,0.05);
}

.nav-wrapper{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:40px 0;
}


/* Logo */
.logo img{
    height:48px;
    margin-left: 30px;
}


/* Menu */
.nav-menu{
    display:flex;
    align-items:center;
    gap:28px;
    list-style:none;
}

.nav-menu li a{
    text-decoration:none;
    color:#333;
    font-weight:500;
    transition:0.3s;
}

.nav-menu li a:hover{
    color:#1f4ea3;
}

/* ===== Dropdown Fix ===== */

.dropdown{
    position:relative;
}

/* keep navbar visible for dropdown */
/* Navbar height control */
.navbar{
    background:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,0.05);

    min-height:90px;   /* 🔥 increase white bar height */
    display:flex;
    align-items:center;
}

/* spacing inside */
.nav-wrapper{
    padding:0;  /* remove old padding */
}

/* submenu */
.dropdown-menu{
    position:absolute;
    top:100%;
    left:0;

    min-width:230px;
    background:#fff;
    border-radius:10px;

    box-shadow:0 10px 25px rgba(0,0,0,0.12);

    padding:10px 0;

    opacity:0;
    visibility:hidden;
    transform:translateY(10px);

    transition:all .25s ease;

    z-index:9999;
}

/* items */
.dropdown-menu li{
    list-style:none;
}

.dropdown-menu li a{
    display:block;
    padding:10px 18px;
    color:#333;
    text-decoration:none;
    font-size:14px;
}

.dropdown-menu li a:hover{
    background:#f5f7fb;
    color:#1f4ea3;
}


/* 🔥 SHOW ON HOVER */
.dropdown:hover .dropdown-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

/* ========================
   Button
======================== */
.btn-start{
    background:#ff7a00;
    color:#fff !important;
    padding:10px 20px;
    border-radius:25px;
    font-weight:600;
}

.btn-start:hover{
    background:#e56700;
}


/* ========================
   Hamburger
======================== */
.hamburger{
    display:none;
    font-size:26px;
    cursor:pointer;
}


/* ========================
   Mobile Drawer
======================== */
.mobile-menu{
    position:fixed;
    top:0;
    right:-100%;
    width:100%;
    height:100vh;
    background:#fff;
    box-shadow:-4px 0 20px rgba(0,0,0,0.1);
    padding:30px;
    display:flex;
    flex-direction:column;
    gap:18px;
    transition:0.4s;
    z-index:999;
}

.mobile-menu a,
.mobile-dropdown button{
    text-decoration:none;
    color:#333;
    font-size:16px;
    background:none;
    border:none;
    text-align:left;
    cursor:pointer;
}

.mobile-menu.active{
    right:0;
}

.close-menu{
    font-size:24px;
    align-self:flex-end;
    cursor:pointer;
}


/* mobile submenu */
.mobile-submenu{
    display:none;
    padding-left:15px;
    display:flex;
    flex-direction:column;
    gap:10px;
}



/* ========================
   Responsive
======================== */
@media(max-width:992px){

    .nav-menu{
        display:none;
    }

    .hamburger{
        display:block;
        margin-right: 30px;
    }

    /* hide blue bar on mobile */
    .top-bar{
        display:none;
    }
}





/* Prevent transform/animation sections from trapping fixed menu */
.congratulations-section{
  isolation: isolate;
}

.congratulations-section {
    overflow-y: hidden;
}

.congratulations-section {
    position: relative;
    min-height: 100vh;
    box-sizing: border-box;
    background: linear-gradient(135deg, #4158D0 0%, #5B7FDE 50%, #6B95EA 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 40px 20px;
    overflow-x: hidden;
}

        /* Floating particles */
        .particle {
            position: absolute;
            pointer-events: none;
            animation: float 3s ease-in-out infinite;
        }

        .star {
            color: #FFD700;
            font-size: 20px;
            opacity: 0.7;
        }

        .small-star {
            font-size: 14px;
            opacity: 0.5;
        }

        .circle {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            opacity: 0.6;
        }

        .orange-circle {
            background-color: #FF6B35;
        }

        .yellow-circle {
            background-color: #FFD700;
        }

        @keyframes float {
            0%, 100% {
                transform: translateY(0px) rotate(0deg);
            }
            50% {
                transform: translateY(-20px) rotate(180deg);
            }
        }

        /* Learning Icons Floating */
        .learning-icon {
            position: absolute;
            font-size: 40px;
            opacity: 0.3;
            animation: floatSlow 8s ease-in-out infinite;
        }

        @keyframes floatSlow {
            0%, 100% {
                transform: translateY(0px) translateX(0px) rotate(0deg);
            }
            25% {
                transform: translateY(-30px) translateX(20px) rotate(5deg);
            }
            50% {
                transform: translateY(-60px) translateX(0px) rotate(-5deg);
            }
            75% {
                transform: translateY(-30px) translateX(-20px) rotate(5deg);
            }
        }

        /* Animated Children Reading Books */
        .reading-character {
            position: absolute;
            font-size: 60px;
            animation: readingBounce 3s ease-in-out infinite;
            filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.2));
        }

        @keyframes readingBounce {
            0%, 100% {
                transform: translateY(0px) scale(1);
            }
            50% {
                transform: translateY(-15px) scale(1.05);
            }
        }

        .character-left {
            bottom: 10%;
            left: 5%;
            animation-delay: 0s;
        }

        .character-right {
            bottom: 10%;
            right: 5%;
            animation-delay: 1.5s;
        }

        /* Floating Books */
        .floating-book {
            position: absolute;
            font-size: 35px;
            animation: bookFloat 6s ease-in-out infinite;
            opacity: 0.4;
        }

        @keyframes bookFloat {
            0%, 100% {
                transform: translateY(0px) rotate(0deg);
                opacity: 0.4;
            }
            50% {
                transform: translateY(-50px) rotate(10deg);
                opacity: 0.6;
            }
        }

        /* Trophy and celebration icons */
        .trophy-container {
            margin-bottom: 30px;
            animation: bounce 2s ease-in-out infinite;
            position: relative;
            z-index: 10;
        }

        .trophy {
            font-size: 80px;
            filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.2));
        }

        .celebration-emoji {
            font-size: 40px;
            margin: 0 15px;
            animation: rotate 2s linear infinite;
        }

        @keyframes bounce {
            0%, 100% {
                transform: translateY(0px);
            }
            50% {
                transform: translateY(-15px);
            }
        }

        @keyframes rotate {
            0% {
                transform: rotate(0deg);
            }
            25% {
                transform: rotate(-15deg);
            }
            75% {
                transform: rotate(15deg);
            }
            100% {
                transform: rotate(0deg);
            }
        }

        /* Sparkle Effect */
        .sparkle {
            position: absolute;
            font-size: 25px;
            animation: sparkle 2s ease-in-out infinite;
        }

        @keyframes sparkle {
            0%, 100% {
                opacity: 0;
                transform: scale(0);
            }
            50% {
                opacity: 1;
                transform: scale(1.2);
            }
        }

        /* Badge */
        .badge {
            background-color: rgba(255, 255, 255, 0.25);
            backdrop-filter: blur(10px);
            padding: 15px 40px;
            border-radius: 50px;
            margin-bottom: 30px;
            animation: slideDown 1s ease-out;
            position: relative;
            z-index: 10;
        }

        .badge-text {
            color: white;
            font-size: 18px;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        @keyframes slideDown {
            from {
                opacity: 0;
                transform: translateY(-50px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Main heading */
        .main-heading {
            font-size: 72px;
            font-weight: 900;
            color: white;
            text-align: center;
            margin-bottom: 20px;
            text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
            animation: fadeInScale 1.2s ease-out;
            letter-spacing: 2px;
            position: relative;
            z-index: 10;
        }

        @keyframes fadeInScale {
            from {
                opacity: 0;
                transform: scale(0.8);
            }
            to {
                opacity: 1;
                transform: scale(1);
            }
        }

        /* Subtitle */
        .subtitle {
            color: white;
            font-size: 22px;
            text-align: center;
            margin-bottom: 10px;
            animation: fadeIn 1.5s ease-out;
            position: relative;
            z-index: 10;
        }

        .subtitle .highlight {
            color: #ffffff;
            font-weight: 700;
            font-size: 30px;
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
            }
            to {
                opacity: 1;
            }
        }

        /* Stars rating */
        .stars-container {
            display: flex;
            gap: 15px;
            margin: 30px 0;
            animation: fadeIn 2s ease-out;
            position: relative;
            z-index: 10;
        }

        .star-icon {
            font-size: 50px;
            color: #FFD700;
            filter: drop-shadow(0 4px 10px rgba(255, 215, 0, 0.5));
            animation: starPulse 1.5s ease-in-out infinite;
            cursor: pointer;
            transition: transform 0.3s ease;
        }

        .star-icon:hover {
            transform: scale(1.3) rotate(15deg);
        }

        .star-icon:nth-child(1) { animation-delay: 0s; }
        .star-icon:nth-child(2) { animation-delay: 0.2s; }
        .star-icon:nth-child(3) { animation-delay: 0.4s; }
        .star-icon:nth-child(4) { animation-delay: 0.6s; }
        .star-icon:nth-child(5) { animation-delay: 0.8s; }

        @keyframes starPulse {
            0%, 100% {
                transform: scale(1);
            }
            50% {
                transform: scale(1.2);
            }
        }

        /* Achievement Badges */
        .achievement-badges {
            display: flex;
            gap: 20px;
            margin: 40px 0;
            flex-wrap: wrap;
            justify-content: center;
            position: relative;
            z-index: 10;
        }

        .achievement-badge {
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(10px);
            padding: 20px;
            border-radius: 20px;
            text-align: center;
            min-width: 120px;
            transition: all 0.3s ease;
            cursor: pointer;
            animation: popIn 0.6s ease-out;
            animation-fill-mode: backwards;
        }

        .achievement-badge:nth-child(1) { animation-delay: 0.2s; }
        .achievement-badge:nth-child(2) { animation-delay: 0.4s; }
        .achievement-badge:nth-child(3) { animation-delay: 0.6s; }
        .achievement-badge:nth-child(4) { animation-delay: 0.8s; }

        @keyframes popIn {
            from {
                opacity: 0;
                transform: scale(0.5);
            }
            to {
                opacity: 1;
                transform: scale(1);
            }
        }

        .achievement-badge:hover {
            transform: translateY(-10px) scale(1.05);
            background: rgba(255, 255, 255, 0.3);
        }

        .achievement-icon {
            font-size: 40px;
            margin-bottom: 10px;
            display: block;
        }

        .achievement-label {
            color: white;
            font-size: 14px;
            font-weight: 600;
        }

        .achievement-value {
            color: #FFD700;
            font-size: 24px;
            font-weight: 900;
            margin-top: 5px;
        }

        /* Progress Ring */
        .progress-ring {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 600px;
            height: 600px;
            border-radius: 50%;
            border: 3px dashed rgba(255, 255, 255, 0.2);
            animation: rotateRing 30s linear infinite;
            pointer-events: none;
        }

        @keyframes rotateRing {
            from {
                transform: translate(-50%, -50%) rotate(0deg);
            }
            to {
                transform: translate(-50%, -50%) rotate(360deg);
            }
        }

        /* Confetti Animation */
        .confetti {
            position: absolute;
            width: 10px;
            height: 10px;
            background-color: #FFD700;
            animation: confettiFall 4s ease-in infinite;
        }

        @keyframes confettiFall {
            0% {
                top: -10%;
                opacity: 1;
            }
            100% {
                top: 110%;
                opacity: 0;
            }
        }

        /* Brain Power Meter */
        .brain-power-meter {
            position: relative;
            z-index: 10;
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(10px);
            padding: 25px 35px;
            border-radius: 20px;
            margin: 30px 0;
            min-width: 300px;
            animation: fadeInUp 1.8s ease-out;
        }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(50px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .brain-icon-large {
            font-size: 50px;
            text-align: center;
            margin-bottom: 15px;
            animation: brainPulse 2s ease-in-out infinite;
        }

        @keyframes brainPulse {
            0%, 100% {
                transform: scale(1);
                filter: drop-shadow(0 0 10px rgba(255, 215, 0, 0.5));
            }
            50% {
                transform: scale(1.1);
                filter: drop-shadow(0 0 20px rgba(255, 215, 0, 0.8));
            }
        }

        .power-label {
            color: white;
            text-align: center;
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 15px;
        }

        .power-bar-container {
            width: 100%;
            height: 30px;
            background: rgba(0, 0, 0, 0.2);
            border-radius: 15px;
            overflow: hidden;
            position: relative;
        }

        .power-bar-fill {
            height: 100%;
            background: linear-gradient(90deg, #FFD700, #FF6B35);
            border-radius: 15px;
            animation: fillBar 2s ease-out forwards;
            display: flex;
            align-items: center;
            justify-content: flex-end;
            padding-right: 15px;
            font-weight: 900;
            color: white;
            font-size: 14px;
        }

        @keyframes fillBar {
            from {
                width: 0%;
            }
            to {
                width: 95%;
            }
        }

        /* Scroll Indicator */
        .scroll-indicator {
            color: white;
            font-size: 16px;
            margin-top: 40px;
            animation: fadeIn 2.5s ease-out;
            position: relative;
            z-index: 10;
            cursor: pointer;
        }

        .scroll-arrow {
            font-size: 30px;
            margin-top: 10px;
            animation: bounceArrow 2s ease-in-out infinite;
        }

        @keyframes bounceArrow {
            0%, 100% {
                transform: translateY(0px);
            }
            50% {
                transform: translateY(10px);
            }
        }

        /* Responsive Design */
        @media (max-width: 768px) {
            .main-heading {
                font-size: 48px;
                letter-spacing: 1px;
            }

            .trophy {
                font-size: 60px;
            }

            .celebration-emoji {
                font-size: 30px;
                margin: 0 10px;
            }

            .badge-text {
                font-size: 14px;
            }

            .subtitle {
                font-size: 18px;
                padding: 0 10px;
            }

            .stars-container {
                gap: 10px;
            }

            .star-icon {
                font-size: 35px;
            }

            .reading-character {
                font-size: 45px;
            }

            .floating-book {
                font-size: 25px;
            }

            .learning-icon {
                font-size: 30px;
            }

            .achievement-badges {
                gap: 15px;
            }

            .achievement-badge {
                min-width: 100px;
                padding: 15px;
            }

            .achievement-icon {
                font-size: 30px;
            }

            .achievement-label {
                font-size: 12px;
            }

            .achievement-value {
                font-size: 20px;
            }

            .progress-ring {
                width: 400px;
                height: 400px;
            }

            .brain-power-meter {
                min-width: 250px;
                padding: 20px 25px;
            }
        }

        @media (max-width: 480px) {
            .congratulations-section {
                padding: 30px 15px;
            }

            .main-heading {
                font-size: 36px;
            }

            .trophy {
                font-size: 50px;
            }

            .celebration-emoji {
                font-size: 25px;
                margin: 0 8px;
            }

            .subtitle {
                font-size: 16px;
            }

            .star-icon {
                font-size: 28px;
            }

            .reading-character {
                font-size: 35px;
            }

            .character-left {
                left: 2%;
            }

            .character-right {
                right: 2%;
            }

            .achievement-badges {
                gap: 10px;
            }

            .achievement-badge {
                min-width: 80px;
                padding: 12px;
            }

            .achievement-icon {
                font-size: 25px;
            }

            .progress-ring {
                width: 300px;
                height: 300px;
            }

            .brain-power-meter {
                min-width: 200px;
            }

            .brain-icon-large {
                font-size: 40px;
            }
        }
/* =========================
SECTION
========================= */
.achievements-section{
  font-family:'Poppins',sans-serif;
  background:#fff;
}

/* ===== GRID ===== */
.achievements-grid{
  max-width:1200px;
  margin:auto;
  padding:80px 20px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:20px;
  text-align:center;
}

/* CARD */
.achievement-card{
  padding:10px;
}

/* NUMBER */
.achievement-card h2{
  font-size:60px;
  font-weight:900;
  color:#0048ff;
  margin-bottom:6px;
  transition:.3s;
}

/* LABEL */
.achievement-card p{
  font-size:16px;
  color:#6b7280;
}

/* hover */
.achievement-card:hover h2{
  transform:scale(1.08);
}


/* =========================
CTA BAR
========================= */
.achievements-cta{
  background:linear-gradient(90deg,#ff7a00,#ff5c00);
  padding:30px 40px;

  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;

  border-radius:12px;
  margin:30px 20px;
  color:#fff;
}

.cta-info{
  display:flex;
  align-items:center;
  gap:14px;
}

.cta-info h3{
  font-size:20px;
  font-weight:700;
}

.cta-info p{
  font-size:14px;
}

/* BUTTON */
.cta-button{
  background:#fff;
  color:#ff5c00;
  padding:14px 28px;
  border-radius:40px;
  font-weight:600;
  text-decoration:none;
  transition:.3s;
}

.cta-button:hover{
  transform:scale(1.07);
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}


/* =========================
RESPONSIVE
========================= */
@media(max-width:1024px){
  .achievements-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:600px){
  .achievements-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .achievement-card h2{
    font-size:36px;
  }

  .achievements-cta{
    justify-content:center;
    text-align:center;
    gap:15px;
  }

  .cta-info{
    justify-content:center;
  }
}


/* 🔥 FULL-WIDTH SECTION FIX */
.imt-section{
  padding: clamp(60px, 8vw, 100px) 0;
  background:linear-gradient(135deg,#0d1f3f,#1f4fa3);
  color:#fff;
  text-align:center;
}

/* CONTENT PADDING MOVED HERE */
.imt-container{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
}

/* TITLE */
.imt-title{
  font-size: clamp(26px, 5vw, 44px);
  font-weight:800;
  margin-bottom:18px;
}

.imt-title span{
  color:#ff8c00;
}

.imt-desc{
  color:#ff9f40;
  max-width:900px;
  margin:auto;
  font-size: clamp(13px, 2.5vw, 15px);
  line-height:1.7;
}

.imt-sub{
  color:#dbeafe;
  font-size:14px;
  margin:10px 0 50px;
}

/* CARDS */
.imt-cards{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap:25px;
}

.imt-card{
  padding:40px 25px;
  border-radius:20px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.15);
  backdrop-filter:blur(10px);
  transition:.35s;
}

.imt-card:hover{
  transform:translateY(-6px);
}

.imt-card.gold{
  background:linear-gradient(135deg,#ffd54f,#ff9800);
  color:#000;
}

.imt-icon{
  font-size:36px;
  margin-bottom:12px;
}

/* BUTTON */
.imt-btn{
  margin:55px auto 30px;
  padding:14px 42px;
  border:none;
  border-radius:50px;
  background:#ff7a00;
  color:#fff;
  font-weight:700;
}

/* ACCORDION */
.imt-accordion{
  max-width:850px;
  margin:30px auto 0;
  text-align:left;
}

.acc-item{
  background:rgba(255,255,255,.07);
  border-radius:12px;
  margin-bottom:12px;
}

.acc-head{
  padding:16px 20px;
  display:flex;
  justify-content:space-between;
  cursor:pointer;
}

.acc-body{
  max-height:0;
  overflow:hidden;
  padding:0 20px;
  transition:.4s;
}

.acc-item.active .acc-body{
  max-height:400px;
  padding:14px 20px;
}

/* 📱 MOBILE – EDGE TO EDGE CONFIRMED */
@media(max-width:600px){
  .imt-container{
    padding:0 15px;
  }
  .imt-btn{
    width:100%;
  }
}

/*imt raeding*/
 .learning-cycle-section {
            padding: 80px 20px;
            background: linear-gradient(to bottom, #ffffff 0%, #f8f9fa 100%);
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }

        .section-header {
            text-align: center;
            margin-bottom: 60px;
            animation: fadeInDown 0.8s ease-out;
        }

        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .journey-badge {
            display: inline-block;
            background: #E8F0FE;
            color: #4285F4;
            padding: 8px 20px;
            border-radius: 20px;
            font-size: 14px;
            font-weight: 500;
            margin-bottom: 20px;
        }

        .section-title {
            font-size: 48px;
            font-weight: 700;
            color: #1a1a1a;
            margin-bottom: 15px;
        }

        .section-title .highlight {
            color: #FF8C42;
        }

        .section-subtitle {
            font-size: 18px;
            color: #666;
            font-weight: 400;
            max-width: 700px;
            margin: 0 auto;
        }

        /* Learning Steps Container */
        .learning-steps {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0;
            max-width: 1200px;
            width: 100%;
            margin: 0 auto;
            padding: 40px 20px;
        }

        /* Progress Line */
        .progress-line {
            position: absolute;
            top: 50%;
            left: 60px;
            right: 60px;
            height: 4px;
            background: #E5E5E5;
            transform: translateY(-50%);
            z-index: 1;
            border-radius: 2px;
        }

        .progress-line-fill {
            position: absolute;
            top: 0;
            left: 0;
            height: 100%;
            background: linear-gradient(90deg, #4285F4 0%, #FF8C42 100%);
            width: 0%;
            transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
            border-radius: 2px;
        }

        /* Individual Step */
        .step {
            position: relative;
            z-index: 2;
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            transition: all 0.4s ease;
        }

        .step-icon-wrapper {
            position: relative;
            width: 90px;
            height: 90px;
            background: #F5F5F5;
            border: 3px solid #E5E5E5;
            border-radius: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 20px;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            cursor: pointer;
        }

        .step-number {
            position: absolute;
            top: -10px;
            right: -10px;
            width: 28px;
            height: 28px;
            background: #FF8C42;
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
            font-weight: 700;
            border: 3px solid white;
            transition: all 0.4s ease;
        }

        .step-icon {
            font-size: 36px;
            transition: all 0.4s ease;
            filter: grayscale(100%);
            opacity: 0.5;
        }

        .step-label {
            font-size: 16px;
            font-weight: 600;
            color: #666;
            text-align: center;
            transition: all 0.4s ease;
        }

        /* Active Step Styles */
        .step.active .step-icon-wrapper {
            background: linear-gradient(135deg, #7C3AED 0%, #A855F7 100%);
            border-color: #7C3AED;
            transform: scale(1.15);
            box-shadow: 0 10px 30px rgba(124, 58, 237, 0.4);
        }

        .step.active .step-icon {
            filter: grayscale(0%) brightness(0) invert(1);
            opacity: 1;
            transform: scale(1.1);
        }

        .step.active .step-label {
            color: #FF8C42;
            font-weight: 700;
            transform: scale(1.05);
        }

        .step.active .step-number {
            background: linear-gradient(135deg, #FF8C42 0%, #FF6B35 100%);
            transform: scale(1.1);
            box-shadow: 0 4px 15px rgba(255, 140, 66, 0.5);
        }

        /* Completed Step Styles */
        .step.completed .step-icon-wrapper {
            background: #E8F0FE;
            border-color: #4285F4;
        }

        .step.completed .step-icon {
            filter: grayscale(0%);
            opacity: 0.7;
        }

        .step.completed .step-label {
            color: #4285F4;
        }

        .step.completed .step-number {
            background: #4285F4;
        }

        /* Current Stage Button */
        .current-stage {
            margin-top: 50px;
            animation: fadeInUp 1s ease-out;
        }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(30px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .stage-button {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background: linear-gradient(90deg, #4285F4 0%, #FF8C42 100%);
            color: white;
            padding: 16px 32px;
            border-radius: 50px;
            font-size: 18px;
            font-weight: 600;
            border: none;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 6px 20px rgba(66, 133, 244, 0.3);
        }

        .stage-button:hover {
            transform: translateY(-3px);
            box-shadow: 0 10px 30px rgba(66, 133, 244, 0.4);
        }

        .stage-button .icon {
            font-size: 24px;
        }

        .stage-button .arrow {
            font-size: 20px;
            transition: transform 0.3s ease;
        }

        .stage-button:hover .arrow {
            transform: translateX(5px);
        }

        /* Progress Dots */
        .progress-dots {
            display: flex;
            gap: 12px;
            margin-top: 40px;
            justify-content: center;
        }

        .dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: #E5E5E5;
            transition: all 0.4s ease;
            cursor: pointer;
        }

        .dot.active {
            background: #4285F4;
            transform: scale(1.3);
        }

        .dot.completed {
            background: #FF8C42;
        }

        /* Responsive Design */
        @media (max-width: 1024px) {
            .section-title {
                font-size: 40px;
            }

            .step-icon-wrapper {
                width: 80px;
                height: 80px;
            }

            .step-icon {
                font-size: 32px;
            }

            .progress-line {
                left: 50px;
                right: 50px;
            }
        }

        @media (max-width: 768px) {
            .learning-cycle-section {
                padding: 60px 20px;
            }

            .section-title {
                font-size: 32px;
            }

            .section-subtitle {
                font-size: 16px;
            }

            .learning-steps {
                flex-wrap: wrap;
                gap: 40px;
                padding: 40px 10px;
            }

            .progress-line {
                display: none;
            }

            .step {
                flex: 0 0 calc(50% - 20px);
                max-width: calc(50% - 20px);
            }

            .step-icon-wrapper {
                width: 75px;
                height: 75px;
            }

            .step-icon {
                font-size: 28px;
            }

            .step-label {
                font-size: 14px;
            }

            .stage-button {
                font-size: 16px;
                padding: 14px 28px;
            }
        }

        @media (max-width: 480px) {
            .learning-cycle-section {
                padding: 40px 15px;
            }

            .section-title {
                font-size: 26px;
            }

            .section-subtitle {
                font-size: 14px;
            }

            .journey-badge {
                font-size: 12px;
                padding: 6px 16px;
            }

            .step {
                flex: 0 0 100%;
                max-width: 100%;
            }

            .step-icon-wrapper {
                width: 70px;
                height: 70px;
            }

            .step-icon {
                font-size: 26px;
            }

            .step-number {
                width: 24px;
                height: 24px;
                font-size: 12px;
            }

            .stage-button {
                font-size: 15px;
                padding: 12px 24px;
            }
        }

        /* Pulse animation for active step */
        @keyframes pulse {
            0%, 100% {
                box-shadow: 0 10px 30px rgba(124, 58, 237, 0.4);
            }
            50% {
                box-shadow: 0 10px 40px rgba(124, 58, 237, 0.6);
            }
        }

        .step.active .step-icon-wrapper {
            animation: pulse 2s ease-in-out infinite;
        }
        .step-icon img{
  width:34px;
  height:34px;
  object-fit:contain;
  display:block;
}
.stage-button .icon img{
  width:22px;
  height:22px;
  vertical-align:middle;
}

.step-icon img{
  width:34px;
  height:34px;
  object-fit:contain;
  display:block;
  filter: grayscale(100%);
  opacity:0.5;
  transition:all .4s ease;
}

.step.active .step-icon img{
  filter: brightness(0) invert(1);
  opacity:1;
  transform:scale(1.1);
}

.step.completed .step-icon img{
  filter: grayscale(0%);
  opacity:0.7;
}

.stage-button .icon img{
  width:22px;
  height:22px;
}

/* ===== Section Base ===== */
.learning-cycle {
  background: linear-gradient(135deg,#1e55d6,#0048ff);
  padding: 70px 20px 90px;
  font-family: 'Poppins', sans-serif;
  color: #fff;
  overflow: hidden;
}

/* ===== Top Bar ===== */
.lc-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 60px;
  flex-wrap: wrap;
}

.lc-top-left span {
  font-weight: 600;
  font-size: 18px;
}

.lc-top-left p {
  font-size: 14px;
  opacity: .9;
  margin-top: 4px;
}

/* Register button */
.lc-register-btn {
  background: #ff7a00;
  padding: 12px 28px;
  border-radius: 30px;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: .3s;
}
.lc-register-btn:hover {
  transform: scale(1.05);
}
/* ===== Mobile Responsive Register Button ===== */
@media (max-width: 768px) {

  .lc-topbar {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 18px;
  }

  .lc-register-btn {
    display: inline-block;
    margin: 0 auto;

    padding: 14px 30px;
    font-size: 15px;
    border-radius: 28px;
  }
}


/* Extra small phones */
@media (max-width: 480px) {
  .lc-register-btn {
    width: 100%;
    max-width: 260px;
    text-align: center;
  }
}


/* ===== Heading ===== */
.lc-heading {
  text-align: center;
  margin-bottom: 50px;
}

.badge {
  background: rgba(255,255,255,.2);
  padding: 6px 18px;
  border-radius: 20px;
  font-size: 13px;
}

.lc-heading h2 {
  font-size: 40px;
  margin-top: 18px;
  font-weight: 700;
}

.lc-heading span {
  color: #ff7a00;
}

/* ===== Cards Grid ===== */
.lc-cards {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 30px;
}

/* ===== Card Style ===== */
.lc-card {
  background: rgba(255,255,255,.1);
  border-radius: 14px;
  padding: 35px 25px;
  text-align: center;
  position: relative;
  backdrop-filter: blur(6px);
  transition: .4s ease;

  /* animation start state */
  opacity: 0;
  transform: translateY(80px);
}

/* Scroll animation class */
.lc-card.show {
  opacity: 1;
  transform: translateY(0);
}

/* Hover zoom */
.lc-card:hover {
  transform: scale(1.07);
  background: rgba(255,255,255,.18);
}

/* Number bubble */
.number {
  position: absolute;
  top: -12px;
  left: -12px;
  background: #ff7a00;
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  padding: 8px 10px;
  border-radius: 50%;
}

/* Icon */
.icon {
  font-size: 40px;
  color: #fff;
  margin-bottom: 15px;
}

/* Text */
.lc-card h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.lc-card p {
  font-size: 14px;
  opacity: .9;
}

/* ===== Bottom CTA ===== */
.lc-bottom {
  text-align: center;
  margin-top: 60px;
}

.lc-main-btn {
  background: #ff7a00;
  padding: 16px 45px;
  border-radius: 40px;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 16px;
  transition: .3s;
}
.lc-main-btn:hover {
  transform: scale(1.05);
}
/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {

  .lc-bottom {
    padding: 0 20px;
  }

  .lc-main-btn {
    display: block;
    width: 100%;
    text-align: center;

    padding: 14px 20px;
    font-size: 15px;

    border-radius: 30px;
  }
}


/* Extra small phones */
@media (max-width: 480px) {
  .lc-main-btn {
    font-size: 14px;
    padding: 13px 18px;
  }
}


/* ===== Responsive ===== */
@media (max-width: 1024px) {
  .lc-cards {
    grid-template-columns: repeat(2,1fr);
  }
}

@media (max-width: 600px) {
  .lc-cards {
    grid-template-columns: 1fr;
  }

  .lc-heading h2 {
    font-size: 26px;
  }

  .lc-topbar {
    text-align: center;
    gap: 20px;
  }
}

/* ---------------------- */
/*   NEWS COVERAGE SECTION  */
/* ---------------------- */

.news-section {
  background: #003a7a;
  padding: 60px 0;
  font-family: "Playfair Display", serif;
  color: #fff;
}

.news-header {
  text-align: center;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 2px;
  margin-bottom: 40px;
}

/* Slider Container */
.news-slider-container {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 0 20px;
}

/* Slider */
.news-slider {
  display: flex;
  gap: 35px;
  overflow-x: auto;
  padding: 30px;
  background: #005c84;
  border-radius: 10px;
  scroll-behavior: smooth;
}
.news-slider::-webkit-scrollbar { display: none; }

/* ---------------------- */
/*   NEWSPAPER CARD       */
/* ---------------------- */

.news-paper {
  width: 430px;                     /* 🔥 Perfect balanced width */
  background: #f9f1dd;
  border: 1px solid #e0d2b6;
  border-radius: 4px;
  box-shadow: 
    0 10px 20px rgba(0,0,0,0.25),
    0 0 0 4px #f5e6c8 inset;
    
  position: relative;
  display: flex;
  flex-direction: column;
  transition: 0.3s ease;
}

/* Make all papers auto-adjust to tallest */
.news-slider { align-items: stretch; }

/* Hover */
.news-paper:hover {
  transform: translateY(-10px);
  box-shadow: 
    0 16px 28px rgba(0,0,0,0.35),
    0 0 0 4px #f2deb9 inset;
}

/* Paper edges */
.news-paper::before,
.news-paper::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  height: 6px;
  background: #efe2c5;
  border-left: 1px solid #d4c4a4;
  border-right: 1px solid #d4c4a4;
}
.news-paper::before { top: -6px; transform: rotate(-0.5deg); }
.news-paper::after  { bottom: -6px; transform: rotate(0.5deg); }

/* Inner Content */
.paper-inner {
  padding: 22px 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  width:300px;
}

/* Topline */
.paper-topline {
  display: flex;
  justify-content: space-between;
  padding-bottom: 4px;
  margin-bottom: 10px;
  border-bottom: 1px solid #d4c4a7;
  font-size: 12px;
  color: #6a5735;
  text-transform: uppercase;
}

/* Headline */
.news-title {
  font-size: 20px;
  line-height: 1.35;
  margin-bottom: 12px;
  color: #2b2414;
}

/* Article Image (perfect fit, no cropping) */
.news-image {
  width: 100%;
  max-height: 220px;
  object-fit: contain;       /* 🔥 Prevents clipping/cropping */
  background: #fff;
  border: 1px solid #d7c9ad;
  margin-bottom: 14px;
  padding: 4px;
}

/* Summary text */
.news-excerpt {
  font-size: 14px;
  line-height: 1.55;
  color: #4a3c23;
  flex-grow: 1;
}

/* Slider Arrows */
.news-nav {
  background: #fff;
  color: #003a7a;
  border-radius: 50%;
  padding: 12px 16px;
  border: none;
  font-size: 24px;
  cursor: pointer;
  transition: 0.3s;
}
.news-nav:hover {
  background: #ffcc00;
  color: #000;
}

/* ---------------------- */
/*   RESPONSIVE DESIGN    */
/* ---------------------- */
/* ==============================
   MOBILE ONLY FIXES
   (Desktop untouched)
============================== */
@media (max-width: 768px) {

 
  .news-section {
    padding-top: 40px;
  }

  .news-slider-container {
    padding: 0;
    width: 100%;
    max-width: 100vw;
    overflow: hidden;
  }

  .news-slider {
    gap: 16px;
    padding: 16px;
    scroll-snap-type: x mandatory;
  }

  /* ONE CARD PER SCREEN */
  .news-paper {
    width: 88vw;
    min-width: 88vw;
    max-width: 88vw;
    margin: 0 auto;
    scroll-snap-align: center;
  }

  /* Swipe UX – hide arrows */
  .news-nav {
    display: none;
  }
}

/* Extra Small Devices */
@media (max-width: 480px) {

  .news-paper {
    width: 92vw;
    min-width: 92vw;
  }

  .paper-inner {
    padding: 16px 14px;
  }

  .news-image {
    max-height: 160px;
  }
}

/* ===== Section ===== */
.media-cta {
  background: linear-gradient(90deg,#1f56d6,#ff7a00);
  padding: 22px 40px;
  font-family: 'Poppins', sans-serif;
}

/* Container */
.media-cta-container {
  max-width: 1200px;
  margin: auto;

  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

/* Left */
.media-left {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #fff;
}

.star {
  font-size: 26px;
}

.media-left h3 {
  font-size: 18px;
  font-weight: 600;
}

.media-left p {
  font-size: 13px;
  opacity: 0.95;
}

/* Button */
.media-btn {
  background: #ff7a00;
  color: #fff;
  padding: 12px 30px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 600;
  transition: .3s;
}

.media-btn:hover {
  transform: scale(1.06);
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
}

/* ===== Responsive ===== */
@media (max-width: 768px) {

  .media-cta-container {
    flex-direction: column;
    text-align: center;
  }

  .media-left {
    justify-content: center;
  }

  .media-btn {
    width: 100%;
    max-width: 260px;
    margin-top: 10px;
  }
}

/* ===== Section ===== */
.media-section {
  padding: 80px 20px;
  background: #f6f8fc;
  font-family: 'Poppins', sans-serif;
}

.media-container {
  max-width: 1200px;
  margin: auto;

  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
  align-items: start;
}

/* ===== Video Player ===== */
.video-box video {
  width: 100%;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.2);
}

/* ===== Playlist ===== */
.playlist-box {
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 10px 25px rgba(0,0,0,.1);
  overflow: hidden;
  height: 520px;

  display: flex;
  flex-direction: column;
}

/* Header */
.playlist-header {
  padding: 18px;
  border-bottom: 1px solid #eee;
}

.playlist-header h3 {
  font-size: 18px;
  font-weight: 600;
}

.playlist-header span {
  font-size: 13px;
  color: #777;
}

/* List */
#playlist {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow-y: auto;
}

/* Item */
#playlist li {
  padding: 15px 18px;
  cursor: pointer;
  border-bottom: 1px solid #f0f0f0;
  transition: .25s;
}

#playlist li:hover {
  background: #f5f8ff;
}

/* Active */
#playlist li.active {
  background: #ff7a00;
  color: #fff;
}

#playlist li h4 {
  font-size: 14px;
  margin-bottom: 3px;
}

#playlist li p {
  font-size: 12px;
  opacity: .85;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
  .media-container {
    grid-template-columns: 1fr;
  }

  .playlist-box {
    height: 360px;
  }
}

@media (max-width: 480px) {
  .playlist-box {
    height: 300px;
  }
}

.media-section {
  padding: 70px 20px;
  background: #f6f8fc;
  font-family: 'Poppins', sans-serif;
}

.media-container {
  max-width: 1300px;
  margin: auto;

  display: grid;
  grid-template-columns: 2.3fr 1fr;
  gap: 30px;
}

/* ===== BIG VIDEO ===== */
.video-box {
  width: 100%;
  aspect-ratio: 16/9;   /* ⭐ perfect widescreen */
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 15px 40px rgba(0,0,0,.25);
}

.video-box iframe,
.video-box video {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

/* ===== Playlist ===== */
.playlist-box {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
}

.playlist-header {
  padding: 18px;
  border-bottom: 1px solid #eee;
}

#playlist {
  overflow-y: auto;
  list-style: none;
  padding: 0;
  margin: 0;
}

#playlist li {
  padding: 14px 16px;
  cursor: pointer;
  border-bottom: 1px solid #f2f2f2;
  transition: .25s;
}

#playlist li:hover {
  background: #f3f6ff;
}

#playlist li.active {
  background: #ff7a00;
  color: #fff;
}

/* ===== Responsive ===== */
@media (max-width: 992px){
  .media-container {
    grid-template-columns: 1fr;
  }
}

/* ===== SECTION BACKGROUND ===== */
.syllabus{
  padding:100px 20px;
  background: radial-gradient(circle at top left,#1f2c3c,#0f1622 70%);
  color:#fff;
  text-align:center;
  font-family: 'Poppins', sans-serif;
}

.syllabus-container{
  max-width:1200px;
  margin:auto;
}

/* ===== TITLE ===== */
.badge{
  display:inline-block;
  background:#2b3a52;
  padding:8px 18px;
  border-radius:30px;
  font-size:14px;
  margin-bottom:15px;
}

.title{
  font-size:40px;
  font-weight:800;
  margin-bottom:10px;
}

.title span{
  color:#ff7a00;
}

.subtitle{
  opacity:.7;
  margin-bottom:60px;
}

/* ===== GRID ===== */
.syllabus-grid{
  display:grid;
  grid-template-columns: repeat(3,1fr);
  gap:30px;
}

/* ===== CARD ===== */
.syllabus-card{
  background:rgba(255,255,255,0.05);
  padding:30px;
  border-radius:18px;
  text-align:left;
  backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,0.08);

  transition:.35s;
  transform:translateY(40px);
  opacity:0;
}

.syllabus-card.show{
  transform:translateY(0);
  opacity:1;
}

/* hover lift */
.syllabus-card:hover{
  transform:translateY(-10px);
}

/* icon */
.icon{
  font-size:26px;
  margin-bottom:14px;
}

/* list */
.syllabus-card ul{
  margin-top:12px;
  padding-left:18px;
  line-height:1.9;
  font-size:14px;
  opacity:.9;
}

/* ===== COLOR HOVER EFFECTS ===== */
.blue:hover{ background:#0d3cff; }
.purple:hover{ background:#7b4bff; }
.green:hover{ background:#1bbf66; }
.yellow:hover{ background:#f4b400; }
.pink:hover{ background:#e83e8c; }
.orange:hover{ background:#ff7a00; }

/* ===== RESPONSIVE ===== */
@media(max-width:992px){
  .syllabus-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .title{ font-size:28px; }
  .syllabus-grid{
    grid-template-columns:1fr;
  }
}


/* ===== STAGGER ENTRY ANIMATION (NO JS) ===== */

/* ===== SCROLL ANIMATION ===== */

/* ==============================
   PURE CSS SCROLL ANIMATION
   (NO OBSERVER • NO JS)
================================ */

@keyframes fadeUp {
  from{
    opacity:0;
    transform:translateY(50px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.syllabus-card{
  opacity:0;

  animation: fadeUp linear forwards;

  /* 👇 magic scroll trigger */
  animation-timeline: view();
  animation-range: entry 10% cover 40%;
}

/* stagger delay */
.syllabus-card:nth-child(1){ animation-delay:.05s; }
.syllabus-card:nth-child(2){ animation-delay:.15s; }
.syllabus-card:nth-child(3){ animation-delay:.25s; }
.syllabus-card:nth-child(4){ animation-delay:.35s; }
.syllabus-card:nth-child(5){ animation-delay:.45s; }
.syllabus-card:nth-child(6){ animation-delay:.55s; }


/* ================================
   GRADE FOCUS SECTION
================================ */

.grade-focus{
  padding:70px 20px 90px;
  background:linear-gradient(180deg,#0f1a2b,#0b1624);
  color:#fff;
  text-align:center;
}

/* title */
.grade-title{
  font-size:26px;
  font-weight:700;
  margin-bottom:45px;
  margin-top: 20px;
}

.grade-title span{
  color:#ff8a00;
}

/* grid */
.grade-grid{
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
}

/* card */
.grade-card{
  position:relative;
  background:#162235;
  padding:28px 24px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  transition:.35s;
  opacity:0;
  transform:translateY(40px);
  animation:fadeUp .6s ease forwards;
}

/* stagger */
.grade-card:nth-child(1){ animation-delay:.1s;}
.grade-card:nth-child(2){ animation-delay:.25s;}
.grade-card:nth-child(3){ animation-delay:.4s;}

/* hover glow */
.grade-card:hover{
  transform:translateY(-8px);
  background:linear-gradient(135deg,#1e2d44,#243c63);
  box-shadow:0 10px 30px rgba(255,140,0,.25);
}

/* badge */
.grade-badge{
  position:absolute;
  top:-12px;
  right:-12px;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#ff8a00;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  color:#fff;
  font-size:14px;
  box-shadow:0 4px 12px rgba(255,140,0,.4);
}

/* texts */
.grade-card h4{
  font-size:18px;
  margin-bottom:6px;
}

.grade-card h5{
  color:#ff8a00;
  font-size:14px;
  margin-bottom:10px;
}

.grade-card p{
  font-size:13px;
  color:#cfd6e4;
  line-height:1.5;
}

/* animation */
@keyframes fadeUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ================================
   RESPONSIVE
================================ */

@media(max-width:992px){
  .grade-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .grade-grid{
    grid-template-columns:1fr;
  }
}

/* ===============================
   WHAT SETS US APART
================================ */

.sets-section{
  padding:80px 20px;
  background:#ffffff;
  text-align:center;
  font-family: 'Poppins', sans-serif;
}

.sets-container{
  max-width:1100px;
  margin:auto;
}

/* badge */
.sets-badge{
  display:inline-block;
  background:#e9f1ff;
  color:#2f6cff;
  font-size:13px;
  padding:6px 16px;
  border-radius:30px;
  font-weight:600;
  margin-bottom:20px;
}

/* heading */
.sets-title{
  font-size:38px;
  font-weight:800;
  margin-bottom:50px;
}

.sets-title span{
  color:#ff7a00;
}

/* grid */
.sets-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:18px;
}

/* card */
.sets-card{
  background:#fff;
  padding:14px 26px;
  border-radius:40px;
  font-size:14px;
  font-weight:500;
  box-shadow:0 5px 15px rgba(0,0,0,0.08);
  border:1px solid #eee;
  white-space:nowrap;

  /* animation */
  opacity:0;
  transform:translateY(40px);
  animation:slideUp .6s ease forwards;
  transition:.3s;
}

/* stagger animation */
.sets-card:nth-child(1){ animation-delay:.1s;}
.sets-card:nth-child(2){ animation-delay:.2s;}
.sets-card:nth-child(3){ animation-delay:.3s;}
.sets-card:nth-child(4){ animation-delay:.4s;}
.sets-card:nth-child(5){ animation-delay:.5s;}

/* hover */
.sets-card:hover{
  transform:translateY(-5px);
  box-shadow:0 10px 25px rgba(255,122,0,.25);
}

/* wide card */
.sets-card.wide{
  flex-basis:60%;
}

/* animation keyframes */
@keyframes slideUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* ===============================
   RESPONSIVE
================================ */

@media(max-width:992px){
  .sets-card.wide{
    flex-basis:100%;
  }
}

@media(max-width:600px){

  .sets-title{
    font-size:28px;
  }

  .sets-grid{
    flex-direction:column;
    align-items:center;
  }

  .sets-card{
    width:100%;
    text-align:center;
    white-space:normal;
  }
}

/* ===============================
   CTA SECTION
================================ */

.cta-section{
  background: linear-gradient(135deg,#ff7a00,#ff5e00);
  padding:90px 20px;
  text-align:center;
  color:#fff;
  font-family:'Poppins',sans-serif;
}

.cta-container{
  max-width:900px;
  margin:auto;
}

/* badge */
.cta-badge{
  display:inline-block;
  background:rgba(255,255,255,0.25);
  backdrop-filter: blur(6px);
  padding:8px 18px;
  border-radius:30px;
  font-size:13px;
  font-weight:500;
  margin-bottom:25px;
}

/* heading */
.cta-title{
  font-size:36px;
  font-weight:800;
  margin-bottom:15px;
}

/* description */
.cta-text{
  font-size:15px;
  opacity:.95;
  line-height:1.6;
  margin-bottom:35px;
}

/* button */
.cta-btn{
  display:inline-block;
  background:#fff;
  color:#ff6a00;
  padding:14px 38px;
  border-radius:40px;
  font-weight:600;
  text-decoration:none;
  transition:.3s;
}

/* hover */
.cta-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 25px rgba(0,0,0,.2);
}

/* ===============================
   RESPONSIVE
================================ */

@media(max-width:768px){

  .cta-title{
    font-size:26px;
  }

  .cta-text{
    font-size:14px;
  }

  .cta-btn{
    padding:12px 28px;
    font-size:14px;
  }
}

/* =============================
   Footer
============================= */
.bv-footer{
    background:#1f4ea3;
    color:#fff;
    padding-top:60px;
    font-size:14px;
}

/* container */
.footer-container{
    width:90%;
    max-width:1300px;
    margin:auto;

    display:grid;
    grid-template-columns: 1.3fr 1fr 1fr 1fr;
    gap:50px;
}

/* logo */
.footer-logo{
    height:90px;
    margin-bottom:18px;
    margin-left: 20px;
}

/* about text */
.footer-about p{
    line-height:1.7;
    margin-bottom:20px;
    opacity:0.9;
}

/* headings */
.footer-col h3{
    margin-bottom:18px;
    font-size:16px;
    font-weight:600;
    position:relative;
}

/* list */
.footer-col ul{
    list-style:none;
}

.footer-col ul li{
    margin-bottom:10px;
}

/* links */
.footer-col a{
    color:#fff;
    text-decoration:none;
    opacity:0.9;
    transition:0.3s;
}

.footer-col a:hover{
    opacity:1;
    padding-left:6px;
}

/* social icons */
.social-icons{
    display:flex;
    gap:10px;
}

.social-icons a{
    width:36px;
    height:36px;
    border-radius:50%;
    background:rgba(255,255,255,0.15);

    display:flex;
    align-items:center;
    justify-content:center;

    transition:0.3s;
}

.social-icons a:hover{
    background:#ff7a00;
}

/* contact icons */
.contact-info i{
    margin-right:8px;
}

/* bottom bar */
.footer-bottom{
    border-top:1px solid rgba(255,255,255,0.2);
    margin-top:50px;
    padding:20px 5%;

    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:13px;
}

.footer-links{
    display:flex;
    gap:20px;
}


/* =============================
   Mobile Responsive
============================= */
@media(max-width:992px){

    .footer-container{
        grid-template-columns: 1fr 1fr;
        gap:40px;
    }
}

@media(max-width:600px){

    .footer-container{
        grid-template-columns: 1fr;
        text-align:center;
    }

    .social-icons{
        justify-content:center;
    }

    .footer-bottom{
        flex-direction:column;
        gap:10px;
        text-align:center;
    }
}


