:root{--obsidian: #0c1218;--navy: #17222e;--navy-2: #1c2936;--ink: #140e0b;--pearl: #f4f0e8;--pearl-dim: #d9d2c6;--muted: #c9c2b4;--ochre: #c2672f;--ochre-2: #e0a06a;--cyan: #b7e6e1;--line: rgba(244, 240, 232, .14);--serif: "Fraunces", "Iowan Old Style", Palatino, "Palatino Linotype", serif;--sans: "Outfit", "Avenir Next", "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--pad: clamp(1.1rem, 3vw, 2.4rem);--max: 1120px;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}html[data-motion=off]{scroll-behavior:auto}body{margin:0;background:var(--obsidian);color:var(--pearl);font-family:var(--sans);font-weight:400;font-size:1.05rem;line-height:1.55;text-rendering:optimizeLegibility}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--ochre-2);outline-offset:3px}.skip{position:absolute;left:1rem;top:-4rem;background:var(--ochre);color:var(--ink);padding:.6rem .9rem;z-index:50}.skip:focus{top:.8rem}.boot{min-height:100vh;display:grid;align-content:end;padding:12vh var(--pad) 10vh;background:radial-gradient(900px 420px at 80% 20%,rgba(194,103,47,.18),transparent 60%),var(--obsidian)}.boot-kicker{font-family:var(--mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ochre-2)}.boot h1{font-family:var(--serif);font-weight:500;font-size:clamp(3.2rem,8vw,6.4rem);letter-spacing:-.035em;line-height:.92;margin:.4rem 0 1rem}.nav{position:fixed;inset:0 0 auto 0;z-index:30;display:flex;align-items:center;gap:1rem;padding:.85rem var(--pad);background:linear-gradient(#0c1218 20%,rgba(12,18,24,.72) 70%,transparent)}.nav.solid{background:#0c1218f0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;margin-right:auto}.nav-book{display:none}.brand b{font-weight:500;letter-spacing:.18em;font-size:.78rem}.brand b span{color:var(--ochre-2)}.nav-links{display:flex;gap:1.1rem;align-items:center}.nav-links a{text-decoration:none;font-size:.82rem;color:var(--pearl-dim)}.nav-links a:hover{color:var(--pearl)}.nav-menu{display:none}.nav-menu summary{list-style:none;cursor:pointer;min-height:44px;display:grid;place-items:center;padding:0 .4rem}.nav-menu summary::-webkit-details-marker{display:none}.nav-menu a{display:block;padding:.7rem 0;text-decoration:none}.btn,.btn-ghost,.text-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;border-radius:2px;text-decoration:none;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:500}.btn{background:var(--ochre);color:var(--ink);border:1px solid var(--ochre)}.btn:hover{background:#d4783f}.btn-ghost,.text-btn{background:transparent;color:var(--pearl);border:1px solid rgba(244,240,232,.35)}.text-btn{border:0;padding-left:0;padding-right:0;letter-spacing:.12em;color:var(--ochre-2)}.btn-row{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.hero{position:relative;min-height:100svh;display:grid;align-items:end;padding:6rem var(--pad) 1.6rem;overflow:hidden}.hero-stage,.hero-poster{position:absolute;top:0;right:0;bottom:0;left:0}.hero-stage{z-index:0}.hero-stage canvas{width:100%!important;height:100%!important}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0c1218f0,#0c1218b8 28%,#0c121814 52%,#0c121833),linear-gradient(180deg,rgba(12,18,24,.25),transparent 18%,rgba(12,18,24,.55))}.hero-copy{position:relative;z-index:2;max-width:40rem}.kicker{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ochre-2);margin:0 0 .8rem}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.03em}.hero h1{font-size:clamp(2.8rem,5.6vw,5.2rem);line-height:.92;margin:0 0 .8rem}.hero h1 em,h2 em{font-style:italic;font-weight:500;color:var(--ochre-2)}.lede{font-size:1.12rem;color:var(--pearl-dim);max-width:38rem;margin:0 0 1rem}.fine{color:var(--muted);font-size:.92rem}.hotspots{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.hotspot{text-align:left;background:#0c12188c;border:1px solid var(--line);color:var(--pearl);min-height:44px;padding:.55rem .75rem;cursor:pointer}.hotspot small{display:block;font-family:var(--mono);font-size:.65rem;letter-spacing:.12em;color:var(--cyan)}.hero-note{margin-top:1rem;font-family:var(--mono);font-size:.72rem;color:var(--muted)}.section{padding:clamp(4rem,8vw,7rem) var(--pad)}.section.alt{background:var(--navy)}.wrap{max-width:var(--max);margin:0 auto}.wrap-wide{max-width:1240px;margin:0 auto}.section h2{font-size:clamp(2.3rem,4.5vw,4rem);line-height:.98;margin:0 0 1rem}.index{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--cyan)}.station-tabs{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:1rem;margin-top:1.5rem}.station-tabs button{background:transparent;border:1px solid var(--line);color:var(--pearl-dim);min-height:44px;padding:.4rem .7rem;cursor:pointer;white-space:nowrap}.station-tabs button[aria-selected=true]{border-color:var(--ochre);color:var(--pearl)}.journey-layout{display:grid;grid-template-columns:210px 1fr;gap:2.5rem;align-items:start}.stick{position:sticky;top:5.5rem;height:min(68vh,620px);display:grid;grid-template-columns:48px 1fr;gap:.75rem}.barrel{position:relative;height:min(46vh,420px);margin-bottom:.9rem;border-radius:40px;background:linear-gradient(90deg,#1a1612,#8d735c 42%,#2a241e 70%,#12100e);box-shadow:inset 0 0 0 1px #f4f0e826}.band{position:absolute;left:7px;right:7px;border-radius:2px}.sample-mark{position:absolute;left:-6px;right:-6px;height:10px;border-top:2px solid var(--ochre);border-bottom:2px solid var(--ochre)}.sample-mark:after{content:"";position:absolute;left:50%;top:2px;width:8px;height:8px;background:var(--ochre);transform:translate(-50%)}.stick-copy small{font-family:var(--mono);color:var(--cyan);letter-spacing:.08em}.stick-copy strong{display:block;font-family:var(--serif);font-size:1.35rem;font-weight:500;margin:.3rem 0}.depths{display:flex;flex-direction:column;justify-content:space-between;height:100%;font-family:var(--mono);font-size:.68rem;color:var(--muted)}.stations{display:grid;gap:4.5rem}.station{display:grid;gap:1rem}.station h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:.2rem 0 .6rem;line-height:1.05}.meta-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}.pill{font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);padding:.25rem .45rem;color:var(--pearl-dim)}.pill.live{color:var(--cyan);border-color:#b7e6e166}.pill.draft{color:var(--ochre-2);border-color:#e0a06a80}.pill.proposed{color:var(--ochre-2)}.screen{display:block;width:100%;padding:0;border:0;background:#0c0e10;cursor:pointer;text-align:left;box-shadow:0 0 0 1px #f4f0e829}.screen img{width:100%;height:auto}.screen figcaption,.frame-label{display:flex;justify-content:space-between;gap:1rem;padding:.45rem .6rem .55rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--muted);background:#10151b}.control-grid{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;margin-top:1.8rem}.lanes{display:grid;gap:.4rem;align-content:start}.lane{text-align:left;background:transparent;border:1px solid var(--line);color:var(--pearl-dim);padding:.7rem .75rem;cursor:pointer;min-height:44px}.lane strong{display:block;color:var(--pearl);font-weight:500}.lane.active{border-color:var(--cyan);box-shadow:inset 3px 0 0 var(--cyan)}.lane span{display:block;font-size:.82rem;color:var(--muted);margin-top:.2rem}.console{background:#101820;border:1px solid var(--line);padding:1rem}.demo-flag{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;color:var(--ochre-2);margin:0 0 .8rem}.ask-row{display:flex;gap:.5rem}.ask-row input,.form input,.form select,.form textarea{width:100%;background:#0c1218;border:1px solid var(--line);border-radius:2px;padding:.7rem .75rem;min-height:44px}.prompt-row{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0}.prompt-row button,.chip{background:transparent;border:1px solid var(--line);color:var(--pearl-dim);min-height:36px;padding:.3rem .55rem;cursor:pointer;font-family:var(--mono);font-size:.75rem}.result-note{margin:.4rem 0;color:var(--cyan)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:.78rem}th,td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:500}.module-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:2rem;align-items:start;margin-top:1.5rem}.module-list{display:grid}.module{text-align:left;background:transparent;border:0;border-top:1px solid var(--line);color:inherit;padding:1rem .2rem;cursor:pointer}.module:last-child{border-bottom:1px solid var(--line)}.module.active{background:#c2672f0f}.module h3{margin:.15rem 0 .35rem;font-size:1.7rem}.module-shot{position:sticky;top:5.5rem}.pairs{display:grid;gap:0;margin-top:1.5rem}.pair{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:1.3rem 0;border-top:1px solid var(--line)}.pair p{margin:.35rem 0 0}.pair .from{color:var(--muted)}.wa-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}.map-panel{background:#101820;border:1px solid var(--line);padding:.8rem}.map-panel svg{width:100%;height:auto}.map-panel text{font-family:var(--mono);font-size:11px;fill:#d9d2c6}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:1.4rem}.plan{border:1px solid var(--line);padding:1.1rem 1rem 1.2rem;background:#121a22;display:flex;flex-direction:column;gap:.45rem}.plan .price{font-family:var(--serif);font-size:2rem;letter-spacing:-.03em;margin:.2rem 0}.plan ul{margin:.4rem 0 0;padding-left:1.1rem;color:var(--pearl-dim)}.plan li{margin:.25rem 0}.proposed{margin-top:1.4rem}.proposed h3{margin-bottom:.4rem}.form{display:grid;gap:.8rem;max-width:40rem}.form label{display:grid;gap:.3rem;font-size:.92rem}.form label span{color:var(--pearl-dim)}.err{color:#f0c2b4;font-size:.85rem}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.draft{width:100%;min-height:9rem;background:#0c1218;border:1px solid var(--line);padding:.7rem;font-family:var(--mono);font-size:.8rem}.audit{display:grid;gap:.8rem}.audit article{display:grid;grid-template-columns:180px 1fr;gap:1rem;border-top:1px solid var(--line);padding-top:.8rem}.audit h3{margin:0;font-size:1.15rem}.footer{padding:2rem var(--pad) 3rem;border-top:1px solid var(--line);color:var(--muted);font-size:.92rem}.footer .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer a{color:var(--pearl-dim)}.dialog-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#080a0ec7;display:grid;place-items:center;padding:1rem}.dialog{width:min(1100px,100%);max-height:min(92vh,900px);overflow:auto;background:var(--navy);border:1px solid var(--line);padding:1rem}.dialog header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.dialog h2{margin:.2rem 0 .4rem;font-size:clamp(1.6rem,3vw,2.2rem)}.film-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1rem}.film-strip img{width:100%;height:120px;object-fit:cover;object-position:left top}.swipe-hint{display:none}@media (max-width: 980px){.nav-links{display:none}.nav-book{display:inline-flex}.nav-menu{display:block;margin-left:auto}.nav-menu[open]{position:absolute;top:100%;right:var(--pad);background:var(--navy);border:1px solid var(--line);padding:.4rem 1rem .8rem;min-width:200px}.brand{margin-right:0}.journey-layout,.control-grid,.module-layout,.wa-grid,.pair,.plans,.audit article{grid-template-columns:1fr}.stick{display:none}.module-shot{position:static}.stations{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;margin-inline:calc(var(--pad) * -1);padding-inline:var(--pad)}.station{min-width:100%;scroll-snap-align:start;scroll-snap-stop:always;padding-right:var(--pad)}.swipe-hint{display:block}.hero-scrim{background:linear-gradient(180deg,#0c121859,#0c12188c 30%,#0c1218eb)}.film-strip{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
