/* An optional, input-driven motion layer. The original colour journey is unchanged. */
.experience-motion{font-family:var(--mono);font-size:8px;letter-spacing:.06em;background:none;border:1px solid currentColor;min-height:30px;padding:0 9px;opacity:.8;display:inline-flex;align-items:center;gap:7px}
.experience-motion::before{content:"Ⅱ";font-size:11px}.experience-motion[aria-pressed=true]::before{content:"▷"}.experience-motion:disabled{cursor:default;opacity:.6}
.experience-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--electric);transform:scaleX(0);transform-origin:left;pointer-events:none}
.experience-chapter{position:fixed;bottom:20px;right:var(--gutter);z-index:20;display:flex;align-items:center;gap:10px;font-size:8px;letter-spacing:.1em;color:var(--ink);pointer-events:none;transition:opacity .3s}
.experience-chapter.chapter-light{color:var(--paper)}.experience-chapter.chapter-hidden,.dialog-open .experience-chapter{opacity:0}.chapter-dot{width:4px;height:4px;background:currentColor;border-radius:50%}
.pointer-signal{position:fixed;left:0;top:0;width:28px;height:28px;margin:-14px 0 0 -14px;border:1px solid #889eff;border-radius:50%;pointer-events:none;z-index:25;opacity:0;transition:opacity .2s;mix-blend-mode:difference}
.pointer-signal::before,.pointer-signal::after{content:"";position:absolute;background:#889eff;left:50%;top:50%;transform:translate(-50%,-50%)}.pointer-signal::before{width:5px;height:1px}.pointer-signal::after{height:5px;width:1px}.pointer-signal.is-active{opacity:.7}.dialog-open .pointer-signal{display:none}
.motion-ready .hero{overflow:clip;isolation:isolate}.hero-line-mask{display:block;overflow:clip;padding:.065em .03em;margin:-.065em -.03em}.hero-line{display:block;will-change:transform}
.hero-axis{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.13}.hero-axis>span{position:absolute;top:35%;height:1px;width:42px;background:var(--ink)}.hero-axis>span:first-child{left:var(--gutter);transform:translateX(calc(-1 * var(--axis-spread,0px)))}.hero-axis>span:nth-child(2){right:var(--gutter);transform:translateX(var(--axis-spread,0px))}.hero-axis>i{position:absolute;bottom:25%;left:50%;width:1px;height:40px;background:var(--ink)}
.motion-ready .question-line h2 span{background-size:calc(var(--question-progress,0) * 100%) 1px!important;transition:none}.question-coordinate{transform-origin:center;transition:none}
.motion-ready .system-path,.motion-ready .world.in-view .system-path,.motion-ready .tree-section.in-view .tree-layer path{animation:none!important}
.motion-ready .system-item{transition:color .4s,background .4s;will-change:transform}.motion-ready .system-map{isolation:isolate}.motion-ready .system-map circle{transform-box:view-box}
.motion-ready .world.in-view .system-item{background:var(--black)}.world-stage{position:relative}.motion-ready .world-statement em{transition:none}.motion-ready .system-center{border-radius:50%}
.tree-art{isolation:isolate;overflow:clip}.motion-ready #world-tree{transition:transform .65s cubic-bezier(.16,1,.3,1);transform-origin:center}.tree-hotspots{position:absolute;inset:0;pointer-events:none}.tree-hotspot{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%);border:0;background:transparent;padding:0;pointer-events:auto;color:#a7b8ff;display:grid;place-items:center;cursor:pointer}
.tree-hotspot>i{display:block;width:9px;height:9px;border:1px solid #a7b8ff;border-radius:50%;background:#101112;box-shadow:0 0 0 6px #6688ff0d;transition:box-shadow .4s,background .4s}
.tree-hotspot>span{position:absolute;left:36px;top:15px;font-size:8px;white-space:nowrap;opacity:0;transform:translateX(-5px);transition:opacity .25s,transform .25s;pointer-events:none;background:#101112;padding:0 4px}
.tree-hotspot:hover>i,.tree-hotspot:focus-visible>i,.tree-hotspot[aria-pressed=true]>i{background:var(--electric);box-shadow:0 0 0 10px #6688ff1a}
.tree-hotspot:hover>span,.tree-hotspot:focus-visible>span,.tree-hotspot[aria-pressed=true]>span{opacity:1;transform:none}
.motion-ready .tree-layer{transition:stroke .4s,filter .4s}.motion-ready .tree-options button{transition:padding-left .4s,color .4s}.motion-ready .tree-options button:hover{padding-left:7px}
.challenge-choices button{position:relative;overflow:hidden;isolation:isolate}.challenge-choices button::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--blue);transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.16,1,.3,1)}.challenge-choices button:hover::after{transform:scaleY(.06)}.challenge-choices button[aria-pressed=true]::after{transform:scaleY(1)}
.flow-packet{--destination:96%;position:absolute;left:20%;top:-2px;width:5px;height:5px;border-radius:50%;background:#a8baff;box-shadow:0 0 10px #6688ff88;opacity:0;animation:packet-flow 3.9s linear infinite;animation-delay:var(--delay);animation-play-state:paused;pointer-events:none}
.flow-lane:nth-child(2) .flow-packet{--destination:43%}.is-flowing .flow-lane:nth-child(2) .flow-packet{--destination:96%}
.motion-visible .flow-packet{animation-play-state:running}.motion-suspended .flow-packet,.dialog-open .flow-packet{animation-play-state:paused}
@keyframes packet-flow{0%{left:0;opacity:0}9%{opacity:1}84%{opacity:1}100%{left:var(--destination);opacity:0}}
.perspective-lab{display:grid;grid-template-columns:1fr;max-width:950px;margin:32px 0 0;border-bottom:1px solid #ffffff40;padding-bottom:23px}
.perspective-map{width:100%;height:clamp(130px,16vw,195px);fill:white;overflow:visible}.perspective-edge{stroke:white;stroke-width:1;stroke-dasharray:3 6}.perspective-orbit{stroke:#ffffff35;stroke-width:1;fill:none}
.perspective-label{font-size:8px;letter-spacing:.13em;display:block;margin:5px 0 15px;color:#e0e6ff}
.perspective-range{appearance:none;-webkit-appearance:none;background:linear-gradient(to right,white var(--range-value,0%),#ffffff45 var(--range-value,0%));height:2px;min-height:2px;width:100%;margin:20px 0;cursor:ew-resize;padding:0;border:0;border-radius:0;touch-action:pan-y}
.perspective-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:28px;height:28px;border:1px solid white;background:var(--blue);border-radius:50%;box-shadow:0 0 0 7px #2346ff;cursor:ew-resize}.perspective-range::-moz-range-thumb{width:27px;height:27px;border:1px solid white;background:var(--blue);border-radius:50%;cursor:ew-resize}
.perspective-range:focus-visible{outline:2px solid white;outline-offset:16px}.perspective-ends{display:flex;justify-content:space-between;gap:20px;font-size:8px;margin-top:13px;color:#e0e6ff}
.motion-ready .transform-story{margin-top:44px}.motion-ready .case-steps li{position:relative}.motion-ready .case-steps li::before{position:absolute;content:"";top:-1px;left:0;height:1px;width:100%;transform:scaleX(var(--case-progress,0));transform-origin:left;background:#a8baff;pointer-events:none}
.chart-crosshair{stroke:#d3dcff;stroke-width:1;stroke-dasharray:3 3;opacity:0;pointer-events:none}.is-inspecting .chart-crosshair{opacity:.65}
.motion-ready .os-preview{transition:border-color .5s}.motion-ready .os-preview:hover{border-color:#6688ff99}
.final-section{position:relative;isolation:isolate;overflow:hidden}.final-section>.section-meta,.final-section>h2,.final-question,.enter-block{position:relative;z-index:1}.final-portal{position:absolute;z-index:-1;top:54%;left:50%;width:min(140vw,1400px);max-width:none;height:auto;transform:translate(-50%,-50%);opacity:.12;pointer-events:none;fill:none;stroke:#c1ceff;stroke-width:.6}
.final-cta{position:relative;overflow:hidden;isolation:isolate}.final-cta::before{content:"";position:absolute;inset:0;background:#ffffff0c;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.16,1,.3,1);z-index:-1}.final-cta:hover::before,.final-cta:focus-visible::before{transform:scaleX(1)}
.touch-ring{position:absolute;pointer-events:none;z-index:5;width:140px;height:140px;border:1px solid #a4b6ff;border-radius:50%;opacity:0;transform:translate(-50%,-50%)}
@media(min-width:1000px) and (min-height:760px){.motion-ready:not(.reduce-motion) .world-runway{height:160svh;min-height:1200px}.motion-ready:not(.reduce-motion) .world-stage{position:sticky;top:calc(var(--header) + 25px)}.motion-ready:not(.reduce-motion) .world-stage .system-map{max-width:850px;margin-bottom:45px}.motion-ready:not(.reduce-motion) .world-stage .world-statement{font-size:clamp(48px,5.2vw,78px)!important}.motion-ready:not(.reduce-motion) .world-description{margin-top:40px}}
@media(max-width:1100px){.site-header nav{gap:22px}}
@media(max-width:760px){.experience-motion{font-size:7px;min-height:32px;padding:0 6px;gap:5px}.site-header nav{gap:14px}.site-header .header-cta{font-size:8px;gap:9px}.header-cta span{font-size:18px}.experience-chapter,.pointer-signal,.hero-axis{display:none}.hero-line-mask{padding:.07em .02em;margin:-.07em -.02em}.world-runway{height:auto}.world-stage{position:relative}.perspective-lab{margin-top:24px;padding-bottom:22px}.perspective-map{height:125px}.perspective-label,.perspective-ends{font-size:7px}.perspective-range::-webkit-slider-thumb{width:32px;height:32px}.perspective-range::-moz-range-thumb{width:32px;height:32px}.tree-hotspot>span{font-size:6px;left:31px;top:16px}.tree-hotspot>i{width:7px;height:7px}.tree-hotspot[aria-pressed=true]>i{box-shadow:0 0 0 7px #6688ff20}.final-portal{width:210vw;top:55%;opacity:.16}.motion-ready .tree-options button:hover{padding-left:0}.touch-ring{width:100px;height:100px}}
@media(max-width:360px){.site-header nav{gap:9px}.site-header .header-cta{font-size:7px;gap:6px}.experience-motion{font-size:6px;padding:0 4px}.wordmark{font-size:16px}}
.reduce-motion .hero-line{transform:none!important}.reduce-motion .hero-axis,.reduce-motion .pointer-signal{display:none}.reduce-motion .flow-packet{animation:none!important;opacity:0}.reduce-motion .tree-layer path,.reduce-motion .system-path{stroke-dashoffset:0!important}.reduce-motion .question-line h2 span{background-size:100% 1px!important}.reduce-motion .case-steps li::before{transform:none}.reduce-motion #world-tree{transform:none!important}.reduce-motion .final-portal{opacity:.08}.reduce-motion .experience-chapter{transition:none}
@media(prefers-reduced-motion:reduce){.hero-line{transform:none!important}.hero-axis,.pointer-signal{display:none}.flow-packet{animation:none!important;opacity:0}.tree-layer path,.system-path{stroke-dashoffset:0!important}.world-runway{height:auto!important;min-height:0!important}.world-stage{position:relative!important;top:auto!important}.motion-ready .question-line h2 span{background-size:100% 1px!important}}
@media print{.experience-motion,.experience-chapter,.experience-progress,.pointer-signal,.tree-hotspots,.perspective-lab,.final-portal{display:none!important}.world-runway{height:auto!important;min-height:0!important}.world-stage{position:relative!important;top:auto!important}.hero-line{transform:none!important}.tree-layer path,.system-path{stroke-dashoffset:0!important}}
