/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}}:root{--ink:#07090d;--paper:#ece9df;--muted:#9b9c9f;--amber:#f4b942;--violet:#a77bff}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:var(--ink);color:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}button,a{font:inherit}button{color:inherit}nav{z-index:20;height:74px;font:600 10px/1 var(--font-geist-mono), monospace;letter-spacing:.16em;justify-content:space-between;align-items:center;padding:0 4vw;display:flex;position:absolute;inset:0 0 auto}nav a{color:inherit;text-decoration:none}nav .mark{letter-spacing:-.06em;border:1px solid #ffffff45;border-radius:50%;place-items:center;width:38px;height:38px;font-size:11px;display:grid}.eyebrow{font:600 10px/1.4 var(--font-geist-mono), monospace;letter-spacing:.19em;color:var(--amber);text-transform:uppercase}.hero{border-bottom:1px solid #ffffff16;align-items:center;min-height:100svh;padding:100px 7vw 70px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 70%);mask-image:linear-gradient(90deg,#000,#0000 70%)}.hero-glow{aspect-ratio:1;filter:blur(15px);background:radial-gradient(circle,#6e48c944,#0000 68%);width:60vw;position:absolute;top:2vh;right:-15vw}.hero-copy{z-index:3;width:min(650px,56vw);position:relative}h1,h2{letter-spacing:-.065em;margin:0;font-weight:500;line-height:.91}h1{font-size:clamp(58px,7.4vw,126px)}h1 em,h2 em{color:var(--violet);font-family:Georgia,serif;font-weight:400}.hero-copy>p:not(.eyebrow){color:#c3c2bd;margin:30px 0;font-size:16px}.start,.action{background:var(--amber);color:#111;cursor:pointer;border:0;padding:17px 20px;font-weight:700;transition:transform .2s,background .2s}.start:hover,.action:hover{background:#ffd16d;transform:translateY(-3px)}.start span{margin-left:40px}.hero-graph{opacity:.62;width:min(52vw,760px);position:absolute;right:-2vw;transform:rotate(-8deg)scale(1.1)}.hero-graph .cover-count{display:none}.scroll-note{color:#74767d;font:600 9px var(--font-geist-mono),monospace;letter-spacing:.15em;align-items:center;gap:12px;display:flex;position:absolute;bottom:26px;right:4vw}.scroll-note i{background:#666;width:54px;height:1px;display:block}.scene{border-bottom:1px solid #ffffff12;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;min-height:100svh;padding:10vw 8vw;display:grid}.scene-copy h2,.puzzle h2,.finale h2{font-size:clamp(47px,6.5vw,94px)}.scene-copy>p:not(.eyebrow){color:#a7a8ac;max-width:470px;margin:28px 0 36px;font-size:18px;line-height:1.65}.bridge-scene{background:var(--paper);color:#111}.bridge-scene .eyebrow{color:#9b5f00}.bridge-scene .scene-copy>p:not(.eyebrow){color:#64615c}.bridge-map{justify-content:center;align-items:center;height:500px;display:flex;position:relative}.bridge-map>p{text-align:center;width:100%;font:600 11px var(--font-geist-mono),monospace;letter-spacing:.08em;position:absolute;bottom:10px}.island{aspect-ratio:1;border:2px solid #131313;border-radius:44% 56% 45% 55%;width:190px;transition:transform .8s cubic-bezier(.2,.8,.2,1);position:relative}.island i{aspect-ratio:1;background:var(--paper);border:4px solid #111;border-radius:50%;width:18px;position:absolute}.island i:first-child{top:53px;left:35px}.island i:nth-child(2){top:86px;right:40px}.island i:nth-child(3){bottom:35px;left:78px}.bridge-road{transform-origin:50%;background:#111;width:130px;height:15px;transition:all .55s;position:relative}.bridge-road span{aspect-ratio:1;background:var(--amber);border-radius:50%;width:10px;animation:2.4s ease-in-out infinite cross;position:absolute;top:2px}@keyframes cross{0%,to{left:5px}50%{left:115px}}.is-broken .bridge-road{opacity:.15;transform:translateY(50px)rotate(18deg)}.is-broken .left-island{transform:translate(-35px)}.is-broken .right-island{transform:translate(35px)}.is-broken .bridge-road span{animation-play-state:paused}.cycle-scene{background:#0d1017}.cycle-stage svg{width:100%;overflow:visible}.route-base{fill:none;stroke:#292d36;stroke-width:11px}.route-trace{fill:none;stroke:var(--violet);stroke-width:5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.route-running .route-trace{animation:4s linear forwards trace}@keyframes trace{to{stroke-dashoffset:0}}.cycle-node{fill:#0d1017;stroke:#dad7ce;stroke-width:5px}.traveler{fill:var(--amber);filter:drop-shadow(0 0 10px var(--amber));opacity:0}.route-running .traveler{opacity:1}.puzzle{background:#090b10;min-height:100svh;padding:10vw 7vw;position:relative}.puzzle-header{justify-content:space-between;align-items:end;gap:30px;margin-bottom:5vw;display:flex}.puzzle-header h2{max-width:900px}.score{flex:none;align-items:end;gap:14px;display:flex}.score strong{color:var(--amber);letter-spacing:-.08em;font-size:70px;font-weight:400;line-height:.8}.score span{color:#8d9098;font:500 10px/1.5 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em}.puzzle-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:5vw;display:grid}.graph-wrap{place-items:center;min-height:510px;display:grid;position:relative}.graph{width:100%;max-width:760px;overflow:visible}.road-bed{stroke:#2a2d35;stroke-width:11px;stroke-linecap:round}.road-light{stroke-width:4px;stroke-linecap:round;stroke-dasharray:7 12;opacity:0;animation:1.2s linear infinite flow}.road-light.first{stroke:var(--amber)}.road-light.second{stroke:var(--violet);stroke-dashoffset:9px}.count-1 .first,.count-2 .first,.count-2 .second,.count-3 .first,.count-3 .second{opacity:1}.count-3 .road-bed{stroke:#7d2d38}.cover-count{fill:#fff;font:bold 13px var(--font-geist-mono),monospace;text-anchor:middle;paint-order:stroke;stroke:#090b10;stroke-width:6px}@keyframes flow{to{stroke-dashoffset:-19px}}.station{animation:.5s both station-in;animation-delay:var(--delay)}@keyframes station-in{0%{opacity:0;transform-origin:50%;transform:scale(.5)}}.station>circle:first-child{fill:#090b10;stroke:#e8e5dc;stroke-width:4px}.station-core{fill:var(--amber)}.cycle-controls>p{color:#8f929a;margin:0 0 20px;font-size:13px;line-height:1.5}.cycle-controls button{cursor:pointer;text-align:left;color:#b8bac1;background:0 0;border:0;border-top:1px solid #ffffff19;align-items:center;gap:14px;width:100%;padding:17px 2px;transition:color .2s,padding .2s;display:flex}.cycle-controls button:hover{color:#fff;padding-left:8px}.cycle-controls button.selected{color:#fff}.cycle-controls button .swatch{background:#666;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #ffffff09}.cycle-controls .gold.selected .swatch{background:#f4b942}.cycle-controls .violet.selected .swatch{background:#a77bff}.cycle-controls .blue.selected .swatch{background:#55a9ff}.cycle-controls .coral.selected .swatch{background:#ff786f}.cycle-controls .mint.selected .swatch{background:#68d5b1}.cycle-controls button span:nth-child(2){flex:1;font-weight:700}.cycle-controls small{color:#6f727a;font:9px var(--font-geist-mono);margin-top:4px;display:block}.cycle-controls b{font:10px var(--font-geist-mono);color:var(--amber)}.cycle-controls button.reset{color:#71737a;font:10px var(--font-geist-mono);justify-content:center}.success{text-align:center;white-space:nowrap;background:#090b10dc;border:1px solid #a77bff77;padding:18px 26px;animation:.7s both success;position:absolute;inset:auto 50% 0 auto;transform:translate(50%)}.success span{color:var(--violet);font:9px var(--font-geist-mono);text-transform:uppercase;letter-spacing:.16em;margin-bottom:8px;display:block}.success strong{font-family:Georgia,serif;font-size:21px;font-weight:400}@keyframes success{0%{opacity:0;transform:translate(50%,15px)}}.finale{text-align:center;background:#08090d;flex-direction:column;justify-content:center;align-items:center;min-height:92svh;padding:100px 8vw;display:flex;position:relative;overflow:hidden}.finale h2{max-width:1050px;position:relative}.finale>p:not(.eyebrow){color:#9b9da4;max-width:680px;margin:34px 0;font-size:18px;line-height:1.65;position:relative}.finale a{color:var(--amber);border-bottom:1px solid;padding:8px 0;text-decoration:none;position:relative}.constellation{opacity:.25;position:absolute;inset:0}.constellation i{left:calc((var(--i) * 37) % 100 * 1%);top:calc((var(--i) * 61) % 100 * 1%);width:3px;height:3px;animation:twinkle calc(2s + (var(--i) % 5) * .4s) infinite alternate;background:#fff;border-radius:50%;position:absolute;box-shadow:0 0 14px 2px #a77bff}@keyframes twinkle{to{opacity:.2;transform:scale(.4)}}footer{color:#74767d;font:9px var(--font-geist-mono);letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #ffffff14;justify-content:space-between;padding:28px 4vw;display:flex}@media (width<=800px){nav span{display:none}.hero{align-items:end;padding:110px 24px 80px}.hero-copy{width:100%}.hero-graph{opacity:.35;width:100vw;top:100px;right:-30vw}h1{font-size:clamp(53px,16vw,75px)}.scene{grid-template-columns:1fr;gap:50px;padding:110px 24px}.bridge-map{height:330px}.island{width:105px}.bridge-road{width:65px}.bridge-road span{display:none}.island i{transform:scale(.65)}.cycle-scene .cycle-stage{order:2}.puzzle{padding:110px 24px}.puzzle-header{display:block}.score{margin-top:32px}.puzzle-layout{grid-template-columns:1fr}.graph-wrap{min-height:360px}.cycle-controls{max-width:none}.success{bottom:-10px}.finale{padding:100px 24px}.finale h2{font-size:47px}footer{gap:30px}footer span:last-child{text-align:right}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
