/* CRUX / immersive academy, restrained typography and navigation */
body{font-synthesis:none}h1,h2,h3,.hero h1,.theatre-title strong,summary,.pill,nav{font-weight:400!important;-webkit-text-stroke:0!important;letter-spacing:.015em}.hero h1{line-height:1.3}.section-head h2{line-height:1.35}p{letter-spacing:.025em}
header{height:100px;padding:0 3%;gap:20px;background:#fbfaf5f2}header nav{gap:5px;background:#eeeee5;border:1px solid #dddfd2;border-radius:17px;padding:5px}header nav a{padding:11px 15px;border-radius:12px;display:flex;flex-direction:column;gap:6px;font-size:17px;white-space:nowrap;transition:background .25s,transform .25s}header nav a small{font:8px Arial,sans-serif;letter-spacing:.18em;color:#77846d}header nav a:after{display:none}header nav a:hover,header nav a.active{background:#fff;box-shadow:0 3px 9px #243c2c0b;transform:translateY(-2px)}header nav a.active small{color:#47750d}.nav-actions{gap:9px}.nav-actions .text-btn,.nav-actions .pill.small{display:flex;align-items:center;justify-content:center;font-size:16px;min-height:52px;border-radius:14px;padding:12px 19px;gap:14px}.nav-actions .text-btn{border:1px solid #b3bcab;background:#f9faf3}.nav-actions .text-btn:before{content:'◉';font-size:14px;color:#67785c}.nav-actions .pill.small{box-shadow:inset 0 1px #fff9,0 5px 15px #8cb42925}.menu-toggle{flex-shrink:0}
html{scroll-padding-top:110px}.hero{height:230vh;max-height:none;min-height:0;overflow:visible;background:#0e2119}.hero-sticky{height:calc(100svh - 100px);min-height:620px;position:sticky;top:100px;overflow:clip;isolation:isolate;perspective:1000px}.hero-art{transform:scale(calc(1.02 + var(--journey,0)*.22));transform-origin:63% 49%;animation:none!important;filter:saturate(.8);object-position:63% 50%}.hero-copy{z-index:5;padding-top:clamp(60px,13vh,150px);max-width:900px;transform:translate3d(calc(var(--journey,0)*-100px),calc(var(--journey,0)*-40px),0);opacity:calc(1 - var(--journey,0)*1.5);pointer-events:auto}.hero h1{font-size:clamp(46px,5.4vw,86px)}.hero-shade{z-index:3;background:linear-gradient(90deg,#0d2119eb,#14271e66 47%,transparent 75%),linear-gradient(0deg,#0c211b90,transparent 40%);opacity:calc(1 - var(--journey,0)*.65)}.academy-gate{position:absolute;inset:7% 8% -10% 42%;z-index:2;border:26px solid #b9aa83;border-radius:48% 48% 0 0;box-shadow:0 0 0 12px #665f48,0 0 0 22px #d2c7a7,0 0 0 38px #484a36,0 0 0 100vmax #14271e,inset 0 0 35px #1b210fa0;transform:scale(calc(1 + var(--journey,0)*3));transform-origin:50% 50%;pointer-events:none;will-change:transform;background:linear-gradient(100deg,#fff0 68%,#eddfb32b);opacity:calc(1 - max(0,var(--journey,0) - .85)*6)}.academy-gate:before{content:'CRUX ACADEMY';position:absolute;top:-5px;left:50%;transform:translate(-50%,-100%);padding:10px 15px;background:#d7ccad;color:#374535;font:10px Arial;letter-spacing:.32em;white-space:nowrap;border:1px solid #b4a37b}.academy-gate:after{content:'';position:absolute;inset:16px;border:1px solid #e6d2a8a0;border-radius:48% 48% 0 0}.hall-floor{position:absolute;inset:65% -30% -60%;z-index:3;transform:perspective(350px) rotateX(55deg) translateY(calc(var(--journey,0)*180px));background:repeating-linear-gradient(90deg,transparent 0 99px,#d9ca8a22 100px),repeating-linear-gradient(0deg,#1a2b22b0 0 99px,#c3ad5c44 100px);mask-image:linear-gradient(transparent,#000);pointer-events:none;opacity:calc(1 - var(--journey,0))}.gate-specks{position:absolute;inset:0;z-index:4;pointer-events:none;background-image:radial-gradient(circle,#eee3bca0 1px,transparent 2px),radial-gradient(circle,#e1cd9870 1px,transparent 2px);background-size:149px 179px,233px 211px;background-position:calc(var(--journey,0)*50px) calc(var(--journey,0)*-200px),15px 60px;mask-image:radial-gradient(ellipse at 65% 45%,black,transparent 65%)}.hero-bottom{z-index:6}.hero-bottom>span{font-size:10px}.scene-switch{background:#14271e9c;border:1px solid #e7e3cd55;border-radius:20px;padding:9px 14px;color:#eee;position:absolute;right:3%;top:22px;z-index:8;font-size:12px;backdrop-filter:blur(12px)}.photo-mode .academy-gate,.photo-mode .hall-floor{display:none}.journey-caption{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%) translateY(calc(35px - var(--journey,0)*35px));z-index:5;text-align:center;pointer-events:none;opacity:clamp(0,calc((var(--journey,0) - .6)*3),1);text-shadow:0 2px 25px #0009}.journey-caption strong{font-size:clamp(30px,4vw,65px);font-weight:400;white-space:nowrap}.journey-caption small{display:block;font:10px Arial;letter-spacing:.35em;margin-bottom:20px}.hero-progress{width:100px;height:2px;background:#ffffff30;display:inline-block;vertical-align:middle;margin-left:14px}.hero-progress i{display:block;width:calc(var(--journey,0)*100%);height:100%;background:var(--lime)}.portal-sticky{top:100px;height:calc(100svh - 100px)}
.particle-word{display:none}.particle-stage{min-height:580px;border-radius:20px}.tools{grid-template-columns:38% 62%;padding-bottom:90px}.orbit-label{font:9px Arial;letter-spacing:.15em;border:none;background:transparent;backdrop-filter:none;color:#99b89c}.l1{top:9%;left:4%}.l3{top:9%;right:3%}.l2{bottom:10%;right:5%}.interaction-hint{bottom:2%;font-size:11px}.tool-strip{display:none}.data-note{font-size:10px!important;opacity:.55;max-width:280px;margin-top:22px}
.chapter-motion{height:80vh;min-height:520px;position:relative;background:#112219;color:#f3f1e5;overflow:clip;display:grid;place-items:center;text-align:center;isolation:isolate}.chapter-motion h2{font-size:clamp(48px,6vw,94px);font-weight:400;line-height:1.3;position:relative;z-index:2;margin:0}.chapter-motion p{color:#adbdab;font-size:12px;letter-spacing:.2em}.chapter-orbits{position:absolute;width:90vmax;height:90vmax;left:50%;top:50%;border:1px solid #a5b49328;border-radius:50%;transform:translate(-50%,-50%) rotate(calc(var(--chapter,0)*100deg)) scale(calc(.7 + var(--chapter,0)*.3))}.chapter-orbits:before,.chapter-orbits:after{content:'';position:absolute;inset:12%;border:1px solid #b1d79544;border-radius:30% 70% 50% 50%;transform:rotate(45deg)}.chapter-orbits:after{inset:26%;transform:rotate(95deg)}.chapter-line{position:absolute;width:100%;height:1px;background:#b4cb8d50;top:50%;z-index:0;transform:rotate(calc(var(--chapter,0)*-30deg))}.chapter-word{display:block;transform:translateY(calc((1 - var(--chapter,0))*55px));opacity:calc(.3 + var(--chapter,0)*.7)}.chapter-motion .chapter-accent{color:var(--lime)}.chapter-motion .eyebrow{margin-bottom:25px}.chapter-motion .motion-marker{position:absolute;top:15%;left:7%;width:14px;height:14px;border:1px solid #bdd68d;border-radius:50%;box-shadow:0 0 0 13px #bdd68d18;transform:translateX(calc(var(--chapter,0)*55vw))}
.journal .story-image{clip-path:inset(calc((1 - var(--chapter,1))*10%) round 12px);transition:clip-path .2s}.order-entry{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 7%;background:#dde4ce;border-block:1px solid #bbc7a9}.order-entry h3{font-size:24px;margin:0 0 8px}.order-entry p{margin:0;font-size:13px;color:#5b6a52}.order-entry>a{white-space:nowrap}.product-card{width:350px}.product-card img{height:275px;object-fit:cover}.product-info h3{font-size:22px;line-height:1.4}.product-info p{min-height:38px}.shop .caption{max-width:900px}.shop-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.shop-filter button{padding:10px 20px;border:1px solid #bdc5ad;background:transparent;border-radius:25px;font-size:13px}.shop-filter button[aria-pressed=true]{background:var(--forest);color:white}.product-modal-photo{max-height:60vh;object-fit:contain;background:#ebe8de}.merch-rail{mask-image:linear-gradient(90deg,transparent,black 2%,black 98%,transparent)}
@media(max-width:1350px){header{gap:10px;padding:0 2%}.brand{width:145px}.brand img{width:163px;top:-16px}header nav a{padding:10px;font-size:15px}.nav-actions .text-btn,.nav-actions .pill.small{font-size:14px;padding:12px;gap:8px}.hero-copy{max-width:750px}.hero h1{font-size:64px}}
@media(max-width:1050px){header{height:82px}.menu-toggle{display:block;background:transparent;font-size:24px}header nav{display:none;position:absolute;top:82px;left:3%;right:3%;border-radius:0 0 20px 20px;padding:14px;flex-direction:column}header.menu-open nav{display:flex}header nav a{font-size:20px;padding:12px 20px;flex-direction:row;align-items:center;gap:18px}header nav a small{min-width:90px}.hero-sticky{top:82px;height:calc(100svh - 82px)}.portal-sticky{top:82px;height:calc(100svh - 82px)}.hero h1{font-size:56px}.academy-gate{inset:10% 4% -7% 35%}.hero-copy{max-width:700px}.nav-actions .text-btn{display:flex}.tools{grid-template-columns:40% 60%}.particle-stage{min-height:490px}}
@media(max-width:760px){header{height:78px;padding:0 4%;gap:5px}.brand{width:125px;height:60px}.brand img{width:140px;top:-14px}.nav-actions{gap:5px}.nav-actions .text-btn,.nav-actions .pill.small{display:flex;font-size:11px;min-height:40px;border-radius:10px;padding:9px;gap:4px}.nav-actions .text-btn:before{display:none}.nav-actions .pill.small span{font-size:14px}.menu-toggle{font-size:21px;padding:5px}header nav{top:78px}.hero{height:195vh}.hero-sticky{top:78px;height:calc(100svh - 78px);min-height:600px}.hero-copy{bottom:125px;padding:0 7%;max-width:100%}.hero h1{font-size:45px}.academy-gate{inset:3% 6% -2% 6%;border-width:16px;border-radius:45% 45% 0 0;box-shadow:0 0 0 8px #665f48,0 0 0 18px #d2c7a7,0 0 0 100vmax #14271e}.hero-shade{background:linear-gradient(0deg,#10291bf2,transparent 90%)}.scene-switch{font-size:10px;top:15px}.hero-bottom{flex-wrap:wrap;gap:14px;bottom:18px}.hero-bottom>span{font-size:7px;max-width:45%}.hero-progress{width:45px;margin-left:6px}.hero-bottom a{font-size:10px}#replay-intro{font-size:10px}.journey-caption strong{font-size:30px}.portal-sticky{top:78px;height:calc(100svh - 78px)}.tools{padding-bottom:65px;min-height:0}.particle-stage{min-height:420px;height:420px}.chapter-motion{height:65vh;min-height:420px}.chapter-motion h2{font-size:43px}.chapter-motion p{font-size:10px}.order-entry{flex-direction:column;align-items:start;padding:30px 7%}.order-entry .pill{width:100%}.product-card{width:290px}.product-card img{height:230px}.shop-filter button{padding:9px 14px}}
@media(prefers-reduced-motion:reduce){.hero{height:auto}.hero-sticky{position:relative;top:0}.hero-copy{opacity:1;transform:none}.academy-gate{transform:none}.journey-caption{display:none}.chapter-word{transform:none;opacity:1}.portal-sticky{top:0}.gate-specks{display:none}}
