@font-face { font-family: Heebo; src: url('../assets/heebo-hebrew-400-normal-CVTJgQVK.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: Heebo; src: url('../assets/heebo-hebrew-800-normal-CDdwy3LD.woff2') format('woff2'); font-weight: 700 900; font-display: swap; }
:root { --bg:#070e1c; --surface:#101f34; --line:#2c4662; --ink:#f4f8ff; --muted:#b6c6d9; --blue:#94d5ff; --red:#ed646b; }
* { box-sizing:border-box; }
html { scroll-padding-top:28px; }
body { margin:0; background:var(--bg); color:var(--ink); font:18px/1.75 Heebo,Arial,sans-serif; overflow-x:clip; text-align:center; }
a { color:inherit; text-decoration:none; }
button, input { font:inherit; }
a:focus-visible, summary:focus-visible, input:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
::selection { background:var(--blue); color:var(--bg); }
h1,h2,h3,p,figure { margin:0; }
h1,h2,h3 { font-weight:800; line-height:1.25; text-wrap:balance; }
p { color:var(--muted); text-wrap:balance; }
dd { text-wrap:balance; }
strong { color:var(--ink); }
.reading { width:min(680px,calc(100% - 44px)); margin-inline:auto; }
.wide { width:min(1080px,calc(100% - 64px)); margin-inline:auto; }
.center { text-align:center; }
.title { font-size:clamp(32px,3.5vw,46px); margin-bottom:26px; text-align:center; }
.title > span { color:var(--blue); }
.title .title-prelude { display:block; font-size:.52em; font-weight:400; color:var(--muted); line-height:1.6; margin-bottom:12px; }
.chapter { position:relative; padding-block:76px; overflow:hidden; }
.chapter + .chapter { border-top:1px solid #21374d88; }
.chapter-boundary { display:none; }
.reading > p + p { margin-top:18px; }
.lead { text-wrap:balance; color:var(--ink); font-size:22px; line-height:1.6; }
.statement { text-wrap:balance; color:var(--blue); font-size:26px; line-height:1.5; margin-block:28px 14px; }
.superline { text-wrap:balance; color:var(--blue); font-size:22px; line-height:1.6; }
.takeaway { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); color:var(--ink); font-weight:800; font-size:20px; }
.ui-icon { display:inline-block; width:32px; height:32px; flex:0 0 auto; vertical-align:middle; color:var(--blue); }
.icon-accent { stroke:var(--red); }
.skip { position:fixed; inset-block-start:-100px; inset-inline-start:20px; z-index:100; background:white; color:var(--bg); padding:10px; }
.skip:focus { inset-block-start:10px; }
.progress { position:fixed; inset-block-start:0; inset-inline-start:0; height:2px; width:100%; background:var(--blue); transform:scaleX(0); transform-origin:right; z-index:50; }
.nav { width:100%; display:flex; justify-content:center; align-items:center; min-height:72px; background:#0a1526; }
.nav .wordmark { font-size:32px; line-height:1.2; }
.wordmark { font-size:23px; font-weight:800; letter-spacing:-.04em; }
.wordmark span { color:var(--blue); }
.nav > a:not(.wordmark),footer > a:last-child { display:inline-flex; align-items:center; gap:10px; font-size:14px; }
.nav .ui-icon,footer .ui-icon { width:18px; height:18px; }
.opening { padding-block:4px 52px; background:radial-gradient(ellipse at 50% 20%,#163c5866,transparent 70%),linear-gradient(#5b92b80c 1px,transparent 1px),linear-gradient(90deg,#5b92b80c 1px,transparent 1px),#0a1526; background-size:auto,76px 76px,76px 76px,auto; }
.opening .reading { width:min(896px,calc(100% - 32px)); }
.opening-label { display:table; max-width:100%; margin-inline:auto; padding:12px 24px; border-radius:9px; background:#162d42; color:#d5e4f0; font-size:16px; line-height:1.5; }
h1 { font-size:40px; line-height:1.2; margin-block:20px 16px; }
.hero-line { display:block; text-wrap:balance; }
.hero-key { white-space:nowrap; }
h1 .hero-accent { color:var(--blue); }
.opening .opening-note { margin:0; font-size:17px; font-style:italic; color:var(--ink); }
.button.cta-custom { display:inline-flex; align-items:center; justify-content:center; min-height:60px; padding:16px 32px; margin-top:24px; border:1px solid #c5eaff; border-radius:12px; color:#061b2d; background:linear-gradient(120deg,#aaddfc,#78bde8); box-shadow:0 3px 0 #294d69; font:800 17px/1.5 Heebo,Arial,sans-serif; transition:background .2s,transform .2s; }
.button.cta-custom:hover { background:#b9e6ff; transform:translateY(-2px); }
.button:disabled { cursor:not-allowed; }
.button:disabled:hover { transform:none; }
.vsl-shell { width:min(896px,calc(100% - 32px)); max-width:896px; margin-top:20px; border:1px solid #4c789b; border-radius:48px; overflow:hidden; background:#0d1c30; box-shadow:0 20px 70px #0003; }
.vsl-ribbon { padding:14px 24px; text-align:center; font-size:19px; font-weight:800; background:#23567b; color:#f4f8ff; }
.vsl-poster { aspect-ratio:16/9; background:radial-gradient(ellipse at 20% 40%,#315777,transparent 65%),#102139; position:relative; overflow:hidden; display:flex; align-items:center; }
.vsl-copy { width:55%; padding:32px; position:relative; z-index:2; }
.vsl-copy > span { display:block; font-size:12px; color:#bdd7eb; }
.vsl-copy strong { display:block; font-size:clamp(26px,3.1vw,38px); line-height:1.3; margin-top:18px; text-wrap:balance; }
.vsl-poster img { position:absolute; inset-inline-end:0; bottom:-12%; width:49%; height:112%; object-fit:contain; filter:saturate(.7); }
.vsl-status { position:absolute; inset-block-end:14px; inset-inline-start:32px; font-size:12px; color:#bdd7eb; }
.opening-action { width:min(896px,calc(100% - 32px)); text-align:center; }
.opening-action .button.cta-custom { min-width:300px; min-height:50px; padding:11px 32px; border-radius:50px; margin-top:22px; }
.threat .lead { margin-bottom:10px; }
.threat .title { color:var(--blue); }
.sentence-stack > span { display:block; text-wrap:balance; }
.sentence-stack > .sentence-opening { color:var(--ink); margin-bottom:12px; }
.impact-list { list-style:none; padding:0; margin:28px 0; text-align:center; display:grid; grid-template-columns:1fr 1fr; gap:0 32px; }
.impact-list li { display:flex; justify-content:center; align-items:center; gap:12px; padding:20px 0; border-bottom:1px solid var(--line); font-size:20px; font-weight:800; }
.impact-list li > span { text-wrap:balance; }
.impact-list .ui-icon { width:34px; height:34px; }
.punch { color:var(--blue); font-size:26px; font-weight:800; }
.threat .bridge { margin-top:20px; font-size:16px; }
.closing-title { font-size:36px; margin-top:12px; }
.tried { background:#0b1626; }
.try-lines { margin-block:24px; text-align:center; }
.try-lines p { padding-block:4px; }
.disconnected { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; max-width:500px; margin:28px auto; position:relative; text-align:center; }
.disconnected > div:not(.connected-node) { border:1px solid #3e6483; background:#12263c; padding:18px 12px; border-radius:10px; }
.disconnected .ui-icon { display:block; margin:0 auto 8px; width:32px; height:32px; }
.disconnected b { font-size:14px; }
.disconnected i { display:block; height:2px; background:#547895; margin-top:10px; }
.disconnected i:last-child { width:60%; }
.connection-lines { grid-column:1/-1; height:64px; width:100%; }
.connection-lines path { fill:none; stroke:#6db0df; stroke-width:1.5; }
.missing-link { position:absolute; inset-block-start:135px; inset-inline-start:50%; transform:translateX(50%); color:#ff9c9f; background:#0b1626; padding-inline:10px; font-size:12px; white-space:nowrap; }
.connected-node { grid-column:1/-1; justify-self:center; padding:7px 28px; border:1px dashed #bd6672; border-radius:6px; font-size:14px; color:var(--muted); }
.thought { text-align:center; }
.thought p + p { margin-top:14px; }
.thought strong { display:block; text-wrap:balance; margin-top:8px; }
.key-insight { margin-block:24px 18px; font-size:23px; line-height:1.6; text-align:center; color:var(--ink); }
.powers .reading > .statement { font-size:24px; }
.possibilities { display:grid; grid-template-columns:1fr 1fr; gap:0 44px; margin-block:30px; }
.possibility { min-width:0; padding-block:24px; border-top:1px solid var(--line); }
.capability-heading { display:flex; flex-direction:column; align-items:center; gap:14px; }
.capability-heading .ui-icon { width:34px; height:34px; margin-top:2px; }
.capability-heading h3 { font-size:24px; line-height:1.35; }
.capability-heading p { margin-top:7px; font-size:16px; }
.capability-detail { margin-top:14px; margin-inline:0; }
summary { cursor:pointer; list-style:none; }
summary:focus-visible { outline-offset:-3px; border-radius:4px; }
summary::-webkit-details-marker { display:none; }
.capability-detail > summary,.expertise-more > summary { display:grid; grid-template-columns:20px minmax(0,1fr) 20px; align-items:center; gap:12px; padding-block:10px; color:var(--blue); font-size:14px; }
.capability-detail > summary > span:first-child,.expertise-more > summary > span:first-child,.faq summary > span:first-child { grid-column:2; }
.capability-detail > summary > .faq-toggle,.expertise-more > summary > .faq-toggle,.faq summary > .faq-toggle { grid-column:3; }
.faq-toggle { display:inline-flex; flex:0 0 auto; transition:transform .2s; }
.faq-toggle .ui-icon { width:20px; height:20px; }
details[open] > summary .faq-toggle { transform:rotate(45deg); }
.detail-body { padding-block:12px 8px; }
.detail-body p + p { margin-top:12px; }
.detail-lead { font-weight:800; color:var(--ink); }
.capability-detail .detail-body { margin-inline:0; padding:20px; border:1px solid var(--line); border-radius:10px; background:#101f34; font-size:16px; }
.illustration-label { margin-top:18px; font-size:11px; color:#a4bdd2; }
/* Product illustrations stay unframed; labels remain sharp native text. */
.outcome-art { width:100%; margin:8px auto 0; mix-blend-mode:lighten; }
.outcome-copy { display:contents; }
.outcome-art img { display:block; width:100%; height:auto; object-fit:contain; mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(transparent,#000 9%,#000 91%,transparent); mask-composite:intersect; }
.outcome-art figcaption { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px 16px; padding:8px 6px 0; font-size:12px; color:var(--blue); }
.outcome-art figcaption span + span::before { content:'·'; display:inline-block; margin-inline-end:16px; color:#5d7993; }
.about-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; align-items:center; margin-top:32px; }
.portrait { position:relative; height:520px; border:1px solid #355774; border-radius:16px; background:radial-gradient(ellipse at 50% 40%,#315b7d,#0e1d30 75%); overflow:hidden; }
.portrait img { width:100%; height:100%; object-fit:contain; object-position:center bottom; display:block; }
.portrait figcaption { position:absolute; inset-inline:0; bottom:0; padding:30px 20px 18px; font-size:18px; font-weight:800; background:linear-gradient(transparent,#091625 50%); }
.portrait figcaption span { display:block; color:var(--blue); font-size:10px; letter-spacing:.07em; margin-top:4px; }
.resume-label { margin-bottom:22px; font-size:18px; font-weight:800; color:var(--ink); }
.resume-item { padding-block:18px; border-bottom:1px solid var(--line); }
.resume-label + .resume-item { padding-top:0; }
.resume-item h3 { font-size:20px; color:var(--blue); margin-bottom:8px; }
.resume-item p { font-size:17px; line-height:1.75; }
.expertise { margin-top:36px; }
.expertise .statement { font-size:25px; margin:0 0 16px; }
.expertise-more { border-top:1px solid var(--line); margin-top:20px; }
.expertise-more > summary { font-size:16px; padding-block:16px; }
.expertise-more .detail-body { font-size:17px; }
.examples-slot { max-width:850px; margin-top:24px; padding:28px; border:1px dashed #416583; border-radius:12px; text-align:center; }
.examples-slot small { display:block; color:#8faac1; font-size:12px; margin-top:8px; }
.program-bridge { margin-bottom:28px; }
.program-panel { max-width:960px; display:grid; grid-template-columns:.85fr 1.15fr; padding:40px; gap:40px; border:1px solid #5984a8; border-radius:20px; background:radial-gradient(ellipse at 100% 0,#2b5b7e77,transparent 70%),#102139; }
.program-heading { padding-inline-end:32px; border-inline-end:1px solid #41607a; }
.program-eyebrow { color:var(--muted); font-size:15px; }
.program-name { font-size:clamp(40px,5vw,62px); letter-spacing:-.06em; margin-block:12px 20px; white-space:nowrap; }
.program-name span { color:var(--blue); }
.program-promise { color:var(--ink); font-size:23px; line-height:1.5; font-weight:800; margin-top:30px; }
.program-intro { color:var(--ink); font-size:18px; line-height:1.75; }
.program-details { margin:22px 0 0; }
.program-details > div { padding-block:16px; border-top:1px solid #35516b; }
.program-details > div:last-child { padding-bottom:0; }
.program-details dt { font-size:18px; font-weight:800; color:var(--blue); }
.program-details dd { margin:7px 0 0; font-size:16px; color:var(--muted); line-height:1.7; }
.fit-panel { padding:36px; border:1px solid #355774; border-radius:18px; background:#0b192b; }
.fit-panel > .reading { width:100%; max-width:900px; }
.fit-panel .reading > p:first-of-type { max-width:680px; margin-inline:auto; }
.fit-columns { display:grid; grid-template-columns:1fr 1fr; text-align:center; gap:36px; margin-top:28px; }
.list-heading { font-size:20px; margin-bottom:12px; }
.fit-list { padding:0; margin:0; list-style:none; }
.fit-list li { position:relative; padding:14px 0; padding-inline:34px; font-size:16px; border-bottom:1px solid var(--line); }
.fit-list .ui-icon { position:absolute; inset-inline-start:0; top:17px; width:21px; height:21px; }
.negative .ui-icon { color:var(--red); }
.positive .icon-accent { stroke:var(--blue); }
.fit-panel .lead { margin-top:28px; font-size:20px; }
.method .superline { font-size:21px; }
.disclosure-hint { color:#95aec5; font-size:13px; margin-block:24px 10px; }
.method-list { list-style:none; padding:0; margin-block:0; border:1px solid #3a5d7b; border-radius:12px; background:#0f2034; overflow:hidden; }
.method-list li + li { border-top:1px solid #35536d; }
.method-step > summary { display:grid; grid-template-columns:32px 1fr 32px; align-items:center; gap:16px; padding:22px 24px; }
.step-number { display:grid; place-items:center; width:30px; height:30px; color:var(--blue); border:1px solid #547b9b; border-radius:6px; font-size:14px; font-weight:800; }
.step-title { font-size:21px; line-height:1.4; font-weight:800; }
.method-step[open] > summary { background:#18354f; }
.method-step .detail-body { padding:6px 24px 24px; font-size:17px; }
.method-step .detail-lead { font-size:18px; margin-bottom:10px; }
.bonuses { background:#0c1929; }
.bonuses .reading > p { text-align:center; }
.bonus-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-block:30px; }
.bonus { min-width:0; padding:24px 0; border:0; background:transparent; }
.bonus-art { width:100%; margin:0 auto 18px; mix-blend-mode:lighten; }
.bonus-art img { display:block; width:100%; height:auto; object-fit:contain; mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(transparent,#000 9%,#000 91%,transparent); mask-composite:intersect; }
.bonus h3 { font-size:21px; margin-bottom:10px; }
.bonus p { font-size:16px; }
.bonuses .statement { font-size:24px; }
.booking { background:radial-gradient(ellipse at 50% 100%,#21496b55,transparent 70%); }
.lead-form { margin-top:28px; padding:28px; border:1px solid #537897; border-radius:14px; background:#102338; text-align:center; }
.form-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form-field { min-width:0; }
.field-email { grid-column:1/-1; }
.form-field label { display:block; font-size:14px; color:#d5e8f7; margin-bottom:7px; }
.form-field input { display:block; text-align:center; width:100%; min-height:52px; padding:12px 14px; border:1px solid #50728d; border-radius:7px; color:var(--ink); background:#091727; font-size:17px; }
.form-field input::placeholder { color:#8ba5bb; }
.lead-form .button { width:100%; }
.form-status { font-size:12px; color:#9fb4c8; margin-top:16px; text-align:center; }
.faq { padding-top:56px; }
.faq details { border-bottom:1px solid #35536d; }
.faq summary { display:grid; grid-template-columns:20px minmax(0,1fr) 20px; align-items:center; gap:12px; padding:20px 0; font-size:18px; font-weight:800; }
.faq details > p { padding:0 0 20px; font-size:17px; }
footer { display:flex; justify-content:space-between; align-items:center; gap:18px; border-top:1px solid var(--line); padding-block:26px; color:#9db0c4; font-size:12px; }
footer > a:last-child { font-size:12px; }
.brush { padding-bottom:6px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 15' preserveAspectRatio='none'%3E%3Cpath fill='%23ed646b' d='M2 7 30 4 115 5 200 2 310 4 425 1 499 4 491 9 395 10 300 9 200 12 100 10 15 13 4 11Z'/%3E%3Cpath fill='%23ed646b' opacity='.45' d='m9 12 125-2 195 2 152-2-17 4-230 1-225-1Z'/%3E%3C/svg%3E"); background-position:left bottom; background-size:calc(var(--stroke,1)*100%) 6px; background-repeat:no-repeat; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.ink-bracket { position:relative; padding-inline-start:18px; border-inline-start:3px solid var(--red); }
@media (prefers-reduced-motion:no-preference) {
  details[open] > .detail-body { animation:detail-in .22s ease-out; }
  @keyframes detail-in { from { opacity:.6; transform:translateY(6px); } to { opacity:1; transform:none; } }
}
@media(max-width:700px) {
  body { font-size:17px; line-height:1.75; }
  .wide { width:calc(100% - 40px); }
  .chapter { padding-block:54px; }
  .nav { min-height:44px; }
  .nav .wordmark { font-size:27px; }
  .wordmark { font-size:21px; }

  .opening { padding-top:0; padding-bottom:34px; background-size:auto,56px 56px,56px 56px,auto; }
  .vsl-shell { border-radius:34px; margin-top:16px; }
  .vsl-ribbon { padding:10px 16px; font-size:15px; }
  .vsl-copy { width:58%; padding:18px; }
  .vsl-copy > span { font-size:8px; }
  .vsl-copy strong { font-size:clamp(16px,4.8vw,21px); margin-top:12px; }
  .vsl-status { inset-inline-start:18px; inset-block-end:9px; font-size:10px; }
  .opening-action .button.cta-custom { width:100%; min-width:0; min-height:48px; padding:11px 20px; margin-top:14px; }
  .program-panel { grid-template-columns:1fr; padding:26px 22px; gap:24px; border-radius:16px; }
  .program-heading { padding-inline-end:0; border-inline-end:0; }
  .program-name { font-size:48px; }
  .program-promise { font-size:22px; margin-top:24px; }
  .program-intro { font-size:17px; }
  .program-details { margin-top:20px; }
  .opening-label { font-size:13px; line-height:1.45; padding:9px 15px; }
  h1 { font-size:clamp(26px,8vw,32px); line-height:1.15; margin-block:16px 14px; }
  .opening .opening-note { font-size:14px; }
  .button.cta-custom { font-size:16px; gap:24px; min-height:58px; margin-top:20px; }
  .title { font-size:clamp(29px,8.46vw,33px); margin-bottom:22px; }
  .lead { font-size:20px; }
  .statement { font-size:23px; }
  .superline { font-size:20px; }
  .sentence-stack > .sentence-opening { font-size:17px; }
  .impact-list { grid-template-columns:1fr; margin-block:22px; }
  .impact-list li { padding-block:17px; font-size:19px; gap:16px; }
  .impact-list .ui-icon { width:30px; height:30px; }
  .punch { font-size:24px; }
  .closing-title { font-size:clamp(24px,6.8vw,29px); }
  .examples .title { font-size:clamp(25px,7.7vw,32px); }
  .disconnected { gap:9px; margin-block:24px; }
  .disconnected > div:not(.connected-node) { padding:14px 10px; }
  .missing-link { inset-block-start:125px; }
  .key-insight { font-size:21px; }
  .possibilities { grid-template-columns:1fr; gap:0; margin-block:24px; }
  .possibility { padding-block:20px; }
  .capability-heading { gap:12px; }
  .capability-heading h3 { font-size:22px; }
  .capability-heading .ui-icon { width:30px; height:30px; }
  .capability-heading p { font-size:16px; margin-top:5px; }
  .capability-detail { margin-top:8px; margin-inline:0; }
  .capability-detail .detail-body { margin-inline:0; padding:18px; }
  .powers .reading > .statement { font-size:22px; }
  .about-layout { grid-template-columns:1fr; gap:24px; margin-top:24px; }
  .portrait { height:300px; }
  .portrait img { width:80%; margin-inline:auto; }
  .portrait figcaption { font-size:16px; padding:24px 18px 14px; }
  .resume-item { padding-block:16px; }
  .resume-item h3 { font-size:19px; }
  .resume-item p { font-size:16px; }
  .expertise { margin-top:28px; }
  .expertise .statement { font-size:22px; }
  .examples-slot { padding:20px; }
  .fit-panel { padding:24px 20px; }
  .fit-columns { grid-template-columns:1fr; gap:24px; margin-top:24px; }
  .fit-panel .title { font-size:30px; }
  .fit-panel .title-prelude { font-size:.6em; }
  .list-heading { font-size:19px; margin-bottom:5px; }
  .fit-list li { font-size:16px; padding-block:12px; }
  .fit-list .ui-icon { top:16px; }
  .fit-panel .lead { font-size:18px; margin-top:24px; }
  .method .superline { font-size:19px; }
  .method-step > summary { gap:12px; padding:19px 16px; grid-template-columns:28px 1fr 28px; }
  .step-number { width:27px; height:27px; font-size:13px; }
  .step-title { font-size:19px; }
  .method-step .detail-body { padding:0 18px 20px; font-size:16px; }
  .method-step .detail-lead { font-size:17px; padding-top:16px; }
  .bonus-grid { grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
  .bonus { display:flex; flex-direction:column; align-items:center; gap:10px; padding:22px 0; border:0; border-radius:0; background:transparent; }
  .bonus + .bonus { border-top:1px solid var(--line); }
  .bonus-art { height:auto; margin:0 0 4px; }
  .bonus h3 { font-size:20px; margin:0; }
  .bonus p { font-size:16px; }
  .bonuses .statement { font-size:22px; }
  .lead-form { padding:22px 18px; }
  .form-fields { grid-template-columns:1fr; gap:17px; }
  .faq summary { padding-block:18px; font-size:17px; }
  .faq details > p { font-size:16px; }
  footer { flex-wrap:wrap; gap:12px; font-size:11px; }
}

.program-tagline { color:var(--blue); font-size:19px; line-height:1.55; text-wrap:balance; }

.scene-counter { display:none; }
.scene-heading { width:100%; max-width:780px; }
.chapter.has-scroll-scene { overflow:visible; }
.is-scroll-scene .scene-pin { height:min(940px,calc(100svh - 24px)); display:grid; grid-template-rows:auto minmax(0,1fr); gap:20px; background:var(--bg); }
.is-scroll-scene .scene-heading { width:100%; max-width:880px; margin:0 auto; }
.is-scroll-scene .scene-heading .title { margin-bottom:10px; font-size:clamp(38px,4.8vw,60px); line-height:1.16; }
.is-scroll-scene .scene-heading .title-prelude { font-size:18px; margin-bottom:10px; }
.is-scroll-scene .scene-heading .superline { font-size:23px; line-height:1.5; }
.is-scroll-scene .scene-counter { display:flex; align-items:center; gap:16px; width:100%; max-width:680px; margin:0 auto 18px; color:var(--blue); font-size:12px; font-variant-numeric:tabular-nums; }
.scene-meter { display:block; flex:1; height:2px; background:#263b52; overflow:hidden; }
.scene-meter > i { display:block; width:100%; height:100%; background:var(--blue); transform-origin:right; }
.capability-story.is-scroll-scene .story-stage { height:100%; min-height:0; padding:0; border:0; background:none; overflow:clip; }
.capability-story.is-scroll-scene .possibilities { position:relative; display:block; height:calc(100% - 32px); margin:0; }
.capability-story.is-scroll-scene .possibility { position:absolute; inset:0; border:0; padding:18px 0 0; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; pointer-events:none; }
.capability-story.is-scroll-scene .possibility.is-active { pointer-events:auto; }
.capability-story.is-scroll-scene .capability-heading { gap:0; flex-shrink:0; }
.capability-story.is-scroll-scene .capability-heading > .ui-icon { display:none; }
.capability-story.is-scroll-scene .capability-heading h3 { font-size:clamp(27px,3vw,38px); }
.capability-story.is-scroll-scene .capability-heading p { font-size:18px; max-width:600px; }
.capability-story.is-scroll-scene .illustration-label { order:3; margin-top:8px; font-size:10px; }
.capability-story.is-scroll-scene .outcome-art { order:2; flex:0 1 auto; min-height:0; width:100%; max-width:740px; display:grid; grid-template-rows:minmax(0,1fr) auto; height:clamp(230px,39svh,380px); }
.capability-story.is-scroll-scene .outcome-art img { min-height:0; width:100%; height:100%; object-fit:contain; }
.capability-story.is-scroll-scene .outcome-art figcaption { flex-shrink:0; }
.capability-story.is-scroll-scene .capability-detail { order:4; flex-shrink:0; width:100%; max-width:620px; margin-top:4px; border-bottom:1px solid #33516c; }
.capability-story.is-scroll-scene .capability-detail > summary { padding-block:12px; }
.capability-story.is-scroll-scene .capability-detail .detail-body { padding:16px; font-size:16px; line-height:1.65; }
.capability-story.is-scroll-scene .possibility:has(details[open]) { justify-content:flex-start; padding-top:12px; }
.capability-story.is-scroll-scene .possibility:has(details[open]) > .outcome-art,
.capability-story.is-scroll-scene .possibility:has(details[open]) .illustration-label,
.capability-story.is-scroll-scene .possibility:has(details[open]) .capability-heading p { display:none; }
.capability-story.is-scroll-scene .possibility:has(details[open]) .capability-detail { margin-top:18px; }
.bonus-story .scene-heading .title { font-size:clamp(38px,5vw,68px); line-height:1.08; letter-spacing:-.035em; }
.bonus-story .scene-heading .title > span { display:block; margin-top:8px; }
.bonus-story.is-scroll-scene .scene-pin { height:auto; grid-template-rows:auto auto; gap:16px; background:#0c1929; }
.bonus-story.is-scroll-scene .bonus-stage { height:auto; min-height:0; padding:0; display:flex; flex-direction:column; overflow:clip; }
.bonus-story.is-scroll-scene .scene-counter { margin-bottom:18px; }
.bonus-story.is-scroll-scene .bonus-grid { position:relative; width:100%; height:auto; min-height:0; margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr); border:0; }
/* Shared grid cell sizes the scene to its tallest bonus without a viewport spacer. */
.bonus-story.is-scroll-scene .bonus { position:relative; grid-area:1/1; min-height:0; padding:8px 0; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:14px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.bonus-story.is-scroll-scene .bonus h3 { order:1; font-size:34px; margin:0; flex-shrink:0; }
.bonus-story.is-scroll-scene .bonus-art { order:2; width:100%; max-width:660px; height:auto; aspect-ratio:3/2; max-height:min(43svh,440px); min-height:0; flex-shrink:1; margin:0; }
.bonus-story.is-scroll-scene .bonus-art img { width:100%; height:100%; }
.bonus-story.is-scroll-scene .bonus p { order:3; max-width:560px; font-size:19px; flex-shrink:0; }
@media(min-width:900px) {
 .invitation { overflow:visible; }
 .program-heading { position:sticky; top:18vh; align-self:start; }
 .capability-story.is-scroll-scene .possibility { display:grid; grid-template-columns:1fr 1.45fr; grid-template-rows:1fr; column-gap:28px; align-items:center; }
 .capability-story.is-scroll-scene .outcome-copy { display:flex; flex-direction:column; align-items:center; grid-column:1; grid-row:1; }
 .capability-story.is-scroll-scene .outcome-art { grid-column:2; grid-row:1; align-self:stretch; height:100%; }
 .capability-story.is-scroll-scene .illustration-label { margin-top:10px; }
 .capability-story.is-scroll-scene .capability-detail { margin-top:20px; }
 .capability-story.is-scroll-scene .possibility:has(details[open]) { display:flex; justify-content:center; }
 .capability-story.is-scroll-scene .possibility:has(details[open]) .capability-heading { align-self:center; }
}
@media(max-width:700px) {
 .program-tagline { font-size:19px; }
 .is-scroll-scene .scene-pin { gap:18px; }
 .is-scroll-scene .scene-heading .title { font-size:clamp(30px,8.6vw,37px); }
 .is-scroll-scene .scene-heading .title-prelude { font-size:16px; margin-bottom:8px; }
 .is-scroll-scene .scene-heading .superline { font-size:20px; }
 .capability-story.is-scroll-scene .capability-heading h3 { font-size:clamp(24px,6.6vw,28px); }
 .capability-story.is-scroll-scene .capability-heading p { font-size:16px; }
 .capability-story.is-scroll-scene .capability-detail .detail-body { font-size:15px; }
 .outcome-art figcaption { gap:6px 10px; font-size:11px; }
 .outcome-art figcaption span + span::before { margin-inline-end:10px; }
 .bonus-story .scene-heading .title { font-size:clamp(34px,9.5vw,42px); }
 .bonus-story.is-scroll-scene .bonus { padding:8px 0; gap:12px; }
 .bonus-story.is-scroll-scene .bonus h3 { font-size:27px; }
 .bonus-story.is-scroll-scene .bonus p { font-size:17px; }
}
@media(min-height:640px) and (max-height:739px) {
 .is-scroll-scene .scene-pin { gap:12px; }
 .is-scroll-scene .scene-heading .title { margin-bottom:8px; }
 .capability-story.is-scroll-scene .outcome-art figcaption { display:none; }
 .capability-story.is-scroll-scene .outcome-art { height:clamp(160px,28svh,210px); }
 .bonus-story.is-scroll-scene .bonus { padding:0; gap:8px; }
 .bonus-story.is-scroll-scene .bonus p { font-size:15px; }
 .bonus-story.is-scroll-scene .bonus-art { height:clamp(160px,28svh,210px); }
}
.examples-video video { display:block; width:100%; aspect-ratio:16/9; background:#0d1c30; }
.vsl-poster { cursor:pointer; }
.vsl-play { position:absolute; top:50%; inset-inline-end:calc(24.5% - 42px); translate:0 -50%; width:84px; height:84px; border:0; border-radius:50%; background:#f4f8ffe6; color:#0d1c30; display:grid; place-items:center; z-index:3; cursor:pointer; box-shadow:0 10px 40px #0007; transition:transform .2s; }
.vsl-play svg { width:34px; height:34px; margin-inline-start:4px; }
.vsl-poster:hover .vsl-play, .vsl-play:focus-visible { transform:scale(1.08); }
.vsl-video { display:block; width:100%; aspect-ratio:16/9; background:#000; }
@media (max-width:640px) { .vsl-play { width:56px; height:56px; inset-inline-end:calc(24.5% - 28px); } .vsl-play svg { width:24px; height:24px; } }
.vsl-frame img { position:absolute; inset:0; bottom:auto; width:100%; height:100%; object-fit:cover; filter:none; }
.vsl-frame .vsl-play { inset-inline-end:auto; inset-inline-start:50%; top:66%; translate:50% -50%; }
.vsl-frame .vsl-status { z-index:2; background:#000a; color:#fff; padding:2px 8px; border-radius:6px; inset-inline-start:auto; inset-inline-end:14px; }
.vsl-frame::after { content:""; position:absolute; inset:0; background:#0002; }
.vsl-frame::after { background:linear-gradient(to left,#070e1ccc 0%,#070e1c66 30%,transparent 55%); }
.vsl-hook { position:absolute; z-index:2; inset-inline-start:5%; top:50%; translate:0 -50%; margin:0; width:34%; text-align:start; color:#fff; line-height:1.15; text-shadow:0 2px 12px #0009; }
.vsl-hook span { display:block; font-size:clamp(14px,2.2vw,24px); font-weight:700; }
.vsl-hook strong { display:block; font-size:clamp(26px,4.8vw,52px); font-weight:800; color:#f0c674; margin-block:4px; }
.vsl-frame .vsl-play { inset-inline-start:50%; top:72%; }
.vsl-frame::after { background:linear-gradient(to right,#070e1cdd 0%,#070e1c88 30%,transparent 50%); }
.vsl-frame .vsl-hook { inset-inline-start:auto; inset-inline-end:5%; width:38%; text-align:right; }
.vsl-frame .vsl-play { inset-inline-start:50%; top:50%; }
.vsl-frame .vsl-status { inset-inline-end:auto; inset-inline-start:14px; }
.vsl-frame .vsl-hook { top:42%; }
.vsl-frame .vsl-play { inset-inline-start:auto; inset-inline-end:5%; top:auto; bottom:9%; translate:none; width:64px; height:64px; }
.vsl-frame .vsl-play svg { width:26px; height:26px; }
.vsl-frame:hover .vsl-play, .vsl-frame .vsl-play:focus-visible { transform:scale(1.08); }
@media (max-width:640px) { .vsl-frame .vsl-hook { top:38%; } .vsl-frame .vsl-play { width:44px; height:44px; bottom:7%; } .vsl-frame .vsl-play svg { width:18px; height:18px; } }
