:root{--ink:#1e3327;--ink-soft:#49604f;--paper:#f3ead7;--paper-deep:#e6dac0;--clay:#e2553b;--fairway:#8fbf5a;--display:"Gloock", "Times New Roman", serif;--body:"Instrument Sans", system-ui, sans-serif;--mono:"Martian Mono", ui-monospace, monospace}*{box-sizing:border-box}html{background:var(--ink)}body{font-family:var(--body);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0}#scene{width:100%;height:100%;display:block;position:fixed;inset:0}.grain{pointer-events:none;mix-blend-mode:multiply;opacity:.5;background:radial-gradient(at 50% 45%,#0000 55%,#141e1857 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.loader{z-index:50;background:var(--ink);color:var(--paper);font:400 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;place-items:center;transition:opacity .8s;display:grid;position:fixed;inset:0}.loader.is-done{opacity:0;pointer-events:none}html,body{overscroll-behavior:none;height:100%;overflow:hidden}.masthead{z-index:20;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px clamp(16px,4vw,48px);display:flex;position:fixed;top:0;left:0;right:0}.masthead>*{pointer-events:auto}.masthead__mark{font:600 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--paper);text-shadow:0 1px 10px #141e188c;padding:13px 0;text-decoration:none}.trail{background:var(--paper);border:1.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);display:flex}.trail__stop{color:var(--ink);font:600 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-left:1px solid #1e332740;align-items:center;gap:9px;margin:0;padding:11px 15px;transition:background .2s,color .2s;display:flex}.trail__stop:first-child{border-left:0}.trail__stop:hover{background:var(--paper-deep)}.trail__stop.is-current{background:var(--ink);color:var(--paper)}.trail__stop:focus-visible,.lofi:focus-visible,.card a:focus-visible{outline:2px solid var(--clay);outline-offset:2px}.trail__mark{flex:none;width:10px;height:10px}.trail__mark--circle{background:#3f9a5a;border-radius:50%}.trail__mark--square{background:#3b7fc4}.trail__mark--flag{background:var(--clay);clip-path:polygon(0 0,100% 32%,22% 64%,22% 100%,0 100%);width:11px;height:11px}.trail__mark--19{width:auto;height:auto;color:var(--clay);font-size:10px}.hero{color:var(--paper);pointer-events:none;opacity:0;transition:opacity .6s,transform .6s;position:fixed;bottom:clamp(28px,7vh,72px);left:clamp(16px,4vw,48px);right:clamp(16px,4vw,48px);transform:translateY(18px)}.hero.is-active{opacity:1;transform:none}.hero h1{font:400 clamp(72px, 15.5vw, 236px) / .84 var(--display);letter-spacing:-.035em;text-shadow:0 2px 40px #141e1859;margin:0}.hero h1 span{display:block}.hero h1 span:last-child{margin-left:.52em;font-style:italic}.hero__eyebrow,.card__meta{font:400 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}.hero__eyebrow{text-shadow:0 1px 12px #141e1899;margin:0 0 18px}.hero__eyebrow i,.card__meta i{background:var(--clay);border-radius:50%;width:5px;height:5px;margin:0 8px 1px;display:inline-block}.hero__tagline{max-width:30ch;font:500 clamp(16px, 1.5vw, 21px) / 1.35 var(--body);text-shadow:0 1px 14px #141e18b3;margin:22px 0 0}.hero.is-active h1 span,.hero.is-active .hero__eyebrow,.hero.is-active .hero__tagline{animation:1s cubic-bezier(.2,.7,.2,1) both rise}.hero.is-active h1 span:first-child{animation-delay:.15s}.hero.is-active h1 span:last-child{animation-delay:.3s}.hero.is-active .hero__tagline{animation-delay:.5s}@keyframes rise{0%{opacity:0;transform:translateY(.25em)}}.scrollcue{z-index:15;background:var(--paper);border:1.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);color:var(--ink);font:600 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;opacity:0;pointer-events:none;border-radius:999px;align-items:center;gap:12px;padding:11px 18px 11px 14px;transition:opacity .5s,translate .5s;display:flex;position:fixed;bottom:26px;left:50%;translate:-50% 12px}.scrollcue.is-shown{opacity:1;pointer-events:auto;animation:2.4s ease-in-out 1.6s infinite nudge;translate:-50%}@keyframes nudge{0%,60%,to{transform:none}30%{transform:translateY(7px)}}.scrollcue__mouse{border:1.5px solid var(--ink);border-radius:9px;justify-items:center;width:16px;height:25px;display:grid}.scrollcue__mouse i{background:var(--clay);border-radius:2px;width:3px;height:6px;margin-top:4px;animation:1.6s ease-in-out infinite wheel}@keyframes wheel{0%{opacity:1;transform:translateY(0)}70%,to{opacity:0;transform:translateY(9px)}}.scrollcue__arrow{border-right:2px solid var(--clay);border-bottom:2px solid var(--clay);width:8px;height:8px;margin:-4px 2px 0 0;transform:rotate(45deg)}.scrollcue.is-later{box-shadow:3px 3px 0 var(--ink);padding:8px 14px 8px 10px;font-size:10.5px;animation:none}.card{z-index:10;background:var(--paper);border:1.5px solid var(--ink);width:min(410px,36vw);box-shadow:7px 7px 0 var(--ink);opacity:0;visibility:hidden;max-height:calc(100vh - 150px);padding:30px 30px 22px;transition:opacity .45s,transform .55s cubic-bezier(.2,.7,.2,1),visibility 0s .55s;position:fixed;top:50%;left:clamp(16px,4vw,48px);overflow:hidden auto;transform:translate(-16px,-46%)}.card.is-active{opacity:1;visibility:visible;transition-delay:0s;transform:translateY(-50%)}.card__numeral{font:400 190px/1 var(--display);color:#0000;-webkit-text-stroke:1.5px #1e332729;pointer-events:none;-webkit-user-select:none;user-select:none;font-style:italic;position:absolute;top:-34px;right:6px}.card__meta{color:var(--ink-soft);margin:0 0 26px;font-size:10px;position:relative}.card__label{font:600 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin:0 0 6px;position:relative}.card h2{font:400 clamp(32px, 3.3vw, 46px) / 1 var(--display);letter-spacing:-.02em;margin:0 0 16px;position:relative}.card p{margin:0 0 12px;font-size:15.5px;line-height:1.55}.card__list,.card__links{margin:4px 0 0;padding:0;list-style:none}.card__list a{color:inherit;border-top:1px solid #1e332733;gap:2px;padding:11px 96px 11px 0;text-decoration:none;display:grid;position:relative}.card__list em{font:400 8.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);border:1px solid #1e332759;padding:4px 6px;position:absolute;top:14px;right:0}.card__list strong{font-size:15.5px;font-weight:600}.card__list strong:after{content:" →";color:var(--clay);margin-left:6px;transition:transform .25s;display:inline-block}.card__list a:hover strong:after{transform:translate(5px)}.card__list span{color:var(--ink-soft);font-size:14px}.card__links{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.card__links a{border:1.5px solid var(--ink);color:var(--ink);font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:11px 16px;text-decoration:none;transition:background .2s,color .2s;display:block}.card__links a:hover{background:var(--ink);color:var(--paper)}.card__final{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font:400 10.5px/1.5 var(--mono)!important;margin:20px 0 6px!important}.card__final:empty{display:none}.hud{font-family:var(--mono);border-top:1.5px dashed #1e332759;grid-template-columns:auto auto 1fr;gap:4px 20px;margin:22px 0 0;padding-top:14px;display:grid}.hud dt{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:5px;font-size:8.5px}.hud dd{font-variant-numeric:tabular-nums;margin:0;font-size:13px;font-weight:600}.hud__status{grid-column:1/-1;margin-top:8px}.hud__status dd{letter-spacing:.14em;text-transform:uppercase;color:var(--clay);font-size:9.5px;font-weight:400}.bubble{z-index:9;background:var(--paper);border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font:600 22px/1 var(--mono);letter-spacing:.08em;color:var(--ink);white-space:nowrap;pointer-events:none;opacity:0;will-change:transform;border-radius:14px 14px 14px 3px;margin:-44px 0 0 12px;padding:9px 12px 8px;transition:opacity .18s;position:fixed;top:0;left:0}.bubble.is-shown{opacity:1;animation:.5s ease-in-out infinite alternate fume}@keyframes fume{0%{rotate:-2deg}to{rotate:2deg}}.trail__mark--ai{background:var(--clay);border-radius:50%;box-shadow:0 0 0 3px #e2553b40}.trail__short{display:none}.chat{margin-top:14px;position:relative}.chat__log{overscroll-behavior:contain;flex-direction:column;gap:8px;max-height:min(34vh,300px);display:flex;overflow-y:auto}.chat__log:not(:empty){margin-bottom:12px;padding-right:4px}.card .chat__msg{white-space:pre-wrap;border:1.5px solid var(--ink);max-width:88%;margin:0;padding:9px 12px;font-size:14.5px;line-height:1.45}.chat__msg--you{background:var(--ink);color:var(--paper);border-radius:12px 12px 3px;align-self:flex-end}.chat__msg--me{background:#fffaf0;border-radius:12px 12px 12px 3px;align-self:flex-start}.chat__msg.is-typing:empty:after{content:"● ● ●";letter-spacing:3px;color:var(--ink-soft);font-size:8px;animation:1s ease-in-out infinite alternate typing}@keyframes typing{0%{opacity:.25}to{opacity:1}}.chat__msg.is-error{color:var(--ink-soft);border-style:dashed}.chat__chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.chat__chips[hidden]{display:none}.chat__chip{color:var(--ink);font:500 12.5px/1 var(--body);cursor:pointer;background:0 0;border:1px solid #1e332773;border-radius:999px;padding:7px 10px;transition:background .2s,color .2s}.chat__chip:hover{background:var(--ink);color:var(--paper)}.chat__form{gap:8px;display:flex}.chat__input{border:1.5px solid var(--ink);min-width:0;color:var(--ink);font:400 16px/1.2 var(--body);background:#fffaf0;border-radius:0;flex:1;padding:11px 12px}.chat__input:focus-visible,.chat__chip:focus-visible,.chat__send:focus-visible{outline:2px solid var(--clay);outline-offset:2px}.chat__mic{border:1.5px solid var(--ink);width:44px;color:var(--ink);cursor:pointer;background:#fffaf0;flex:none;place-items:center;display:grid}.chat__mic[hidden]{display:none}.chat__mic[aria-pressed=true]{background:var(--ink);color:var(--paper)}.chat__mic.is-hearing{background:var(--clay);border-color:var(--clay);color:#fff}.card .chat__voice{font:600 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);margin:8px 0 0}.chat__voice[hidden],.chat__voice:empty{display:none}.chat__send{background:var(--clay);border:1.5px solid var(--ink);color:#fff;font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:0 16px}.chat__trace{font:400 10.5px/1.5 var(--mono);color:var(--ink-soft);border-left:2px solid #1e332740;align-self:stretch;padding-left:10px}.chat__trace summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--clay);list-style:none}.chat__trace summary::-webkit-details-marker{display:none}.chat__trace[open] summary:after{content:" ▾"}.chat__trace:not([open]) summary:after{content:" ▸"}.chat__trace ol{margin:4px 0 0;padding:0;list-style:none}.chat__trace li{gap:8px;display:flex}.chat__trace li b{width:68px;color:var(--ink);flex:none;font-weight:600}.chat__trace li span{overflow-wrap:anywhere;flex:1;min-width:0}.chat__trace li i{opacity:.7;flex:none;font-style:normal}.card .chat__thought{font:italic 400 12.5px/1.45 var(--body);color:var(--ink-soft);margin:4px 0 0}.chat__thought:empty{display:none}.chat__gate{gap:8px;display:grid}.chat__gate[hidden],.chat__main[hidden],.chat__start[hidden]{display:none}.chat__start,.chat__textonly{border:1.5px solid var(--ink);font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:13px;display:flex}.chat__start{background:var(--clay);color:#fff}.chat__start:disabled{opacity:.6}.chat__textonly{color:var(--ink);background:0 0}.card .chat__gate-note{color:var(--ink-soft);margin:0;font-size:12.5px}.chat__gate-note:empty{display:none}.contact-pop{z-index:30;background:var(--paper);border:1.5px solid var(--ink);width:min(360px,100vw - 32px);box-shadow:8px 8px 0 var(--ink);gap:8px;padding:22px;animation:.55s cubic-bezier(.2,1.5,.4,1) both land;display:grid;position:fixed;top:50%;left:62%;translate:-50% -50%}@keyframes land{0%{opacity:0;rotate:-200deg;scale:.05}60%{opacity:1}to{rotate:-1.5deg;scale:1}}.contact-pop__label{font:600 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--clay);margin:0 0 4px}.contact-pop input,.contact-pop textarea{border:1.5px solid var(--ink);color:var(--ink);font:400 16px/1.3 var(--body);resize:vertical;background:#fffaf0;border-radius:0;padding:10px 12px}.contact-pop__send{background:var(--ink);color:var(--paper);font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:0;padding:13px}.contact-pop__send:disabled{opacity:.5}.contact-pop__close{color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:6px;right:8px}.contact-pop__status{font:400 13px/1.4 var(--body);color:var(--ink-soft);margin:0}.contact-pop__status:empty{display:none}@media (width<=820px){.contact-pop{left:50%}}@media (prefers-reduced-motion:reduce){.contact-pop{animation:none}}.card .chat__note{color:var(--ink-soft);margin:10px 0 0;font-size:11.5px;line-height:1.4}.chat__forget{color:var(--clay);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.chat__forget:disabled{color:var(--ink-soft);cursor:default;text-decoration:none}.chat__send:disabled{opacity:.5;cursor:default}.lofi{z-index:20;background:var(--paper);border:1.5px solid var(--ink);box-shadow:4px 4px 0 var(--ink);color:var(--ink);font:600 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;align-items:center;gap:10px;padding:10px 14px;display:flex;position:fixed;bottom:22px;right:clamp(16px,4vw,48px)}.lofi:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.lofi__bars{align-items:flex-end;gap:2px;height:12px;display:flex}.lofi__bars i{background:var(--ink);width:2.5px;height:3px}.lofi[aria-pressed=true] .lofi__bars i{background:var(--clay);animation:.9s ease-in-out infinite alternate bars}.lofi__bars i:nth-child(2){animation-delay:-.3s!important}.lofi__bars i:nth-child(3){animation-delay:-.6s!important}.lofi__bars i:nth-child(4){animation-delay:-.15s!important}@keyframes bars{0%{height:3px}to{height:12px}}@media (width<=820px){.masthead{padding:12px}.masthead__mark{display:none}.trail{width:100%;box-shadow:3px 3px 0 var(--ink)}.trail__long{display:none}.trail__short{display:inline}.chat__log{max-height:22svh}.trail__stop{letter-spacing:.08em;flex:1;justify-content:center;gap:6px;padding:11px 4px;font-size:8.5px}.hero{bottom:96px}.scrollcue{font-size:11px;bottom:18px}.scrollcue.is-later{top:62px;bottom:auto;left:12px;translate:0}.card{width:auto;max-height:47svh;box-shadow:4px 4px 0 var(--ink);padding:20px 20px 14px;inset:auto 12px 12px;overflow-y:auto;transform:translateY(18px)}.card.is-active{transform:none}.card__numeral{font-size:120px;top:-20px}.card__meta{margin-bottom:14px}.card h2{margin-bottom:10px;font-size:30px}.card p{font-size:14.5px}.card__list a{padding:8px 90px 8px 0}.card__list em{top:10px}.card__list span{font-size:13px}.hud{margin-top:12px;padding-top:10px}.lofi{box-shadow:3px 3px 0 var(--ink);padding:8px 10px;top:62px;bottom:auto;right:12px}.lofi__text{display:none}}html.no-webgl,html.no-webgl body{height:auto;overflow:auto}.no-webgl #scene,.no-webgl .grain,.no-webgl .hud,.no-webgl .scrollcue{display:none}.no-webgl .leg{padding:90px clamp(16px,4vw,48px) 0}.no-webgl .leg:last-of-type{padding-bottom:90px}.no-webgl .hero,.no-webgl .card{opacity:1;visibility:visible;width:min(560px,100%);max-height:none;position:relative;inset:auto;transform:none}@media (prefers-reduced-motion:reduce){.scrollcue,.scrollcue__mouse i,.bubble,.lofi__bars i,.hero.is-active *{animation:none!important}.card,.hero{transition-duration:10ms}}
