:root {
    --navy: #071a33;
    --navy-2: #0b2748;
    --blue: #0b63f6;
    --cyan: #00b8d9;
    --orange: #f97316;
    --orange-dark: #d95d0b;
    --white: #fff;
    --surface: #f5f8fc;
    --surface-2: #eaf2fb;
    --ink: #172033;
    --muted: #596579;
    --line: #dce6f2;
    --success: #087f5b;
    --danger: #b42318;
    --shadow: 0 20px 50px rgba(7, 26, 51, .1);
    --radius: 20px;
    --container: 1180px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--ink);
    background: var(--white);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: var(--blue); text-underline-offset: 3px; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }
h1, h2, h3 { margin: 0 0 .65em; color: var(--navy); line-height: 1.15; letter-spacing: -.025em; }
h1 { font-size: clamp(2.35rem, 5.4vw, 4.9rem); }
h2 { font-size: clamp(1.85rem, 3.5vw, 3rem); }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1.2rem; }
ul { margin: 0; padding: 0; }
.container { width: min(calc(100% - 32px), var(--container)); margin-inline: auto; }
.section { padding: clamp(68px, 9vw, 112px) 0; }
.section--soft { background: var(--surface); }
.section--navy { color: #d9e7f7; background: var(--navy); }
.section--navy h2, .section--navy h3 { color: var(--white); }
.section-heading { max-width: 760px; margin-bottom: 42px; }
.section-heading--center { margin-inline: auto; text-align: center; }
.section-heading p { color: var(--muted); font-size: 1.1rem; }
.section--navy .section-heading p { color: #b6c9df; }
.eyebrow {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    margin-bottom: 14px;
    color: var(--blue);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.eyebrow::before { width: 26px; height: 3px; border-radius: 9px; background: var(--orange); content: ""; }
.section--navy .eyebrow { color: #7adff0; }
.button {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border: 2px solid transparent;
    border-radius: 12px;
    color: var(--white);
    background: var(--orange);
    box-shadow: 0 10px 24px rgba(249, 115, 22, .25);
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { color: var(--white); background: var(--orange-dark); box-shadow: 0 13px 30px rgba(249, 115, 22, .32); transform: translateY(-2px); }
.button--blue { background: var(--blue); box-shadow: 0 10px 24px rgba(11, 99, 246, .24); }
.button--blue:hover { background: #074fca; }
.button--ghost { border-color: rgba(255,255,255,.55); color: var(--white); background: transparent; box-shadow: none; }
.button--ghost:hover { border-color: var(--white); background: rgba(255,255,255,.1); }
.button--outline { border-color: var(--blue); color: var(--blue); background: transparent; box-shadow: none; }
.button--outline:hover { color: var(--white); background: var(--blue); }
.button--small { min-height: 42px; padding: 9px 16px; border-radius: 10px; font-size: .9rem; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.skip-link { position: fixed; z-index: 9999; top: 10px; left: 10px; padding: 10px 14px; color: #fff; background: #000; transform: translateY(-150%); }
.skip-link:focus { transform: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.announcement { color: #dce9f7; background: var(--navy); font-size: .82rem; }
.announcement__inner { display: flex; min-height: 38px; gap: 22px; align-items: center; justify-content: center; }
.announcement a { color: #fff; font-weight: 700; text-decoration: none; }
.site-header { position: sticky; z-index: 1000; top: 0; border-bottom: 1px solid rgba(7,26,51,.08); background: rgba(255,255,255,.96); backdrop-filter: blur(18px); }
.header__inner { display: flex; min-height: 82px; gap: 20px; align-items: center; }
.brand { flex: 0 0 auto; }
.brand img { width: 146px; height: auto; }
.primary-nav { display: flex; flex: 1 1 auto; gap: 18px; align-items: center; justify-content: flex-end; }
.primary-nav a { position: relative; color: var(--ink); font-size: .84rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.primary-nav a:hover, .primary-nav a[aria-current="page"] { color: var(--blue); }
.primary-nav a[aria-current="page"]::after { position: absolute; right: 0; bottom: -12px; left: 0; height: 3px; border-radius: 5px; background: var(--orange); content: ""; }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 9px; border: 0; border-radius: 10px; background: var(--surface); }
.menu-toggle span:not(.sr-only) { display: block; width: 24px; height: 2px; margin: 5px auto; border-radius: 3px; background: var(--navy); }

.hero { position: relative; min-height: 680px; overflow: hidden; color: var(--white); background: var(--navy); }
.hero__media, .hero__media::after { position: absolute; inset: 0; }
.hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .52; }
.hero__media::after { background: linear-gradient(90deg, rgba(7,26,51,.98) 0%, rgba(7,26,51,.82) 50%, rgba(7,26,51,.25) 100%), linear-gradient(0deg, rgba(7,26,51,.7), transparent 60%); content: ""; }
.hero__content { position: relative; z-index: 2; display: grid; min-height: 680px; max-width: 770px; align-content: center; padding: 80px 0; }
.hero h1 { color: var(--white); }
.hero__lead { max-width: 690px; color: #d6e5f4; font-size: clamp(1.05rem, 2vw, 1.25rem); }
.hero__trust { display: flex; flex-wrap: wrap; gap: 10px 18px; margin: 26px 0 30px; color: #ecf6ff; font-size: .92rem; font-weight: 700; list-style: none; }
.hero__trust li::before { margin-right: 8px; color: #6ee7f3; content: "✓"; }
.hero__quick { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 24px; }
.hero__quick a { color: #fff; font-weight: 700; text-decoration: none; }

.card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--white);
    box-shadow: 0 8px 28px rgba(7,26,51,.06);
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.card:hover { border-color: #b8d1f4; box-shadow: var(--shadow); transform: translateY(-5px); }
.card p { color: var(--muted); }
.card__icon { display: grid; width: 54px; height: 54px; margin-bottom: 22px; place-items: center; border-radius: 15px; color: var(--blue); background: #e9f1ff; font-size: 1.45rem; font-weight: 900; }
.card__outcome { display: block; margin: 16px 0; padding-top: 16px; border-top: 1px solid var(--line); color: var(--navy); font-size: .88rem; font-weight: 800; }
.card__actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.text-link { color: var(--blue); font-weight: 800; text-decoration: none; }
.text-link::after { margin-left: 5px; content: "→"; }
.feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.feature { display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start; padding: 23px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.feature span { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 13px; color: #fff; background: linear-gradient(135deg, var(--blue), var(--cyan)); font-weight: 900; }
.feature h3 { margin: 2px 0 6px; font-size: 1rem; }
.feature p { margin: 0; color: var(--muted); font-size: .9rem; }

.curriculum-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.curriculum-grid details { border: 1px solid #cddbec; border-radius: 14px; background: #fff; }
.curriculum-grid summary { padding: 19px 45px 19px 20px; color: var(--navy); font-weight: 800; cursor: pointer; }
.curriculum-grid details p { padding: 0 20px 18px; color: var(--muted); font-size: .92rem; }
.curriculum-cta { margin-top: 32px; text-align: center; }
.promo { position: relative; overflow: hidden; border-radius: 26px; color: #fff; background: var(--navy); box-shadow: var(--shadow); }
.promo img { width: 100%; min-height: 360px; object-fit: cover; opacity: .35; }
.promo::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,26,51,.96), rgba(7,26,51,.55)); content: ""; }
.promo__content { position: absolute; z-index: 2; top: 50%; left: clamp(24px, 6vw, 72px); width: min(560px, calc(100% - 48px)); transform: translateY(-50%); }
.promo h2 { color: #fff; }
.promo p { color: #dbe8f6; }
.mode-grid, .tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.mode-card { padding: 30px; border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.mode-card__label { display: inline-block; margin-bottom: 20px; padding: 5px 10px; border-radius: 99px; color: var(--blue); background: #e9f1ff; font-size: .76rem; font-weight: 800; text-transform: uppercase; }
.mode-card ul { margin: 18px 0 26px; padding-left: 20px; color: var(--muted); }
.tools-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.tool { padding: 23px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; background: rgba(255,255,255,.05); }
.tool strong { display: block; margin-bottom: 6px; color: #fff; }
.tool span { color: #b8cbe0; font-size: .9rem; }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(34px, 7vw, 86px); align-items: center; }
.video-panel { padding: clamp(30px,5vw,60px); border-radius: 28px; color: #dfeaf7; background: linear-gradient(145deg, #102b4a, #071a33); box-shadow: var(--shadow); }
.video-panel h2 { color: #fff; }
.video-icon { display: grid; width: 74px; height: 74px; margin-bottom: 28px; place-items: center; border-radius: 50%; color: #fff; background: #f32c2c; font-size: 1.5rem; }
.parts-panel { padding: clamp(30px,5vw,58px); border: 1px solid #bed4f0; border-radius: 28px; background: linear-gradient(145deg, #fff, #eef6ff); }
.cta-band { display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; padding: clamp(34px,5vw,58px); border-radius: 28px; color: #fff; background: linear-gradient(120deg, var(--blue), #0641a5); box-shadow: 0 24px 60px rgba(11,99,246,.25); }
.cta-band h2 { margin-bottom: 9px; color: #fff; }
.cta-band p { margin: 0; color: #dce9ff; }
.cta-band .button-row { justify-content: flex-end; }

.location-card { overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: var(--shadow); }
.location-card iframe { display: block; width: 100%; height: 420px; border: 0; }
.location-copy { padding: 34px; }
.contact-list { display: grid; gap: 14px; margin: 25px 0; list-style: none; }
.contact-list strong { display: block; color: var(--navy); }
.faq-list { display: grid; max-width: 900px; gap: 12px; margin-inline: auto; }
.faq-list details { border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 5px 18px rgba(7,26,51,.04); }
.faq-list summary { padding: 20px 52px 20px 22px; color: var(--navy); font-weight: 800; cursor: pointer; }
.faq-list p { padding: 0 22px 20px; color: var(--muted); }

.page-hero { position: relative; min-height: 390px; overflow: hidden; color: #fff; background: var(--navy); }
.page-hero__media, .page-hero__media::after { position: absolute; inset: 0; }
.page-hero__media img { width: 100%; height: 100%; object-fit: cover; opacity: .4; }
.page-hero__media::after { background: linear-gradient(90deg, rgba(7,26,51,.98), rgba(7,26,51,.48)); content: ""; }
.page-hero__content { position: relative; z-index: 2; display: grid; min-height: 390px; max-width: 780px; align-content: center; padding: 66px 0; }
.page-hero h1 { color: #fff; font-size: clamp(2.3rem,5vw,4rem); }
.page-hero p { color: #d9e7f5; font-size: 1.1rem; }
.breadcrumbs { margin-bottom: 20px; color: #c9daec; font-size: .86rem; }
.breadcrumbs a { color: #fff; }
.content-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .7fr); gap: clamp(32px,7vw,80px); align-items: start; }
.prose { font-size: 1.06rem; }
.prose h2 { margin-top: 2em; }
.prose h3 { margin-top: 1.7em; }
.prose p, .prose li { color: #46546a; }
.prose ul { margin: 0 0 1.5rem; padding-left: 1.3rem; }
.sticky-card { position: sticky; top: 112px; padding: 28px; border-radius: 20px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.sticky-card ul { margin: 18px 0 25px; padding-left: 20px; color: var(--muted); }
.module-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.module-card { padding: 24px; border: 1px solid var(--line); border-radius: 17px; background: #fff; }
.module-card h3 { font-size: 1.05rem; }
.module-card p { margin: 0; color: var(--muted); font-size: .92rem; }
.course-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.course-gallery img { width: 100%; border: 1px solid var(--line); border-radius: 16px; background: #fff; }

/* Complete supplied Course 3.0 artwork */
.course-visual-syllabus { overflow: hidden; background: radial-gradient(circle at 12% 4%,rgba(18,109,217,.1),transparent 25%),#f3f7fb; }
.course-detail-story { display: grid; max-width: 1060px; gap: clamp(30px,5vw,58px); margin-inline: auto; }
.course-detail-chapter { position: relative; margin: 0; overflow: hidden; border: 1px solid #cbdbea; border-radius: 26px; background: #000; box-shadow: 0 30px 75px rgba(7,26,51,.15); isolation: isolate; }
.course-detail-chapter::before { position: absolute; z-index: -1; inset: -2px; background: linear-gradient(115deg,transparent 18%,rgba(15,112,237,.5) 43%,rgba(255,109,22,.5) 53%,transparent 78%); background-size: 240% 100%; content: ""; animation: course-frame-glow 9s linear infinite; }
.course-detail-chapter::after { position: absolute; z-index: 4; top: 0; left: -42%; width: 38%; height: 3px; border-radius: 99px; background: linear-gradient(90deg,transparent,#8de9ff,#ff7318,transparent); content: ""; pointer-events: none; animation: course-frame-scan 6.5s ease-in-out infinite; }
.course-detail-chapter figcaption { display: grid; grid-template-columns: auto minmax(0,1fr); gap: clamp(17px,3vw,28px); align-items: center; padding: clamp(21px,3vw,34px); border-bottom: 1px solid rgba(255,255,255,.13); color: #fff; background: radial-gradient(circle at 95% 10%,rgba(24,128,234,.25),transparent 35%),linear-gradient(125deg,#071a33,#0a3159); }
.course-detail-chapter figcaption>span { display: grid; min-width: 82px; min-height: 82px; place-items: center; padding: 10px; border: 1px solid rgba(140,229,255,.25); border-radius: 21px; color: #8de9ff; background: rgba(255,255,255,.06); font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.course-detail-chapter h3 { margin: 0 0 7px; color: #fff; font-size: clamp(1.4rem,3vw,2.3rem); }
.course-detail-chapter figcaption p { max-width: 760px; margin: 0; color: #b8cbdd; font-size: .9rem; }
.course-detail-chapter picture,.course-detail-chapter img { display: block; width: 100%; }
.course-detail-chapter picture { background: #000; }
.course-detail-chapter img { height: auto; object-fit: contain; background: #000; }
.course-visual-note { display: grid; max-width: 1060px; grid-template-columns: minmax(0,1fr) auto; gap: 24px 38px; align-items: center; margin: 38px auto 0; padding: clamp(22px,3vw,32px); border: 1px solid #c5d7e8; border-radius: 20px; background: #fff; box-shadow: 0 15px 42px rgba(7,26,51,.08); }
.course-visual-note p { margin: 0; color: var(--muted); font-size: .86rem; }
.course-visual-note strong { color: var(--navy); }
.course-visual-note .button-row { flex-wrap: wrap; justify-content: flex-end; margin: 0; }
@keyframes course-frame-glow { 0% { background-position: 160% 0; } 100% { background-position: -80% 0; } }
@keyframes course-frame-scan { 0%,10% { left: -42%; opacity: 0; } 22% { opacity: 1; } 68% { left: 104%; opacity: 1; } 78%,100% { left: 104%; opacity: 0; } }

@media (max-width:760px) {
    .course-detail-chapter { border-radius: 19px; }
    .course-detail-chapter figcaption { grid-template-columns: 62px minmax(0,1fr); padding: 18px 15px; }
    .course-detail-chapter figcaption>span { min-width: 62px; min-height: 62px; border-radius: 16px; font-size: .6rem; }
    .course-detail-chapter h3 { font-size: 1.28rem; }
    .course-detail-chapter figcaption p { font-size: .78rem; }
    .course-visual-note { grid-template-columns: 1fr; }
    .course-visual-note .button-row { display: grid; justify-content: stretch; }
}
@media (prefers-reduced-motion:reduce) { .course-detail-chapter::before,.course-detail-chapter::after { animation: none; } .course-detail-chapter::after { display: none; } }

.form-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.7fr); gap: clamp(34px,7vw,80px); align-items: start; }
.form-card { padding: clamp(24px,4vw,44px); border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: var(--shadow); }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.field { display: grid; gap: 7px; }
.field--full { grid-column: 1 / -1; }
.field label { color: var(--navy); font-size: .9rem; font-weight: 800; }
.field input, .field select, .field textarea {
    width: 100%;
    min-height: 50px;
    padding: 11px 13px;
    border: 1px solid #b8c6d8;
    border-radius: 10px;
    color: var(--ink);
    background: #fff;
}
.field textarea { min-height: 115px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(11,99,246,.12); outline: none; }
.field-error { color: var(--danger); font-size: .82rem; }
.checkbox { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; color: var(--muted); font-size: .88rem; }
.checkbox input { width: 18px; height: 18px; margin-top: 3px; }
.form-note { color: var(--muted); font-size: .84rem; }
.alert { margin-bottom: 22px; padding: 14px 16px; border-radius: 10px; }
.alert--error { color: #7a271a; background: #fef3f2; }
.alert--success { color: #05603f; background: #ecfdf3; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.post-card { overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 8px 26px rgba(7,26,51,.06); }
.post-card__visual { display: grid; min-height: 190px; place-items: center; color: #fff; background: linear-gradient(135deg,var(--navy),var(--blue)); font-size: 2.1rem; font-weight: 900; }
.post-card__body { padding: 25px; }
.post-card__meta { margin-bottom: 10px; color: var(--blue); font-size: .78rem; font-weight: 800; text-transform: uppercase; }

.site-footer { padding: 70px 0 96px; color: #b8c9dc; background: #041326; }
.footer-grid { display: grid; grid-template-columns: 1.35fr repeat(3,1fr); gap: 42px; }
.footer-grid h2 { margin-bottom: 18px; color: #fff; font-size: 1rem; }
.footer-grid ul { display: grid; gap: 10px; list-style: none; }
.footer-grid a { color: #d2e0ef; text-decoration: none; }
.footer-grid a:hover { color: #fff; }
.footer-grid address { font-style: normal; }
.footer-about img { width: 150px; margin-bottom: 22px; filter: brightness(0) invert(1); }
.footer-bottom { display: flex; gap: 20px; align-items: center; justify-content: space-between; margin-top: 54px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.12); font-size: .86rem; }
.footer-bottom p { margin: 0; }
.footer-bottom nav { display: flex; gap: 20px; }
.mobile-cta { display: none; }
[data-reveal] { opacity: 0; transform: translateY(22px); transition: opacity .55s ease, transform .55s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

@media (max-width: 1120px) {
    .header-cta { display: none; }
    .primary-nav { gap: 12px; }
    .primary-nav a { font-size: .78rem; }
    .card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 900px) {
    .announcement__inner span { display: none; }
    .header__inner { min-height: 72px; }
    .menu-toggle { display: block; margin-left: auto; }
    .primary-nav { position: fixed; z-index: 1001; top: 110px; right: 0; bottom: 0; left: 0; display: none; align-content: start; padding: 22px 24px 120px; overflow-y: auto; background: #fff; }
    .primary-nav.is-open { display: grid; }
    .primary-nav a { padding: 11px 4px; border-bottom: 1px solid var(--line); font-size: 1rem; }
    .primary-nav a[aria-current="page"]::after { display: none; }
    .hero, .hero__content { min-height: 620px; }
    .hero__media::after { background: linear-gradient(90deg, rgba(7,26,51,.95), rgba(7,26,51,.68)); }
    .feature-grid, .curriculum-grid, .mode-grid, .blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .tools-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .split, .form-layout, .content-grid { grid-template-columns: 1fr; }
    .sticky-card { position: static; }
    .cta-band { grid-template-columns: 1fr; }
    .cta-band .button-row { justify-content: flex-start; }
    .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
    body { padding-bottom: 62px; }
    h1 { font-size: clamp(2.25rem, 11vw, 3.3rem); }
    .container { width: min(calc(100% - 24px), var(--container)); }
    .announcement__inner { gap: 14px; justify-content: space-between; }
    .brand img { width: 130px; }
    .primary-nav { top: 110px; }
    .hero, .hero__content { min-height: 690px; }
    .hero__content { padding: 58px 0; }
    .button-row .button { width: 100%; }
    .hero__quick { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; text-align: center; }
    .hero__quick a { padding: 8px 4px; border-radius: 8px; background: rgba(255,255,255,.08); font-size: .82rem; }
    .card-grid, .feature-grid, .curriculum-grid, .mode-grid, .tools-grid, .module-list, .course-gallery, .blog-grid, .form-grid { grid-template-columns: 1fr; }
    .field--full { grid-column: auto; }
    .card { padding: 23px; }
    .promo img { min-height: 470px; }
    .promo__content { top: 50%; }
    .page-hero, .page-hero__content { min-height: 350px; }
    .location-card iframe { height: 310px; }
    .footer-grid { grid-template-columns: 1fr; gap: 32px; }
    .footer-bottom { display: grid; }
    .mobile-cta { position: fixed; z-index: 1200; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(3,1fr); min-height: 62px; border-top: 1px solid rgba(255,255,255,.2); background: var(--navy); box-shadow: 0 -8px 25px rgba(7,26,51,.2); }
    .mobile-cta a { display: grid; place-items: center; color: #fff; font-size: .86rem; font-weight: 800; text-decoration: none; }
    .mobile-cta a:nth-child(2) { background: #138f5b; }
    .mobile-cta a:nth-child(3) { background: var(--orange); }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
    [data-reveal] { opacity: 1; transform: none; }
}

/* Redesigned home using the verified content and banners from the former site. */
.home-banner-slider__media img { position: absolute; inset: 0; opacity: 0; animation: home-banner-fade 18s infinite; }
.home-banner-slider__media img:nth-child(2) { animation-delay: 6s; }
.home-banner-slider__media img:nth-child(3) { animation-delay: 12s; }
@keyframes home-banner-fade {
    0%, 29% { opacity: .52; transform: scale(1); }
    34%, 95% { opacity: 0; transform: scale(1.025); }
    100% { opacity: .52; transform: scale(1); }
}
.legacy-home-content { background: linear-gradient(180deg,#f5f8fc 0,#fff 25%); }
.legacy-course-content { max-width: 1040px; margin: 0 auto; }
.legacy-course-content > div { display: flow-root; margin-bottom: 24px; padding: clamp(22px,4vw,42px); border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 12px 35px rgba(7,26,51,.08); }
.legacy-course-content h2 { margin-top: 0; color: var(--navy); text-align: center; }
.legacy-course-content h3 { margin-top: 26px; color: var(--blue); }
.legacy-course-content p { color: var(--muted); line-height: 1.75; }
.legacy-course-content ul,.legacy-course-content ol { display: grid; gap: 9px; margin: 18px 0; padding-left: 24px; }
.legacy-course-content img { display: block; width: min(100%,520px); height: auto; margin: 24px auto; border-radius: 18px; box-shadow: var(--shadow); }
.check-list { display: grid; gap: 12px; margin: 26px 0; padding: 0; list-style: none; }
.check-list li::before { margin-right: 10px; color: #75e7f5; content: "✓"; font-weight: 900; }
.text-link--light { color: #fff; }
.section--navy .form-card { color: var(--ink); }
.section--navy .form-card h2 { color: var(--navy); }
.section--navy .form-card p { color: var(--muted); }

@media (max-width:620px) {
    .legacy-course-content > div { padding: 20px 16px; border-radius: 16px; }
    .legacy-course-content p { text-align: left !important; }
}

@media (prefers-reduced-motion:reduce) {
    .home-banner-slider__media img { opacity: 0; animation: none; }
    .home-banner-slider__media img:first-child { opacity: .52; }
}

/* 2026 premium shared shell */
.announcement { position: relative; z-index: 1002; overflow: hidden; background: linear-gradient(90deg,#041225,#0b2e56 55%,#06203c); }
.announcement::after { position: absolute; inset: 0; background: radial-gradient(circle at 75% -100%,rgba(52,211,153,.18),transparent 42%); content: ""; pointer-events: none; }
.announcement__inner { position: relative; z-index: 1; min-height: 42px; justify-content: space-between; }
.announcement__status,.announcement__links,.announcement__links a { display: flex; gap: 9px; align-items: center; }
.announcement__status { color: #cfe0f3; font-weight: 650; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: #34d399; box-shadow: 0 0 0 5px rgba(52,211,153,.12); animation: status-pulse 2.4s infinite; }
.announcement__links { gap: 22px; }
.announcement__links a { color: #fff; }
.announcement__links svg { width: 15px; height: 15px; fill: currentColor; }
@keyframes status-pulse { 50% { box-shadow: 0 0 0 8px rgba(52,211,153,0); } }
.site-header { border-bottom: 1px solid rgba(148,163,184,.2); background: rgba(255,255,255,.88); box-shadow: 0 12px 34px rgba(6,24,45,.07); backdrop-filter: blur(24px) saturate(150%); }
.header__inner { width: min(calc(100% - 40px),1320px); min-height: 88px; gap: 18px; }
.brand { display: flex; gap: 11px; align-items: center; color: var(--navy); text-decoration: none; }
.brand img { width: 134px; }
.brand__copy { display: grid; padding-left: 11px; border-left: 1px solid #d8e3ef; line-height: 1.05; }
.brand__copy strong { color: var(--navy); font-size: .78rem; letter-spacing: .04em; text-transform: uppercase; }
.brand__copy small { margin-top: 5px; color: #64748b; font-size: .62rem; white-space: nowrap; }
.primary-nav { gap: 4px; }
.primary-nav a { padding: 9px 10px; border-radius: 9px; font-size: .81rem; transition: color .2s,background .2s; }
.primary-nav a:hover,.primary-nav a[aria-current="page"] { color: #075fd8; background: #edf5ff; }
.primary-nav a[aria-current="page"]::after { right: 10px; bottom: 2px; left: 10px; height: 2px; }
.header-cta { gap: 7px; padding-inline: 17px; border-radius: 99px; background: linear-gradient(135deg,#ff7a1a,#ef5b0c); box-shadow: 0 10px 25px rgba(239,91,12,.25); }
.header-cta svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.2; }

/* Premium full-width homepage */
.premium-home { overflow: hidden; }
.home-hero { position: relative; min-height: clamp(460px,33.66vw,646px); overflow: hidden; color: #fff; background: #041225; isolation: isolate; }
.home-hero__media { position: absolute; z-index: 0; inset: 0; }
.home-hero__media img { width: 100%; height: 100%; object-fit: contain; object-position: center; background: #041225; }
.home-hero::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(3,16,34,.82) 0%,rgba(3,16,34,.35) 50%,rgba(3,16,34,.08) 100%); content: ""; }
.home-hero__inner { position: relative; z-index: 2; display: flex; min-height: inherit; align-items: center; padding-block: 34px; }
.home-hero__card { width: min(620px,53vw); padding: clamp(25px,3vw,42px); border: 1px solid rgba(255,255,255,.18); border-radius: 28px; background: rgba(4,18,37,.72); box-shadow: 0 30px 80px rgba(0,0,0,.28); backdrop-filter: blur(16px); }
.home-hero h1 { margin-bottom: 18px; color: #fff; font-size: clamp(2.25rem,4.3vw,4.25rem); }
.home-hero p { max-width: 580px; color: #dce9f7; font-size: clamp(1rem,1.4vw,1.16rem); }
.hero-badge { display: inline-flex; gap: 9px; align-items: center; margin-bottom: 16px; color: #8ee9ff; font-size: .76rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.hero-badge span { width: 8px; height: 8px; border-radius: 50%; background: #fb7b20; box-shadow: 0 0 0 5px rgba(251,123,32,.14); }
.hero-points { display: flex; flex-wrap: wrap; gap: 9px; margin: 23px 0 28px; }
.hero-points span { padding: 7px 11px; border: 1px solid rgba(255,255,255,.15); border-radius: 99px; color: #e9f3ff; background: rgba(255,255,255,.07); font-size: .78rem; font-weight: 750; }
.button--glass { border-color: rgba(255,255,255,.35); color: #fff; background: rgba(255,255,255,.08); box-shadow: none; }
.button--glass:hover { border-color: #fff; background: rgba(255,255,255,.16); }
.home-proof { border-bottom: 1px solid #dce6f2; background: #fff; box-shadow: 0 14px 40px rgba(6,24,45,.06); }
.home-proof__grid { display: grid; grid-template-columns: repeat(4,1fr); }
.home-proof__grid div { display: grid; gap: 2px; padding: 23px 26px; border-right: 1px solid #e1e9f2; }
.home-proof__grid div:last-child { border: 0; }
.home-proof strong { color: #09294b; font-size: .95rem; }
.home-proof span { color: #6b788a; font-size: .78rem; }
.home-intro { background: radial-gradient(circle at 0 0,#e8f4ff 0,transparent 34%),#f8fafc; }
.home-intro__grid { display: grid; grid-template-columns: .8fr 1.25fr; gap: clamp(38px,7vw,92px); align-items: start; }
.home-intro__heading { position: sticky; top: 132px; }
.legacy-course-copy > div { padding: clamp(25px,4vw,44px); border: 1px solid rgba(125,153,187,.22); border-radius: 26px; background: rgba(255,255,255,.88); box-shadow: 0 26px 70px rgba(7,35,66,.09); }
.legacy-course-copy h2 { font-size: clamp(1.45rem,2.5vw,2.2rem); }
.legacy-course-copy h3 { margin-top: 28px; color: var(--blue); font-size: 1rem; letter-spacing: .06em; text-transform: uppercase; }
.legacy-course-copy p { color: #506176; }
.legacy-course-copy ul,.legacy-course-copy ol { display: grid; gap: 9px; padding-left: 21px; color: #506176; }

.service-split { display: grid; width: min(calc(100% - 40px),1320px); min-height: 520px; grid-template-columns: 1fr 1fr; margin: 72px auto; overflow: hidden; border: 1px solid #dce6f2; border-radius: 30px; background: #fff; box-shadow: 0 26px 70px rgba(6,24,45,.13); }
.service-split__media { min-width: 0; overflow: hidden; background: #06182d; }
.service-split__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.service-split:hover .service-split__media img { transform: scale(1.025); }
.service-split__media--portrait img { object-position: center 20%; }
.service-split__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(48px,7vw,110px); }
.service-split__content > p { max-width: 650px; color: #58687c; font-size: 1.05rem; }
.service-split--dark { color: #dce9f7; background: linear-gradient(145deg,#06182d,#0b315a); }
.service-split--dark h2,.service-split--dark .benefit-list strong { color: #fff; }
.service-split--dark .service-split__content > p { color: #b9cadc; }
.service-split--reverse .service-split__media { order: 2; background: #edf3f8; }
.service-split--reverse .service-split__content { order: 1; background: linear-gradient(145deg,#fff,#eef5fb); }
.service-split--blue { color: #fff; background: linear-gradient(145deg,#073d8f,#0875e1); }
.service-split--blue h2,.service-split--blue .benefit-list strong { color: #fff; }
.service-split--blue .service-split__content > p { color: #d8eaff; }
.benefit-list { display: grid; gap: 13px; margin: 22px 0 30px; }
.benefit-list > div { display: grid; grid-template-columns: 42px 1fr; gap: 14px; align-items: start; padding: 15px; border: 1px solid rgba(255,255,255,.11); border-radius: 15px; background: rgba(255,255,255,.06); }
.benefit-list--light > div { border-color: #d8e3ef; background: rgba(255,255,255,.7); }
.benefit-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg,#1685ff,#00bad9); font-size: .72rem; font-weight: 900; }
.benefit-list p { margin: 0; color: inherit; font-size: .88rem; line-height: 1.5; }
.benefit-list strong { display: block; margin-bottom: 3px; color: var(--navy); font-size: .94rem; }

.wide-banner { position: relative; width: min(calc(100% - 40px),1440px); margin: 72px auto; overflow: hidden; border: 1px solid rgba(148,163,184,.22); border-radius: 28px; background: #030a12; box-shadow: 0 26px 70px rgba(6,24,45,.14); }
.wide-banner__heading { padding: 20px 0; color: #fff; background: linear-gradient(90deg,#071a33,#0b63f6); }
.wide-banner__heading .container { display: flex; gap: 20px; align-items: center; justify-content: space-between; }
.wide-banner__heading span { color: #8fe9ff; font-size: .75rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.wide-banner__heading strong { text-align: right; font-size: clamp(.95rem,1.8vw,1.35rem); }
.wide-banner img { width: 100%; height: auto; object-fit: contain; }
.wide-banner--curriculum .wide-banner__heading { background: linear-gradient(90deg,#111,#173c13); }
.course-visuals { padding-top: clamp(70px,8vw,110px); background: #02070d; }
.course-visuals .section-heading { margin-bottom: 58px; }
.course-visuals h2 { color: #fff; }
.course-visuals .section-heading p { color: #9caec0; }
.course-visual { width: min(calc(100% - 40px),1180px); margin: 0 auto 32px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 24px; background: #000; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
.course-visual figcaption { display: flex; gap: 20px; align-items: center; justify-content: space-between; padding: 16px 22px; color: #fff; background: linear-gradient(90deg,#071a33,#0c2440); }
.course-visual figcaption span { color: #7adff0; font-size: .7rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.course-visual figcaption strong { font-size: 1rem; }
.course-visual img { width: 100%; height: auto; object-fit: contain; image-rendering: auto; }
.home-register { color: #d8e8f7; background: radial-gradient(circle at 15% 15%,rgba(26,118,216,.34),transparent 34%),linear-gradient(135deg,#041225,#092d51); }
.home-register h2 { color: #fff; }
.home-register .form-card { color: var(--ink); border: 1px solid rgba(255,255,255,.3); box-shadow: 0 35px 90px rgba(0,0,0,.25); }
.home-register .form-card h2 { color: var(--navy); }
.home-register .form-card p { color: var(--muted); }
.register-call { display: inline-grid; margin-top: 10px; padding: 15px 20px; border: 1px solid rgba(255,255,255,.15); border-radius: 15px; color: #fff; background: rgba(255,255,255,.07); text-decoration: none; }
.register-call span { color: #9bb9d4; font-size: .75rem; }
.register-call strong { font-size: 1.05rem; }

/* Premium footer and universal contact controls */
.site-footer { position: relative; margin-top: 0; padding: 70px 0 34px; color: #aebfd1; background: radial-gradient(circle at 10% 0,rgba(23,91,153,.24),transparent 35%),#03101f; }
.footer-cta { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 38px; align-items: center; margin-bottom: 58px; padding: clamp(28px,4vw,46px); border: 1px solid rgba(255,255,255,.18); border-radius: 28px; color: #dcecff; background: linear-gradient(120deg,#0a62d8,#084896 62%,#06366e); box-shadow: 0 28px 70px rgba(2,24,54,.3); overflow: hidden; }
.footer-cta::after { position: absolute; right: -60px; bottom: -110px; width: 280px; height: 280px; border: 50px solid rgba(255,255,255,.05); border-radius: 50%; content: ""; }
.footer-cta > * { position: relative; z-index: 1; }
.footer-cta h2 { margin-bottom: 8px; color: #fff; font-size: clamp(1.65rem,3vw,2.65rem); }
.footer-cta p { margin: 0; }
.footer-cta .eyebrow { color: #9eeeff; }
.footer-cta__actions { display: flex; gap: 12px; }
.footer-action { display: flex; min-width: 170px; gap: 11px; align-items: center; padding: 13px 16px; border: 1px solid rgba(255,255,255,.22); border-radius: 15px; color: #fff; background: rgba(255,255,255,.1); text-decoration: none; backdrop-filter: blur(8px); }
.footer-action:hover { color: #fff; background: rgba(255,255,255,.18); transform: translateY(-2px); }
.footer-action--whatsapp { background: #118b59; }
.footer-action svg { width: 25px; height: 25px; flex: 0 0 auto; fill: currentColor; }
.footer-action span { display: grid; font-weight: 850; line-height: 1.15; }
.footer-action small { margin-bottom: 4px; color: #cfe2f7; font-size: .67rem; font-weight: 650; text-transform: uppercase; }
.footer-grid { padding-top: 20px; }
.footer-grid h2 { color: #8edfff; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; }
.footer-grid a { transition: color .2s,transform .2s; }
.footer-grid a:hover { color: #fff; }
.footer-about img { padding: 8px; border-radius: 10px; background: #fff; filter: none; }
.floating-contact { position: fixed; z-index: 1190; right: 20px; bottom: 22px; display: grid; gap: 10px; }
.floating-contact a { display: flex; width: 58px; height: 58px; align-items: center; justify-content: center; border: 3px solid #fff; border-radius: 50%; color: #fff; box-shadow: 0 12px 30px rgba(0,0,0,.24); text-decoration: none; transition: transform .2s,box-shadow .2s; }
.floating-contact a:hover { color: #fff; box-shadow: 0 16px 38px rgba(0,0,0,.3); transform: translateY(-3px) scale(1.04); }
.floating-contact__call { background: #0868d7; }
.floating-contact__whatsapp { background: #16a064; }
.floating-contact svg { width: 26px; height: 26px; fill: currentColor; }
.floating-contact span { position: absolute; right: 68px; padding: 6px 9px; border-radius: 7px; color: #fff; background: #06182d; font-size: .72rem; font-weight: 800; opacity: 0; transform: translateX(8px); transition: opacity .2s,transform .2s; pointer-events: none; }
.floating-contact a:hover span,.floating-contact a:focus-visible span { opacity: 1; transform: none; }

@media (max-width:1120px) {
    .brand__copy { display: none; }
    .primary-nav a { padding-inline: 8px; }
    .footer-cta { grid-template-columns: 1fr; }
    .footer-cta__actions { justify-content: flex-start; }
}
@media (max-width:900px) {
    .announcement__status span:last-child { display: none; }
    .announcement__links { width: 100%; justify-content: space-between; }
    .header__inner { width: min(calc(100% - 28px),1320px); }
    .primary-nav { top: 114px; }
    .home-hero { min-height: 0; }
    .home-hero__media { position: relative; z-index: auto; aspect-ratio: 1343/452; }
    .home-hero__media img { object-fit: contain; }
    .home-hero::after { display: none; }
    .home-hero__inner { padding: 0; }
    .home-hero__card { width: 100%; padding: 40px 0 48px; border: 0; border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
    .home-proof__grid { grid-template-columns: repeat(2,1fr); }
    .home-proof__grid div:nth-child(2) { border-right: 0; }
    .home-proof__grid div:nth-child(-n+2) { border-bottom: 1px solid #e1e9f2; }
    .home-intro__grid { grid-template-columns: 1fr; }
    .home-intro__heading { position: static; }
    .service-split { width: min(calc(100% - 28px),720px); min-height: 0; grid-template-columns: 1fr; margin: 38px auto; border-radius: 22px; }
    .service-split__media,.service-split--reverse .service-split__media { order: 1; min-height: 420px; }
    .service-split__content,.service-split--reverse .service-split__content { order: 2; padding: 55px max(24px,calc((100vw - 720px)/2)); }
    .service-split__media img { object-fit: cover; }
    .wide-banner__heading .container { display: grid; gap: 6px; }
    .wide-banner__heading strong { text-align: left; }
    .footer-cta__actions { flex-wrap: wrap; }
}
@media (max-width:620px) {
    body { padding-bottom: 0; }
    .announcement__inner { min-height: 40px; }
    .announcement__links { gap: 12px; }
    .announcement__links a { font-size: .72rem; }
    .announcement__links svg { width: 14px; }
    .header__inner { min-height: 72px; }
    .primary-nav { top: 112px; }
    .home-hero__card { padding: 34px 0 40px; }
    .home-hero h1 { font-size: clamp(2.15rem,11vw,3.2rem); }
    .hero-points { display: grid; grid-template-columns: repeat(2,1fr); }
    .hero-points span { text-align: center; }
    .home-proof__grid div { padding: 18px 14px; }
    .home-intro { padding-block: 62px; }
    .legacy-course-copy > div { padding: 22px 18px; border-radius: 18px; }
    .service-split__media,.service-split--reverse .service-split__media { min-height: 280px; }
    .service-split__media--portrait { min-height: 420px; }
    .service-split__content,.service-split--reverse .service-split__content { padding: 46px 20px; }
    .benefit-list > div { padding: 13px; }
    .course-visuals .section-heading { margin-bottom: 35px; }
    .course-visual figcaption { padding: 13px 16px; }
    .footer-cta { width: 100%; margin-bottom: 42px; padding: 25px 20px; border-radius: 20px; }
    .footer-cta__actions { display: grid; grid-template-columns: 1fr 1fr; }
    .footer-action { min-width: 0; padding: 12px 10px; }
    .footer-action span { font-size: .78rem; }
    .footer-action--call span { font-size: .7rem; }
    .site-footer { margin-top: 0; padding-top: 48px; }
    .floating-contact { right: 13px; bottom: 14px; }
    .floating-contact a { width: 52px; height: 52px; border-width: 2px; }
    .floating-contact span { display: none; }
}
@media (prefers-reduced-motion:reduce) {
    .status-dot { animation: none; }
    .service-split:hover .service-split__media img { transform: none; }
}

/* Stable mega footer */
.mega-footer{margin:0;padding:72px 0 28px;color:#aebfd1;background:radial-gradient(circle at 12% 0,rgba(20,102,190,.24),transparent 34%),#03101f}.mega-footer__subscribe{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(30px,6vw,80px);align-items:center;margin-bottom:68px;padding:clamp(28px,4vw,46px);border:1px solid rgba(255,255,255,.14);border-radius:26px;background:linear-gradient(120deg,#0a5fcf,#084283 68%,#073365);box-shadow:0 28px 70px rgba(0,0,0,.25)}.mega-footer__eyebrow{display:block;margin-bottom:10px;color:#8ceaff;font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.mega-footer__subscribe h2{margin-bottom:8px;color:#fff;font-size:clamp(1.65rem,3vw,2.55rem)}.mega-footer__subscribe p{margin:0;color:#d3e4f6}.subscribe-form__row{display:grid;grid-template-columns:1fr auto;padding:6px;border-radius:14px;background:#fff}.subscribe-form__row input{min-width:0;min-height:50px;padding:10px 13px;border:0;border-radius:10px;color:#172033;outline:none}.subscribe-form__row button{padding:11px 20px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,#ff7919,#eb5a0c);font-weight:850;cursor:pointer}.subscribe-form__consent{display:grid;grid-template-columns:17px 1fr;gap:8px;align-items:start;margin-top:11px;color:#c9daed;font-size:.72rem}.subscribe-form__consent input{width:16px;height:16px;margin-top:2px}.subscribe-form__consent a{color:#fff}.subscribe-form__message{margin:9px 0 0;font-size:.78rem;font-weight:800}.subscribe-form__message--success{color:#9af1c9}.subscribe-form__message--error{color:#ffd0c7}.mega-footer__grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:44px}.mega-footer__grid h2{margin-bottom:18px;color:#8ddfff;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.mega-footer__grid ul{display:grid;gap:10px;list-style:none}.mega-footer__grid a{color:#d2deeb;text-decoration:none}.mega-footer__grid a:hover{color:#fff}.mega-footer__brand p{max-width:340px}.mega-footer__logo{display:inline-block;margin-bottom:20px;padding:8px 12px;border-radius:11px;background:#fff}.mega-footer__logo img{width:145px}.mega-footer__badges{display:flex;flex-wrap:wrap;gap:7px}.mega-footer__badges span{padding:5px 9px;border:1px solid rgba(255,255,255,.12);border-radius:99px;color:#cbd9e8;background:rgba(255,255,255,.05);font-size:.67rem}.mega-footer address{margin-bottom:18px;font-style:normal}.mega-contact-link{display:flex;gap:9px;align-items:center;margin-bottom:10px}.mega-contact-link span{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;color:#fff;background:#0c64c9}.mega-contact-link strong{overflow-wrap:anywhere;font-size:.82rem}.mega-footer__whatsapp{display:inline-flex;margin-top:10px;padding:9px 12px;border-radius:9px!important;color:#fff!important;background:#128b59;font-size:.8rem;font-weight:800}.mega-footer__bottom{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:58px;padding-top:23px;border-top:1px solid rgba(255,255,255,.11);font-size:.8rem}.mega-footer__bottom p{margin:0}.mega-footer__bottom nav{display:flex;gap:18px}
@media(max-width:900px){.mega-footer__subscribe{grid-template-columns:1fr}.mega-footer__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.mega-footer{padding-top:48px}.mega-footer__subscribe{gap:23px;margin-bottom:48px;padding:23px 17px;border-radius:19px}.subscribe-form__row{grid-template-columns:1fr}.subscribe-form__row button{min-height:46px}.mega-footer__grid{grid-template-columns:1fr;gap:32px}.mega-footer__bottom{display:grid}.mega-footer__bottom nav{flex-wrap:wrap}}

/* Iconic social channel panel */
.mega-footer__social{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(28px,5vw,64px);align-items:center;margin-bottom:64px;padding-bottom:64px;border-bottom:1px solid rgba(255,255,255,.11)}.mega-footer__social-copy h2{margin-bottom:10px;color:#fff;font-size:clamp(1.5rem,2.5vw,2.25rem)}.mega-footer__social-copy p{max-width:460px;margin:0;color:#aebfd1}.mega-social{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mega-social a{position:relative;display:grid;grid-template-columns:50px 1fr auto;gap:13px;align-items:center;min-height:82px;padding:13px 16px;border:1px solid rgba(255,255,255,.13);border-radius:17px;color:#fff;background:rgba(255,255,255,.055);text-decoration:none;overflow:hidden;transition:transform .25s,border-color .25s,background .25s}.mega-social a::after{position:absolute;right:-22px;bottom:-26px;width:80px;height:80px;border-radius:50%;background:currentColor;content:"";opacity:.06}.mega-social a:hover{border-color:rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.1);transform:translateY(-3px)}.mega-social svg{width:50px;height:50px;padding:12px;border-radius:15px;fill:#fff}.mega-social span{display:grid;line-height:1.2}.mega-social small{margin-bottom:5px;color:#aebfd1;font-size:.65rem;font-weight:700;text-transform:uppercase}.mega-social strong{font-size:.92rem}.mega-social b{position:relative;z-index:1;font-size:1.2rem}.mega-social__youtube svg{background:#e62929}.mega-social__facebook svg{background:#1877f2}.mega-social__linkedin svg{background:#0a66c2}.mega-social__whatsapp svg{background:#18a568}
@media(max-width:900px){.mega-footer__social{grid-template-columns:1fr}.mega-footer__social-copy p{max-width:680px}}
@media(max-width:620px){.mega-footer__social{gap:24px;margin-bottom:46px;padding-bottom:46px}.mega-social{grid-template-columns:1fr}.mega-social a{min-height:74px}.mega-social svg{width:46px;height:46px}}

/* DSO practical training */
.dso-hero{position:relative;min-height:680px;overflow:hidden;color:#fff;background:#020b16}.dso-hero__media,.dso-hero__media::after{position:absolute;inset:0}.dso-hero__media::after{background:linear-gradient(90deg,rgba(2,11,22,.96) 0%,rgba(4,18,35,.82) 39%,rgba(4,18,35,.2) 74%);content:""}.dso-hero__media img{width:100%;height:100%;object-fit:cover}.dso-hero__content{position:relative;z-index:1;display:flex;min-height:680px;max-width:760px;flex-direction:column;justify-content:center;padding-block:75px}.dso-hero h1{color:#fff;font-size:clamp(2.7rem,5.4vw,5.35rem)}.dso-hero__content>p{max-width:700px;color:#d2e2f1;font-size:1.12rem}.dso-hero__proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.dso-hero__proof span{display:flex;gap:7px;align-items:center;padding:8px 12px;border:1px solid rgba(255,255,255,.17);border-radius:99px;color:#dbe9f6;background:rgba(255,255,255,.07);font-size:.76rem}.dso-hero__proof strong{color:#8deafa;font-size:1rem}.dso-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(38px,7vw,88px);align-items:center}.dso-intro>div>p{max-width:720px;color:var(--muted);font-size:1.05rem}.dso-signal-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.dso-signal-list span{padding:8px 12px;border:1px solid #d5e2ef;border-radius:99px;color:#17406f;background:#f5f9fd;font-size:.76rem;font-weight:850}.dso-note{padding:clamp(30px,4vw,50px);border-radius:25px;color:#cce0f2;background:radial-gradient(circle at 100% 0,rgba(0,184,217,.25),transparent 37%),linear-gradient(145deg,#071a33,#0c3967);box-shadow:0 28px 70px rgba(7,26,51,.2)}.dso-note>span{color:#81e4f7;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.dso-note h2{margin-top:12px;color:#fff}.dso-note a{color:#fff;font-size:1.1rem;font-weight:900}.dso-topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.dso-topic{display:grid;grid-template-columns:62px 1fr;gap:18px;align-items:start;padding:26px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 9px 27px rgba(7,26,51,.05)}.dso-topic>span{display:grid;width:62px;height:62px;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(135deg,#0b63f6,#00a8cf);font-size:1.1rem;font-weight:950}.dso-topic:nth-child(3n+2)>span{background:linear-gradient(135deg,#f97316,#d85808)}.dso-topic:nth-child(3n)>span{background:linear-gradient(135deg,#7650da,#5830bd)}.dso-topic h3{margin:2px 0 7px;font-size:1.12rem}.dso-topic p{margin:0;color:var(--muted);font-size:.9rem}.dso-video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.dso-video-card{overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.06)}.dso-video-card__media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}.dso-video-card__media::after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.65));content:""}.dso-video-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.dso-video-card:hover img{transform:scale(1.035)}.dso-video-card__media>span{position:absolute;z-index:2;top:50%;left:50%;display:grid;width:64px;height:64px;place-items:center;border:5px solid rgba(255,255,255,.9);border-radius:50%;color:#fff;background:#ef2828;box-shadow:0 12px 35px rgba(0,0,0,.3);transform:translate(-50%,-50%)}.dso-video-card__media small{position:absolute;z-index:2;bottom:15px;left:17px;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.dso-video-card>div{padding:24px}.dso-video-card h3{color:#fff;font-size:1.25rem}.dso-video-card p{color:#abc1d7}.dso-video-card>div>a{color:#8ceaff;font-size:.84rem;font-weight:900;text-decoration:none}.dso-outcome{padding:clamp(30px,5vw,58px);border:1px solid #cfdfee;border-radius:27px;background:linear-gradient(145deg,#fff,#eef6ff);box-shadow:var(--shadow)}
@media(max-width:900px){.dso-intro{grid-template-columns:1fr}.dso-topic-grid{grid-template-columns:1fr}}
@media(max-width:620px){.dso-hero,.dso-hero__content{min-height:690px}.dso-hero__content{justify-content:flex-end;padding-bottom:62px}.dso-hero__media::after{background:linear-gradient(180deg,rgba(2,11,22,.25),rgba(2,11,22,.92) 65%,#020b16)}.dso-hero h1{font-size:clamp(2.35rem,11vw,3.35rem)}.dso-video-grid{grid-template-columns:1fr}.dso-topic{grid-template-columns:48px 1fr;padding:19px 16px}.dso-topic>span{width:48px;height:48px;border-radius:13px}.dso-hero__proof{display:grid;grid-template-columns:repeat(3,1fr)}.dso-hero__proof span{display:grid;text-align:center}}

/* India-wide online training directory */
.india-hero,.city-hero{position:relative;min-height:590px;overflow:hidden;color:#fff;background:#03101f}.india-hero__media,.india-hero__media::after,.city-hero__media,.city-hero__media::after{position:absolute;inset:0}.india-hero__media img,.city-hero__media img{width:100%;height:100%;object-fit:cover}.india-hero__media::after,.city-hero__media::after{background:linear-gradient(90deg,rgba(2,12,25,.96),rgba(2,14,29,.78) 42%,rgba(2,14,29,.16));content:""}.india-hero__content,.city-hero__content{position:relative;z-index:1;display:flex;min-height:590px;max-width:800px;flex-direction:column;justify-content:center;padding-block:70px}.india-hero h1,.city-hero h1{color:#fff;font-size:clamp(2.6rem,5vw,5rem)}.india-hero__content>p,.city-hero__content>p{color:#d4e3f1;font-size:1.1rem}.india-hero__stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px}.india-hero__stats span{display:grid;min-width:125px;padding:10px 14px;border:1px solid rgba(255,255,255,.16);border-radius:13px;color:#cbdcec;background:rgba(255,255,255,.07);font-size:.72rem}.india-hero__stats strong{color:#8ceaff;font-size:1.3rem}.india-truth{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(35px,7vw,85px);align-items:center}.india-truth>div>p{color:var(--muted);font-size:1.05rem}.india-truth__card{display:grid;gap:8px;padding:28px;border:1px solid #cbdcec;border-radius:22px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:var(--shadow)}.india-truth__card strong{color:var(--navy);font-size:1.1rem}.india-truth__card span{color:var(--muted)}.india-truth__card a{font-weight:850;text-decoration:none}.city-search{display:grid;max-width:640px;grid-template-columns:26px 1fr;gap:12px;align-items:center;margin-bottom:32px;padding:9px 14px;border:1px solid #bed0e4;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(7,26,51,.06)}.city-search svg{width:22px;height:22px;fill:none;stroke:#55718e;stroke-width:2}.city-search input{min-height:46px;border:0;color:var(--ink);outline:0}.state-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.state-card{padding:23px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 26px rgba(7,26,51,.05)}.state-card__head{display:grid;grid-template-columns:39px 1fr;gap:11px;align-items:center;margin-bottom:17px}.state-card__head>span{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#0b63f6,#00a8cf);font-size:.72rem;font-weight:900}.state-card h3{margin:0;font-size:1rem}.state-card__cities{display:flex;flex-wrap:wrap;gap:7px}.state-card__cities a{padding:5px 8px;border-radius:8px;color:#38516d;background:#f0f5fa;font-size:.72rem;font-weight:750;text-decoration:none}.state-card__cities a:hover{color:#fff;background:var(--blue)}.city-search-empty{padding:30px;text-align:center}.topic-cloud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.topic-cloud a{padding:9px 13px;border:1px solid #ccdaea;border-radius:99px;color:#183b63;background:#fff;font-size:.78rem;font-weight:800;text-decoration:none}.topic-cloud a:hover{border-color:var(--blue);color:#fff;background:var(--blue)}.location-disclosure{padding:13px 0;color:#49351d;background:#fff3d9;font-size:.82rem}.location-disclosure strong{color:#6b4415}.city-topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.city-topic-grid a{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;min-height:73px;padding:13px;border:1px solid var(--line);border-radius:15px;color:var(--navy);background:#fff;text-decoration:none;transition:.2s}.city-topic-grid a:hover{border-color:#a8c9ef;box-shadow:0 12px 29px rgba(7,26,51,.09);transform:translateY(-2px)}.city-topic-grid a>span{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,#0b63f6,#00a8cf);font-size:.65rem;font-weight:900}.city-topic-grid a strong{font-size:.78rem;line-height:1.35}.city-topic-grid a b{color:var(--orange)}.city-map-card{padding:clamp(32px,5vw,58px);border-radius:27px;color:#cfe0ef;background:radial-gradient(circle at 100% 0,rgba(0,184,217,.22),transparent 37%),linear-gradient(145deg,#071a33,#0b315a);box-shadow:var(--shadow)}.city-map-card>span{display:inline-flex;margin-bottom:13px;padding:5px 9px;border-radius:99px;color:#fff;background:rgba(255,255,255,.1);font-size:.7rem;font-weight:850;text-transform:uppercase}.city-map-card h2{color:#fff}.city-process{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.city-process article{padding:24px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(255,255,255,.055)}.city-process article>span{display:block;margin-bottom:22px;color:#76e3f6;font-size:1.5rem;font-weight:950}.city-process h3{color:#fff}.city-process p{margin:0;color:#aec4d8;font-size:.86rem}
@media(max-width:1000px){.state-directory,.city-topic-grid{grid-template-columns:repeat(2,1fr)}.city-process{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.india-truth{grid-template-columns:1fr}.state-directory{grid-template-columns:1fr}}
@media(max-width:620px){.india-hero,.india-hero__content,.city-hero,.city-hero__content{min-height:650px}.india-hero__content,.city-hero__content{justify-content:flex-end;padding-bottom:55px}.india-hero__media::after,.city-hero__media::after{background:linear-gradient(180deg,rgba(2,12,25,.2),rgba(2,12,25,.93) 64%,#020c19)}.india-hero h1,.city-hero h1{font-size:clamp(2.3rem,10.5vw,3.3rem)}.india-hero__stats{display:grid;grid-template-columns:repeat(3,1fr)}.india-hero__stats span{min-width:0;text-align:center}.city-topic-grid,.city-process{grid-template-columns:1fr}.state-card{padding:19px 16px}}

.mega-footer__locations{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(30px,6vw,76px);align-items:start;margin-top:62px;padding:40px;border:1px solid rgba(255,255,255,.11);border-radius:24px;background:linear-gradient(135deg,rgba(18,91,161,.16),rgba(255,255,255,.025))}.mega-footer__locations h2{margin-bottom:9px;color:#fff;font-size:clamp(1.45rem,2.4vw,2.15rem)}.mega-footer__locations p{margin-bottom:15px;color:#aebfd1;font-size:.86rem}.mega-footer__locations-copy>a{color:#8ceaff;font-size:.8rem;font-weight:900;text-decoration:none}.mega-footer__locations nav{display:flex;flex-wrap:wrap;gap:8px}.mega-footer__locations nav a{padding:7px 10px;border:1px solid rgba(255,255,255,.11);border-radius:9px;color:#d8e5f1;background:rgba(255,255,255,.045);font-size:.72rem;font-weight:750;text-decoration:none}.mega-footer__locations nav a:hover{border-color:#1682ef;color:#fff;background:#0a5dc0}.mega-footer__locations+.mega-footer__bottom{margin-top:34px}
@media(max-width:760px){.mega-footer__locations{grid-template-columns:1fr;padding:28px 22px}}
