@layer reset, base, components, responsive;

@layer reset {
  *,*::before,*::after{box-sizing:border-box}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
  body,h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
  ul,ol{padding:0}
  button,input,textarea,select{font:inherit}
  button,a{-webkit-tap-highlight-color:transparent}
  img,svg{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  button{border:0;background:none;color:inherit}
}

@layer base {
  :root{
    --ink:#0b2a5b;
    --ink-2:#173c72;
    --blue:#1768e3;
    --blue-2:#0e55c5;
    --blue-soft:#eaf2ff;
    --red:#ed2638;
    --red-2:#d8162a;
    --red-soft:#fff0f2;
    --green:#0f9e69;
    --green-soft:#eaf8f2;
    --amber:#b87500;
    --amber-soft:#fff7e7;
    --text:#4e6484;
    --muted:#7488a5;
    --line:#dce6f3;
    --line-strong:#cbd9ea;
    --surface:#ffffff;
    --surface-alt:#f4f7fc;
    --surface-blue:#eef5ff;
    --page:#f6f8fc;
    --shadow-xs:0 6px 18px rgba(14,48,96,.06);
    --shadow-sm:0 12px 34px rgba(14,48,96,.08);
    --shadow-md:0 24px 70px rgba(14,48,96,.12);
    --shadow-red:0 16px 34px rgba(237,38,56,.22);
    --radius-sm:14px;
    --radius-md:22px;
    --radius-lg:32px;
    --radius-xl:44px;
    --shell:min(1480px,calc(100% - 64px));
    --header:78px;
    --font:"Segoe UI Variable","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  }

  body{
    min-width:320px;
    background:var(--page);
    color:var(--ink);
    font-family:var(--font);
    font-size:16px;
    line-height:1.5;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
  }

  ::selection{background:#cfe0ff;color:var(--ink)}
  :focus-visible{outline:3px solid rgba(23,104,227,.35);outline-offset:3px}
  .shell{width:var(--shell);margin-inline:auto}
  .icon{width:1.25em;height:1.25em;flex:0 0 auto}
  .svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
  .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .skip-link{position:fixed;z-index:999;top:10px;left:10px;transform:translateY(-180%);padding:10px 14px;border-radius:12px;background:var(--ink);color:#fff;font-weight:700;transition:transform .2s}
  .skip-link:focus{transform:none}
  .section{position:relative;padding:112px 0;overflow:hidden}
  .section--white{background:#fff}
  .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
  .eyebrow::before{content:"";width:18px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--blue),var(--red))}
  .section-head{margin-bottom:50px}
  .section-head--split{display:flex;align-items:flex-end;justify-content:space-between;gap:54px}
  .section-head--split>div{max-width:760px}
  .section-head h2{margin-top:12px;font-size:clamp(42px,4.2vw,66px);font-weight:780;letter-spacing:-.055em;line-height:.98;text-wrap:balance}
  .section-head p{max-width:450px;color:var(--text);font-size:17px;line-height:1.7}
  .section-head--compact{margin-bottom:32px}
  .section-head--compact h2{font-size:clamp(34px,3.4vw,48px)}
  .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 22px;border:1px solid transparent;border-radius:16px;font-weight:750;line-height:1;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
  .button:hover{transform:translateY(-2px)}
  .button--primary{background:linear-gradient(135deg,#f22a3e,var(--red-2));color:#fff;box-shadow:var(--shadow-red)}
  .button--primary:hover{box-shadow:0 20px 42px rgba(237,38,56,.28)}
  .button--quiet{border-color:var(--line-strong);background:rgba(255,255,255,.82);color:var(--ink);box-shadow:var(--shadow-xs)}
  .button--quiet:hover{border-color:#a9c1e0;background:#fff;box-shadow:var(--shadow-sm)}
  .button--compact{min-height:46px;padding-inline:18px;border-radius:14px;font-size:14px}
  .button--light{background:#fff;color:var(--ink);box-shadow:0 15px 38px rgba(6,27,65,.2)}
  .text-link{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:750}
  .text-link:hover{text-decoration:underline}
  .js .reveal{opacity:1;transform:none}
  .js .reveal.is-visible{opacity:1;transform:none}
}

@layer components {
  /* Header */
  .site-header{position:sticky;z-index:100;top:0;height:var(--header);border-bottom:1px solid rgba(208,220,236,.78);background:rgba(255,255,255,.86);backdrop-filter:blur(18px) saturate(145%);transition:box-shadow .25s ease,background .25s ease}
  .site-header.is-scrolled{background:rgba(255,255,255,.95);box-shadow:0 10px 34px rgba(12,43,85,.08)}
  .header-inner{height:100%;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:26px}
  .brand{display:flex;align-items:center;gap:11px;min-width:max-content}
  .brand img{width:46px;height:46px;object-fit:contain}
  .brand span{display:grid;line-height:1.03;text-transform:uppercase}
  .brand strong{font-size:18px;font-weight:800;letter-spacing:.02em}
  .brand small{margin-top:4px;color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.11em}
  .desktop-nav{display:flex;justify-content:flex-end;gap:clamp(12px,1.6vw,25px)}
  .desktop-nav a{position:relative;padding:10px 0;font-size:13px;font-weight:700}
  .desktop-nav a::after{content:"";position:absolute;right:0;bottom:4px;left:0;height:2px;border-radius:999px;background:var(--red);transform:scaleX(0);transition:transform .2s ease}
  .desktop-nav a:hover::after{transform:scaleX(1)}
  .header-doc{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border:1px solid var(--line-strong);border-radius:14px;color:var(--blue);font-size:13px;font-weight:750;background:#fff}
  .menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;place-items:center;background:#fff}
  .menu-toggle .menu-close{display:none}
  .menu-toggle[aria-expanded="true"] .menu-open{display:none}
  .menu-toggle[aria-expanded="true"] .menu-close{display:block}
  .mobile-menu{border-bottom:1px solid var(--line);background:rgba(255,255,255,.98);box-shadow:var(--shadow-sm)}
  .mobile-menu-inner{display:grid;padding:16px 0 22px}
  .mobile-menu a{padding:13px 4px;border-bottom:1px solid #edf2f8;font-weight:700}
  .mobile-menu .mobile-doc{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:14px;color:var(--blue)}

  /* Hero */
  .hero{position:relative;isolation:isolate;overflow:hidden;padding:72px 0 46px;background:linear-gradient(180deg,#fff 0%,#f8fbff 66%,#f3f7fc 100%)}
  .hero-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(4px);pointer-events:none}
  .hero-orb--blue{width:680px;height:680px;top:-260px;right:-190px;background:radial-gradient(circle at center,rgba(74,139,238,.17),rgba(74,139,238,0) 69%)}
  .hero-orb--red{width:520px;height:520px;left:-260px;bottom:-250px;background:radial-gradient(circle at center,rgba(237,38,56,.09),rgba(237,38,56,0) 70%)}
  .hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,1fr);align-items:center;gap:clamp(32px,4vw,72px)}
  .hero-copy{position:relative;z-index:2;max-width:650px}
  .hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:22px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .hero-kicker b{padding:5px 10px;border-radius:999px;background:var(--blue-soft);color:var(--ink);font-size:13px;letter-spacing:.05em}
  .hero h1{max-width:720px;font-size:clamp(56px,4.7vw,70px);font-weight:820;letter-spacing:-.065em;line-height:.94;text-wrap:balance}
  .hero h1 span{display:block}.hero h1 span:last-child{color:var(--red)}
  @media (min-width:1181px){.hero h1 span{white-space:nowrap}}
  .hero-lead{max-width:600px;margin-top:24px;color:var(--text);font-size:18px;line-height:1.65}
  .phase-pill{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:8px 12px;border-radius:999px;background:var(--blue-soft);font-size:13px;font-weight:750}
  .phase-pill i{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px rgba(23,104,227,.11)}
  .hero-age{margin-top:25px;padding:18px;border:1px solid rgba(201,215,233,.9);border-radius:24px;background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px)}
  .hero-age-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:14px}
  .hero-age-head strong{font-size:15px}
  .hero-age-head span{color:var(--muted);font-size:13px}
  .age-switch{display:flex;gap:5px;padding:5px;border-radius:17px;background:#edf3fb}
  .age-switch button{flex:1;min-width:0;border-radius:13px;color:#657a99;font-weight:750;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
  .age-switch button:hover{color:var(--ink)}
  .age-switch--hero button{min-height:46px;font-size:13px}
  .age-switch button[aria-selected="true"]{background:#fff;color:var(--ink);box-shadow:0 7px 18px rgba(20,57,105,.09)}
  .hero-age-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;padding:0 3px}
  .hero-age-summary>div:first-child{display:grid}
  .hero-age-summary>div:first-child span{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .hero-age-summary>div:first-child strong{margin-top:3px;font-size:18px}
  .hero-age-summary dl{display:flex;gap:8px}
  .hero-age-summary dl>div{min-width:106px;padding:10px 12px;border-radius:14px;background:#f4f7fb}
  .hero-age-summary dt{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:13px;font-weight:700}
  .hero-age-summary dd{margin-top:2px;font-size:20px;font-weight:820;line-height:1}
  .hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:21px}
  .hero-note{display:flex;align-items:center;gap:7px;margin-top:13px;color:var(--muted);font-size:13px}
  .hero-note .icon{color:var(--blue)}
  .hero-visual{position:relative;min-width:0;padding-bottom:42px}
  .hero-art{position:relative;overflow:hidden;border-radius:38px;background:#edf4ff;box-shadow:0 26px 70px rgba(23,71,134,.12)}
  .hero-art::after{content:"";position:absolute;inset:0;border:1px solid rgba(204,219,238,.76);border-radius:inherit;pointer-events:none}
  .hero-art picture,.hero-art img{width:100%;height:100%}
  .hero-art img{aspect-ratio:4/3;object-fit:cover;object-position:center}
  .hero-metrics{position:absolute;right:3%;bottom:0;left:3%;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;border:1px solid rgba(197,213,233,.95);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-md);backdrop-filter:blur(14px)}
  .hero-metrics>div{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 9px;border-radius:15px}
  .hero-metrics>div+div{border-left:1px solid #e7edf5}
  .metric-icon{display:grid;flex:0 0 auto;width:38px;height:38px;border-radius:12px;place-items:center;background:var(--blue-soft);color:var(--blue)}
  .metric-icon--red{background:var(--red-soft);color:var(--red)}
  .hero-metrics p{display:grid;min-width:0;line-height:1.05}
  .hero-metrics strong{font-size:20px;font-weight:850}
  .hero-metrics span{color:var(--muted);font-size:13px;font-weight:700}
  .trust-strip{display:grid;grid-template-columns:1.15fr repeat(3,1fr);margin-top:36px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-sm);overflow:hidden}
  .trust-strip>*{min-height:92px;padding:16px 20px}
  .trust-strip>*+*{border-left:1px solid var(--line)}
  .trust-intro{display:flex;flex-direction:column;justify-content:center}
  .trust-intro span,.trust-strip article span{color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .trust-intro strong{margin-top:3px;font-size:17px}
  .trust-intro small{margin-top:5px;color:var(--muted);font-size:13px}
  .trust-strip article{display:flex;align-items:center;gap:13px}
  .trust-strip article img{width:48px;height:48px;object-fit:contain;mix-blend-mode:multiply}
  .trust-strip article div{display:grid}
  .trust-strip article strong{margin-top:3px;font-size:13px}

  /* Three-step process */
  .process{position:relative;display:grid;grid-template-columns:repeat(3,1fr);list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .process li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px 18px;padding:34px 34px 36px}
  .process li+li{border-left:1px solid var(--line)}
  .process-number{position:absolute;top:18px;right:22px;color:#dbe5f2;font-size:42px;font-weight:850;letter-spacing:-.06em;line-height:1}
  .process-icon{display:grid;width:58px;height:58px;border-radius:18px;place-items:center;background:var(--blue-soft);color:var(--blue)}
  .process-icon .icon{width:28px;height:28px}
  .process-icon--red{background:var(--red-soft);color:var(--red)}
  .process-icon--green{background:var(--green-soft);color:var(--green)}
  .process h3{font-size:22px;letter-spacing:-.025em}
  .process p{max-width:300px;margin-top:8px;color:var(--text);font-size:14px;line-height:1.65}
  .process a{display:inline-flex;align-items:center;gap:7px;margin-top:16px;color:var(--blue);font-size:13px;font-weight:750}
  .process a .icon{width:16px;height:16px}
  .full-route{margin-top:18px;border:1px solid var(--line);border-radius:18px;background:#f8faff}
  .full-route summary{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;cursor:pointer;font-size:13px;font-weight:750;list-style:none}
  .full-route summary::-webkit-details-marker{display:none}
  .full-route[open] summary .icon{transform:rotate(180deg)}
  .full-route summary .icon{transition:transform .2s ease}
  .full-route ol{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:0 20px 20px;list-style:none}
  .full-route li{display:grid;gap:7px;padding:14px;border-radius:14px;background:#fff}
  .full-route li span{display:grid;width:28px;height:28px;border-radius:10px;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:13px;font-weight:800}
  .full-route li strong{font-size:13px;line-height:1.4}

  /* Stages */
  .stages{background:linear-gradient(180deg,#eef5ff 0%,#f8fbff 100%)}
  .stage-status{display:grid;grid-template-columns:minmax(250px,1fr) auto auto;align-items:center;gap:28px;padding:17px 20px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}
  .stage-status-copy{display:flex;align-items:center;gap:13px}
  .stage-status-copy i{width:10px;height:10px;border-radius:50%;background:var(--red);box-shadow:0 0 0 7px rgba(237,38,56,.1)}
  .stage-status-copy div{display:grid}
  .stage-status-copy span{color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .stage-status-copy strong{margin-top:2px;font-size:15px}
  .countdown{display:flex;align-items:center;gap:16px;padding:16px 22px;border-radius:18px;background:var(--surface-blue)}
  .countdown>div{display:grid;min-width:66px;text-align:center}
  .countdown strong{font-size:46px;font-weight:850;line-height:1;font-variant-numeric:tabular-nums}
  .countdown span{margin-top:4px;color:var(--muted);font-size:14px;font-weight:800;text-transform:uppercase}
  .countdown>b{color:#aac0dc;font-weight:500;font-size:26px}
  .countdown-seconds strong{color:var(--red)}
  .stage-roadmap{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:54px}
  .stage-line{position:absolute;z-index:0;top:23px;right:8%;left:8%;height:3px;border-radius:999px;background:#d7e4f5}
  .stage-line span{display:block;width:38%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--red))}
  .roadmap-item{position:relative;z-index:1;padding-top:62px}
  .roadmap-dot{position:absolute;top:0;left:0;display:grid;width:48px;height:48px;border:6px solid #eef5ff;border-radius:50%;place-items:center;background:#fff;color:var(--muted);box-shadow:0 0 0 1px #cddbee;font-size:13px;font-weight:850}
  .roadmap-item--done .roadmap-dot{background:var(--green);color:#fff;box-shadow:0 0 0 1px var(--green)}
  .roadmap-item--active .roadmap-dot{background:var(--blue);color:#fff;box-shadow:0 0 0 1px var(--blue),0 8px 22px rgba(23,104,227,.2)}
  .roadmap-item--final .roadmap-dot{background:var(--red);color:#fff;box-shadow:0 0 0 1px var(--red),0 8px 22px rgba(237,38,56,.18)}
  .roadmap-kicker{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
  .roadmap-item h3{margin-top:8px;font-size:23px;letter-spacing:-.03em}
  .roadmap-item p{max-width:270px;margin-top:9px;color:var(--text);font-size:14px;line-height:1.6}
  .stage-note{display:flex;align-items:flex-start;gap:11px;margin-top:42px;padding:16px 18px;border:1px solid #d7e4f5;border-radius:17px;background:rgba(255,255,255,.72);color:var(--text);font-size:13px;line-height:1.6}
  .stage-note .icon{margin-top:2px;color:var(--blue)}
  .stage-note strong{color:var(--ink)}

  /* Age */
  .age-layout{display:grid;grid-template-columns:minmax(280px,.74fr) minmax(620px,1.26fr);align-items:center;gap:74px}
  .age-copy h2{margin-top:12px;font-size:clamp(46px,4.5vw,68px);font-weight:800;letter-spacing:-.06em;line-height:.98}
  .age-copy>p{max-width:460px;margin-top:22px;color:var(--text);font-size:17px;line-height:1.72}
  .age-help{display:flex;align-items:flex-start;gap:12px;margin-top:28px;padding:16px;border-radius:18px;background:var(--surface-alt)}
  .age-help>.icon{margin-top:2px;color:var(--blue)}
  .age-help div{display:grid}
  .age-help strong{font-size:13px}
  .age-help span{margin-top:3px;color:var(--muted);font-size:13px}
  .age-module{padding:9px;border:1px solid var(--line);border-radius:30px;background:#f3f7fc;box-shadow:var(--shadow-sm)}
  .age-switch--module{background:transparent;padding:0}
  .age-switch--module button{display:grid;justify-items:start;min-height:76px;padding:13px 16px}
  .age-switch--module button strong{font-size:17px}
  .age-switch--module button span{margin-top:3px;font-size:13px}
  .age-card{display:grid;grid-template-columns:230px 1fr;gap:0;margin-top:8px;overflow:hidden;border-radius:24px;background:#fff}
  .age-visual{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:430px;padding:28px;background:linear-gradient(160deg,#eaf8f2,#f5fbf8 48%,#eef5ff);overflow:hidden}
  .age-visual::before,.age-visual::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(23,104,227,.13)}
  .age-visual::before{width:250px;height:250px;right:-110px;top:-70px}
  .age-visual::after{width:180px;height:180px;left:-100px;bottom:-50px}
  .age-visual>span{position:relative;z-index:1;font-size:88px;font-weight:880;letter-spacing:-.08em;line-height:.82;color:var(--green)}
  .age-visual small{position:relative;z-index:1;max-width:130px;margin-top:13px;color:var(--ink);font-size:13px;font-weight:800;letter-spacing:.04em;text-align:center;text-transform:uppercase}
  .age-visual>.icon{position:relative;z-index:1;width:46px;height:46px;margin-top:28px;color:var(--green)}
  .age-card-main{padding:30px}
  .age-card-head span{color:var(--green);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .age-card-head h3{margin-top:5px;font-size:31px;letter-spacing:-.04em}
  .age-card-head p{margin-top:4px;color:var(--text);font-size:13px}
  .age-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:25px}
  .age-facts>div{padding:13px 14px;border-radius:16px;background:#f3f6fb}
  .age-facts dt{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
  .age-facts dd{margin-top:5px;font-size:20px;font-weight:850;line-height:1.05}
  .age-thresholds{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
  .age-thresholds>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;font-size:13px}
  .age-thresholds span{color:var(--muted)}
  .age-thresholds strong{font-size:13px;text-align:right}
  .warning-note{display:flex;align-items:flex-start;gap:9px;margin-top:13px;padding:12px 14px;border-radius:14px;background:var(--amber-soft);color:#7a571d;font-size:13px;line-height:1.5}
  .warning-note .icon{margin-top:1px;color:#d18a00}
  .age-start-note{display:flex;align-items:flex-start;gap:9px;margin-top:13px;padding:12px 14px;border-radius:14px;background:var(--blue-soft);color:#1d4d8f;font-size:13px;font-weight:700;line-height:1.5}
  .age-start-note .icon{margin-top:1px;color:var(--blue)}
  .age-actions{display:flex;align-items:center;gap:18px;margin-top:20px}

  /* Directions */
  .directions{background:linear-gradient(180deg,#f3f7fc 0%,#eef5ff 100%)}
  .direction-tabs{display:flex;gap:10px;overflow-x:auto;padding:4px 3px 14px;scrollbar-width:thin}
  .direction-tabs button{display:flex;align-items:center;gap:12px;min-width:235px;flex:1;padding:14px;border:1px solid transparent;border-radius:20px;background:rgba(255,255,255,.68);color:var(--ink);text-align:left;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
  .direction-tabs button:hover{transform:translateY(-2px);background:#fff}
  .direction-tabs button[aria-selected="true"]{border-color:#bad0ee;background:#fff;box-shadow:var(--shadow-sm)}
  .direction-tabs svg{width:50px;height:50px;padding:8px;border-radius:15px;background:var(--blue-soft);color:var(--ink)}
  .direction-tabs button[aria-selected="true"] svg{background:linear-gradient(145deg,#e6f0ff,#fff0f2)}
  .direction-tabs span{display:grid;line-height:1.25}
  .direction-tabs strong{font-size:13px}
  .direction-tabs small{margin-top:4px;color:var(--muted);font-size:13px}
  .direction-stage{display:grid;grid-template-columns:minmax(360px,.84fr) minmax(500px,1.16fr);min-height:470px;margin-top:18px;overflow:hidden;border:1px solid var(--line);border-radius:34px;background:#fff;box-shadow:var(--shadow-sm)}
  .direction-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#edf5ff 0%,#f8fbff 55%,#fff4f5 100%)}
  .direction-visual>span{position:absolute;left:30px;bottom:15px;color:rgba(11,42,91,.08);font-size:104px;font-weight:900;letter-spacing:-.08em;line-height:1}
  .direction-orbit{position:relative;display:grid;width:260px;height:260px;border:1px solid rgba(23,104,227,.16);border-radius:50%;place-items:center;box-shadow:0 0 0 34px rgba(23,104,227,.035),0 0 0 70px rgba(23,104,227,.02)}
  .direction-orbit::before,.direction-orbit::after{content:"";position:absolute;border-radius:50%}
  .direction-orbit::before{width:10px;height:10px;right:2px;top:56px;background:var(--red)}
  .direction-orbit::after{width:8px;height:8px;left:13px;bottom:58px;background:#76a9ee}
  .direction-orbit>svg{width:150px;height:150px;color:var(--ink);filter:drop-shadow(0 14px 18px rgba(18,54,104,.12))}
  .direction-content{display:flex;flex-direction:column;justify-content:center;padding:54px 64px}
  .direction-age{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .direction-content h3{margin-top:7px;font-size:clamp(38px,3.6vw,54px);letter-spacing:-.055em;line-height:1}
  .direction-content>p{max-width:600px;margin-top:15px;color:var(--text);font-size:16px;line-height:1.7}
  .direction-content ul{display:grid;gap:11px;margin-top:22px;list-style:none}
  .direction-content li{display:flex;align-items:flex-start;gap:10px;color:var(--ink-2);font-size:13px}
  .direction-content li .icon{margin-top:1px;color:var(--green)}
  .direction-actions{display:flex;align-items:flex-start;flex-direction:column;gap:12px;margin-top:28px}
  .direction-actions__primary{min-width:230px}
  .direction-actions__secondary{display:flex;flex-wrap:wrap;gap:8px}
  .direction-actions__secondary .button{min-height:42px;padding-inline:16px;font-size:13px}

  /* Benefits */
  .benefit-flow{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .benefit-flow article{display:flex;align-items:flex-start;gap:14px;flex:1;padding:28px 24px}
  .benefit-flow article+article{border-left:1px solid var(--line)}
  .benefit-flow article>span{display:grid;width:46px;height:46px;flex:0 0 auto;border-radius:15px;place-items:center;background:var(--blue-soft);color:var(--blue)}
  .benefit-flow article:nth-child(2)>span{background:var(--red-soft);color:var(--red)}
  .benefit-flow article:nth-child(3)>span{background:var(--green-soft);color:var(--green)}
  .benefit-flow article:nth-child(4)>span{background:#fff6e7;color:#bd7700}
  .benefit-flow h3{font-size:17px}
  .benefit-flow p{margin-top:5px;color:var(--text);font-size:13px;line-height:1.55}

  /* Results */
  .results-section{background:linear-gradient(160deg,#eef5ff 0%,#f8fbff 56%,#fff1f3 100%)}
  .results-layout{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(570px,1.2fr);align-items:center;gap:80px}
  .results-copy h2{margin-top:12px;font-size:clamp(44px,4.5vw,68px);font-weight:800;letter-spacing:-.06em;line-height:.98}
  .results-copy>p{max-width:520px;margin-top:22px;color:var(--text);font-size:17px;line-height:1.72}
  .results-tip{display:flex;align-items:flex-start;gap:10px;margin-top:25px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.72);color:var(--text);font-size:13px;line-height:1.55}
  .results-tip .icon{margin-top:2px;color:var(--blue)}
  .results-card{display:grid;grid-template-columns:auto 1fr;gap:17px 18px;padding:28px;border:1px solid rgba(202,217,235,.96);border-radius:30px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-md);backdrop-filter:blur(10px)}
  .results-emblem{display:grid;width:66px;height:66px;border-radius:21px;place-items:center;background:linear-gradient(145deg,#e8f2ff,#fff0f2);color:var(--blue)}
  .results-emblem .icon{width:34px;height:34px}
  .results-card>div:nth-child(2)>span{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .results-card h3{margin-top:4px;font-size:25px}
  .results-card>div:nth-child(2)>p{margin-top:5px;color:var(--text);font-size:13px;line-height:1.55}
  .result-link{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:14px 16px;border:1px solid var(--line);border-radius:17px;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}
  .result-link:hover{transform:translateY(-2px);border-color:#b4cae7;box-shadow:var(--shadow-xs)}
  .result-link>.icon:first-child{width:23px;height:23px;color:var(--blue)}
  .result-link span{display:grid}
  .result-link strong{font-size:13px}
  .result-link small{margin-top:2px;color:var(--muted);font-size:13px}
  .result-arrow{color:var(--blue)}

  /* Educators */
  .educators-layout{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(600px,1.2fr);align-items:center;gap:78px}
  .educators-copy h2{margin-top:12px;font-size:clamp(44px,4.5vw,66px);font-weight:800;letter-spacing:-.06em;line-height:.98}
  .educators-copy p{max-width:520px;margin-top:22px;color:var(--text);font-size:17px;line-height:1.7}
  .educators-copy .button{margin-top:27px}
  .resource-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .resource-list article{display:flex;align-items:flex-start;gap:14px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}
  .resource-list article:hover{transform:translateY(-3px);border-color:#b8cde9;box-shadow:var(--shadow-sm)}
  .resource-list article>span{display:grid;width:46px;height:46px;flex:0 0 auto;border-radius:15px;place-items:center;background:var(--blue-soft);color:var(--blue)}
  .resource-list h3{font-size:15px}
  .resource-list p{margin-top:5px;color:var(--text);font-size:13px;line-height:1.55}
  .resource-download{display:inline-flex;margin-top:10px;color:var(--blue);font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
  .resource-download:hover{color:var(--red)}

  /* FAQ */
  .faq{background:#eef4fc}
  .faq-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(620px,1.28fr);align-items:start;gap:78px}
  .faq-copy{position:sticky;top:calc(var(--header) + 36px)}
  .faq-copy h2{margin-top:12px;font-size:clamp(44px,4.4vw,64px);font-weight:800;letter-spacing:-.06em;line-height:.98}
  .faq-copy p{max-width:430px;margin-top:22px;color:var(--text);font-size:16px;line-height:1.7}
  .faq-copy .button{margin-top:26px}
  .accordion{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}
  .accordion article+article{border-top:1px solid var(--line)}
  .accordion h3{font-size:15px}
  .accordion button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;padding:19px 22px;text-align:left;font-weight:730;cursor:pointer}
  .accordion button .icon{color:var(--blue);transition:transform .2s ease}
  .accordion button[aria-expanded="true"] .icon{transform:rotate(180deg)}
  .accordion article>div{padding:0 22px 20px;color:var(--text);font-size:13px;line-height:1.7}
  .faq-note{padding:15px 22px;border-top:1px solid var(--line);background:#f8faff;color:var(--muted);font-size:13px}

  /* Partners and archive */
  .partner-strip{display:flex;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff}
  .partner-strip>a{display:flex;align-items:center;gap:13px;flex:1;min-width:0;padding:20px;color:inherit;text-decoration:none}
  .partner-strip>a+a{border-left:1px solid var(--line)}
  .partner-strip img{width:54px;height:54px;flex:0 0 auto;object-fit:contain;mix-blend-mode:multiply}
  .partner-strip span{font-size:13px;font-weight:650;line-height:1.4}
  .partner-placeholder{opacity:.65}
  .archive{padding-top:76px;padding-bottom:76px;background:#f4f7fc}
  .archive-layout{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:70px}
  .archive-copy h2{margin-top:10px;font-size:clamp(34px,3.3vw,48px);letter-spacing:-.05em;line-height:1}
  .archive-copy p{margin-top:12px;color:var(--text)}
  .archive-years{display:flex;gap:12px}
  .archive-years a{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}
  .archive-years a:hover{transform:translateY(-3px);border-color:#b5cae7;box-shadow:var(--shadow-sm)}
  .archive-years strong{font-size:25px}
  .archive-years span{display:flex;align-items:center;gap:6px;color:var(--blue);font-size:13px;font-weight:750}

  /* Final CTA and footer */
  .final-cta{position:relative;overflow:hidden;padding:74px 0;background:linear-gradient(115deg,#082755 0%,#0d4da8 55%,#be1833 120%);color:#fff}
  .final-cta::before,.final-cta::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.11)}
  .final-cta::before{width:430px;height:430px;right:-140px;top:-250px}
  .final-cta::after{width:280px;height:280px;right:-20px;bottom:-190px}
  .final-cta-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:50px}
  .final-cta span{color:#a8c8f4;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .final-cta h2{margin-top:8px;font-size:clamp(40px,4.6vw,66px);letter-spacing:-.055em;line-height:1}
  .final-cta p{margin-top:12px;color:#d9e7fb;font-size:15px}
  .footer{padding:54px 0 20px;background:#071b3d;color:#fff}
  .footer-main{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:54px}
  .footer-brand{display:flex;gap:14px}
  .footer-brand img{width:58px;height:58px;object-fit:contain}
  .footer-brand div,.footer-main>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start}
  .footer-brand strong,.footer-main>div>strong{font-size:13px;text-transform:uppercase;letter-spacing:.06em}
  .footer-brand span{color:#8db5ec;font-size:13px}
  .footer-brand small{margin-top:12px;color:#6f84a3;font-size:13px}
  .footer-main a,.footer-main>div>span{margin-top:9px;color:#a4b6cf;font-size:13px}
  .footer-main a:hover{color:#fff}
  .footer-support{margin-top:22px}
  .footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);color:#7185a4;font-size:13px}

  .toast{position:fixed;z-index:250;right:24px;bottom:24px;display:flex;align-items:center;gap:16px;max-width:390px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-md);font-size:13px}
  .toast[hidden]{display:none}
  .toast button{display:grid;width:32px;height:32px;border-radius:10px;place-items:center;background:var(--surface-alt);cursor:pointer}
}

@layer responsive {
  @media (max-width:1220px){
    :root{--shell:min(100% - 40px,1180px)}
    .desktop-nav{gap:13px}.desktop-nav a{font-size:13px}.header-doc{display:none}.header-inner{grid-template-columns:auto 1fr auto}
    .menu-toggle{display:grid}.desktop-nav{display:none}
    .hero-layout{grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);gap:28px}.hero h1{font-size:clamp(54px,6vw,74px)}
    .trust-strip{grid-template-columns:1fr repeat(3,1fr)}
    .process li{padding-inline:24px}
    .age-layout,.results-layout,.educators-layout,.faq-layout{gap:52px}
    .age-layout{grid-template-columns:minmax(260px,.65fr) minmax(600px,1.35fr)}
    .direction-content{padding-inline:46px}
  }

  @media (max-width:980px){
    :root{--shell:min(100% - 36px,900px);--header:72px}
    .section{padding:88px 0}
    .section-head--split{align-items:flex-start;flex-direction:column;gap:18px}.section-head p{max-width:620px}
    .hero{padding-top:52px}.hero-layout{grid-template-columns:1fr}.hero-copy{max-width:760px}.hero h1{max-width:820px;font-size:clamp(60px,9.5vw,88px)}.hero-lead{max-width:700px}.hero-visual{max-width:820px;width:100%;margin-inline:auto}.trust-strip{grid-template-columns:repeat(3,1fr)}.trust-intro{grid-column:1/-1;min-height:72px!important;border-bottom:1px solid var(--line)}.trust-strip article:first-of-type{border-left:0}
    .process{grid-template-columns:1fr}.process li{grid-template-columns:auto 1fr}.process li+li{border-left:0;border-top:1px solid var(--line)}.process-number{font-size:38px}.full-route ol{grid-template-columns:repeat(3,1fr)}
    .stage-status{grid-template-columns:1fr auto}.stage-status .button{grid-column:1/-1;width:100%}.stage-roadmap{grid-template-columns:1fr 1fr;gap:34px 50px}.stage-line{display:none}
    .age-layout,.results-layout,.educators-layout,.faq-layout{grid-template-columns:1fr;gap:46px}.age-copy,.results-copy,.educators-copy{max-width:760px}.age-module{max-width:820px;width:100%}.faq-copy{position:static}
    .direction-stage{grid-template-columns:minmax(300px,.8fr) minmax(430px,1.2fr)}.direction-content{padding:42px}.direction-orbit{width:220px;height:220px}.direction-orbit>svg{width:126px;height:126px}
    .benefit-flow{display:grid;grid-template-columns:1fr 1fr}.benefit-flow article+article{border-left:0}.benefit-flow article:nth-child(even){border-left:1px solid var(--line)}.benefit-flow article:nth-child(n+3){border-top:1px solid var(--line)}
    .partner-strip{display:grid;grid-template-columns:1fr 1fr}.partner-strip>a+a{border-left:0}.partner-strip>a:nth-child(even){border-left:1px solid var(--line)}.partner-strip>a:nth-child(n+3){border-top:1px solid var(--line)}
    .archive-layout{grid-template-columns:1fr;gap:30px}
    .footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-main>div:last-child{grid-column:2/4}
  }

  @media (max-width:760px){
    :root{--shell:min(100% - 28px,680px);--radius-xl:32px}
    .brand img{width:40px;height:40px}.brand strong{font-size:16px}.brand small{font-size:13px}
    .hero{padding:38px 0 30px}.hero-kicker{font-size:13px}.hero h1{font-size:clamp(47px,13vw,68px)}.hero-lead{font-size:15px}.hero-age{padding:14px}.hero-age-head{align-items:flex-start;flex-direction:column;gap:2px}.hero-age-summary{align-items:flex-start;flex-direction:column}.hero-age-summary dl{width:100%}.hero-age-summary dl>div{flex:1}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%}.hero-visual{padding-bottom:0;margin-top:2px}.hero-art{border-radius:28px}.hero-metrics{position:relative;right:auto;bottom:auto;left:auto;grid-template-columns:1fr 1fr;margin-top:-12px}.hero-metrics>div+div{border-left:0}.hero-metrics>div:nth-child(even){border-left:1px solid #e7edf5}.hero-metrics>div:nth-child(n+3){border-top:1px solid #e7edf5}.trust-strip{grid-template-columns:1fr}.trust-strip>*+*{border-left:0;border-top:1px solid var(--line)}.trust-intro{grid-column:auto}
    .section{padding:72px 0}.section-head{margin-bottom:34px}.section-head h2{font-size:clamp(38px,10.5vw,52px)}.section-head p{font-size:15px}
    .process li{grid-template-columns:50px 1fr;padding:26px 18px}.process-number{top:14px;right:14px;font-size:31px}.process-icon{width:50px;height:50px;border-radius:16px}.process h3{font-size:20px}.full-route ol{grid-template-columns:1fr 1fr}
    .stage-status{grid-template-columns:1fr}.countdown{justify-content:space-between}.countdown>div{min-width:56px}.countdown strong{font-size:38px}.stage-roadmap{grid-template-columns:1fr;gap:30px}.roadmap-item{padding:0 0 0 66px;min-height:80px}.roadmap-dot{top:0}.roadmap-item h3{font-size:21px}.stage-note{font-size:13px}
    .age-copy h2,.results-copy h2,.educators-copy h2,.faq-copy h2{font-size:clamp(40px,11vw,54px)}
    .age-module{padding:7px}.age-switch--module button{min-height:64px;padding:10px}.age-switch--module button strong{font-size:14px}.age-switch--module button span{font-size:13px}.age-card{grid-template-columns:1fr}.age-visual{min-height:190px;flex-direction:row;gap:16px}.age-visual>span{font-size:66px}.age-visual small{margin-top:0}.age-visual>.icon{margin-top:0}.age-card-main{padding:22px}.age-facts{grid-template-columns:1fr 1fr}.age-thresholds{grid-template-columns:1fr}.age-actions{align-items:stretch;flex-direction:column}.age-actions .button{width:100%}
    .direction-tabs button{min-width:210px}.direction-stage{grid-template-columns:1fr}.direction-visual{min-height:300px}.direction-visual>span{font-size:78px}.direction-orbit{width:180px;height:180px}.direction-orbit>svg{width:105px;height:105px}.direction-content{padding:30px 24px 34px}.direction-content h3{font-size:40px}.direction-actions,.direction-actions__secondary{display:grid;width:100%}.direction-actions .button{width:100%}
    .benefit-flow{grid-template-columns:1fr}.benefit-flow article:nth-child(even){border-left:0}.benefit-flow article+article{border-top:1px solid var(--line)}
    .results-card{padding:20px}.resource-list{grid-template-columns:1fr}
    .partner-strip{grid-template-columns:1fr}.partner-strip>a:nth-child(even){border-left:0}.partner-strip>a+a{border-top:1px solid var(--line)}
    .archive-years{flex-direction:column}.archive-years a{width:100%}
    .final-cta{padding:58px 0}.final-cta-inner{align-items:flex-start;flex-direction:column}.final-cta h2{font-size:clamp(39px,11vw,54px)}.final-cta .button{width:100%}
    .footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-main>div:last-child{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}
    .toast{right:14px;bottom:14px;left:14px;max-width:none}
  }

  @media (max-width:480px){
    :root{--shell:calc(100% - 22px)}
    .header-inner{gap:8px}.brand span{max-width:170px}.brand strong{font-size:14px}.menu-toggle{width:42px;height:42px}
    .hero h1{font-size:clamp(43px,13.4vw,58px)}.hero-lead{font-size:14px}.hero-age-head span{display:none}.age-switch--hero button{font-size:13px}.hero-age-summary dl>div{min-width:0;padding:9px}.hero-metrics{padding:6px;border-radius:18px}.hero-metrics>div{gap:7px;padding:8px 6px}.metric-icon{width:32px;height:32px;border-radius:10px}.hero-metrics strong{font-size:17px}.hero-metrics span{font-size:13px}.trust-strip>*{padding:14px 16px}
    .process li{grid-template-columns:44px 1fr;gap:14px}.process-icon{width:44px;height:44px}.process-icon .icon{width:23px;height:23px}.full-route ol{grid-template-columns:1fr}
    .stage-status{padding:16px}.countdown{gap:8px;padding:12px 14px}.countdown>b{font-size:20px}.countdown strong{font-size:30px}.stage-status-copy strong{font-size:13px}
    .age-switch--module button strong{font-size:13px}.age-switch--module button span{display:none}.age-card-main{padding:19px}.age-card-head h3{font-size:27px}.age-facts dd{font-size:18px}.age-thresholds>div{align-items:flex-start;flex-direction:column;gap:4px}.age-thresholds strong{text-align:left}
    .direction-tabs{margin-inline:-11px;padding-inline:11px}.direction-tabs button{min-width:190px}.direction-content{padding-inline:20px}.direction-content h3{font-size:36px}.direction-content>p{font-size:14px}
    .results-card{grid-template-columns:1fr}.results-emblem{width:56px;height:56px}.result-link{grid-template-columns:auto 1fr auto}
    .accordion button{padding:17px 18px;font-size:13px}.accordion article>div{padding:0 18px 18px}
    .footer-main{grid-template-columns:1fr}.footer-main>div:last-child{grid-column:auto}
  }

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

/* Dynamic age palette */
.age-visual[data-age-state="middle"]{background:linear-gradient(160deg,#e9f2ff,#f7faff 48%,#eef5ff)}
.age-visual[data-age-state="middle"]>span,.age-visual[data-age-state="middle"]>.icon{color:var(--blue)}
.age-visual[data-age-state="senior"]{background:linear-gradient(160deg,#f0ecff,#faf8ff 48%,#eef5ff)}
.age-visual[data-age-state="senior"]>span,.age-visual[data-age-state="senior"]>.icon{color:#7551d8}
.age-card[data-age-state="middle"] .age-card-head span{color:var(--blue)}
.age-card[data-age-state="senior"] .age-card-head span{color:#7551d8}

/* Navigation safety */
section[id]{scroll-margin-top:calc(var(--header) + 20px)}
.skip-link{visibility:hidden;opacity:0}
.skip-link:focus-visible{visibility:visible;opacity:1;transform:none}

/* News band */
.news-band{padding:22px 0;background:#fff}
.news-band-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:#f7faff}
.news-icon{display:grid;width:46px;height:46px;border-radius:15px;place-items:center;background:var(--blue-soft);color:var(--blue)}
.news-band-inner>div{display:grid}
.news-band strong{font-size:14px}
.news-band p{margin-top:3px;color:var(--muted);font-size:13px}
@media (max-width:760px){.news-band-inner{grid-template-columns:auto 1fr}.news-band .button{grid-column:1/-1;width:100%}}

/* --------------------------------------------------------------------------
   Hybrid concept: modern 2026 product shell + the strongest content ideas
   from the official 2025 Olympiad page. These rules intentionally sit
   outside @layer so they can refine the base system without brittle overrides.
   -------------------------------------------------------------------------- */

.hero-quick-links{display:flex;align-items:center;flex-wrap:wrap;gap:7px 18px;margin-top:14px;color:var(--muted);font-size:13px;font-weight:700}
.hero-quick-links a{position:relative;transition:color .2s ease}
.hero-quick-links a:hover{color:var(--blue)}
.hero-quick-links a+a::before{content:"";position:absolute;left:-10px;top:50%;width:3px;height:3px;border-radius:50%;background:#b5c4d8;transform:translateY(-50%)}

/* Mission / 2025 continuity */
.mission-section{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.mission-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);align-items:center;gap:clamp(48px,7vw,104px)}
.mission-copy h2{max-width:780px;margin-top:13px;font-size:clamp(44px,4.5vw,68px);font-weight:820;letter-spacing:-.06em;line-height:.98;text-wrap:balance}
.mission-lead{max-width:700px;margin-top:22px;color:var(--text);font-size:18px;line-height:1.72}
.mission-list{display:grid;grid-template-columns:1fr 1fr;gap:0 34px;margin-top:38px;list-style:none;border-top:1px solid var(--line)}
.mission-list li{display:grid;grid-template-columns:auto 1fr;gap:15px;padding:24px 0;border-bottom:1px solid var(--line)}
.mission-list li>span{display:grid;width:38px;height:38px;border-radius:13px;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:13px;font-weight:850}
.mission-list li:nth-child(even)>span{background:var(--red-soft);color:var(--red)}
.mission-list h3{font-size:18px;letter-spacing:-.02em}
.mission-list p{margin-top:6px;color:var(--text);font-size:13px;line-height:1.6}
.mission-photo{position:relative;isolation:isolate;min-height:560px;margin:0;overflow:hidden;border-radius:36px;background:#eaf2ff;box-shadow:var(--shadow-md)}
.mission-photo::after{content:"";position:absolute;inset:0;border:1px solid rgba(195,211,232,.9);border-radius:inherit;pointer-events:none}
.mission-photo>img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:center}
.mission-photo figcaption{position:absolute;z-index:2;right:22px;bottom:22px;left:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:rgba(255,255,255,.9);box-shadow:0 16px 38px rgba(12,48,96,.16);backdrop-filter:blur(12px)}
.mission-photo figcaption strong{font-size:34px;letter-spacing:-.05em;line-height:1;color:var(--red)}
.mission-photo figcaption span{max-width:170px;color:var(--ink);font-size:13px;font-weight:750;line-height:1.35}
.mission-certificate{position:absolute;z-index:3;top:20px;left:20px;display:flex;align-items:center;gap:9px;padding:11px 14px;border-radius:15px;background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);font-size:13px;font-weight:750}
.mission-certificate .icon{color:var(--blue)}

/* Illustrated three-step scenario */
.process.process--illustrated{gap:18px;border:0;background:transparent}
.process.process--illustrated li{display:flex;flex-direction:column;min-width:0;padding:18px 18px 24px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-xs);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.process.process--illustrated li+li{border-left:1px solid var(--line)}
.process.process--illustrated li:hover{transform:translateY(-4px);border-color:#b8cce8;box-shadow:var(--shadow-sm)}
.process-art{width:100%;height:190px;margin-bottom:16px;object-fit:contain;border-radius:22px;background:linear-gradient(145deg,#eef5ff,#fff 58%,#fff1f3);filter:drop-shadow(0 12px 18px rgba(13,50,101,.1))}
.process.process--illustrated .process-number{z-index:2;top:28px;right:28px;color:rgba(11,42,91,.1);font-size:48px}
.process.process--illustrated h3{font-size:22px}
.process.process--illustrated p{max-width:none}

/* 2025 factual format block, expressed as a modern product panel */
.participation-format{background:linear-gradient(180deg,#eef5ff 0%,#f7faff 100%)}
.format-panel{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(520px,1.18fr);overflow:hidden;border:1px solid var(--line);border-radius:38px;background:#fff;box-shadow:var(--shadow-md)}
.format-visual{position:relative;display:grid;min-height:520px;padding:44px;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(237,38,56,.11),transparent 34%),linear-gradient(145deg,#e9f3ff,#f8fbff)}
.format-visual img{width:100%;max-width:530px;max-height:430px;object-fit:contain;filter:drop-shadow(0 24px 32px rgba(14,48,96,.16))}
.format-copy{padding:clamp(44px,6vw,78px)}
.format-copy h2{max-width:680px;margin-top:12px;font-size:clamp(44px,4.4vw,66px);font-weight:820;letter-spacing:-.06em;line-height:.98}
.format-copy>p{max-width:660px;margin-top:22px;color:var(--text);font-size:17px;line-height:1.72}
.format-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:32px}
.format-facts>div{min-width:0;padding:16px;border-radius:18px;background:#f3f6fb}
.format-facts dt{color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.format-facts dd{margin-top:6px;font-size:20px;font-weight:850;line-height:1.15}
.format-warning{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:15px 17px;border-radius:17px;background:var(--amber-soft);color:#6d531d;font-size:13px;line-height:1.6}
.format-warning .icon{margin-top:2px;color:var(--amber)}

/* Stage section gains the 2025 calendar narrative without reverting to old layout */
.stage-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:stretch;gap:18px}
.stage-overview .stage-status{grid-template-columns:minmax(220px,1fr) auto;align-content:center}
.stage-overview .stage-status>.button{grid-column:1/-1;justify-self:start}
.stage-illustration{display:grid;min-height:190px;overflow:hidden;border:1px solid var(--line);border-radius:22px;place-items:center;background:#fff;box-shadow:var(--shadow-sm)}
.stage-illustration img{width:100%;height:100%;max-height:255px;object-fit:contain;padding:10px;filter:drop-shadow(0 12px 18px rgba(14,48,96,.11))}

/* Generated visual series is used as editorial illustration, not as UI chrome */
.age-visual{padding:18px;background:linear-gradient(155deg,#eef5ff,#fbfdff 54%,#fff1f3)}
.age-visual::before,.age-visual::after{display:none}
.age-visual>img{position:relative;z-index:1;width:100%;height:100%;max-height:390px;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(15,47,93,.16));transition:opacity .2s ease,transform .25s ease}
.age-visual[data-age-state="middle"]>img{transform:scale(.98)}
.age-visual[data-age-state="senior"]>img{transform:scale(.98)}
.direction-orbit{width:310px;height:310px;border:0;box-shadow:none}
.direction-orbit::before,.direction-orbit::after{display:none}
.direction-orbit>img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(14,48,96,.15))}

.results-card{grid-template-columns:170px 1fr}
.results-emblem--image{grid-row:1/3;width:170px;height:150px;border-radius:24px;background:linear-gradient(145deg,#eef5ff,#fff1f3)}
.results-emblem--image img{width:100%;height:100%;object-fit:contain;padding:6px;filter:drop-shadow(0 14px 18px rgba(14,48,96,.13))}

.educators-layout{grid-template-columns:minmax(310px,.66fr) minmax(280px,.54fr) minmax(500px,1fr);gap:34px}
.educators-visual{display:grid;min-height:390px;border-radius:30px;place-items:center;background:linear-gradient(145deg,#edf5ff,#fff);overflow:hidden}
.educators-visual img{width:100%;height:100%;max-height:420px;object-fit:contain;filter:drop-shadow(0 20px 26px rgba(14,48,96,.13))}
.faq-visual{width:min(100%,340px);max-height:250px;margin:28px auto 4px;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(14,48,96,.12))}

/* The useful portal continuation from the 2025 page */
.portal-resources{background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%)}
.portal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.portal-grid>a{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:15px;min-height:150px;padding:22px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-xs);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.portal-grid>a:hover{transform:translateY(-4px);border-color:#b8cce8;box-shadow:var(--shadow-sm)}
.portal-icon{display:grid;width:50px;height:50px;border-radius:16px;place-items:center;background:var(--blue-soft);color:var(--blue)}
.portal-icon--red{background:var(--red-soft);color:var(--red)}
.portal-icon--gold{background:#fff5dc;color:#b87500}
.portal-icon--green{background:var(--green-soft);color:var(--green)}
.portal-grid strong{font-size:16px}
.portal-grid p{margin-top:7px;color:var(--text);font-size:13px;line-height:1.55}
.portal-arrow{width:18px;height:18px;color:var(--blue)}

@media (max-width:1180px){
  .mission-layout{grid-template-columns:1fr;gap:48px}.mission-photo{max-width:760px;width:100%;min-height:480px}.mission-photo>img{min-height:480px}
  .format-panel{grid-template-columns:.85fr 1.15fr}.format-facts{grid-template-columns:1fr 1fr}
  .stage-overview{grid-template-columns:1fr}.stage-illustration{min-height:270px}.stage-illustration img{max-height:300px}
  .educators-layout{grid-template-columns:minmax(300px,.72fr) minmax(340px,.6fr);gap:42px}.resource-list{grid-column:1/-1}
  .portal-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:840px){
  .hero-quick-links{gap:7px 14px}
  .mission-list{grid-template-columns:1fr}.mission-photo{min-height:420px}.mission-photo>img{min-height:420px}
  .process.process--illustrated{grid-template-columns:1fr}.process.process--illustrated li+li{border-left:1px solid var(--line)}.process-art{height:220px}
  .format-panel{grid-template-columns:1fr}.format-visual{min-height:340px}.format-copy{padding:36px 28px 42px}
  .results-card{grid-template-columns:120px 1fr}.results-emblem--image{width:120px;height:120px}
  .educators-layout{grid-template-columns:1fr}.educators-visual{max-width:620px;min-height:340px}.resource-list{grid-column:auto}
  .portal-grid{grid-template-columns:1fr}
}

@media (max-width:560px){
  .hero-quick-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-quick-links a{padding:8px 0}.hero-quick-links a+a::before{display:none}
  .mission-copy h2{font-size:clamp(38px,12vw,52px)}.mission-lead{font-size:15px}.mission-list{margin-top:28px}.mission-list li{padding:18px 0}.mission-photo{min-height:360px;border-radius:26px}.mission-photo>img{min-height:360px}.mission-photo figcaption{right:12px;bottom:12px;left:12px;padding:13px 14px}.mission-photo figcaption strong{font-size:25px}.mission-photo figcaption span{font-size:13px}.mission-certificate{top:12px;left:12px;max-width:220px}
  .process-art{height:165px}.process.process--illustrated li{padding:14px 14px 22px}
  .format-visual{min-height:270px;padding:20px}.format-visual img{max-height:260px}.format-copy{padding:30px 20px 34px}.format-copy h2{font-size:40px}.format-copy>p{font-size:14px}.format-facts{grid-template-columns:1fr 1fr}.format-facts dd{font-size:17px}
  .stage-overview .stage-status{grid-template-columns:1fr}.stage-overview .stage-status>.button{width:100%;justify-self:stretch}.stage-illustration{min-height:220px}.stage-illustration img{max-height:240px}
  .age-visual{min-height:290px}.age-visual>img{max-height:280px}
  .direction-orbit{width:240px;height:240px}.direction-tabs button>img{width:48px;height:48px}
  .results-card{grid-template-columns:1fr}.results-emblem--image{grid-row:auto;width:100%;height:180px}.results-card>div:nth-child(2){grid-column:1/-1}
  .educators-visual{min-height:280px}.faq-visual{max-height:190px}
  .portal-grid>a{grid-template-columns:auto 1fr;min-height:0}.portal-arrow{display:none}
}

/* ---- Official UI revision: calmer mission/process/preparation blocks ---- */
.mission-layout--single{grid-template-columns:1fr;gap:0}
.mission-copy--wide h2{max-width:940px}
.mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}
.mission-item{display:flex;align-items:flex-start;gap:14px;padding:21px 22px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-xs)}
.mission-item-icon{display:grid;flex:0 0 auto;width:42px;height:42px;border-radius:14px;place-items:center;background:#f0f4f9;color:#6d809a}
.mission-item-icon .icon{width:18px;height:18px}
.mission-item h3{font-size:17px;letter-spacing:-.02em}
.mission-item p{margin-top:6px;color:var(--text);font-size:13px;line-height:1.62}
.mission-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.mission-facts article{padding:18px 20px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.mission-facts strong{display:block;font-size:16px;letter-spacing:-.02em}
.mission-facts span{display:block;margin-top:6px;color:var(--text);font-size:13px;line-height:1.55}

.process.process--official{gap:18px;border:0;background:transparent}
.process.process--official li{position:relative;display:grid;grid-template-columns:58px 1fr;align-items:start;gap:16px;padding:24px 24px 26px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-xs);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.process.process--official li+li{border-left:0}
.process.process--official li:hover{transform:translateY(-4px);border-color:#bfd0e6;box-shadow:var(--shadow-sm)}
.process-badge{position:absolute;top:18px;right:18px;padding:6px 10px;border-radius:999px;background:#f2f5f8;color:#6b7c92;font-size:13px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.process-icon--official{display:grid;width:58px;height:58px;border-radius:18px;place-items:center;background:#eef3f8;color:#6b7c92}
.process-icon--official .icon{width:28px;height:28px}
.process.process--official h3{font-size:22px;letter-spacing:-.03em}
.process.process--official p{max-width:none;margin-top:8px;color:var(--text);font-size:14px;line-height:1.65}
.process.process--official a{display:inline-flex;align-items:center;gap:7px;margin-top:16px;color:var(--blue);font-size:13px;font-weight:750}

.directions-controls{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.age-switch--directions{max-width:720px}
.age-switch--directions button{display:grid;justify-items:start;min-height:60px;padding:12px 16px}
.age-switch--directions button strong{font-size:15px}
.age-switch--directions button span{margin-top:4px;font-size:13px}
.directions-controls-note{max-width:420px;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--muted);font-size:13px;line-height:1.55}
.direction-tabs{padding-bottom:10px}
.direction-tabs button{border-color:#d5e0ee;background:#fff;box-shadow:none}
.direction-tabs button:hover{background:#fff;box-shadow:var(--shadow-xs)}
.direction-tabs button[aria-selected="true"]{border-color:#b8cce7;background:#fff;box-shadow:var(--shadow-sm)}


.direction-tabs strong{font-size:13px}
.direction-tabs small{margin-top:4px;color:var(--muted);font-size:13px}
.direction-visual{background:linear-gradient(145deg,#f6f9fd 0%,#fcfdff 100%)}
.direction-visual>span{color:rgba(11,42,91,.06)}
.direction-orbit{display:grid;width:252px;height:252px;border-radius:28px;place-items:center;background:linear-gradient(180deg,#fbfdff 0%,#f1f5fb 100%);box-shadow:inset 0 0 0 1px #d9e4f0}
.direction-orbit::before,.direction-orbit::after{display:none}
.direction-orbit>svg{width:150px;height:150px;color:#6f819b;filter:none}
.direction-content li .icon{color:#7c8ea8}
.direction-actions .button--primary{background:#ef2638}
.direction-actions .button--quiet{color:var(--ink)}

.portal-icon,.portal-icon--red,.portal-icon--gold,.portal-icon--green{background:#edf3fb;color:#5e7698}
.faq-visual,.format-visual img,.stage-illustration img,.age-visual img,.educators-visual img{filter:grayscale(.12) saturate(.7) brightness(1.03)}

@media (max-width: 1023px){
  .mission-grid{grid-template-columns:1fr}
  .mission-facts{grid-template-columns:1fr}
  .directions-controls{flex-direction:column}
  .directions-controls-note{max-width:none}
}
@media (max-width: 767px){
  .process.process--official{grid-template-columns:1fr}
  .process.process--official li{grid-template-columns:50px 1fr;padding:22px 18px 22px}
  .process.process--official h3{font-size:20px}
  .direction-tab-icon{width:48px;height:48px}
  .direction-orbit{width:210px;height:210px}
  .direction-orbit>svg{width:124px;height:124px}
}
@media (max-width: 479px){
  .age-switch--directions button strong{font-size:13px}
  .age-switch--directions button span{display:none}
  .directions-controls-note{font-size:13px}
}

/* ---- Accepted homepage concept (photo hero with 112) ---- */
.hero--accepted{padding:46px 0 22px;background:linear-gradient(180deg,#fff 0%,#f8fbff 82%,#f5f8fc 100%)}
.hero-accepted-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(680px,1.08fr);align-items:center;gap:clamp(34px,3.8vw,68px)}
.hero-accepted-copy{position:relative;z-index:2;max-width:710px}
.hero-support-line{display:flex;align-items:center;gap:11px;margin-bottom:28px;color:var(--ink);font-size:14px;font-weight:700}
.hero-support-mark{display:grid;width:28px;height:28px;place-items:center;color:var(--red);font-size:28px;font-weight:950;line-height:1;transform:skew(-9deg)}
.hero-accepted-title{margin:0;max-width:820px;font-size:clamp(58px,4.95vw,78px)!important;font-weight:840!important;letter-spacing:-.06em!important;line-height:.95!important;text-wrap:balance}
.hero-accepted-title span{display:block!important;color:var(--ink)!important;white-space:normal!important}
.hero-accepted-title span:nth-child(2){color:var(--red)!important}
.hero-accepted-lead{max-width:640px;margin-top:22px;color:var(--text);font-size:17px;line-height:1.62}
.hero-accepted-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.hero-accepted-actions .button{min-height:52px;padding-inline:24px}
.hero-age--accepted{margin-top:24px;padding:16px;border:1px solid rgba(208,220,236,.88);background:rgba(255,255,255,.94);border-radius:24px;box-shadow:0 12px 32px rgba(12,43,85,.06)}
.hero-age--accepted .age-switch{background:#f2f5f9}
.hero-age-summary--accepted{margin-top:13px}
.hero-registration-note{display:flex;align-items:flex-start;gap:9px;max-width:660px;margin:14px 0 0;color:var(--ink-2);font-size:13px;line-height:1.55}
.hero-registration-note .icon{flex:0 0 auto;width:18px;height:18px;margin-top:1px;color:#647a99}
.hero-accepted-visual{position:relative;min-width:0;overflow:hidden;border-radius:34px;background:#f4f8fd;box-shadow:0 20px 52px rgba(16,55,104,.10)}
.hero-accepted-visual picture,.hero-accepted-visual img{display:block;width:100%;height:100%}
.hero-accepted-visual img{aspect-ratio:867/685;object-fit:cover;object-position:center}
.hero-accepted-visual::after{content:"";position:absolute;inset:0;border:1px solid rgba(198,213,232,.76);border-radius:inherit;pointer-events:none}
.trust-strip--accepted{grid-template-columns:repeat(3,1fr);margin-top:18px}
.trust-strip--accepted article{min-height:104px;padding:18px 22px}
.trust-strip--accepted article:first-child{border-left:0}
.trust-strip--accepted article img{width:56px;height:56px}
.trust-strip--accepted article div{display:flex;min-width:0;flex-direction:column;justify-content:center}
.trust-strip--accepted article strong{font-size:15px}
.trust-strip--accepted article small{max-width:260px;margin-top:5px;color:var(--muted);font-size:13px;line-height:1.45}
.hero-bottom-meta{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:8px}
.hero-bottom-meta .hero-quick-links{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;color:var(--muted);font-size:13px}
.hero-bottom-meta .hero-quick-links a{position:relative}
.hero-bottom-meta .hero-quick-links a+a::before{content:"•";position:absolute;left:-9px;color:#91a2b8}
.hero-bottom-meta .hero-note{margin:0;font-size:13px;white-space:nowrap}

@media (max-width:1180px){
  .hero-accepted-layout{grid-template-columns:1fr;gap:30px}
  .hero-accepted-copy{max-width:820px}
  .hero-accepted-title{max-width:860px;font-size:clamp(54px,7vw,82px)!important}
  .hero-accepted-visual{max-width:880px;width:100%;margin-inline:auto}
}
@media (max-width:900px){
  .trust-strip--accepted{grid-template-columns:1fr}
  .trust-strip--accepted article+article{border-top:1px solid var(--line);border-left:0}
  .hero-bottom-meta{align-items:flex-start;flex-direction:column}
  .hero-bottom-meta .hero-note{white-space:normal}
}
@media (max-width:767px){
  .hero--accepted{padding:34px 0 18px}
  .hero-support-line{margin-bottom:18px;font-size:13px}
  .hero-accepted-title{font-size:clamp(43px,13vw,62px)!important;line-height:.98!important}
  .hero-accepted-lead{font-size:15px}
  .hero-accepted-actions{display:grid;grid-template-columns:1fr}
  .hero-accepted-actions .button{width:100%}
  .hero-accepted-visual{border-radius:26px}
  .hero-age--accepted{padding:14px}
  .hero-registration-note{font-size:13px}
}
@media (max-width:479px){
  .hero-accepted-title{font-size:clamp(38px,12vw,54px)!important}
  .hero-support-mark{width:23px;height:23px;font-size:23px}
  .hero-accepted-visual img{aspect-ratio:4/3;object-position:58% center}
  .trust-strip--accepted article{padding:15px 16px}
}

/* === 2026 final hero refresh === */
.hero-modern{padding:22px 0 34px;background:linear-gradient(180deg,#f6f9fd 0%,#fbfdff 100%)}
.hero-modern-shell{display:grid;gap:18px}
.hero-main-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);align-items:center;gap:28px}
.hero-support-pill{display:inline-flex;align-items:center;gap:14px;padding:12px 18px;border:1px solid #e2ebf5;border-radius:22px;background:#fff;box-shadow:0 10px 26px rgba(17,52,96,.05);font-weight:700;color:var(--ink)}
.hero-support-mark{display:grid;place-items:center;width:22px;height:22px;color:var(--red);font-size:24px;font-weight:900;line-height:1}
.hero-modern-copy{max-width:640px}
.hero-modern-title{margin:24px 0 0;font-size:clamp(58px,5.3vw,80px);line-height:.94;font-weight:850;letter-spacing:-.07em}
.hero-modern-title span{display:block;color:var(--ink)}
.hero-modern-title span:nth-child(3),.hero-modern-title span:nth-child(4){color:var(--red)}
.hero-modern-lead{max-width:610px;margin-top:24px;color:#546884;font-size:18px;line-height:1.62}
.hero-modern-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:28px}
.hero-modern-actions .button{min-height:56px;padding:0 24px;border-radius:18px;font-size:18px;box-shadow:none}
.hero-modern-actions .button .icon:first-child{margin-right:4px}
.hero-cta-primary{background:linear-gradient(135deg,#ff2436 0%,#ff2f3d 100%)}
.hero-cta-secondary{background:#fff;border:1px solid #d8e3f0;color:var(--ink)}
.hero-modern-visual{display:flex;justify-content:flex-end}
.hero-modern-visual picture,.hero-modern-visual img{display:block;width:100%;max-width:985px;height:auto}
.hero-modern-visual img{filter:drop-shadow(0 24px 38px rgba(17,56,102,.08))}
.hero-selection-panel{margin-top:-6px;padding:0;border:1px solid #dde7f1;border-radius:26px;background:#fff;box-shadow:0 14px 36px rgba(17,52,96,.06);overflow:hidden}
.hero-selection-main{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(420px,1fr);align-items:stretch}
.hero-selection-left{padding:22px 28px}
.hero-selection-labels strong{display:block;font-size:18px;color:var(--ink)}
.age-switch--hero-modern{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:18px;padding:2px;border:1px solid #d9e3ef;border-radius:18px;background:#fff}
.age-switch--hero-modern button{min-height:50px;border-radius:14px;font-weight:800;font-size:16px}
.age-switch--hero-modern button[aria-selected="true"]{background:linear-gradient(135deg,#123d96 0%,#0d2c79 100%);color:#fff;box-shadow:none}
.hero-selection-stats{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #e4edf5}
.hero-stat{display:flex;flex-direction:column;justify-content:center;padding:22px 24px;min-width:0}
.hero-stat+.hero-stat{border-left:1px solid #e4edf5}
.hero-stat dt{display:flex;align-items:center;gap:10px;margin:0;color:#506886;font-size:14px;font-weight:700}
.hero-stat dt .icon{width:26px;height:26px;color:#2b61dd}
.hero-stat dd{margin:10px 0 0;color:var(--ink);font-size:18px;font-weight:800;line-height:1.35}
.hero-stat--questions dd,.hero-stat--time dd{font-size:22px}
.hero-stat--free dd{font-size:14px;font-weight:700;color:#546884}
.hero-partners-strip{display:grid;grid-template-columns:1.55fr repeat(4,1fr);margin-top:16px;border:1px solid #dde7f1;border-radius:24px;background:#fff;box-shadow:0 12px 28px rgba(17,52,96,.05);overflow:hidden}
.hero-partners-strip article{display:flex;align-items:center;gap:16px;min-height:104px;padding:20px 22px}
.hero-partners-strip article+article{border-left:1px solid #e6edf4}
.hero-partners-intro strong{font-size:15px;line-height:1.45;color:var(--ink)}
.hero-partners-badge{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border-radius:50%;background:#eef4ff;color:#2c60db}
.hero-partners-badge .icon{width:26px;height:26px}
.hero-partner-item{justify-content:center;text-align:left}
.hero-partner-item img{width:48px;height:48px;object-fit:contain;flex:0 0 auto}
.hero-partner-item strong{font-size:13px;line-height:1.35;color:var(--ink)}
.hero-partner-item--text .hero-partner-emblem{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f3f6fb;color:#aa8526;font-size:24px;line-height:1}
.hero-bottom-meta{display:none}

/* direction icons refresh */
.direction-tabs{padding-bottom:12px}
.direction-tabs button{min-width:240px;align-items:center;gap:14px;padding:16px;border-radius:20px}

.direction-tabs strong{font-size:16px}
.direction-tabs small{font-size:13px;line-height:1.35}
.direction-visual{background:radial-gradient(circle at 50% 35%,#fff 0%,#f6f9fe 55%,#eef4fb 100%)}
.direction-visual>span{color:rgba(11,42,91,.05);font-size:118px}
.direction-orbit{display:grid;place-items:center;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 50% 42%,#ffffff 0%,#f6f9fe 62%,#edf3fb 100%);box-shadow:inset 0 0 0 1px #e2eaf4}
#direction-image{width:250px;height:250px;object-fit:contain}

@media (max-width: 1180px){
  .hero-main-grid{grid-template-columns:1fr;gap:22px}
  .hero-modern-copy{max-width:none}
  .hero-modern-visual{justify-content:center}
  .hero-selection-main{grid-template-columns:1fr}
  .hero-selection-stats{border-top:1px solid #e4edf5;border-left:0}
  .hero-partners-strip{grid-template-columns:repeat(2,1fr)}
  .hero-partners-strip article:nth-child(3),.hero-partners-strip article:nth-child(5){border-left:0}
}
@media (max-width: 860px){
  .hero-modern{padding-top:14px}
  .hero-modern-title{font-size:clamp(42px,11vw,64px)}
  .hero-modern-lead{font-size:16px}
  .hero-modern-actions{display:grid;grid-template-columns:1fr;gap:12px}
  .hero-modern-actions .button{width:100%;justify-content:center;font-size:16px}
  .age-switch--hero-modern{grid-template-columns:1fr}
  .hero-selection-left{padding:18px}
  .hero-selection-stats{grid-template-columns:1fr}
  .hero-stat,.hero-stat+.hero-stat{border-left:0}
  .hero-stat+.hero-stat{border-top:1px solid #e4edf5}
  .hero-partners-strip{grid-template-columns:1fr}
  .hero-partners-strip article+article{border-left:0;border-top:1px solid #e6edf4}
  .direction-tabs button{min-width:220px}

  .direction-orbit{width:250px;height:250px}
  #direction-image{width:200px;height:200px}
}
@media (max-width: 560px){
  .hero-support-pill{font-size:14px;padding:10px 14px;gap:10px}
  .hero-modern-title{letter-spacing:-.06em}
  .hero-selection-labels strong{font-size:16px}
  .direction-tabs button{min-width:190px;padding:14px}

}


/* === 2026 artwork integration: full direction panels + blended age cards === */
.age-module{padding:10px;border-radius:32px;background:linear-gradient(180deg,#f5f8fd 0%,#ffffff 100%)}
.age-card{grid-template-columns:minmax(300px,334px) 1fr;align-items:stretch;border-radius:28px;background:#fff;box-shadow:0 10px 28px rgba(15,47,93,.06)}
.age-visual{position:relative;min-height:520px;padding:0;background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%)}
.age-visual::before{display:none}
.age-visual::after{content:"";position:absolute;top:0;right:0;width:36px;height:100%;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,#ffffff 92%)}
.age-visual>img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;filter:none}
.age-card-main{position:relative;padding:34px 34px 34px 30px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}
.age-card-main::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:1px;background:linear-gradient(180deg,rgba(216,226,239,0),#dce5f1 16%,#dce5f1 84%,rgba(216,226,239,0))}
.direction-stage{grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);overflow:hidden;border:1px solid #dde6f0;border-radius:32px;background:#fff;box-shadow:0 16px 36px rgba(15,47,93,.06)}
.direction-visual{position:relative;display:block;min-height:420px;padding:0;background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%)}
.direction-visual::after{content:"";position:absolute;top:0;right:0;width:44px;height:100%;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,#ffffff 92%)}
.direction-visual>span{display:none}
.direction-orbit{display:block;width:100%;height:100%;border-radius:0;background:transparent;box-shadow:none}
#direction-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none}
.direction-content{padding:42px 38px 40px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}
.direction-content h3{font-size:44px}
.direction-content p{max-width:58ch}
@media (max-width:1180px){
  .age-card{grid-template-columns:minmax(280px,320px) 1fr}
  .direction-stage{grid-template-columns:1fr}
  .direction-visual{min-height:360px}
  .direction-visual::after{width:100%;height:36px;top:auto;bottom:0;right:auto;left:0;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,#ffffff 92%)}
  .direction-content{padding:34px 30px 36px}
}
@media (max-width:840px){
  .age-card{grid-template-columns:1fr}
  .age-visual{min-height:380px}
  .age-visual::after{width:100%;height:34px;top:auto;bottom:0;right:auto;left:0;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,#ffffff 92%)}
  .age-card-main{padding:26px 24px 28px}
  .age-card-main::before{display:none}
}
@media (max-width:560px){
  .age-module{padding:8px}
  .age-visual{min-height:320px}
  .direction-visual{min-height:300px}
  .direction-content h3{font-size:38px}
}


/* === Approved hero: pixel-matched to the accepted 1672x941 reference === */
.site-header .shell,.hero-reference-shell{width:min(1492px,calc(100% - 80px));margin-inline:auto}
.hero-reference{position:relative;isolation:isolate;overflow:hidden;min-height:862px;padding:0;background:linear-gradient(90deg,#ffffff 0%,#fbfdff 43%,#eef5ff 100%)}
.hero-reference::before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 8% 87%,rgba(248,226,232,.27),transparent 18%),radial-gradient(circle at 94% 8%,rgba(201,222,255,.28),transparent 22%)}
.hero-reference-shell{position:relative;z-index:2}
.hero-reference-main{position:relative;min-height:666px;padding-top:43px}
.hero-reference-copy{position:relative;z-index:3;width:710px}
.hero-reference-support{display:flex;align-items:center;gap:13px;height:35px;color:#0b2a5b;font-size:14px;font-weight:760}
.hero-reference-support-logo{width:45px;height:60px;object-fit:contain;flex:0 0 auto}
.hero-reference-title{margin-top:25px;font-size:55px;font-weight:850;letter-spacing:-.055em;line-height:.92}
.hero-reference-title span{display:block;white-space:nowrap;color:#0b2a5b}
.hero-reference-title span:nth-child(2){margin-top:7px;color:#ed2638}
.hero-reference-title span:nth-child(3){margin-top:2px}
.hero-reference-lead{width:610px;margin-top:18px;color:#536b8b;font-size:16px;line-height:1.55}
.hero-reference-actions{display:flex;align-items:center;gap:26px;margin-top:18px}
.hero-reference-actions .button{height:52px;min-height:52px;border-radius:14px;padding:0 27px;font-size:15px;font-weight:800}
.hero-reference-actions .button--primary{width:260px;background:#ed2638;box-shadow:0 13px 30px rgba(237,38,56,.18)}
.hero-reference-actions .button--quiet{width:290px;background:#fff;border-color:#aebfda;box-shadow:none}
.hero-reference-age{width:573px;height:190px;margin-top:23px;padding:17px 20px 14px;border:1px solid rgba(226,234,244,.88);border-radius:18px;background:rgba(255,255,255,.95);box-shadow:0 12px 34px rgba(18,52,95,.05)}
.hero-reference-age-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.hero-reference-age-head strong{font-size:14px;font-weight:800}
.hero-reference-age-head span{color:#7890b0;font-size:13px}
.age-switch--hero-reference{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:12px;padding:0;border:1px solid #dae4ef;border-radius:12px;background:#fff;overflow:hidden}
.age-switch--hero-reference button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:49px;border-radius:0;color:#1a3b6c;font-size:13px;font-weight:800}
.age-switch--hero-reference button+button{border-left:1px solid #e0e7f0}
.age-switch--hero-reference button[aria-selected="true"]{margin:-1px;border:2px solid #1683ff;border-radius:12px;background:#fff;color:#0e60d6;box-shadow:none}
.hero-age-avatar{font-size:21px;line-height:1}
.hero-reference-facts{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;padding-top:13px;border-top:1px solid #e4ebf3}
.hero-reference-facts>div{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:10px;min-height:51px}
.hero-reference-facts>div+div{padding-left:35px;border-left:1px solid #dae4ee}
.hero-fact-icon{display:grid;place-items:center;width:32px;height:32px;color:#1768e3}
.hero-fact-icon .icon{width:28px;height:28px}
.hero-reference-facts dt{color:#7186a3;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.hero-reference-facts dd{display:flex;align-items:baseline;gap:5px;margin-top:2px}
.hero-reference-facts dd strong{font-size:23px;line-height:1;color:#0b2a5b}
.hero-reference-facts dd span{color:#58708f;font-size:13px;font-weight:700}
.hero-reference-visual{position:absolute;z-index:1;top:-6px;right:0;width:min(52.15vw,872px);height:auto;pointer-events:none}
.hero-reference-visual picture,.hero-reference-visual img{display:block;width:100%;height:auto}
.hero-reference-trust{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);min-height:126px;border:1px solid #dce6f2;border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(13,46,90,.05);overflow:hidden}
.hero-reference-trust article{display:flex;align-items:center;gap:18px;padding:20px 25px}
.hero-reference-trust article+article{border-left:1px solid #dce6f2}
.hero-reference-trust img{width:54px;height:61px;object-fit:contain;flex:0 0 auto}
.hero-reference-trust article:last-child img{width:60px;height:75px}
.hero-reference-trust div{display:grid;align-content:center}
.hero-reference-trust span{color:#7186a3;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.hero-reference-trust strong{margin-top:4px;color:#0b2a5b;font-size:14px;font-weight:850}
.hero-reference-trust small{margin-top:5px;color:#3f5879;font-size:13px;line-height:1.45}
.hero-reference-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;height:52px;padding:0 4px;color:#7186a3;font-size:13px}
.hero-reference-meta nav{display:flex;align-items:center;gap:18px}
.hero-reference-meta nav a{position:relative}
.hero-reference-meta nav a+a::before{content:"•";position:absolute;left:-11px;color:#9aabc0}
.hero-reference-meta p{display:flex;align-items:center;gap:9px;white-space:nowrap}
.hero-reference-meta p .icon{width:16px;height:16px;color:#1768e3}

@media (max-width:1360px){
  .site-header .shell,.hero-reference-shell{width:min(1240px,calc(100% - 52px))}
  .hero-reference-copy{width:610px}
  .hero-reference-title{font-size:52px}
  .hero-reference-title span{white-space:normal}
  .hero-reference-lead{width:550px}
  .hero-reference-age{width:550px}
  .hero-reference-visual{width:56vw;right:-5vw}
}
@media (max-width:1080px){
  .hero-reference{min-height:auto;padding-bottom:28px}
  .hero-reference-main{min-height:0;padding-top:34px}
  .hero-reference-copy{width:100%;max-width:760px}
  .hero-reference-title{font-size:clamp(48px,7vw,68px)}
  .hero-reference-lead{width:auto;max-width:650px}
  .hero-reference-visual{position:relative;top:auto;right:auto;width:min(100%,872px);margin:26px auto 0}
  .hero-reference-age{width:min(100%,590px);height:auto}
  .hero-reference-trust{height:auto;grid-template-columns:1fr}
  .hero-reference-trust article+article{border-left:0;border-top:1px solid #dce6f2}
  .hero-reference-meta{height:auto;align-items:flex-start;flex-direction:column;padding:16px 4px 0}
  .hero-reference-meta p{white-space:normal}
}
@media (max-width:680px){
  .site-header .shell,.hero-reference-shell{width:calc(100% - 28px)}
  .hero-reference-main{padding-top:24px}
  .hero-reference-support{font-size:13px}
  .hero-reference-title{font-size:clamp(38px,12vw,56px);line-height:.98}
  .hero-reference-title span{margin-top:0!important;white-space:normal}
  .hero-reference-lead{margin-top:18px;font-size:14px}
  .hero-reference-actions{display:grid;gap:10px}
  .hero-reference-actions .button{width:100%!important}
  .hero-reference-age{padding:15px 14px}
  .age-switch--hero-reference{grid-template-columns:1fr}
  .age-switch--hero-reference button+button{border-left:0;border-top:1px solid #e0e7f0}
  .hero-reference-facts{grid-template-columns:1fr}
  .hero-reference-facts>div+div{padding-left:0;border-top:1px solid #e4ebf3;border-left:0}
  .hero-reference-meta nav{flex-wrap:wrap;gap:10px 16px}
}


/* Approved hero final alignment corrections */
@media (min-width:1081px){
  .site-header .brand img{width:51px;height:51px}
  .site-header .brand strong{font-size:21px;letter-spacing:.015em}
  .site-header .brand small{font-size:13px}
  .site-header .desktop-nav{justify-content:center;gap:clamp(18px,1.55vw,27px)}
  .hero-reference-main{min-height:676px}
  .hero-reference-title span:first-child{transform:scaleX(1.055);transform-origin:left center}
  .hero-reference-title span:nth-child(2){transform:scaleX(.98);transform-origin:left center}
  .hero-reference-title span:nth-child(3){transform:scaleX(.975);transform-origin:left center}
  .hero-reference-lead{margin-top:26px}
  .hero-reference-trust{grid-template-columns:29.4% 30.7% 39.9%}
}


/* === Final polish update: hero, icon consistency, metrics alignment === */
.hero-reference-main{position:relative}
.hero-reference-visual{top:-2px;right:0;width:min(52.15vw,872px);z-index:1}
.hero-reference-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.02) 0%,rgba(255,255,255,0) 28%,rgba(255,255,255,0) 72%,rgba(255,255,255,.03) 100%);pointer-events:none}
.hero-reference-visual img{filter:saturate(.98) contrast(1.02)}
.hero-reference-highlights{position:absolute;inset:0;z-index:2;pointer-events:none}
.hero-reference-chip{position:absolute;display:grid;grid-template-columns:40px 1fr;align-items:center;gap:12px;min-width:182px;padding:18px 20px;border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 14px 34px rgba(18,52,95,.08);color:#0b2a5b}
.hero-reference-chip--participants{top:126px;left:784px}
.hero-reference-chip--stages{top:308px;left:776px;min-width:160px}
.hero-reference-chip--useful{right:22px;bottom:140px;min-width:158px}
.hero-reference-chip-icon{display:grid;width:40px;height:40px;place-items:center;color:#1768e3}
.hero-reference-chip-icon .icon{width:32px;height:32px}
.hero-reference-chip strong{display:block;font-size:18px;font-weight:850;line-height:1.05}
.hero-reference-chip small{display:block;margin-top:3px;color:#2c4770;font-size:13px;font-weight:720;line-height:1.42}
.hero-reference-age{box-shadow:0 14px 34px rgba(18,52,95,.055)}
.age-switch--hero-reference{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
.age-switch--hero-reference button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 12px;border:1px solid #d9e4ef;border-radius:12px;background:#fff;color:#173c73;font-size:13px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.age-switch--hero-reference button+button{border-left:1px solid #d9e4ef}
.age-switch--hero-reference button[aria-selected="true"]{margin:0;border:2px solid #1683ff;border-radius:12px;background:#fff;color:#0e60d6;box-shadow:0 4px 12px rgba(22,131,255,.08)}
.hero-age-avatar{display:grid;width:24px;height:24px;place-items:center}
.hero-reference-facts>div{align-items:start}
.hero-reference-facts dt,.format-facts dt,.age-facts dt{letter-spacing:.06em}
.process-icon--official,.benefit-flow article>span,.full-route-icon,.direction-tab-icon,.mission-item-icon{background:#eff5fb!important;color:#1768e3!important;border:1px solid #d8e4f2}
.process-icon--official .icon,.benefit-flow article>span .icon,.full-route-icon .icon,.mission-item-icon .icon{color:inherit}
.process-icon--official{box-shadow:none}
.full-route{margin-top:18px;border:1px solid var(--line);border-radius:18px;background:#f8fbff}
.full-route ol{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:4px 20px 20px;list-style:none}
.full-route ol::before{content:"";position:absolute;top:41px;left:34px;right:34px;height:2px;border-radius:999px;background:#dbe6f4}
.full-route li{position:relative;z-index:1;display:grid;grid-template-rows:auto auto 1fr;gap:8px;padding:14px;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(14,48,96,.04)}
.full-route-icon{display:grid;width:42px;height:42px;border-radius:14px;place-items:center}
.full-route-icon .icon{width:22px;height:22px}
.full-route-step{display:grid;width:28px;height:28px;border-radius:10px;place-items:center;background:#1768e3;color:#fff;font-size:13px;font-weight:800}
.full-route li strong{font-size:13px;line-height:1.45}
.format-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:32px}
.format-facts>div,.age-facts>div{display:grid;align-content:space-between;min-height:86px}
.format-facts>div{padding:16px 16px 14px;border-radius:18px;background:#f3f6fb}
.format-facts dd{margin-top:8px;font-size:19px;font-weight:850;line-height:1.15;white-space:nowrap}
.age-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.age-facts>div{padding:14px 14px 13px;border-radius:16px;background:#f3f6fb}
.age-facts dd{margin-top:7px;font-size:18px;font-weight:850;line-height:1.15;white-space:nowrap}
.direction-tabs button{min-width:228px;align-items:center;gap:14px;padding:14px 16px;border:1px solid #d5e0ee;border-radius:20px;background:#fff;box-shadow:none}
.direction-tabs button:hover{background:#fff;box-shadow:var(--shadow-xs)}
.direction-tabs button[aria-selected="true"]{border-color:#b8cce7;background:#fff;box-shadow:var(--shadow-sm)}
.direction-tab-icon{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;border-radius:16px}
.direction-tab-icon .icon{width:30px;height:30px}
.direction-tabs button[aria-selected="true"] .direction-tab-icon{background:#eaf1fb!important;color:#1768e3!important}
.direction-actions .button{display:inline-flex;align-items:center;gap:10px}
.direction-actions .button .icon{width:20px;height:20px;flex:0 0 auto}
.hero-reference-meta nav a+a::before{left:-11px;color:#9aabc0;content:"•"}
@media (max-width:1280px){.hero-reference-chip--participants{left:auto;right:270px}.hero-reference-chip--stages{left:auto;right:315px}.hero-reference-chip--useful{right:28px;bottom:116px}}
@media (max-width:1040px){.hero-reference-highlights{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.hero-reference-chip{position:relative;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;min-width:0}.hero-reference-visual{width:min(100%,872px);margin:26px auto 0}.hero-reference-main{display:grid}.full-route ol{grid-template-columns:repeat(3,1fr)}.full-route ol::before{display:none}}
@media (max-width:720px){.age-switch--hero-reference{grid-template-columns:1fr}.age-switch--hero-reference button+button{border-left:1px solid #d9e4ef}.hero-reference-highlights{grid-template-columns:1fr}.full-route ol{grid-template-columns:1fr}.format-facts,.age-facts{grid-template-columns:1fr 1fr}.format-facts dd,.age-facts dd{white-space:normal}.direction-tabs button{min-width:210px}}

/* === Bugfix patch: hero duplicates, process badge overlap, real preview tabs === */
.hero-reference-chip--useful{display:none !important;}

/* Keep step badge from colliding with the heading */
.process.process--official li > div:last-child{padding-right:88px;}
.process-badge{top:16px;right:16px;z-index:2;white-space:nowrap;}
@media (max-width: 640px){
  .process.process--official li > div:last-child{padding-right:0;padding-top:34px;}
  .process-badge{top:14px;right:14px;font-size:13px;padding:5px 9px;}
}

/* Preparation tabs: use real preview images instead of tiny icons */
.direction-tabs button{align-items:center;}
.direction-tab-icon.direction-tab-thumb{
  display:block;
  width:64px;
  height:64px;
  flex:0 0 64px;
  overflow:hidden;
  border-radius:18px;
  background:#f2f6fb;
  border:1px solid #d8e4f2;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
}
.direction-tab-icon.direction-tab-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(2.65);
  transform-origin:center;
}
.direction-tabs button[data-direction="firefighter"] .direction-tab-thumb img,
.direction-tabs button[data-direction="history"] .direction-tab-thumb img{
  transform:scale(2.35);
}
.direction-tabs button[aria-selected="true"] .direction-tab-icon.direction-tab-thumb{
  border-color:#b8cce7;
  box-shadow:0 8px 18px rgba(17,64,130,.08), inset 0 0 0 1px rgba(255,255,255,.75);
}
.direction-tabs button .direction-tab-icon.direction-tab-thumb + span{
  min-width:0;
}
.direction-tabs button strong{font-size:15px;line-height:1.25;}
.direction-tabs button small{font-size:13px;line-height:1.35;}
@media (max-width:860px){
  .direction-tab-icon.direction-tab-thumb{width:58px;height:58px;flex-basis:58px;border-radius:16px;}
}
@media (max-width:560px){
  .direction-tab-icon.direction-tab-thumb{width:54px;height:54px;flex-basis:54px;}
}


/* === Hero cleanup v3: remove duplicate stat cards and rebalance layout === */
.hero-reference-highlights,.hero-reference-chip{display:none !important;}
@media (min-width:1081px){
  .hero-reference-copy{width:min(640px,calc(100% - 620px));}
  .hero-reference-lead{max-width:560px;}
  .hero-reference-visual{right:0;width:min(53vw,872px);}
}


/* === FINAL SCROLL & SEAM POLISH ======================================= */
html{
  scrollbar-width:thin;
  scrollbar-color:#9fb8da #eef3f8;
}
body{overflow-x:hidden;}
body::-webkit-scrollbar{width:12px;}
body::-webkit-scrollbar-track{background:#eef3f8;}
body::-webkit-scrollbar-thumb{
  min-height:72px;
  border:3px solid #eef3f8;
  border-radius:999px;
  background:linear-gradient(180deg,#b7cae4 0%,#7fa4d7 100%);
}
body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#9fb9dc 0%,#628fd0 100%);}
[id]{scroll-margin-top:calc(var(--header) + 20px);}
main{position:relative;isolation:isolate;}

.scroll-progress{
  position:fixed;
  z-index:1001;
  top:0;
  right:0;
  left:0;
  height:3px;
  pointer-events:none;
  background:rgba(220,230,243,.38);
}
.scroll-progress span{
  display:block;
  width:100%;
  height:100%;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,var(--blue) 0%,#2f7beb 48%,var(--red) 100%);
  box-shadow:0 0 14px rgba(23,104,227,.26);
  will-change:transform;
}

.desktop-nav a.is-active{color:var(--blue);}
.desktop-nav a.is-active::after{transform:scaleX(1);background:linear-gradient(90deg,var(--blue),var(--red));}
.mobile-menu a.is-active{color:var(--blue);}

.back-to-top{
  position:fixed;
  z-index:90;
  right:24px;
  bottom:24px;
  display:grid;
  width:48px;
  height:48px;
  place-items:center;
  border:1px solid rgba(190,207,229,.92);
  border-radius:16px;
  background:rgba(255,255,255,.92);
  color:var(--blue);
  box-shadow:0 14px 34px rgba(14,48,96,.13);
  backdrop-filter:blur(14px) saturate(140%);
  opacity:0;
  transform:translateY(14px) scale(.94);
  pointer-events:none;
  transition:opacity .25s ease,transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.back-to-top .icon{width:21px;height:21px;transform:rotate(-90deg);}
.back-to-top.is-visible{opacity:1;transform:none;pointer-events:auto;}
.back-to-top:hover{transform:translateY(-3px);border-color:#9fbce2;box-shadow:0 18px 40px rgba(14,48,96,.18);}

/* Restrained reveal: visible motion, but no flashy effects for an official project. */
.js .reveal{
  opacity:0;
  filter:blur(3px);
  transform:translate3d(0,26px,0);
  transition:
    opacity .72s cubic-bezier(.22,.61,.36,1),
    transform .72s cubic-bezier(.22,.61,.36,1),
    filter .72s cubic-bezier(.22,.61,.36,1);
  will-change:opacity,transform,filter;
}
.js .reveal.is-visible{opacity:1;filter:none;transform:none;}
.hero .reveal,.hero-reference .reveal{transition-duration:.58s;}

/* Backgrounds overlap optically: no abrupt white/blue seams between sections. */
.mission-section{background:linear-gradient(180deg,#f3f7fc 0%,#fff 78px,#fbfdff 100%)!important;}
#how.section--white{background:linear-gradient(180deg,#fbfdff 0%,#fff 84px,#fff 100%)!important;}
.participation-format{background:linear-gradient(180deg,#fff 0%,#f0f6ff 92px,#f7faff 100%)!important;}
.stages{background:linear-gradient(180deg,#f7faff 0%,#eef5ff 96px,#f8fbff 100%)!important;}
.age-section{background:linear-gradient(180deg,#f8fbff 0%,#fff 92px,#fff 100%)!important;}
.directions{background:linear-gradient(180deg,#fff 0%,#f3f7fc 94px,#eef5ff 100%)!important;}
.benefits{background:linear-gradient(180deg,#eef5ff 0%,#fff 90px,#fff 100%)!important;}
.results-section{background:linear-gradient(180deg,#fff 0%,#eef5ff 94px,#f8fbff 58%,#fff1f3 100%)!important;}
.educators{background:linear-gradient(180deg,#fff1f3 0%,#fff 96px,#fff 100%)!important;}
.faq{background:linear-gradient(180deg,#fff 0%,#eef4fc 98px,#eef4fc 100%)!important;}
.portal-resources{background:linear-gradient(180deg,#eef4fc 0%,#f8fbff 92px,#eef5ff 100%)!important;}
.partners{background:linear-gradient(180deg,#eef5ff 0%,#fff 92px,#fff 100%)!important;}
.archive{background:linear-gradient(180deg,#fff 0%,#f4f7fc 88px,#f4f7fc 100%)!important;}
.news-band{background:linear-gradient(180deg,#f4f7fc 0%,#fff 100%)!important;}
.section > .shell,.news-band > .shell,.final-cta > .shell{position:relative;z-index:1;}

/* Images merge into their blocks rather than ending with a visible rectangular edge. */
.format-visual,.stage-illustration,.age-visual,.direction-visual,.results-emblem--image,.educators-visual{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.format-visual::after{
  content:"";
  position:absolute;
  z-index:3;
  top:0;
  right:-1px;
  bottom:0;
  width:108px;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.58) 58%,#fff 100%);
}
.stage-illustration::after,.results-emblem--image::after,.educators-visual::after{
  content:"";
  position:absolute;
  z-index:3;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(205,218,235,.72),inset 0 -28px 42px rgba(255,255,255,.42);
}
.age-visual::after{
  width:92px!important;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.48) 48%,#fff 100%)!important;
}
.direction-visual::after{
  width:98px!important;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.45) 50%,#fff 100%)!important;
}
.faq-visual{
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 82%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 82%,transparent 100%);
}
.format-visual img,.stage-illustration img,.age-visual img,.direction-visual img,.results-emblem--image img,.educators-visual img,.faq-visual{
  --parallax-y:0px;
  --media-scale:1.012;
  transform:translate3d(0,var(--parallax-y),0) scale(var(--media-scale));
  transform-origin:center;
  will-change:transform;
}
.age-visual[data-age-state="middle"]>img,.age-visual[data-age-state="senior"]>img{--media-scale:.992;}

.process.process--official,.stage-overview,.age-module,.direction-stage,.results-card,.educators-visual,.accordion,.portal-grid,.partner-strip,.archive-years{transform:translateZ(0);}
.process.process--official li,.portal-grid>a,.partner-strip>a,.archive-years a{
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease;
}

@media (max-width:1180px){
  .format-visual::after{
    top:auto;
    right:0;
    bottom:-1px;
    left:0;
    width:auto;
    height:80px;
    background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.62) 58%,#fff 100%);
  }
  .age-visual::after,.direction-visual::after{
    top:auto!important;
    right:0!important;
    bottom:-1px!important;
    left:0!important;
    width:auto!important;
    height:78px!important;
    background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.5) 52%,#fff 100%)!important;
  }
}
@media (max-width:680px){
  .back-to-top{right:14px;bottom:14px;width:44px;height:44px;border-radius:14px;}
  .section{padding-top:84px;padding-bottom:84px;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .js .reveal,.js .reveal.is-visible{opacity:1;filter:none;transform:none;transition:none;}
  .back-to-top,.button,.portal-grid>a,.process.process--official li{transition:none;}
  .format-visual img,.stage-illustration img,.age-visual img,.direction-visual img,.results-emblem--image img,.educators-visual img,.faq-visual{transform:none!important;}
}


/* === SOFT HERO IMAGE SEAM V2 ========================================
   The source artwork has a baked transparent feather on its left edge.
   It blends with the same tonal field used behind the hero copy, with
   no obvious vertical divider and no wash over the statistic cards. */
@media (min-width:1081px){
  .hero-reference{
    background:
      radial-gradient(circle at 47% 38%,rgba(236,244,253,.72) 0%,rgba(247,251,255,.32) 27%,transparent 51%),
      linear-gradient(90deg,#ffffff 0%,#fbfdff 36%,#f7faff 48%,#eef5ff 100%);
  }
  .hero-reference-visual{
    right:-1px;
    background:transparent;
  }
  .hero-reference-visual picture,
  .hero-reference-visual img{
    -webkit-mask-image:none;
    mask-image:none;
  }
  .hero-reference-visual::before{display:none;}
  .hero-reference-visual::after{
    background:linear-gradient(90deg,rgba(255,255,255,.08) 0%,transparent 11%,transparent 100%);
  }
}
@media (max-width:1080px){
  .hero-reference-visual picture,
  .hero-reference-visual img{
    -webkit-mask-image:none;
    mask-image:none;
  }
}

/* === UNIFIED REDESIGN 2026 ============================================
   One typography, one card language and a calmer information rhythm.
   Content, chronology and interactive behaviour stay unchanged. */
:root{
  --ink:#102f5d;
  --ink-2:#254873;
  --blue:#1768e3;
  --blue-2:#1059c5;
  --red:#e92d3d;
  --red-2:#ce2032;
  --text:#526985;
  --muted:#71859f;
  --line:#dce5f0;
  --line-strong:#c8d6e7;
  --surface-alt:#f5f8fc;
  --surface-blue:#eef5ff;
  --page:#ffffff;
  --shadow-xs:0 5px 16px rgba(16,47,93,.045);
  --shadow-sm:0 12px 30px rgba(16,47,93,.07);
  --shadow-md:0 20px 52px rgba(16,47,93,.10);
  --shadow-red:0 12px 26px rgba(233,45,61,.18);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:24px;
  --radius-xl:28px;
  --shell:min(1280px,calc(100% - 64px));
  --header:72px;
  --font:"Segoe UI Variable","Segoe UI",Arial,sans-serif;
}

body{background:#fff;font-family:var(--font);font-size:16px;line-height:1.6}
button,input,textarea,select{font-family:inherit}
.site-header .shell,.hero-reference-shell{width:var(--shell)}
.section{padding:82px 0}
.section-head{margin-bottom:34px}
.section-head--split{align-items:flex-end;gap:42px}
.section-head--split>div{max-width:760px}
.section-head h2,
.mission-copy h2,.format-copy h2,.age-copy h2,.results-copy h2,
.educators-copy h2,.faq-copy h2,.archive-copy h2{
  max-width:880px;margin-top:10px;font-family:var(--font);font-size:clamp(38px,3.5vw,52px);
  font-weight:760;letter-spacing:-.045em;line-height:1.06;text-wrap:balance
}
.section-head--compact h2,.archive-copy h2{font-size:clamp(34px,3vw,44px)}
.section-head p,.mission-lead,.format-copy>p,.age-copy>p,.results-copy>p,
.educators-copy p,.faq-copy p{color:var(--text);font-size:16px;line-height:1.65}
.mission-lead,.format-copy>p,.age-copy>p,.results-copy>p,.educators-copy p,.faq-copy p{margin-top:18px}
.eyebrow{gap:9px;color:var(--blue);font-size:13px;font-weight:800;letter-spacing:.095em}
.eyebrow::before{width:16px;height:2px;background:var(--red)}

.button{min-height:50px;padding:0 20px;border-radius:12px;font-size:14px;font-weight:750}
.button--primary{background:var(--red);box-shadow:var(--shadow-red)}
.button--primary:hover{background:var(--red-2);box-shadow:0 15px 30px rgba(233,45,61,.22)}
.button--quiet{border-color:var(--line-strong);background:#fff;box-shadow:none}
.button--quiet:hover{border-color:#a9bfd9;box-shadow:var(--shadow-xs)}
.button--compact{min-height:44px;border-radius:11px}

/* Navigation */
.site-header{height:var(--header);border-color:rgba(211,222,236,.92);background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}
.site-header.is-scrolled{box-shadow:0 7px 24px rgba(16,47,93,.07)}
.header-inner{gap:22px}
.site-header .brand img{width:44px;height:44px}
.site-header .brand strong{font-size:17px;letter-spacing:.015em}
.site-header .brand small{font-size:13px}
.site-header .desktop-nav{justify-content:center;gap:clamp(14px,1.25vw,21px)}
.desktop-nav a{font-size:13px;font-weight:700}
.header-doc{height:42px;border-radius:11px;font-size:13px}

/* Hero: keep the approved image composition, simplify its UI language. */
.hero-reference{min-height:910px;background:linear-gradient(90deg,#fff 0%,#fbfdff 45%,#eef5ff 100%)}
.hero-reference::before{display:none}
.hero-reference-main{min-height:626px;padding-top:38px}
.hero-reference-copy{width:590px}
.hero-reference-support{height:60px;gap:10px;font-size:13px}
.hero-reference-support-logo{width:45px;height:60px}
.hero-reference-title{margin-top:20px;font-size:50px;font-weight:790;letter-spacing:-.048em;line-height:.96}
.hero-reference-title span:first-child,.hero-reference-title span:nth-child(2),.hero-reference-title span:nth-child(3){transform:none}
.hero-reference-title span:nth-child(2){margin-top:5px}
.hero-reference-title span:nth-child(3){margin-top:1px}
.hero-reference-lead{width:550px;max-width:550px;margin-top:20px;color:var(--text);font-size:15px;line-height:1.6}
.hero-reference-actions{gap:12px;margin-top:20px}
.hero-reference-actions .button{width:auto;height:50px;min-height:50px;padding:0 22px;border-radius:12px;font-size:14px}
.hero-reference-actions .button--primary{min-width:218px;background:var(--red)}
.hero-reference-actions .button--quiet{min-width:246px;border-color:var(--line-strong)}
.hero-reference-age{width:550px;height:176px;margin-top:20px;padding:15px 17px 12px;border-color:var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}
.hero-reference-age-head strong{font-size:13px}.hero-reference-age-head span{font-size:13px}
.age-switch--hero-reference{gap:8px;margin-top:10px}
.age-switch--hero-reference button{min-height:44px;padding:0 10px;border-color:var(--line);border-radius:11px;font-size:13px}
.age-switch--hero-reference button+button{border-left:1px solid var(--line)}
.age-switch--hero-reference button[aria-selected="true"]{border:1px solid var(--blue);border-radius:11px;background:#f7fbff;box-shadow:inset 0 0 0 1px var(--blue)}
.hero-reference-facts{margin-top:11px;padding-top:10px}
.hero-reference-facts>div{min-height:43px}.hero-reference-facts>div+div{padding-left:24px}
.hero-fact-icon{width:30px;height:30px}.hero-fact-icon .icon{width:24px;height:24px}
.hero-reference-facts dd strong{font-size:21px}
.hero-reference-visual{top:0;right:0;width:min(52vw,822px)}
.hero-reference-visual img{filter:saturate(.9) contrast(1.015)}
.hero-reference-trust{min-height:112px;border-radius:18px;box-shadow:var(--shadow-xs)}
.hero-reference-trust article{gap:14px;padding:16px 21px}
.hero-reference-trust img{width:48px;height:53px}.hero-reference-trust article:last-child img{width:60px;height:75px}
.hero-reference-trust strong{font-size:13px}.hero-reference-trust small{font-size:13px;line-height:1.4}
.hero-reference-meta{height:48px;font-size:13px}

/* Clear section alternation, without decorative seams. */
.mission-section,#how.section--white,.participation-format,.stages,.age-section,.directions,
.benefits,.results-section,.educators,.faq,.portal-resources,.partners,.archive,.news-band{background-image:none!important}
.mission-section,.participation-format,.age-section,.benefits,.educators,.portal-resources,.archive{background:#fff!important}
#how.section--white,.stages,.directions,.results-section,.faq,.partners{background:#f5f8fc!important}
.news-band{background:#fff!important}

/* Mission */
.mission-copy--wide h2{max-width:880px}
.mission-lead{max-width:760px}
.mission-grid{gap:12px;margin-top:28px}
.mission-item{gap:14px;min-height:126px;padding:19px 20px;border-radius:18px;box-shadow:none}
.mission-item:hover{border-color:#bdcee2;box-shadow:var(--shadow-xs)}
.mission-item-icon{width:42px;height:42px;border-radius:12px;background:#edf4fc!important;color:var(--blue)!important}
.mission-item h3{font-size:16px;line-height:1.3}.mission-item p{font-size:13px;line-height:1.58}
.mission-facts{gap:12px;margin-top:12px}
.mission-facts article{padding:17px 18px;border-radius:18px;background:#f7f9fc}
.mission-facts strong{font-size:15px}.mission-facts span{font-size:13px}

/* Participation route */
.process.process--official{gap:12px}
.process.process--official li{min-height:246px;padding:21px 20px 22px;border-radius:20px;box-shadow:none}
.process.process--official li:hover{transform:translateY(-2px);box-shadow:var(--shadow-xs)}
.process.process--official li>div:last-child{padding-right:64px}
.process-icon--official{width:50px;height:50px;border-radius:14px;background:#edf4fc!important;color:var(--blue)!important}
.process-icon--official .icon{width:24px;height:24px}
.process.process--official h3{font-size:19px;line-height:1.25}
.process.process--official p{font-size:13px;line-height:1.6}
.process-badge{top:17px;right:17px;padding:5px 9px;background:#f1f4f8;color:#657a96;font-size:13px}
.full-route{margin-top:12px;border-radius:16px;background:#fff}
.full-route summary{padding:13px 18px}
.full-route ol{gap:8px;padding:2px 14px 14px}
.full-route li{padding:12px;border:1px solid #edf1f6;border-radius:14px;box-shadow:none}
.full-route-icon{width:36px;height:36px;border-radius:11px}.full-route-icon .icon{width:18px;height:18px}

/* Format */
.format-panel{grid-template-columns:minmax(320px,.78fr) minmax(540px,1.22fr);border-radius:24px;box-shadow:var(--shadow-sm)}
.format-visual{min-height:430px;padding:34px;background:#f1f6fc}
.format-visual img{max-height:350px;filter:drop-shadow(0 16px 24px rgba(16,47,93,.12))}
.format-visual::after{width:70px;background:linear-gradient(90deg,transparent,#fff)!important}
.format-copy{padding:44px 48px}
.format-copy h2{max-width:600px}
.format-facts{gap:8px;margin-top:24px}
.format-facts>div{min-height:78px;padding:13px 14px;border-radius:14px;background:#f4f7fb}
.format-facts dd{margin-top:6px;font-size:17px}
.format-warning{margin-top:14px;padding:13px 14px;border-radius:14px;font-size:13px}

/* Calendar */
.stage-overview{gap:12px}
.stage-overview .stage-status,.stage-illustration{border-radius:18px;box-shadow:none}
.stage-status{gap:20px;padding:22px 24px}
.countdown strong{font-size:46px}
.stage-illustration{min-height:180px;background:#fff}
.stage-illustration img{max-height:220px;filter:drop-shadow(0 10px 16px rgba(16,47,93,.09))}
.stage-roadmap{gap:24px;margin-top:38px}
.stage-line{top:21px;height:2px}
.roadmap-item{padding-top:54px}
.roadmap-dot{width:44px;height:44px;border-width:5px}
.roadmap-item h3{margin-top:6px;font-size:20px}.roadmap-item p{margin-top:7px;font-size:13px;line-height:1.58}
.stage-note{margin-top:28px;padding:14px 16px;border-radius:14px;background:#fff;font-size:13px}

/* Age selector */
.age-layout{grid-template-columns:minmax(280px,.72fr) minmax(620px,1.28fr);gap:54px}
.age-copy>p{max-width:430px}
.age-help{margin-top:22px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#f7f9fc}
.age-module{padding:8px;border-radius:22px;background:#f3f6fa;box-shadow:none}
.age-switch--module button{min-height:64px;padding:10px 14px;border-radius:12px}
.age-switch--module button strong{font-size:15px}
.age-card{grid-template-columns:minmax(250px,290px) 1fr;margin-top:7px;border-radius:18px;box-shadow:none}
.age-visual{min-height:430px;padding:12px;background:#f4f8fc}
.age-visual>img{max-height:390px;filter:drop-shadow(0 14px 20px rgba(16,47,93,.12))}
.age-visual::after{width:58px!important;background:linear-gradient(90deg,transparent,#fff)!important}
.age-card-main{padding:28px;background:#fff}
.age-card-head h3{font-size:27px}.age-facts{gap:7px;margin-top:20px}
.age-facts>div{min-height:74px;padding:12px;border-radius:13px}.age-facts dd{font-size:16px}
.age-thresholds{gap:7px;margin-top:9px}.age-thresholds>div{padding:11px 12px;border-radius:13px}
.warning-note{margin-top:10px;padding:10px 12px;border-radius:12px}
.age-actions{margin-top:15px}

/* Preparation */
.directions-controls{align-items:center;margin-bottom:12px}
.age-switch--directions{max-width:650px}
.age-switch--directions button{min-height:54px;padding:9px 14px;border-radius:12px}
.directions-controls-note{max-width:380px;padding:10px 13px;border-radius:14px;background:#fff;font-size:13px}
.direction-tabs{gap:8px;padding-bottom:8px}
.direction-tabs button{min-width:210px;padding:11px 12px;border-radius:16px}
.direction-tab-icon.direction-tab-thumb{width:52px;height:52px;flex-basis:52px;border-radius:13px}
.direction-tabs button strong{font-size:13px}.direction-tabs button small{font-size:13px}
.direction-stage{grid-template-columns:minmax(0,1fr) minmax(430px,.95fr);min-height:390px;margin-top:12px;border-radius:22px;box-shadow:none}
.direction-visual{min-height:390px;background:#f2f6fb}
.direction-visual::after{width:62px!important;background:linear-gradient(90deg,transparent,#fff)!important}
.direction-content{padding:35px 34px;background:#fff}
.direction-content h3{font-size:clamp(32px,3vw,43px);line-height:1.05}
.direction-content>p{font-size:14px;line-height:1.62}.direction-content ul{gap:8px;margin-top:17px}.direction-content li{font-size:13px}
.direction-actions{margin-top:22px}

/* Value and outcome */
.benefit-flow{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}
.benefit-flow article{min-height:130px;padding:22px 18px}
.benefit-flow article>span{width:42px;height:42px;border-radius:12px;background:#edf4fc!important;color:var(--blue)!important}
.benefit-flow h3{font-size:15px}.benefit-flow p{font-size:13px;line-height:1.55}
.results-layout{grid-template-columns:minmax(320px,.8fr) minmax(560px,1.2fr);gap:54px}
.results-tip{margin-top:20px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}
.results-card{grid-template-columns:145px 1fr;gap:14px;padding:22px;border-radius:20px;background:#fff;box-shadow:none}
.results-emblem--image{width:145px;height:130px;border-radius:16px;background:#f3f7fb}
.results-card h3{font-size:22px}.result-link{padding:12px 14px;border-radius:13px}

/* Educators and FAQ */
.educators-layout{grid-template-columns:minmax(300px,.7fr) minmax(260px,.55fr) minmax(460px,1fr);gap:24px}
.educators-copy .button{margin-top:22px}
.educators-visual{min-height:330px;border:1px solid var(--line);border-radius:20px;background:#f3f7fb}
.educators-visual img{max-height:340px;filter:drop-shadow(0 12px 18px rgba(16,47,93,.10))}
.resource-list{gap:9px}.resource-list article{min-height:116px;padding:17px;border-radius:16px}
.resource-list article>span{width:42px;height:42px;border-radius:12px;background:#edf4fc;color:var(--blue)}
.resource-list h3{font-size:14px}.resource-list p{font-size:13px}
.faq-layout{grid-template-columns:minmax(290px,.68fr) minmax(600px,1.32fr);gap:54px}
.faq-copy{top:calc(var(--header) + 28px)}
.faq-copy .button{margin-top:22px}
.faq-visual{max-height:200px;margin-top:22px;filter:drop-shadow(0 12px 18px rgba(16,47,93,.09))}
.accordion{border-radius:18px;box-shadow:none}
.accordion button{padding:16px 18px}.accordion h3{font-size:14px}
.accordion article>div{padding:0 18px 17px;font-size:13px}
.faq-note{padding:13px 18px}

/* Useful links, partners and closing blocks */
.portal-grid{gap:10px}
.portal-grid>a{min-height:138px;padding:18px;border-radius:18px;box-shadow:none}
.portal-grid>a:hover{transform:translateY(-2px);box-shadow:var(--shadow-xs)}
.portal-icon,.portal-icon--red,.portal-icon--gold,.portal-icon--green{width:44px;height:44px;border-radius:12px;background:#edf4fc;color:var(--blue)}
.portal-grid strong{font-size:14px}.portal-grid p{font-size:13px}
.partner-strip{border-radius:18px;box-shadow:none}.partner-strip>a{min-height:96px;padding:17px 20px}
.partner-strip img{width:48px;height:48px}.partner-strip span{font-size:13px}
.archive{padding-top:64px;padding-bottom:64px}
.archive-layout{grid-template-columns:.65fr 1.35fr;gap:48px}
.archive-years{gap:10px}.archive-years a{padding:17px;border-radius:15px}.archive-years strong{font-size:22px}
.news-band{padding:18px 0}.news-band-inner{padding:14px 16px;border-radius:16px;background:#f5f8fc}
.news-icon{width:42px;height:42px;border-radius:12px}
.final-cta{padding:62px 0;background:#0d3e82}
.final-cta::before,.final-cta::after{display:none}
.final-cta h2{font-size:clamp(36px,3.8vw,52px);font-weight:760;letter-spacing:-.045em;line-height:1.05}
.footer{padding:46px 0 18px;background:#08254f}.footer-main{gap:42px}.footer-bottom{margin-top:34px}

@media (max-width:1220px){
  :root{--shell:min(100% - 40px,1120px)}
  .hero-reference-copy{width:540px}.hero-reference-title{font-size:47px}.hero-reference-lead{width:510px}.hero-reference-age{width:520px}
  .hero-reference-visual{right:-35px;width:58vw}
  .age-layout,.results-layout,.educators-layout,.faq-layout{gap:38px}
  .educators-layout{grid-template-columns:minmax(300px,.8fr) minmax(340px,.8fr)}
  .resource-list{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}
}
@media (max-width:1040px){
  :root{--shell:min(100% - 36px,900px)}
  .section{padding:72px 0}
  .hero-reference{padding-bottom:26px}.hero-reference-main{min-height:0}.hero-reference-copy{width:100%;max-width:720px}
  .hero-reference-title{font-size:clamp(46px,7vw,64px)}.hero-reference-lead{width:auto;max-width:620px}.hero-reference-age{width:min(100%,560px);height:auto}
  .hero-reference-visual{right:auto;width:min(100%,820px);margin-top:18px}
  .hero-reference-trust{height:auto;grid-template-columns:1fr}.hero-reference-meta{height:auto;padding-top:14px}
  .section-head--split{align-items:flex-start;flex-direction:column;gap:14px}.section-head p{max-width:680px}
  .format-panel{grid-template-columns:1fr}.format-visual{min-height:320px}.format-visual::after{top:auto;right:0;bottom:0;left:0;width:auto;height:58px;background:linear-gradient(180deg,transparent,#fff)!important}
  .age-layout,.results-layout,.faq-layout{grid-template-columns:1fr}.age-copy,.results-copy,.faq-copy{max-width:720px}.faq-copy{position:static}
  .age-card{grid-template-columns:minmax(240px,280px) 1fr}
  .direction-stage{grid-template-columns:1fr}.direction-visual{min-height:340px}.direction-visual::after{top:auto!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;height:58px!important;background:linear-gradient(180deg,transparent,#fff)!important}
  .portal-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  :root{--shell:min(100% - 28px,680px);--header:68px}
  .section{padding:58px 0}.section-head{margin-bottom:26px}
  .section-head h2,.mission-copy h2,.format-copy h2,.age-copy h2,.results-copy h2,.educators-copy h2,.faq-copy h2{font-size:clamp(34px,9.5vw,44px)}
  .hero-reference-main{padding-top:24px}.hero-reference-title{font-size:clamp(37px,11vw,52px);line-height:1}.hero-reference-lead{font-size:14px}
  .hero-reference-actions{display:grid}.hero-reference-actions .button{width:100%;min-width:0}
  .age-switch--hero-reference{grid-template-columns:1fr 1fr 1fr}.age-switch--hero-reference button{font-size:13px}
  .hero-reference-facts{grid-template-columns:1fr 1fr}.hero-reference-facts>div+div{padding-left:14px;border-top:0;border-left:1px solid var(--line)}
  .hero-reference-trust article+article{border-left:0;border-top:1px solid var(--line)}
  .hero-reference-meta{gap:12px}.hero-reference-meta nav{flex-wrap:wrap;gap:8px 16px}.hero-reference-meta p{white-space:normal}
  .mission-grid,.mission-facts,.process.process--official,.stage-roadmap,.resource-list{grid-template-columns:1fr}
  .mission-item,.process.process--official li{min-height:0}
  .process.process--official li>div:last-child{padding-right:0;padding-top:30px}
  .full-route ol{grid-template-columns:1fr}
  .format-copy{padding:30px 22px}.format-facts{grid-template-columns:1fr 1fr}
  .stage-overview{grid-template-columns:1fr}.stage-status{grid-template-columns:1fr}.stage-status .button{width:100%}.stage-roadmap{gap:24px}.roadmap-item{padding:0 0 0 56px;min-height:74px}
  .age-card{grid-template-columns:1fr}.age-visual{min-height:300px}.age-visual::after{top:auto!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;height:52px!important;background:linear-gradient(180deg,transparent,#fff)!important}
  .age-card-main{padding:22px}.age-facts{grid-template-columns:1fr 1fr}.age-actions{align-items:stretch;flex-direction:column}
  .directions-controls{align-items:stretch;flex-direction:column}.age-switch--directions{max-width:none}.direction-tabs{margin-inline:-14px;padding-inline:14px}.direction-content{padding:28px 22px}
  .benefit-flow{display:grid;grid-template-columns:1fr}.benefit-flow article:nth-child(even){border-left:0}.benefit-flow article+article{border-top:1px solid var(--line)}
  .results-card{grid-template-columns:1fr}.results-emblem--image{grid-row:auto;width:100%;height:170px}.results-card>div:nth-child(2){grid-column:1/-1}
  .educators-layout{grid-template-columns:1fr}.educators-visual{min-height:280px}.resource-list{grid-column:auto}
  .portal-grid{grid-template-columns:1fr}.partner-strip{grid-template-columns:1fr}.partner-strip>a:nth-child(even){border-left:0}.partner-strip>a+a{border-top:1px solid var(--line)}
  .archive{padding:54px 0}.archive-layout{grid-template-columns:1fr;gap:24px}.archive-years{flex-direction:column}
  .news-band-inner{grid-template-columns:auto 1fr}.news-band .button{grid-column:1/-1;width:100%}
  .final-cta{padding:50px 0}.final-cta-inner{align-items:flex-start;flex-direction:column;gap:28px}.final-cta .button{width:100%}
  .footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media (max-width:520px){
  :root{--shell:min(100% - 24px,480px)}
  .brand span{max-width:170px}.site-header .brand strong{font-size:14px}
  .hero-reference-title span{white-space:normal}.hero-reference-age{padding:13px}
  .age-switch--hero-reference{grid-template-columns:1fr}.hero-reference-facts{grid-template-columns:1fr}.hero-reference-facts>div+div{padding-left:0;border-top:1px solid var(--line);border-left:0}
  .format-facts,.age-facts{grid-template-columns:1fr 1fr}
  .age-switch--module button{padding:8px}.age-switch--module button strong{font-size:13px}.age-switch--module button span{display:none}
  .age-switch--directions button strong{font-size:13px}.age-switch--directions button span{display:none}
  .direction-visual{min-height:260px}.direction-tabs button{min-width:196px}
  .footer-main{grid-template-columns:1fr}.footer-main>div:last-child{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}
}

/* === TARGETED VISUAL FIXES V2 ======================================== */

/* Clean vector-based replacement for the baked participants card. */
.hero-reference-visual{container-type:inline-size}
.hero-stat-card{
  position:absolute;
  z-index:4;
  display:grid;
  grid-template-columns:4.7cqw 1fr;
  align-items:center;
  gap:1.25cqw;
  width:21cqw;
  height:11.7cqw;
  padding:1.45cqw 1.55cqw;
  border:1px solid rgba(214,225,239,.76);
  border-radius:2.05cqw;
  background:rgba(255,255,255,.98);
  box-shadow:0 1.25cqw 3cqw rgba(16,47,93,.08);
  color:var(--ink);
}
.hero-stat-card--participants{top:11.1cqw;left:5.5cqw}
.hero-stat-card-icon{display:grid;width:4.7cqw;height:4.7cqw;place-items:center;color:#1683ff}
.hero-stat-card-icon .icon{width:4.25cqw;height:4.25cqw;stroke-width:1.7}
.hero-stat-card-copy{display:grid;align-content:center;line-height:1.15}
.hero-stat-card-copy strong{font-size:max(13px,2.02cqw);font-weight:820;letter-spacing:-.025em;white-space:nowrap}
.hero-stat-card-copy small{margin-top:.55cqw;color:var(--ink);font-size:max(13px,1.27cqw);font-weight:720;line-height:1.36;white-space:nowrap}

/* Six steps use the same visual language as the Olympiad progress bar. */
.full-route{overflow:hidden;border-color:#cfe0f3;background:#f8fbff}
.full-route summary{position:relative;z-index:3;background:rgba(248,251,255,.96)}
.full-route ol{
  position:relative;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:0;
  padding:18px 18px 22px;
}
.full-route ol::before{
  top:42px;
  right:8%;
  left:8%;
  height:3px;
  background:linear-gradient(90deg,#0f9e69 0%,#1768e3 17%,#1768e3 82%,#e92d3d 100%);
}
.full-route li{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-rows:auto auto 1fr;
  justify-items:start;
  gap:7px;
  min-width:0;
  padding:0 12px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.full-route-icon{
  display:grid;
  width:50px;
  height:50px;
  border:6px solid #f8fbff!important;
  border-radius:50%;
  place-items:center;
  background:#fff!important;
  color:var(--blue)!important;
  box-shadow:0 0 0 1px #bfd4ef,0 8px 20px rgba(23,104,227,.10);
}
.full-route-icon .icon{width:22px;height:22px}
.full-route li:first-child .full-route-icon{background:var(--green)!important;color:#fff!important;box-shadow:0 0 0 1px var(--green),0 8px 20px rgba(15,158,105,.12)}
.full-route li:last-child .full-route-icon{background:var(--red)!important;color:#fff!important;box-shadow:0 0 0 1px var(--red),0 8px 20px rgba(233,45,61,.12)}
.full-route-step{
  display:block;
  width:auto;
  height:auto;
  margin-top:5px;
  border-radius:0;
  background:transparent;
  color:var(--blue);
  font-size:13px;
  font-weight:850;
  letter-spacing:.07em;
  line-height:1.2;
  text-transform:uppercase;
}
.full-route-step::before{content:"Шаг ";}
.full-route li:first-child .full-route-step{color:var(--green)}
.full-route li:last-child .full-route-step{color:var(--red)}
.full-route li strong{max-width:170px;font-size:13px;line-height:1.38}

/* Long values stay inside compact fact cards. */
.age-facts>div,.format-facts>div{min-width:0}
.age-facts dd,.format-facts dd{max-width:100%;white-space:normal;overflow-wrap:break-word}
.age-facts>div:last-child dd{font-size:14px;letter-spacing:-.025em}
.format-facts>div:last-child dd{font-size:15px;letter-spacing:-.02em}

@media (max-width:1040px){
  .full-route ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 0}
  .full-route ol::before{display:none}
}
@media (max-width:720px){
  .full-route ol{display:grid;grid-template-columns:1fr;gap:0;padding:12px 16px 18px}
  .full-route ol::before{
    display:block;
    top:24px;
    right:auto;
    bottom:24px;
    left:39px;
    width:3px;
    height:auto;
    background:linear-gradient(180deg,#0f9e69 0%,#1768e3 18%,#1768e3 82%,#e92d3d 100%);
  }
  .full-route li{
    grid-template-columns:50px 1fr;
    grid-template-rows:auto auto;
    justify-items:start;
    column-gap:15px;
    row-gap:3px;
    padding:10px 0;
  }
  .full-route-icon{grid-row:1/3;grid-column:1;width:48px;height:48px}
  .full-route-step{grid-row:1;grid-column:2;margin-top:5px}
  .full-route li strong{grid-row:2;grid-column:2;max-width:none;font-size:13px}
}

/* === ВРЕМЕННО: публикация результатов ещё не открыта ================== */
/* Блок «Результаты» и все ссылки, ведущие на него, скрыты до публикации  */
/* итогов отборочного этапа. Удалить этот блок, когда результаты выйдут. */
#results,
a[href="#results"]{
  display:none !important;
}
/* Убираем разделитель «•», оставшийся от скрытой ссылки «Результаты»
   в блоке быстрых ссылок hero (первая видимая ссылка «Проверь себя»). */
.hero-reference-meta nav a[href="#results"] + a::before{
  content:none;
}

/* === HERO AGE V2: карточки «Вопросы и время» ========================== */
.hero-reference-age{height:auto}
.hero-age-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.hero-age-card{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  min-height:74px;padding:10px 12px;border:1px solid #d9e4ef;border-radius:12px;
  background:#fff;color:#173c73;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);
}
.hero-age-card-title{display:flex;align-items:center;gap:6px;font-weight:800;font-size:14px;line-height:1.2}
.hero-age-card-title .icon{width:17px;height:17px;color:var(--blue);flex:0 0 auto}
.hero-age-card-count{color:#58708f;font-size:13px;font-weight:700}
.hero-age-time{display:flex;align-items:center;gap:9px;margin-top:13px;padding-top:12px;border-top:1px solid #e4ebf3;color:#7186a3;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.hero-age-time .hero-fact-icon{width:30px;height:30px}
.hero-age-time strong{margin-left:auto;font-size:21px;line-height:1;color:#0b2a5b}
@media (max-width:720px){
  .hero-age-cards{grid-template-columns:1fr;gap:8px}
  .hero-age-card{min-height:58px;flex-direction:row;justify-content:flex-start;gap:10px;padding:10px 14px}
  .hero-age-card-count{margin-left:auto}
}
