/* R23: one spatial composition layer. Historical R21/R22 are not loaded. */
:root{--pad:clamp(24px,5vw,96px);--header:82px;--footer:66px;--ink:#f3eff9;--muted:#b6afc4;--violet:#b998f0;--rule:#b6a5d62b}
#stage{z-index:0;clip-path:none;mask-image:none;-webkit-mask-image:none;background:#030206}
#world{opacity:var(--scene-energy,1)}#spatial-marker,#reading-shade{display:none}
#static-scene{width:min(72vw,1100px);height:auto;left:64%;top:40%;opacity:.85}
#page-controls{height:var(--header);padding:16px var(--pad);gap:28px;background:linear-gradient(#030206f7 55%,#03020600)}
.header-brand{display:flex;align-items:center;width:132px;min-height:44px;margin-right:auto;flex-shrink:0}.header-brand img{width:100%;height:auto}
#languages{gap:5px}#languages button{min-width:44px;min-height:44px;font-size:12px}#header-apply{min-height:44px;border-radius:4px;font-size:13px;padding:10px 19px;gap:25px}
#journey-navigation{height:var(--footer);min-height:var(--footer);background:#030206ed;backdrop-filter:blur(16px);gap:28px;padding-top:8px;padding-bottom:8px}
#chapters{gap:clamp(18px,2.8vw,48px)}#chapters a{font-size:12px;min-height:44px}#chapters a span:first-child{font-size:10px}#motion-mode{font-size:11px}
#intro{min-height:100svh;padding:120px var(--pad) calc(var(--footer) + 42px);align-items:flex-end}
.hero-copy{position:relative;width:min(55vw,760px);max-width:100%;transform:none}
.hero-category{font-size:11px;letter-spacing:.12em;font-weight:500;color:#c4b4df;margin:0 0 27px;line-height:1.5}
.hero-category::before{content:'';display:inline-block;width:27px;height:2px;background:#b38aef;vertical-align:middle;margin-right:13px}
.hero-title{font-size:clamp(66px,7.2vw,124px);font-weight:500;line-height:.99;letter-spacing:-.062em;max-width:12.8ch;margin:0 0 28px;text-wrap:balance;transform:none}
.hero-title>span{display:block}.hero-title>span:last-child{color:#e2d6f5}
.hero-foot{display:block;max-width:440px}.hero-body{font-size:17px;line-height:1.6;color:#dbd4e7;max-width:40ch}
.hero-context{margin-top:22px}.hero-audience,.hero-note{font-size:13px;line-height:1.6;max-width:43ch;color:#b5acc3;margin:0}.hero-note{margin-top:5px;color:#9990a9}
.hero-actions{margin-top:23px;display:flex;align-items:center;gap:26px}.hero-actions>.text-link{font-size:14px;gap:34px;margin:0}.mobile-motion{display:none}.intro-cue{display:none}
.beat{padding:145px var(--pad) 100px;min-height:0}.space{scroll-margin-top:0}.space>.beat:last-child{padding-bottom:calc(var(--footer) + 105px)}
.reading,#starting .reading{width:min(53vw,760px);max-width:100%;background:linear-gradient(90deg,#030206f7,#030206eb 72%,#03020600);padding-right:28px}
.space[data-lane=right] .beat{justify-content:flex-end}.space[data-lane=right] .reading{background:linear-gradient(270deg,#030206f7,#030206eb 72%,#03020600);padding:0 0 0 28px}
.reading>h2,.system-heading>h2{font-size:clamp(46px,4.8vw,78px);line-height:1.04;letter-spacing:-.052em;font-weight:500;max-width:15ch;margin:0 0 27px;transform:none}
.reading>.lead,.system-heading>.lead{font-size:18px;line-height:1.6;max-width:47ch;color:#c8bed6}.eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:28px;color:#b7a6d0}.eyebrow::before{width:32px;background:#b38aef}
.note,.scale-note{font-size:13px;line-height:1.6}.map-label{font-size:11px;line-height:1.5}
#starting{min-height:92svh}#leagues{padding:0;margin-top:36px}.programme-selector{display:block;margin-top:32px}
.league-choices{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;border-bottom:1px solid var(--rule)}
.league-choices button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px 0;min-height:136px;text-align:left;border-top:1px solid var(--rule);margin:0!important}
.league-choices button>strong{font-size:32px;font-weight:500;letter-spacing:-.04em}.league-choices .league-goal{font-size:14px;line-height:1.45;max-width:23ch;color:#a99bbd}
.league-choices button[aria-pressed=true]{border-top-color:#c1a0fa}.league-choices button[aria-pressed=true]>strong{color:#d8bcff}
.league-panel{padding-top:24px;min-height:247px}.league-panel>.map-label{font-size:12px;color:#cdb9e9}.league-panel h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9889ad;margin:21px 0 7px}.league-panel h3+p{font-size:16px;line-height:1.6;color:#ded3eb;max-width:44ch}
#selection .reading{width:min(68vw,940px)}#selection .reading>h2{font-size:clamp(48px,5vw,80px);max-width:15ch}
#development .reading{width:min(86vw,1150px);max-width:1150px;background:linear-gradient(90deg,#030206f7,#030206eb 83%,#03020600);padding-right:28px}
#development .reading>h2{max-width:18ch}.learning-episode{margin-top:44px}.core-format{gap:16px 40px;padding-top:30px;padding-bottom:34px}.core-format>.core-format-value{font-size:36px;font-weight:500;letter-spacing:-.035em}
.learning-product{padding-top:32px;padding-bottom:28px;gap:40px}.learning-product h3{font-size:50px;font-weight:500;letter-spacing:-.045em}.learning-product>p{font-size:17px;line-height:1.6}
.profile-workspace{grid-template-columns:404px minmax(0,1fr);gap:56px;align-items:center}.core-profile-figure{max-width:404px}.metric-detail h3{font-size:32px;line-height:1.12;letter-spacing:-.035em}.coach-comment{font-size:17px;line-height:1.6}
.hud-offer{margin-top:42px;padding-top:34px;gap:0 40px}.hud-offer h3{font-size:36px;line-height:1.15;letter-spacing:-.04em}
#terms .reading{width:min(61vw,850px)}.profit-calculator{padding-top:28px}.profit-summary{gap:28px}.profit-summary output{font-size:clamp(72px,7.5vw,115px);line-height:1.15;overflow:visible;min-height:1.15em;padding-right:.06em;font-weight:500;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.profit-example output{font-size:36px;line-height:1.2}
.funding-control{margin-top:28px}.responsibilities{gap:32px}.responsibilities h3{font-size:25px}.retained>strong{font-size:80px;line-height:1.1}
#faq,#application{background:#030206f5}.beat-secondary{padding-top:95px;min-height:0}#faq .reading,#application .reading{width:100%;max-width:1100px;background:none;padding:0}.faq-list{max-width:950px}.faq-list summary{font-size:21px;min-height:75px}.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.process-list li{display:block}.process-list li::before{display:block;margin-bottom:18px}.process-list strong{font-size:24px;font-weight:500;line-height:1.2}
body[data-reduced=true] .hero-title,body[data-reduced=true] .hero-copy,body[data-reduced=true] .reading>h2{transform:none!important}
/* Reading light falls off above/below the plane; no rectangular cut in a passing ray. */
.reading,#starting .reading,#selection .reading,#development .reading,#terms .reading{isolation:isolate;background:none!important}
.reading::before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:-56px -24px -48px;background:linear-gradient(90deg,#030206fc,#030206ee 75%,#03020600);mask-image:linear-gradient(transparent,#000 56px,#000 calc(100% - 48px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 56px,#000 calc(100% - 48px),transparent)}
.space[data-lane=right] .reading::before{background:linear-gradient(270deg,#030206fc,#030206ee 75%,#03020600)}
#selection .reading::before{right:calc(-1 * var(--pad));top:-100px;mask-image:linear-gradient(transparent,#000 100px,#000 calc(100% - 48px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 100px,#000 calc(100% - 48px),transparent)}
#faq .reading::before,#application .reading::before{display:none}
@media(min-width:900px) and (max-height:780px){#intro{padding-top:110px;padding-bottom:calc(var(--footer) + 26px)}.hero-title{font-size:clamp(64px,6.4vw,100px);margin-bottom:20px}.hero-category{margin-bottom:19px}.hero-body{font-size:16px}.hero-context{margin-top:14px}.hero-actions{margin-top:16px}.beat{padding-top:120px}}
@media(max-width:1100px) and (min-width:900px){.profile-workspace{grid-template-columns:minmax(0,404px) minmax(0,1fr);gap:30px}.hero-copy{width:56vw}.hero-title{font-size:74px}#selection .reading{width:72vw}.league-choices button>strong{font-size:29px}}
@media(max-width:899px),(max-aspect-ratio:11/10){
 :root{--pad:24px;--header:76px;--footer:72px}
 #stage{z-index:0;clip-path:none;mask-image:none;-webkit-mask-image:none}
 #static-scene{width:88vw;left:53%;top:25%}
 #page-controls{padding:12px 20px;gap:10px;background:linear-gradient(#030206f9 65%,#03020600)}.header-brand{width:100px}#languages{gap:0}#languages button{font-size:10px;min-width:44px}#header-apply{padding:9px 11px;font-size:11px;gap:12px}
 #journey-navigation{height:calc(var(--footer) + env(safe-area-inset-bottom));padding:8px 14px calc(8px + env(safe-area-inset-bottom));gap:10px}#chapters{gap:8px;justify-content:space-between;flex:1}#chapters a{font-size:11px;gap:5px}#chapters a span:first-child{font-size:9px}#home-link{width:24px;flex-shrink:0}#motion-mode{display:none}
 #intro{padding:42svh var(--pad) calc(var(--footer) + 35px);min-height:100svh;align-items:flex-start}.hero-copy{width:100%;max-width:700px;background:linear-gradient(180deg,#03020600,#030206e8 14%,#030206ef);padding-top:16px}
 .hero-category{font-size:10px;margin-bottom:22px}.hero-title{font-size:clamp(48px,11.8vw,88px);line-height:1.01;max-width:15ch;margin-bottom:23px;letter-spacing:-.055em}.hero-foot{max-width:520px}.hero-body{font-size:16px;line-height:1.6}.hero-context{margin-top:16px}.hero-audience,.hero-note{font-size:12px}.hero-actions{justify-content:space-between;gap:20px;margin-top:20px}.mobile-motion{display:block;font-size:11px;color:#ac9cbe;max-width:13ch;min-height:44px;text-align:right}
 .beat{padding:37svh var(--pad) 70px}.space>.beat:last-child{padding-bottom:110px}
 .reading,#starting .reading,#selection .reading,#development .reading,#terms .reading{width:100%;max-width:750px;padding:26px 0 0!important;background:linear-gradient(180deg,#03020600,#030206f5 60px,#030206fa)!important}
 .reading::before,.space[data-lane=right] .reading::before{background:#030206f5;inset:-24px -24px -48px;mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 48px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 48px),transparent)}
 #selection .reading::before{inset:-24px -24px -48px;mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 48px),transparent);-webkit-mask-image:linear-gradient(transparent,#000 65px,#000 calc(100% - 48px),transparent)}
 .reading,#starting .reading,#selection .reading,#development .reading,#terms .reading{background:none!important}
 .reading>h2,.system-heading>h2,#selection .reading>h2{font-size:clamp(41px,9.8vw,65px);line-height:1.06;max-width:17ch;letter-spacing:-.047em}.reading>.lead,.system-heading>.lead{font-size:17px;line-height:1.6}.eyebrow{font-size:10px;margin-bottom:23px}
 #starting{min-height:0}.league-choices{gap:0 22px}.league-choices button{min-height:133px}.league-choices button>strong{font-size:29px}.league-choices .league-goal{font-size:13px}.league-panel{min-height:270px}.league-panel h3+p{font-size:16px}
 .profile-workspace{grid-template-columns:1fr;gap:24px}.core-profile-figure{width:100%;max-width:404px}.core-format,.learning-product{grid-template-columns:1fr;gap:14px}.core-format>.core-format-value{font-size:32px}.learning-product h3{font-size:42px}.metric-detail h3{font-size:29px}.coach-comment{font-size:16px}.hud-offer{display:block}.hud-offer h3{font-size:31px}.hud-offer>p{margin-top:16px}.hud-telegram{margin-top:20px}
 .profit-summary{gap:22px}.profit-summary output{font-size:clamp(54px,16vw,85px);letter-spacing:-.055em}.profit-summary>div+div{padding-left:20px}.profit-example output{font-size:31px}.retained>strong{font-size:70px}
 .beat-secondary{padding-top:75px}#faq .reading,#application .reading{background:none!important;padding:0!important}.process-list{display:block}.process-list li{display:flex}.process-list li::before{display:block;margin:0}.faq-list summary{font-size:18px}
}
@media(max-width:374px){#page-controls{padding-left:14px;padding-right:14px;gap:6px}.header-brand{width:78px}#header-apply{font-size:10px;padding:9px 8px;gap:7px}#chapters{gap:4px}#chapters a{font-size:10px}.hero-title{font-size:47px}.league-choices button>strong{font-size:26px}}
@media(min-width:375px) and (max-width:399px){#page-controls{padding-left:18px;padding-right:18px;gap:8px}.header-brand{width:88px}#header-apply{font-size:10px;gap:9px}}
@media(max-height:740px) and (max-width:899px){#intro{padding-top:34svh}.hero-title{font-size:46px}.hero-category{margin-bottom:15px}.hero-body{font-size:15px}.hero-context{margin-top:12px}.hero-actions{margin-top:15px}}
