@font-face { font-family: 'Trocchi'; src: url('../fonts/Trocchi.otf') format('opentype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Trocchi'; src: url('../fonts/Trocchi-Bold.otf') format('opentype'); font-weight: 700; font-display: swap; }

:root {
    --orange: #e47922;
    --orange-dark: #c46211;
    --orange-light: #FFF3E8;
    --brand-blue: #1F2A55;
    --navy: #1F2A55;
    --navy-dark: #14193A;
    --cyan: #2BB7E0;
    --ink: #1a1a1a;
    --gray-text: #525a6b;
    --gray-soft: #6b7280;
    --gray-line: #e6e8ee;
    --bg: #ffffff;
    --bg-soft: #fafafb;
    --bg-warm: #fff9f3;
    --space-xs: 8px;
    --space-sm: 12px;
    --space-md: 20px;
    --space-lg: 36px;
    --space-xl: 64px;
    --radius: 14px;
    --radius-lg: 24px;
    --shadow-sm: 0 4px 16px rgba(20,25,58,0.06);
    --shadow-md: 0 12px 40px rgba(20,25,58,0.08);
    --shadow-lg: 0 30px 60px rgba(20,25,58,0.12);
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: var(--ink); background: var(--bg); line-height: 1.55; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; transition: color 0.2s; }
a:hover { color: var(--orange); }
h1, h2, h3, h4 { font-family: 'Trocchi', 'Playfair Display', Georgia, serif; line-height: 1.1; color: var(--ink); font-weight: 700; letter-spacing: -0.02em; }
h1 { font-size: clamp(2.6rem, 5.2vw, 4.4rem); font-weight: 700; }
h2 { font-size: clamp(2rem, 3.8vw, 3rem); font-weight: 700; }
h3 { font-size: 1.3rem; font-weight: 700; }
.section__title { background: linear-gradient(135deg, var(--ink) 0%, var(--brand-blue) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.section { padding: var(--space-xl) 0; }
.section--alt { background: var(--bg-soft); }
.section__head { text-align: center; max-width: 760px; margin: 0 auto var(--space-lg); }
.section__eyebrow { display: inline-block; font-family: 'Inter', sans-serif; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange); padding: 6px 14px; background: var(--orange-light); border-radius: 999px; margin-bottom: 14px; }
.section__title { margin-bottom: 14px; }
.section__lede { font-size: 1.075rem; color: var(--gray-text); }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border-radius: 999px; font-weight: 600; font-size: 0.95rem; border: none; cursor: pointer; transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s; font-family: inherit; }
.btn:hover { transform: translateY(-1px); }
.btn--large { padding: 16px 32px; font-size: 1rem; }
.btn--primary { background: var(--orange); color: #fff; box-shadow: 0 8px 22px rgba(232,93,4,0.35); }
.btn--primary:hover { background: var(--orange-dark); color: #fff; box-shadow: 0 12px 28px rgba(232,93,4,0.45); }
.btn--ghost { background: transparent; color: var(--ink); border: 1.5px solid var(--gray-line); }
.btn--ghost:hover { border-color: var(--orange); color: var(--orange); }
.btn--secondary { background: var(--navy); color: #fff; }
.btn--secondary:hover { background: var(--navy-dark); color: #fff; }
.btn--play { background: #000; color: #fff; padding: 10px 22px; }
.btn--play:hover { background: #1a1a1a; color: #fff; }
.btn--play span { font-size: 1rem; line-height: 1.05; text-align: left; font-weight: 700; }
.btn--play small { font-size: 0.65rem; font-weight: 500; opacity: 0.85; letter-spacing: 0.04em; }
.btn--play.btn--large { padding: 12px 26px; }
.btn--ghost-dark { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,0.25); }
.btn--ghost-dark:hover { border-color: var(--orange); color: var(--orange); }
.btn--full { width: 100%; }

/* Dark navbar variant */
.navbar.navbar--dark { background: rgba(20,25,58,0.92); backdrop-filter: blur(20px); border-bottom: 1px solid rgba(255,255,255,0.08); }
.navbar.navbar--dark .navbar__link { color: rgba(255,255,255,0.85); }
.navbar.navbar--dark .navbar__link:hover { background: rgba(255,255,255,0.06); color: #fff; }
.navbar.navbar--dark .navbar__mobile-toggle span { background: #fff; }
.navbar.navbar--dark .navbar__dropdown-menu { background: #14172b; border-color: rgba(255,255,255,0.08); }
.navbar.navbar--dark .navbar__dropdown-item { color: rgba(255,255,255,0.85); }
.navbar.navbar--dark .navbar__dropdown-item:hover { background: rgba(232,93,4,0.15); color: var(--orange); }
.navbar.navbar--dark .navbar__logo img { background: #fff; padding: 4px 10px; border-radius: 8px; }

/* Hero — Dark, Sparkl-inspired */
.hero.hero--dark { background: radial-gradient(ellipse at top right, #2A3870 0%, #1F2A55 50%, #14193A 100%); color: #fff; padding: 40px 0 50px; position: relative; overflow: hidden; }
.hero.hero--dark::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 800px 400px at 70% 30%, rgba(232,93,4,0.18), transparent 70%), radial-gradient(ellipse 600px 400px at 20% 80%, rgba(43,183,224,0.08), transparent 70%); pointer-events: none; }
.hero__glow { position: absolute; top: 30%; left: 60%; width: 600px; height: 600px; background: radial-gradient(circle, rgba(232,93,4,0.15), transparent 60%); filter: blur(60px); pointer-events: none; }
.hero.hero--dark .hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-xl); align-items: center; }
.hero__eyebrow { display: inline-block; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.55); margin-bottom: 24px; }
.hero__title--mega { font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 700; color: #fff; line-height: 1.05; margin-bottom: 14px; letter-spacing: -0.02em; }
.hero__title--mega .hero__cycle { display: inline-block; min-width: 200px; position: relative; vertical-align: baseline; }
.hero__cycle-word { color: var(--orange); display: inline-block; }
.hero__cycle-word:not(:first-child) { display: none; }
.hero.hero--dark .hero__subtitle { font-size: 1.15rem; color: rgba(255,255,255,0.7); margin-bottom: 24px; max-width: 600px; }
.hero__pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,0.08); }
.hero__pill { padding: 8px 18px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 999px; color: rgba(255,255,255,0.85); font-size: 0.85rem; font-weight: 600; transition: all 0.2s; }
.hero__pill:hover { background: rgba(228,121,34,0.18); border-color: var(--orange); color: #fff; }

/* Curriculum strip — pipe separated */
.curriculum-strip { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 6px; margin: 18px 0 18px; padding: 10px 14px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.1); border-radius: 14px; backdrop-filter: blur(10px); white-space: nowrap; }
.curriculum-strip__item { font-family: 'Trocchi', serif; font-size: 0.98rem; font-weight: 700; color: rgba(255,255,255,0.9); letter-spacing: 0.02em; transition: color 0.2s; padding: 4px 4px; }
.curriculum-strip__item:hover { color: var(--orange); }
.curriculum-strip__sep { color: rgba(255,255,255,0.25); font-weight: 300; }

/* Social icons */
.social-row { display: inline-flex; gap: 14px; margin-top: 14px; }
.social-icon { width: 48px; height: 48px; border-radius: 14px; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; display: grid; place-items: center; transition: all 0.2s; box-shadow: 0 8px 20px rgba(228,121,34,0.35); }
.social-icon:hover { transform: translateY(-3px) scale(1.05); box-shadow: 0 12px 28px rgba(228,121,34,0.5); color: #fff; }
.social-icon svg { width: 22px; height: 22px; }
.footer__bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.hero.hero--dark .hero__actions { display: flex; gap: 14px; flex-wrap: wrap; }
.hero__visual--dark { position: relative; min-height: 500px; display: grid; place-items: center; }
.hero__visual--dark .hero__boy { max-width: 480px; max-height: 540px; filter: drop-shadow(0 30px 50px rgba(0,0,0,0.5)); }
.hero.hero--dark .glass-card { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); color: #fff; }
.hero.hero--dark .glass-card__title { color: #fff; }
.hero.hero--dark .glass-card__sub { color: rgba(255,255,255,0.6); }

/* Compact course cards */
.course-grid--compact { grid-template-columns: repeat(3, 1fr); gap: 18px; }
.course-card--compact { padding-bottom: 0; min-height: 0; }
.course-card--compact h3 { padding: 14px 22px 4px; font-size: 1.25rem; }
.course-card--compact .course-card__head { padding: 22px 22px 0; align-items: center; }
.course-card--compact .course-card__row { padding: 8px 22px 0; }
.course-card--compact .course-card__row strong { font-size: 0.65rem; margin-bottom: 6px; }
.course-card--compact .chips span { padding: 4px 10px; font-size: 0.72rem; }
.course-card__logo { width: 56px; height: 56px; border-radius: 14px; background: #fff; padding: 6px; box-shadow: 0 6px 16px rgba(0,0,0,0.08); border: 1px solid rgba(0,0,0,0.04); flex-shrink: 0; display: grid; place-items: center; overflow: hidden; }
.course-card__logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.course-card__btn { margin: 16px 22px 22px; }

/* Carousel */
.carousel { position: relative; max-width: 1100px; margin: 0 auto; }
.carousel__viewport { overflow: hidden; border-radius: var(--radius-lg); }
.carousel__track { display: flex; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.carousel__slide { flex: 0 0 100%; padding: 0 8px; box-sizing: border-box; }
.carousel__arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; background: #fff; border: 1px solid var(--gray-line); box-shadow: var(--shadow-md); cursor: pointer; font-size: 1.6rem; color: var(--ink); z-index: 5; transition: all 0.2s; display: grid; place-items: center; line-height: 1; }
.carousel__arrow:hover { background: var(--orange); color: #fff; border-color: var(--orange); transform: translateY(-50%) scale(1.05); }
.carousel__arrow--prev { left: -24px; }
.carousel__arrow--next { right: -24px; }
.carousel__dots { display: flex; justify-content: center; gap: 8px; margin-top: 24px; }
.carousel__dot { width: 8px; height: 8px; border-radius: 50%; background: rgba(0,0,0,0.15); border: none; cursor: pointer; padding: 0; transition: all 0.2s; }
.carousel__dot.is-active { background: var(--orange); width: 24px; border-radius: 4px; }
.achievers-section .carousel__arrow { background: rgba(255,255,255,0.1); color: #fff; border-color: rgba(255,255,255,0.2); }
.achievers-section .carousel__arrow:hover { background: var(--orange); border-color: var(--orange); }
.achievers-section .carousel__dot { background: rgba(255,255,255,0.2); }
.achievers-section .carousel__dot.is-active { background: var(--orange); }

#achieverCarousel .carousel__slide { padding: 0 16px; flex: 0 0 100% !important; max-width: none !important; }
#achieverCarousel .carousel__slide.achiever-card { display: flex; flex-direction: column; }
#achieverCarousel .carousel__slide.achiever-card img { max-width: 360px; margin: 0 auto; }
#achieverCarousel .carousel__viewport { max-width: 460px; margin: 0 auto; overflow: hidden; }
#reviewCarousel .carousel__viewport { max-width: 720px; margin: 0 auto; overflow: hidden; }
#reviewCarousel .carousel__slide { flex: 0 0 100% !important; max-width: none !important; }

.promo-banner { background: linear-gradient(90deg, var(--orange) 0%, #FF8A3D 100%); color: #fff; font-size: 0.9rem; padding: 10px 0; }
.promo-banner__inner { display: flex; justify-content: center; align-items: center; gap: 22px; flex-wrap: wrap; }
.promo-banner__msg { font-weight: 600; }
.promo-banner__cta { display: inline-flex; align-items: center; gap: 6px; padding: 7px 18px; background: #fff; color: var(--brand-blue); border-radius: 999px; font-weight: 700; transition: all 0.2s; }
.promo-banner__cta:hover { background: var(--brand-blue); color: #fff; }
.promo-banner__app { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-weight: 600; padding: 6px 14px; border: 1px solid rgba(255,255,255,0.45); border-radius: 999px; }
.promo-banner__app:hover { background: rgba(255,255,255,0.15); color: #fff; }

.topbar { background: linear-gradient(90deg, var(--navy-dark), var(--navy)); color: #fff; font-size: 0.85rem; padding: 8px 0; }
.topbar__inner { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.topbar__msg { opacity: 0.92; }
.topbar__app { display: inline-flex; align-items: center; gap: 8px; background: var(--orange); padding: 6px 14px; border-radius: 999px; font-weight: 600; }
.topbar__app:hover { background: var(--orange-dark); color: #fff; }

.navbar { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,0.96); backdrop-filter: blur(16px); border-bottom: 1px solid var(--gray-line); }
.navbar__inner { display: flex; align-items: center; justify-content: space-between; padding: 12px 24px; gap: 24px; }
.navbar__logo img { height: 56px; width: auto; }
.navbar.navbar--dark .navbar__logo img { background: transparent; padding: 0; height: 64px; }

/* Hero v2 — boy image */
.hero--v2 { padding: 80px 0 100px; }
.hero__title--v2 { font-size: clamp(2.2rem, 4.5vw, 3.6rem); }
.hero__visual--v2 { position: relative; min-height: 540px; display: grid; place-items: center; }
.hero__boy-bg { display: none; }
.hero__boy { position: relative; max-width: 480px; max-height: 560px; object-fit: contain; z-index: 2; filter: drop-shadow(0 24px 40px rgba(0,0,0,0.35)); }

/* Glass cards (glassmorphism) */
.glass-card { position: absolute; background: rgba(255,255,255,0.75); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); padding: 14px 18px; border-radius: 16px; box-shadow: 0 12px 40px rgba(20,25,58,0.12); display: flex; align-items: center; gap: 12px; min-width: 200px; border: 1px solid rgba(255,255,255,0.6); z-index: 3; }
.glass-card--top { top: -10px; left: 50%; transform: translateX(-50%); }
.glass-card--bottom { bottom: 50px; left: -20px; }
.glass-card--mid { top: 50%; left: -10px; transform: translateY(-50%); }
.glass-card__icon { width: 40px; height: 40px; border-radius: 12px; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; display: grid; place-items: center; font-weight: 700; flex-shrink: 0; }
.glass-card__icon--blue { background: linear-gradient(135deg, #2BB7E0, #1F6FB0); }
.glass-card__icon--green { background: linear-gradient(135deg, #43A047, #1B5E20); }
.glass-card__title { font-weight: 700; font-size: 0.9rem; }
.glass-card__sub { font-size: 0.75rem; color: var(--gray-soft); }
.glass-card-bg { background: rgba(255,255,255,0.7); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,0.5); }

/* Trust Section */
.trust-section { background: linear-gradient(180deg, #fff 0%, var(--bg-warm) 100%); }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.trust-card { padding: 32px 26px; background: rgba(255,255,255,0.7); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-radius: var(--radius-lg); border: 1px solid rgba(232,93,4,0.1); transition: all 0.3s; box-shadow: 0 8px 30px rgba(20,25,58,0.04); }
.trust-card:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(20,25,58,0.1); border-color: var(--orange); }
.trust-card__icon { width: 60px; height: 60px; border-radius: 18px; background: linear-gradient(135deg, var(--c1, var(--orange)), var(--c2, #FF8A3D)); color: #fff; display: grid; place-items: center; font-size: 1.6rem; font-weight: 700; margin-bottom: 18px; box-shadow: 0 10px 24px rgba(0,0,0,0.12); }
.trust-card h3 { margin-bottom: 8px; font-size: 1.2rem; }
.trust-card p { color: var(--gray-text); font-size: 0.95rem; }

/* Course card CTA link */
.course-card__cta { display: block; padding: 14px 24px 22px; color: var(--c1, var(--orange)); font-weight: 700; font-size: 0.9rem; transition: all 0.2s; margin-top: auto; }
.course-card__cta:hover { color: var(--orange-dark); padding-left: 28px; }

/* Achievers */
.achievers-section { background: linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%); position: relative; overflow: hidden; color: #fff; }
.achievers-section::before { content: ''; position: absolute; top: -100px; right: -100px; width: 400px; height: 400px; background: radial-gradient(circle, rgba(232,93,4,0.2), transparent 70%); }
.achievers-section { padding: 48px 0; }
.achievers-section .section__title { color: #fff !important; -webkit-text-fill-color: #fff !important; background: none !important; -webkit-background-clip: initial !important; }
.achievers-section .section__lede { color: rgba(255,255,255,0.85); }
.achievers-section .section__head { margin-bottom: 24px; }
#achieverCarousel .achiever-card img { max-height: 320px; object-fit: contain; }
.achievers-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; position: relative; }
.achiever { padding: 32px 26px; background: rgba(255,255,255,0.08); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: var(--radius-lg); border: 1px solid rgba(255,255,255,0.15); transition: all 0.3s; text-align: center; }
.achiever:hover { transform: translateY(-6px); border-color: var(--orange); background: rgba(255,255,255,0.12); }
.achiever__score { font-family: 'Trocchi', serif; font-size: 3rem; font-weight: 700; line-height: 1; background: linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.6) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 8px; }
.achiever__score small { font-size: 1.2rem; color: var(--orange); -webkit-text-fill-color: var(--orange); }
.achiever__icon { font-size: 2.4rem; margin-bottom: 14px; line-height: 1; }
.achiever__lbl { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--orange); margin-bottom: 12px; }

.achievers-grid--photo { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; position: relative; }
.achiever-card { background: rgba(255,255,255,0.06); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: var(--radius-lg); border: 1px solid rgba(255,255,255,0.12); overflow: hidden; transition: all 0.3s; }
.achiever-card:hover { transform: translateY(-6px); border-color: var(--orange); }
.achiever-card img { width: 100%; height: auto; display: block; }
.achiever-card figcaption { padding: 16px 18px; text-align: center; }
.achiever-card figcaption strong { display: block; font-family: 'Trocchi', serif; font-size: 1.1rem; color: #fff; margin-bottom: 4px; }
.achiever-card figcaption span { display: block; font-size: 0.78rem; color: rgba(255,255,255,0.7); margin-bottom: 6px; }
.achiever-card figcaption em { display: block; font-style: normal; font-size: 0.85rem; font-weight: 600; color: var(--orange); }
.achiever p { color: rgba(255,255,255,0.78); font-size: 0.92rem; }

/* Testimonials CTA */
.testimonials__cta { text-align: center; margin-top: 32px; }

/* Page hero split */
.page-hero--split { padding: 60px 0; text-align: left; }
.page-hero__split { display: grid; grid-template-columns: 1.1fr 1fr; gap: 60px; align-items: center; position: relative; }
.page-hero__copy h1 { color: #fff; margin-bottom: 16px; font-size: clamp(2rem, 4vw, 3.2rem); }
.page-hero__copy p { color: rgba(255,255,255,0.85); font-size: 1.1rem; margin-bottom: 18px; }
.page-hero__bullets { list-style: none; padding: 0; margin: 0 0 22px; }
.page-hero__bullets li { color: rgba(255,255,255,0.9); padding: 6px 0; font-size: 0.98rem; }
.page-hero__visual img { border-radius: var(--radius-lg); box-shadow: 0 30px 60px rgba(0,0,0,0.4); width: 100%; }

/* Partner CTA section */
.partner-cta-section { background: linear-gradient(180deg, var(--bg-warm) 0%, #fff 100%); }
.partner-cta { max-width: 720px; margin: 0 auto; text-align: center; }
.partner-cta h2 { font-size: clamp(2rem, 4vw, 3rem); margin-bottom: 12px; }
.partner-cta > p { color: var(--gray-text); font-size: 1.1rem; margin-bottom: 32px; }
.partner-cta .lead-form { text-align: left; margin-top: 24px; }

/* Checklist grid */
.checklist-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; max-width: 800px; margin: 0 auto; }
.checklist-item { display: flex; align-items: center; gap: 14px; padding: 18px 22px; border-radius: 14px; font-weight: 600; color: var(--ink); border: 1px solid rgba(232,93,4,0.15); transition: all 0.2s; }
.checklist-item:hover { transform: translateX(4px); border-color: var(--orange); }
.checklist-item__tick { width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; display: grid; place-items: center; font-weight: 700; flex-shrink: 0; box-shadow: 0 6px 14px rgba(232,93,4,0.3); }

/* WhatsApp Floating Button */
.whatsapp-fab { position: fixed; bottom: 24px; right: 24px; width: 56px; height: 56px; border-radius: 50%; background: #25D366; color: #fff; display: grid; place-items: center; box-shadow: 0 12px 30px rgba(37,211,102,0.5); z-index: 999; transition: transform 0.2s, opacity 0.3s; }
.whatsapp-fab.is-hidden { opacity: 0; pointer-events: none; transform: translateY(20px); }
.whatsapp-fab:hover { transform: scale(1.08); color: #fff; }
.whatsapp-fab::before { content: ''; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid #25D366; opacity: 0.4; animation: ringpulse 2s infinite; }
@keyframes ringpulse { 0% { transform: scale(0.95); opacity: 0.6; } 100% { transform: scale(1.4); opacity: 0; } }
.navbar__nav { display: flex; gap: 4px; list-style: none; align-items: center; }
.navbar__link { padding: 10px 14px; font-weight: 500; color: var(--ink); border-radius: 8px; }
.navbar__link:hover { background: var(--bg-soft); color: var(--orange); }
.navbar__cta { margin-left: 6px; }
.navbar__dropdown { position: relative; }
.navbar__dropdown-menu { position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff; border: 1px solid var(--gray-line); border-radius: var(--radius); box-shadow: var(--shadow-md); padding: 8px; opacity: 0; visibility: hidden; transform: translateY(8px); transition: all 0.2s; }
.navbar__dropdown:hover .navbar__dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.navbar__dropdown-item { display: block; padding: 10px 14px; border-radius: 8px; font-weight: 500; }
.navbar__dropdown-item:hover { background: var(--orange-light); color: var(--orange); }
.navbar__mobile-toggle { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 8px; }
.navbar__mobile-toggle span { width: 24px; height: 2px; background: var(--ink); border-radius: 2px; }

.hero { position: relative; padding: 80px 0 100px; background: linear-gradient(180deg, #fff7ed 0%, #ffffff 100%); overflow: hidden; }
.hero__pattern { position: absolute; inset: 0; background-image: radial-gradient(circle at 20% 30%, rgba(232,93,4,0.08), transparent 40%), radial-gradient(circle at 80% 70%, rgba(43,183,224,0.08), transparent 40%); pointer-events: none; }
.hero__inner { position: relative; display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--space-xl); align-items: center; }
.hero__badge { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: #fff; border: 1px solid var(--orange); color: var(--orange); border-radius: 999px; font-weight: 600; font-size: 0.85rem; box-shadow: var(--shadow-sm); margin-bottom: 24px; }
.hero__badge-dot { width: 8px; height: 8px; background: var(--orange); border-radius: 50%; box-shadow: 0 0 0 4px rgba(232,93,4,0.2); animation: pulse 2s infinite; }
@keyframes pulse { 0%,100% { box-shadow: 0 0 0 4px rgba(232,93,4,0.2);} 50% { box-shadow: 0 0 0 8px rgba(232,93,4,0); } }
.hero__title { margin-bottom: 20px; }
.hero__title-accent { color: var(--orange); position: relative; display: inline-block; }
.hero__title-accent::after { content: ''; position: absolute; left: 0; right: 0; bottom: 6px; height: 14px; background: rgba(232,93,4,0.18); z-index: -1; border-radius: 4px; }
.hero__subtitle { font-size: 1.1rem; color: var(--gray-text); margin-bottom: 28px; max-width: 540px; }
.hero__actions { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 32px; }
.hero__trust { display: flex; gap: 24px; flex-wrap: wrap; padding-top: 24px; border-top: 1px solid var(--gray-line); }
.hero__trust-item { font-size: 0.875rem; color: var(--gray-text); }
.hero__trust-item strong { display: block; color: var(--ink); font-size: 1.1rem; font-family: 'Trocchi', serif; }
.hero__visual { position: relative; }
.hero__phone-wrap { position: relative; max-width: 380px; margin: 0 auto; aspect-ratio: 1024/1259; border-radius: 32px; overflow: hidden; box-shadow: var(--shadow-lg); transform: rotate(-3deg); }
.hero__phone { width: 100%; height: 100%; object-fit: cover; }
.hero__float { position: absolute; background: #fff; padding: 14px 18px; border-radius: 14px; box-shadow: var(--shadow-md); display: flex; align-items: center; gap: 12px; min-width: 220px; }
.hero__float--top { top: 30px; left: -20px; }
.hero__float--bottom { bottom: 40px; right: -10px; }
.hero__float-icon { width: 40px; height: 40px; border-radius: 50%; background: #2bb7e0; color: #fff; display: grid; place-items: center; font-weight: 700; flex-shrink: 0; }
.hero__float-icon--orange { background: var(--orange); }
.hero__float-title { font-weight: 700; font-size: 0.875rem; }
.hero__float-sub { font-size: 0.75rem; color: var(--gray-soft); }

.hero__shapes { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.hero__shape { position: absolute; border-radius: 50%; filter: blur(40px); opacity: 0.5; }
.hero__shape--1 { width: 280px; height: 280px; background: radial-gradient(circle, rgba(232,93,4,0.4), transparent 70%); top: -80px; right: -80px; }
.hero__shape--2 { width: 220px; height: 220px; background: radial-gradient(circle, rgba(43,183,224,0.4), transparent 70%); bottom: -60px; left: 10%; }
.hero__shape--3 { width: 180px; height: 180px; background: radial-gradient(circle, rgba(124,77,255,0.25), transparent 70%); top: 40%; left: 35%; }

.stats-strip { background: linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%); padding: 36px 0; position: relative; overflow: hidden; }
.stats-strip::before { content: ''; position: absolute; top: -100px; right: -100px; width: 400px; height: 400px; background: radial-gradient(circle, rgba(232,93,4,0.18), transparent 70%); }
.stats-strip__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; position: relative; }
.stats-strip__item { text-align: center; color: #fff; }
.stats-strip__num { font-family: 'Trocchi', serif; font-size: 2.4rem; font-weight: 700; line-height: 1; margin-bottom: 6px; background: linear-gradient(180deg, #fff, rgba(255,255,255,0.7)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.stats-strip__num span { font-size: 1.5rem; color: var(--orange); -webkit-text-fill-color: var(--orange); }
.stats-strip__lbl { font-size: 0.85rem; color: rgba(255,255,255,0.75); font-weight: 500; }

.usp-banner { background: linear-gradient(135deg, var(--orange) 0%, #FF8A3D 100%); color: #fff; padding: var(--space-lg) 0; }
.usp-banner__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.usp-banner__item { padding: 12px 0; }
.usp-banner__num { font-family: 'Trocchi', serif; font-size: 2.6rem; opacity: 0.5; line-height: 1; margin-bottom: 8px; }
.usp-banner__title { font-family: 'Trocchi', serif; font-size: 1.25rem; margin-bottom: 6px; }
.usp-banner__item p { font-size: 0.92rem; opacity: 0.92; line-height: 1.45; }

.pillar-tabs { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 36px; }
.pillar-tab { padding: 12px 24px; border-radius: 999px; border: 1.5px solid var(--gray-line); background: #fff; font-weight: 600; font-family: inherit; cursor: pointer; transition: all 0.2s; font-size: 0.95rem; }
.pillar-tab:hover { border-color: var(--orange); color: var(--orange); }
.pillar-tab.is-active { background: var(--ink); color: #fff; border-color: var(--ink); }

/* Pillar Tab Switches (colored) */
.pillar-tabs--switches { gap: 14px; }
.pillar-tab--colored { padding: 14px 22px; min-width: 200px; display: inline-flex; align-items: center; gap: 14px; background: #fff; border: 2px solid var(--gray-line); border-radius: 16px; font-weight: 600; transition: all 0.25s; text-align: left; cursor: pointer; }
.pillar-tab--colored .pillar-tab__icon { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; font-size: 1.4rem; background: linear-gradient(135deg, var(--tabc1, var(--orange)), var(--tabc2, #FF8A3D)); flex-shrink: 0; box-shadow: 0 6px 14px rgba(0,0,0,0.08); }
.pillar-tab--colored .pillar-tab__label { display: flex; flex-direction: column; line-height: 1.15; font-family: 'Trocchi', serif; font-size: 1.1rem; color: var(--ink); }
.pillar-tab--colored .pillar-tab__label small { font-family: 'Inter', sans-serif; font-size: 0.7rem; font-weight: 500; color: var(--gray-soft); margin-top: 4px; letter-spacing: 0.04em; }
.pillar-tab--colored:hover { border-color: var(--tabc1, var(--orange)); transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,0.08); }
.pillar-tab--colored.is-active { background: linear-gradient(135deg, var(--tabc1, var(--orange)), var(--tabc2, #FF8A3D)); border-color: transparent; color: #fff; box-shadow: 0 14px 32px rgba(0,0,0,0.18); }
.pillar-tab--colored.is-active .pillar-tab__icon { background: rgba(255,255,255,0.25); }
.pillar-tab--colored.is-active .pillar-tab__label, .pillar-tab--colored.is-active .pillar-tab__label small { color: #fff; }

/* Course card button alignment */
.course-card { display: flex; flex-direction: column; }
.course-card--compact .course-card__btn { margin-top: auto; }
.course-card--compact h3 { min-height: 0; }

/* Phone group */
.phone-group { display: flex; gap: 8px; }
.phone-cc { padding: 12px 14px; border: 1.5px solid var(--gray-line); border-radius: 10px; background: #fff; font: inherit; cursor: pointer; flex: 0 0 130px; max-width: 140px; }
.phone-cc--global { flex: 0 0 200px; max-width: 220px; }
.req { color: var(--orange); font-weight: 700; margin-left: 2px; }
.phone-cc:focus { outline: none; border-color: var(--orange); }
.phone-group input { flex: 1 1 auto; min-width: 0; }

/* Captcha */
.captcha-field strong { color: var(--orange); padding: 2px 10px; background: var(--orange-light); border-radius: 6px; font-family: 'Trocchi', serif; font-size: 1.05rem; letter-spacing: 0.05em; }
.pillar { display: none; }
.pillar.is-active { display: block; }

.course-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 22px; }
.course-card { position: relative; background: #fff; border-radius: var(--radius-lg); padding: 0; overflow: hidden; transition: transform 0.25s ease, box-shadow 0.25s ease; box-shadow: 0 4px 20px rgba(20,25,58,0.06); display: flex; flex-direction: column; }
.course-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: linear-gradient(90deg, var(--c1, #E85D04), var(--c2, #FF8A3D)); }
.course-card:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(20,25,58,0.14); }
.course-card__head { padding: 24px 24px 0; display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.course-card__icon { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; font-size: 1.8rem; background: linear-gradient(135deg, var(--c1, #E85D04), var(--c2, #FF8A3D)); color: #fff; box-shadow: 0 8px 18px rgba(0,0,0,0.12); flex-shrink: 0; }
.course-card__pop { display: inline-block; font-size: 0.65rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; padding: 5px 11px; border-radius: 999px; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; box-shadow: 0 4px 10px rgba(232,93,4,0.25); }
.course-card__pop--cert { background: linear-gradient(135deg, var(--orange), #FF8A3D); }
.course-card h3 { padding: 18px 24px 4px; color: var(--ink); font-size: 1.4rem; }
.course-card__row { padding: 12px 24px 0; }
.course-card__row strong { display: block; font-size: 0.72rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.12em; color: var(--c1, var(--orange)); margin-bottom: 8px; }
.course-card__row:last-child { padding-bottom: 24px; }
.chips { display: flex; flex-wrap: wrap; gap: 6px; }
.chips span { display: inline-block; padding: 6px 12px; background: #f5f6fa; color: var(--ink); font-size: 0.78rem; font-weight: 600; border-radius: 999px; transition: background 0.2s; }
.course-card:hover .chips span { background: #fff3e8; }

.cert-banner { margin-top: 36px; padding: 28px; background: linear-gradient(135deg, #14193A 0%, #1F2A55 100%); color: #fff; border-radius: var(--radius-lg); display: flex; gap: 24px; align-items: center; position: relative; overflow: hidden; }
.cert-banner::before { content: ''; position: absolute; top: -40px; right: -40px; width: 200px; height: 200px; background: radial-gradient(circle, rgba(232,93,4,0.3), transparent 70%); }
.cert-banner__seal { flex-shrink: 0; width: 84px; height: 84px; border-radius: 50%; background: rgba(255,255,255,0.08); border: 2px solid var(--orange); display: grid; place-items: center; color: var(--orange); position: relative; }
.cert-banner__seal svg { width: 50px; height: 50px; }
.cert-banner__eyebrow { display: inline-block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange); margin-bottom: 6px; }
.cert-banner__text h4 { font-size: 1.5rem; color: #fff; margin-bottom: 6px; }
.cert-banner__text p { color: rgba(255,255,255,0.85); }

.how-section { background: #fff; }
.how-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; position: relative; }
.how-grid::before { content: ''; position: absolute; top: 30px; left: 8%; right: 8%; height: 2px; background: repeating-linear-gradient(90deg, var(--orange) 0 8px, transparent 8px 18px); z-index: 0; opacity: 0.45; }
.how-step { position: relative; text-align: center; padding: 24px 18px; background: #fff; border-radius: var(--radius-lg); border: 1px solid var(--gray-line); transition: all 0.3s; z-index: 1; }
.how-step:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: var(--orange); }
.how-step__num { position: absolute; top: -16px; left: 50%; transform: translateX(-50%); width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; display: grid; place-items: center; font-family: 'Trocchi', serif; font-weight: 700; font-size: 1.1rem; box-shadow: 0 6px 16px rgba(232,93,4,0.4); }
.how-step__icon { font-size: 2.6rem; margin: 18px 0 14px; }
.how-step h3 { margin-bottom: 8px; font-size: 1.1rem; }
.how-step p { color: var(--gray-text); font-size: 0.9rem; }

.testimonials { background: linear-gradient(180deg, #fff 0%, var(--bg-warm) 100%); }
.testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.testimonial { background: #fff; padding: 28px; border-radius: var(--radius-lg); border: 1px solid var(--gray-line); position: relative; transition: all 0.25s; }
.testimonial:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.testimonial::before { content: '"'; position: absolute; top: 8px; right: 22px; font-family: Georgia, serif; font-size: 5rem; color: var(--orange-light); line-height: 1; }
.testimonial__stars { color: #FFB627; letter-spacing: 2px; margin-bottom: 14px; font-size: 1.1rem; }
.testimonial p { color: var(--ink); font-size: 0.98rem; line-height: 1.6; margin-bottom: 18px; position: relative; }
.testimonial__author { display: flex; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid var(--gray-line); }
.testimonial__avatar { width: 44px; height: 44px; border-radius: 50%; color: #fff; display: grid; place-items: center; font-family: 'Trocchi', serif; font-weight: 700; flex-shrink: 0; }
.testimonial__author strong { display: block; font-size: 0.95rem; }
.testimonial__author span { font-size: 0.8rem; color: var(--gray-soft); }

.app-showcase { padding: var(--space-xl) 0; background: linear-gradient(180deg, #fff 0%, var(--bg-warm) 100%); }
.app-showcase__grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-xl); align-items: center; }
.app-showcase__copy h2 { margin: 14px 0 18px; }
.app-showcase__copy p { color: var(--gray-text); font-size: 1.05rem; margin-bottom: 18px; }
.app-showcase__list { list-style: none; padding: 0; margin-bottom: 26px; }
.app-showcase__list li { padding: 8px 0 8px 28px; position: relative; color: var(--gray-text); }
.app-showcase__list li::before { content: '✓'; position: absolute; left: 0; color: var(--orange); font-weight: 700; }
.app-showcase__visual { position: relative; height: 480px; }
.app-showcase__phone { position: absolute; max-width: 290px; border-radius: 28px; box-shadow: var(--shadow-lg); }
.app-showcase__phone--back { top: 0; left: 0; transform: rotate(-6deg); }
.app-showcase__phone--front { bottom: 0; right: 10px; transform: rotate(4deg); }

.why-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.why-card { padding: 28px; background: #fff; border: 1px solid var(--gray-line); border-radius: var(--radius); transition: all 0.2s; }
.why-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: var(--orange); }
.why-card__icon { width: 48px; height: 48px; border-radius: 12px; background: var(--orange-light); color: var(--orange); display: grid; place-items: center; font-size: 1.3rem; font-weight: 700; margin-bottom: 14px; }
.why-card h3 { margin-bottom: 6px; }
.why-card p { color: var(--gray-text); font-size: 0.92rem; }

.lead-section { background: linear-gradient(135deg, var(--bg-warm) 0%, #ffffff 100%); }
.lead-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: var(--space-xl); align-items: center; }
.lead-copy h2 { margin: 14px 0 14px; }
.lead-copy p { font-size: 1.05rem; color: var(--gray-text); margin-bottom: 18px; }
.lead-bullets { list-style: none; padding: 0; }
.lead-bullets li { padding: 8px 0 8px 28px; position: relative; color: var(--gray-text); }
.lead-bullets li::before { content: '✓'; color: var(--orange); font-weight: 700; position: absolute; left: 0; }
.lead-form { background: #fff; padding: var(--space-lg); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); border: 1px solid var(--gray-line); }
.lead-field { margin-bottom: 14px; display: flex; flex-direction: column; }
.lead-field label { font-size: 0.875rem; font-weight: 600; margin-bottom: 6px; color: var(--ink); }
.lead-field input, .lead-field textarea { padding: 12px 14px; border: 1.5px solid var(--gray-line); border-radius: 10px; font: inherit; transition: border-color 0.2s; }
.lead-field input:focus, .lead-field textarea:focus { outline: none; border-color: var(--orange); }
.lead-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.lead-submit { width: 100%; margin-top: 8px; }
.lead-note { text-align: center; color: var(--gray-soft); font-size: 0.875rem; margin-top: 10px; }

.contact-section { background: var(--bg-soft); }
.contact-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-xl); align-items: center; }
.contact-grid h2 { margin: 12px 0 10px; }
.contact-grid p { color: var(--gray-text); margin-bottom: 18px; }
.contact-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-card { display: block; background: #fff; padding: 20px; border-radius: var(--radius); border: 1px solid var(--gray-line); transition: all 0.2s; }
.contact-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); border-color: var(--orange); color: inherit; }
.contact-card__title { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--orange); margin-bottom: 4px; }
.contact-card__value { font-family: 'Trocchi', serif; font-size: 1.15rem; }
.contact-app { background: var(--ink); color: #fff; padding: var(--space-lg); border-radius: var(--radius-lg); text-align: center; }
.contact-app h3 { color: #fff; margin-bottom: 8px; }
.contact-app p { color: rgba(255,255,255,0.7); margin-bottom: 18px; }

.seo-block { padding: 48px 0; background: var(--bg); border-top: 1px solid var(--gray-line); }
.seo-block__title { font-size: 1.05rem; color: var(--gray-soft); margin-bottom: 16px; text-align: center; font-family: 'Inter', sans-serif; font-weight: 600; }
.seo-block__cloud { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.seo-block__cloud span { padding: 6px 12px; background: var(--bg-soft); border: 1px solid var(--gray-line); border-radius: 999px; font-size: 0.78rem; color: var(--gray-text); }

.footer { background: var(--ink); color: rgba(255,255,255,0.75); padding: var(--space-xl) 0 24px; }
.footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 36px; padding-bottom: 36px; border-bottom: 1px solid rgba(255,255,255,0.1); }
.footer__brand p { margin: 14px 0 18px; }
.footer__logo { height: 50px; background: #fff; padding: 6px 12px; border-radius: 8px; }
.footer__title { color: #fff; font-family: 'Trocchi', serif; font-size: 1.05rem; margin-bottom: 14px; }
.footer__links { list-style: none; padding: 0; }
.footer__links li { padding: 5px 0; }
.footer__links a { color: rgba(255,255,255,0.7); font-size: 0.92rem; }
.footer__links a:hover { color: var(--orange); }
.footer__bottom { padding-top: 24px; text-align: center; font-size: 0.85rem; color: rgba(255,255,255,0.5); }

/* Sub-page hero */
.page-hero { background: linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%); color: #fff; padding: 80px 0; text-align: center; position: relative; overflow: hidden; }
.page-hero::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(circle at 20% 30%, rgba(232,93,4,0.2), transparent 50%); }
.page-hero__inner { position: relative; max-width: 800px; margin: 0 auto; }
.page-hero__eyebrow { display: inline-block; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange); margin-bottom: 14px; }
.page-hero h1 { color: #fff; margin-bottom: 14px; }
.page-hero__sub { font-size: 1.15rem; color: rgba(255,255,255,0.85); }

/* Generic feature lists */
.feature-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
.feature-card { background: #fff; padding: 28px; border-radius: var(--radius); border: 1px solid var(--gray-line); transition: all 0.2s; }
.feature-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: var(--orange); }
.feature-card__num { display: inline-block; font-family: 'Trocchi', serif; font-size: 1.6rem; color: var(--orange); margin-bottom: 8px; }
.feature-card h3 { margin-bottom: 6px; }
.feature-card p { color: var(--gray-text); font-size: 0.95rem; }

/* Partner schools list */
.school-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.school-card { padding: 18px; background: #fff; border: 1px solid var(--gray-line); border-radius: var(--radius); display: flex; align-items: center; gap: 12px; transition: all 0.2s; }
.school-card:hover { border-color: var(--orange); box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.school-card__initial { width: 44px; height: 44px; flex-shrink: 0; border-radius: 12px; background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; display: grid; place-items: center; font-family: 'Trocchi', serif; font-weight: 700; font-size: 1.1rem; }
.school-card__name { font-weight: 600; font-size: 0.92rem; }

/* Boards strip */
.board-strip { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin: var(--space-md) 0 var(--space-lg); }
.board-pill { padding: 10px 22px; border-radius: 999px; background: var(--orange-light); color: var(--orange); font-weight: 700; font-size: 0.95rem; }

/* Enroll CTA */
.enroll-cta { margin-top: var(--space-lg); padding: var(--space-lg); background: linear-gradient(135deg, var(--orange), #FF8A3D); color: #fff; border-radius: var(--radius-lg); text-align: center; }
.enroll-cta h3 { color: #fff; font-size: 1.6rem; margin-bottom: 10px; }
.enroll-cta p { margin-bottom: 18px; opacity: 0.95; }
.enroll-cta .btn { background: #fff; color: var(--orange); }
.enroll-cta .btn:hover { background: var(--ink); color: #fff; }

@media (max-width: 980px) {
    .stats-strip__grid { grid-template-columns: repeat(2, 1fr); }
    .stats-strip__item:last-child { grid-column: 1 / -1; }
    .how-grid { grid-template-columns: repeat(2, 1fr); }
    .how-grid::before { display: none; }
    .testimonial-grid { grid-template-columns: 1fr; }
    .trust-grid { grid-template-columns: repeat(2, 1fr); }
    .achievers-grid { grid-template-columns: repeat(2, 1fr); }
    .achievers-grid--photo { grid-template-columns: repeat(2, 1fr); }
    .course-grid--compact { grid-template-columns: 1fr; }
    .hero.hero--dark .hero__inner { grid-template-columns: 1fr; }
    .hero__visual--dark { display: none; }
    .carousel__arrow--prev { left: 4px; }
    .carousel__arrow--next { right: 4px; }
    .page-hero__split { grid-template-columns: 1fr; gap: 30px; text-align: center; }
    .page-hero__copy { text-align: center; }
    .page-hero__bullets { display: inline-block; text-align: left; }
    .checklist-grid { grid-template-columns: 1fr; }
    .hero__inner, .app-showcase__grid, .lead-grid, .contact-grid { grid-template-columns: 1fr; }
    .hero__visual { display: none; }
    .usp-banner__grid { grid-template-columns: 1fr 1fr; }
    .footer__grid { grid-template-columns: 1fr 1fr; }
    .navbar__nav { display: none !important; position: absolute; top: 100%; left: 0; right: 0; background: rgba(20,25,58,0.97); flex-direction: column; padding: 14px; border-bottom: 1px solid rgba(255,255,255,0.1); box-shadow: var(--shadow-md); align-items: stretch; }
    .navbar__nav.is-open { display: flex !important; }
    .navbar__nav .navbar__link { color: #fff; padding: 12px 14px; }
    .navbar__cta { margin: 4px 0; width: 100%; }
    .navbar__cta .btn { width: 100%; }
    .navbar__mobile-toggle { display: flex !important; }
    .navbar__dropdown-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: none; padding-left: 12px; display: none; background: transparent; }
    .navbar__dropdown.is-open .navbar__dropdown-menu { display: block; }
    .navbar__dropdown-item { color: rgba(255,255,255,0.85); }
}
@media (max-width: 1100px) and (min-width: 981px) {
    .course-grid--compact { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .usp-banner__grid { grid-template-columns: 1fr; }
    .footer__grid { grid-template-columns: 1fr; }
    .topbar__inner { flex-direction: column; text-align: center; }
    .promo-banner { padding: 8px 0; font-size: 0.78rem; }
    .promo-banner__inner { flex-direction: column; gap: 8px; }
    .promo-banner__msg { text-align: center; line-height: 1.3; }
    .lead-row { grid-template-columns: 1fr; }
    .contact-cards { grid-template-columns: 1fr; }
    .cert-banner { flex-direction: column; text-align: center; }
    .cert-banner__seal { margin: 0 auto; }
    .hero, .hero.hero--dark { padding: 36px 0 48px; }
    .section { padding: 40px 0; }
    .container { padding: 0 16px; }
    h1 { font-size: clamp(1.8rem, 7vw, 2.4rem); }
    h2 { font-size: clamp(1.5rem, 6vw, 2rem); }
    .hero__title--mega { font-size: clamp(1.8rem, 7vw, 2.4rem); }
    .navbar__inner { padding: 10px 16px; gap: 12px; }
    .navbar__logo img { height: 44px; }
    .navbar.navbar--dark .navbar__logo img { height: 48px; }
    .pillar-tabs--switches { gap: 8px; flex-direction: column; }
    .pillar-tab--colored { width: 100%; min-width: 0; padding: 12px 16px; }
    .course-card--compact .chips span { font-size: 0.7rem; padding: 3px 8px; }
    .testimonial { padding: 20px; }
    .testimonial p { font-size: 0.9rem; }
    .testimonial::before { font-size: 3rem; top: 4px; right: 12px; }
    .lead-form { padding: 20px; }
    .phone-group { flex-wrap: wrap; }
    .phone-cc, .phone-cc--global { flex: 1 1 100%; max-width: 100%; }
    .curriculum-strip { gap: 4px; padding: 8px 10px; flex-wrap: wrap; white-space: normal; justify-content: center; }
    .curriculum-strip__item { font-size: 0.85rem; padding: 2px 4px; }
    .stats-strip__num { font-size: 1.6rem; }
    .stats-strip__lbl { font-size: 0.75rem; }
    .glass-card { min-width: 0; max-width: 200px; padding: 10px 12px; }
    .glass-card--top { top: -20px; }
    .glass-card--bottom { bottom: 20px; }
    .glass-card__title { font-size: 0.78rem; }
    .glass-card__sub { font-size: 0.68rem; }
    .achiever-card figcaption { padding: 12px; }
    .achiever-card figcaption strong { font-size: 1rem; }
    .checklist-grid { grid-template-columns: 1fr; }
    .school-grid { grid-template-columns: 1fr 1fr; }
    .feature-grid, .trust-grid { grid-template-columns: 1fr; }
    .how-grid { grid-template-columns: 1fr; }
    .stats-strip__grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .stats-strip__item:last-child { grid-column: 1 / -1; }
    .achievers-grid--photo { grid-template-columns: 1fr; }
    .footer__bottom { flex-direction: column; text-align: center; }
    .social-row { justify-content: center; }
    .whatsapp-fab { width: 48px; height: 48px; bottom: 16px; right: 16px; }
    .whatsapp-fab svg { width: 22px; height: 22px; }
    .btn--large { padding: 14px 24px; font-size: 0.95rem; }
    .hero__actions { gap: 10px; }
    .hero__actions .btn { flex: 1; }
}
