@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/39c55468420adfa6-s.1ti1r54sj8aa0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.3mtm4mi9aq8dw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/81cef6a21128489e-s.p.00r2o6pv87vbs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/39c55468420adfa6-s.1ti1r54sj8aa0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.3mtm4mi9aq8dw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/81cef6a21128489e-s.p.00r2o6pv87vbs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost Fallback;src:local(Arial);ascent-override:111.45%;descent-override:39.06%;line-gap-override:0.0%;size-adjust:96.01%}.EP4OnW_className{font-family:Jost,Jost Fallback;font-style:normal}.EP4OnW_variable{--font-identity:"Jost", "Jost Fallback"}
*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;height:100%}html,body{color:#cfe0ef;font-family:var(--font-identity), "Helvetica Neue", "Segoe UI", system-ui, -apple-system, sans-serif;overscroll-behavior:none;background-color:#01040a;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;overflow:hidden}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stage{background-color:#01040a;position:fixed;inset:0;overflow:hidden}.stage__canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;width:100%;height:100%;display:block}.veil{pointer-events:none;z-index:2;background:radial-gradient(120% 80% at 50% 118%,#102e488c 0%,#02081000 62%),radial-gradient(80% 55% at 62% 8%,#1e3a5457 0%,#01040a00 70%),linear-gradient(#01050c 0%,#020912 46%,#01060d 100%);place-items:center;transition:opacity 1.5s cubic-bezier(.4,0,.2,1);display:grid;position:absolute;inset:0}.veil--hidden{opacity:0}.veil__mark{letter-spacing:.62em;text-indent:.62em;color:#aecde4ad;font-size:clamp(.72rem,1.7vw,.95rem);font-weight:300;animation:4.2s ease-in-out infinite mark-surface}.veil__progress{background:#7a9eba29;width:clamp(88px,16vw,168px);height:1px;position:absolute;bottom:clamp(2.5rem,8vh,5rem);left:50%;overflow:hidden;transform:translate(-50%)}.veil__progress:after{content:"";transform-origin:0;transform:scaleX(var(--progress,0));background:linear-gradient(90deg,#8cc4e21a,#c4e2f4d9);transition:transform .62s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}@keyframes mark-surface{0%,to{opacity:.32;letter-spacing:.62em}50%{opacity:.86;letter-spacing:.7em}}.fallback{z-index:1;background:linear-gradient(#01060e 0%,#040f1c 38%,#02080f 100%);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.fallback__sky,.fallback__sea,.fallback__moon,.fallback__glimmer{pointer-events:none;position:absolute;inset:0}.fallback__sky{background:radial-gradient(140% 62% at 50% 56%,#183a5880 0%,#02081000 70%),linear-gradient(#010509 0%,#071827 55%)}.fallback__moon{background:radial-gradient(circle at 68% 30%,#e2f0fcf2 0 .3%,#b4d6f042 1%,#78aad214 5%,#02081000 26%)}.fallback__sea{background:repeating-linear-gradient(#96c4e20d 0 1px,#020a1400 1px 7px),linear-gradient(#0a2033 0%,#041020 55%,#01070e 100%);animation:26s ease-in-out infinite sea-swell;top:56%}.fallback__glimmer{background:radial-gradient(58% 92% at 68% 0,#cee8fa4d 0%,#8cbee014 34%,#02081000 72%);animation:19s ease-in-out infinite glimmer-drift;top:56%}.fallback__name{z-index:1;letter-spacing:.38em;text-indent:.38em;color:#d6eaf8e6;text-shadow:0 0 34px #6096be80;margin:0;font-size:clamp(1rem,3.1vw,1.65rem);font-weight:300;position:relative}@keyframes sea-swell{0%,to{transform:translate(0,0)scaleY(1)}50%{transform:translateY(-.7%)scaleY(1.035)}}@keyframes glimmer-drift{0%,to{opacity:.72;transform:translate(-1.5%)}50%{opacity:1;transform:translate(1.5%)}}@media (prefers-reduced-motion:reduce){.veil__mark,.fallback__sea,.fallback__glimmer{animation:none}.veil{transition-duration:.4s}.veil__mark{opacity:.7}}.stage{--ui-scale:1;--ui-ink:#cfe0ef;--ui-dim:#cfe0ef9e;--ui-panel:#040912e6;--ui-line:#7fe4f447;--ui-accent:#7fe4f4}.stage--contrast{--ui-ink:#fff;--ui-dim:#ffffffe0;--ui-panel:#000;--ui-line:#fff;--ui-accent:#9df2ff}.stage__canvas{z-index:0;position:absolute;inset:0}.touch-surface{z-index:1}.reticle{z-index:2}.world-place,.world-hint,.world-prompt,.world-notice,.world-dialogue,.world-fuel,.chat,.build-status,.build-hint,.edit-panel,.craft-tool{z-index:3}.world-online,.world-buttons,.touch-stick,.touch-actions,.touch-corner,.world-menu-button,.mode-strip,.build-actions,.tool-rack{z-index:4}.veil{z-index:6}.panel-scrim,.map,.build-menu{z-index:10}.world-place,.world-hint,.world-prompt{letter-spacing:.12em;text-transform:uppercase;color:var(--ui-dim);pointer-events:none;text-shadow:0 1px 12px #000000d9;margin:0;font-weight:300;position:absolute}.world-place{top:calc(env(safe-area-inset-top,0px) + 4.3rem);font-size:calc(.74rem * var(--ui-scale));color:var(--ui-ink);animation:.7s both world-fade;left:50%;transform:translate(-50%)}.world-hint{bottom:calc(env(safe-area-inset-bottom,0px) + 1.4rem);font-size:calc(.66rem * var(--ui-scale));opacity:.55;left:50%;transform:translate(-50%)}.world-prompt{bottom:calc(env(safe-area-inset-bottom,0px) + 5.2rem);align-items:center;gap:calc(.7rem * var(--ui-scale));padding:calc(.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);font-size:calc(.72rem * var(--ui-scale));border-radius:999px;animation:.28s both world-fade;display:flex;left:50%;transform:translate(-50%)}.world-prompt__verb{color:var(--ui-accent);font-weight:400}.world-prompt__label{color:var(--ui-ink);letter-spacing:.08em;text-transform:none}@keyframes world-fade{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (prefers-reduced-motion:reduce){.world-place,.world-prompt{animation:none}}.world-online{top:calc(env(safe-area-inset-top,0px) + 6.1rem);font-weight:300;font-size:calc(.62rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;color:var(--ui-dim);text-shadow:0 1px 12px #000000d9;pointer-events:none;align-items:center;gap:.5em;margin:0;animation:.7s both world-fade;display:flex;position:absolute;left:50%;transform:translate(-50%)}.world-online__dot{background:var(--ui-accent);width:.42em;height:.42em;box-shadow:0 0 8px var(--ui-accent);border-radius:50%;animation:2.6s ease-in-out infinite world-pulse}@keyframes world-pulse{0%,to{opacity:.45}50%{opacity:1}}.world-online{font:inherit;cursor:pointer;pointer-events:auto;background:0 0;border:0;padding:0;font-weight:300}.world-online:hover,.world-online:focus-visible{color:var(--ui-ink);outline:none}.chat{left:calc(env(safe-area-inset-left,0px) + 1.2rem);bottom:calc(env(safe-area-inset-bottom,0px) + 5.4rem);pointer-events:none;flex-direction:column;gap:.5rem;width:min(30rem,100vw - 3rem);display:flex;position:absolute}.chat__feed{flex-direction:column;gap:.28rem;margin:0;padding:0;list-style:none;display:flex}.chat__line{font-size:calc(.76rem * var(--ui-scale));color:var(--ui-ink);text-shadow:0 1px 10px #000000f2;overflow-wrap:anywhere;line-height:1.45;animation:.3s both world-rise}.chat__who{color:var(--ui-accent);margin-right:.5em}.chat__line--self .chat__who{color:var(--ui-ink);opacity:.75}.chat__system{color:var(--ui-dim);opacity:.8;font-style:italic}.chat__compose{pointer-events:auto;gap:.5rem;display:flex}.chat__input{padding:calc(.5rem * var(--ui-scale)) calc(.8rem * var(--ui-scale));border:1px solid var(--ui-accent);background:var(--ui-panel);color:var(--ui-ink);font:inherit;font-size:calc(.8rem * var(--ui-scale));border-radius:999px;flex:auto}.chat__input:focus-visible{outline:none}.chat__send{padding:calc(.5rem * var(--ui-scale)) calc(.9rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-dim);font:inherit;font-size:calc(.7rem * var(--ui-scale));letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:999px}.chat__send:hover,.chat__send:focus-visible{color:var(--ui-ink);border-color:var(--ui-accent);outline:none}@keyframes world-rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.panel--roster{max-width:34rem}.panel__count{background:var(--ui-accent);color:#04121a;text-align:center;vertical-align:middle;border-radius:999px;min-width:1.6em;margin-left:.6em;padding:.05em .45em;font-size:.72em;font-weight:600;display:inline-block}.roster{margin:0 0 1rem;padding:0;list-style:none}.roster__row{border-bottom:1px solid var(--ui-line);align-items:center;gap:.7rem;padding:.55rem 0;display:flex}.roster__row.is-muted .roster__name,.roster__row.is-muted .roster__where{opacity:.4}.roster__dot{border-radius:50%;flex:none;width:.72rem;height:.72rem;box-shadow:0 0 8px}.roster__name{color:var(--ui-ink);font-size:calc(.86rem * var(--ui-scale));flex-direction:column;flex:auto;display:flex}.roster__you,.roster__craft,.roster__distance{color:var(--ui-dim);font-size:calc(.7rem * var(--ui-scale));font-style:normal}.roster__where{color:var(--ui-dim);font-size:calc(.76rem * var(--ui-scale));text-align:right;flex-direction:column;flex:none;align-items:flex-end;display:flex}.roster__mute{border:1px solid var(--ui-line);color:var(--ui-dim);font:inherit;font-size:calc(.64rem * var(--ui-scale));letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:.25rem .6rem}.roster__mute:hover,.roster__mute:focus-visible{color:var(--ui-ink);border-color:var(--ui-accent);outline:none}.roster__mute[aria-pressed=true]{color:var(--ui-ink);border-color:var(--ui-accent)}.panel__swatches{flex-wrap:wrap;gap:.45rem;display:flex}.panel__swatch{cursor:pointer;outline-offset:2px;border:2px solid #0000;border-radius:50%;width:1.6rem;height:1.6rem}.panel__swatch.is-active,.panel__swatch:focus-visible{outline:2px solid var(--ui-ink)}.world-fuel{left:calc(env(safe-area-inset-left,0px) + 1.2rem);bottom:calc(env(safe-area-inset-bottom,0px) + 1.4rem);pointer-events:none;opacity:.55;flex-direction:column;gap:.4rem;transition:opacity .3s;display:flex;position:absolute}.world-fuel.is-firing{opacity:1}.world-fuel__label{font-weight:300;font-size:calc(.58rem * var(--ui-scale));letter-spacing:.18em;text-transform:uppercase;color:var(--ui-dim);text-shadow:0 1px 12px #000000d9}.world-fuel__track{width:calc(7rem * var(--ui-scale));height:calc(.28rem * var(--ui-scale));background:#ffffff24;border-radius:999px;overflow:hidden}.world-fuel__level{background:var(--ui-accent);transform-origin:0;width:100%;height:100%;box-shadow:0 0 10px var(--ui-accent);border-radius:999px;display:block}@media (prefers-reduced-motion:reduce){.world-online,.world-online__dot{animation:none}}.world-menu-button,.touch-menu{top:calc(env(safe-area-inset-top,0px) + 1rem);right:calc(env(safe-area-inset-right,0px) + 1rem);padding:calc(.5rem * var(--ui-scale)) calc(.9rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-dim);font:inherit;font-size:calc(.68rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border-radius:999px;transition:color .2s,border-color .2s;position:absolute}.world-menu-button:hover,.world-menu-button:focus-visible,.touch-menu:hover,.touch-menu:focus-visible{color:var(--ui-ink);border-color:var(--ui-accent);outline:none}.touch-menu{min-width:44px;min-height:44px;font-size:calc(1rem * var(--ui-scale))}.touch-surface{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.touch-stick{border:1px solid var(--ui-line);opacity:0;pointer-events:none;background:#04091259;border-radius:50%;width:132px;height:132px;margin:-66px 0 0 -66px;transition:opacity .16s;position:absolute}.touch-stick__knob{border:1px solid var(--ui-accent);background:#7fe4f43d;border-radius:50%;width:54px;height:54px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.touch-actions{right:calc(env(safe-area-inset-right,0px) + 1.1rem);bottom:calc(env(safe-area-inset-bottom,0px) + 1.6rem);flex-direction:column-reverse;gap:.75rem;display:flex;position:absolute}.touch-button{width:calc(66px * var(--ui-scale));height:calc(66px * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-ink);font:inherit;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex}.touch-button:active{border-color:var(--ui-accent);background:#7fe4f433}.touch-button__label{font-size:calc(1.05rem * var(--ui-scale));line-height:1}.touch-button__hint{font-size:calc(.52rem * var(--ui-scale));letter-spacing:.12em;text-transform:uppercase;color:var(--ui-dim);margin-top:.2rem}.panel-scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;background:#01040ad1;place-items:center;padding:1rem;display:grid;position:absolute;inset:0}.panel{width:min(560px,100%);max-height:100%;padding:calc(1.5rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-ink);font-size:calc(.86rem * var(--ui-scale));-webkit-overflow-scrolling:touch;border-radius:14px;font-weight:300;overflow-y:auto}.panel__head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.panel__title{font-size:calc(1.1rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;margin:0;font-weight:300}.panel__close,.panel__action,.panel__choice{border:1px solid var(--ui-line);color:var(--ui-ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.45em 1em;transition:border-color .2s,background .2s}.panel__close:hover,.panel__action:hover,.panel__choice:hover,.panel__close:focus-visible,.panel__action:focus-visible,.panel__choice:focus-visible{border-color:var(--ui-accent);outline:none}.panel__choice.is-active{border-color:var(--ui-accent);background:#7fe4f429}.panel__note{color:var(--ui-dim);font-size:calc(.76rem * var(--ui-scale));margin:.4rem 0 0}.panel__group{border-top:1px solid #7fe4f41f;margin-top:1.6rem;padding-top:1.1rem}.panel__heading{font-size:calc(.68rem * var(--ui-scale));letter-spacing:.2em;text-transform:uppercase;color:var(--ui-accent);margin:0 0 .9rem;font-weight:400}.panel__row{align-items:center;gap:.9rem;min-height:34px;margin-bottom:.85rem;display:flex}.panel__row>span:first-child{flex:auto}.panel__row--check{cursor:pointer}.panel__row input[type=range]{accent-color:var(--ui-accent);flex:0 0 46%}.panel__row input[type=checkbox]{width:20px;height:20px;accent-color:var(--ui-accent);flex:none}.panel__row output{text-align:right;min-width:3.6em;color:var(--ui-dim);font-variant-numeric:tabular-nums;flex:none}.panel__choices{flex-wrap:wrap;gap:.4rem;display:flex}.panel__text{border:1px solid var(--ui-line);color:var(--ui-ink);font:inherit;font-size:calc(.8rem * var(--ui-scale));background:#ffffff0a;border-radius:6px;flex:0 0 46%;padding:.4rem .6rem}.panel__text::placeholder{color:var(--ui-dim);opacity:.6}.panel__text:focus-visible{border-color:var(--ui-accent);outline:none}.panel__hint{color:var(--ui-dim);font-size:calc(.72rem * var(--ui-scale));margin:.3rem 0 0;font-style:normal;line-height:1.5;display:block}.panel__keys{gap:.45rem;margin:0;display:grid}.panel__keys>div{justify-content:space-between;gap:1rem;display:flex}.panel__keys dt{color:var(--ui-dim)}.panel__keys dd{text-align:right;margin:0}.panel__buttons{flex-wrap:wrap;gap:.6rem;display:flex}.panel__foot{border-top:1px solid #7fe4f41f;flex-wrap:wrap;gap:1.2rem;margin-top:1.6rem;padding-top:1.1rem;display:flex}.panel__link{color:var(--ui-accent);font-size:calc(.78rem * var(--ui-scale));border-bottom:1px solid #0000;text-decoration:none}.panel__link:hover,.panel__link:focus-visible{border-bottom-color:currentColor;outline:none}.reader{color:#cfe0ef;max-width:42rem;margin:0 auto;padding:clamp(2.5rem,7vw,5rem) 1.4rem 5rem;font-weight:300;line-height:1.7}body:has(.reader){overflow-y:auto}.reader__eyebrow{letter-spacing:.28em;text-transform:uppercase;color:#7fe4f4d9;margin:0;font-size:.72rem}.reader__title{letter-spacing:.01em;margin:.6rem 0 0;font-size:clamp(1.9rem,5vw,2.7rem);font-weight:300;line-height:1.15}.reader__lede{color:#cfe0efd1;margin:1.1rem 0 0;font-size:1.06rem}.reader__nav{flex-wrap:wrap;gap:1.4rem;margin-top:1.8rem;display:flex}.reader a{color:#7fe4f4;border-bottom:1px solid #7fe4f459;text-decoration:none}.reader a:hover,.reader a:focus-visible{border-bottom-color:currentColor;outline:none}.reader__section{margin-top:3.2rem}.reader h2{letter-spacing:.22em;text-transform:uppercase;color:#7fe4f4d9;margin:0 0 1rem;font-size:.78rem;font-weight:400}.reader p{margin:0 0 1rem}.reader__list{margin:0 0 1rem;padding-left:1.2rem}.reader__list li{margin-bottom:.5rem}.reader__places{counter-reset:place;margin:0;padding:0;list-style:none}.reader__place{border-left:1px solid #7fe4f433;margin-bottom:2.4rem;padding-left:1.2rem}.reader__place-name{margin:0;font-size:1.2rem;font-weight:300}.reader__tagline{color:#cfe0ef9e;margin:.3rem 0 .9rem;font-style:italic}.reader__fact,.reader__symbolism{margin:0 0 .7rem;font-size:.94rem}.reader__tag{letter-spacing:.16em;text-transform:uppercase;color:#cfe0efb3;vertical-align:.14em;border:1px solid #cfe0ef47;border-radius:999px;margin-right:.6rem;padding:.12em .6em;font-size:.62rem;display:inline-block}.reader__tag--fact{color:#7fe4f4;border-color:#7fe4f480}.reader kbd{border:1px solid #cfe0ef4d;border-radius:4px;padding:.1em .42em;font-family:inherit;font-size:.86em}.reader__foot{color:#cfe0ef99;border-top:1px solid #7fe4f424;margin-top:3.5rem;padding-top:1.4rem;font-size:.88rem}.entry{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 2rem);opacity:0;z-index:4;transition:opacity 2.4s;position:fixed;transform:translate(-50%)}.entry.is-visible{opacity:1}.entry.is-instant{transition:none}.entry__link{color:#cfe0ef80;letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:.7rem;padding:.55rem .2rem;font-size:.72rem;font-weight:300;text-decoration:none;transition:color .6s;display:inline-flex}.entry__link:hover,.entry__link:focus-visible{color:#cfe0eff2;outline:none}.entry__mark{background:#7fe4f4;border-radius:50%;width:5px;height:5px;box-shadow:0 0 10px #7fe4f4cc}.entry__online{color:#7fe4f49e;letter-spacing:.18em;text-transform:uppercase;text-align:center;margin-top:.15rem;font-size:.6rem;font-weight:300;animation:1.6s both entry-surface;display:block}@keyframes entry-surface{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.entry{transition:none}.entry__online{animation:none}}.world-dialogue{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 8.4rem);width:min(46rem,100vw - 2.4rem);padding:calc(1rem * var(--ui-scale)) calc(1.3rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);pointer-events:none;border-radius:12px;animation:.3s both world-fade;position:absolute;transform:translate(-50%)}.world-dialogue__speaker{font-size:calc(.62rem * var(--ui-scale));letter-spacing:.22em;text-transform:uppercase;color:var(--ui-accent);margin:0 0 .5rem;font-weight:400}.world-dialogue__text{font-size:calc(.94rem * var(--ui-scale));color:var(--ui-ink);margin:0;font-weight:300;line-height:1.6}.world-notice{left:50%;top:calc(env(safe-area-inset-top,0px) + 6.9rem);width:min(38rem,100vw - 2.4rem);padding:calc(.7rem * var(--ui-scale)) calc(1.1rem * var(--ui-scale));border-left:2px solid var(--ui-accent);background:var(--ui-panel);color:var(--ui-ink);font-size:calc(.82rem * var(--ui-scale));text-align:left;pointer-events:none;margin:0;font-weight:300;line-height:1.55;animation:.4s both world-fade;position:absolute;transform:translate(-50%)}.panel__tally{color:var(--ui-dim);font-size:calc(.76rem * var(--ui-scale));flex-wrap:wrap;gap:.35rem 1.5rem;margin:.7rem 0 0;padding:0;list-style:none;display:flex}.panel__tally span{color:var(--ui-accent);font-variant-numeric:tabular-nums}.map{width:min(680px,100%);max-height:100%;padding:calc(1.4rem * var(--ui-scale));border:1px solid var(--ui-line);background:var(--ui-panel);color:var(--ui-ink);-webkit-overflow-scrolling:touch;border-radius:14px;font-weight:300;overflow-y:auto}.map__zooms{flex-wrap:wrap;gap:.4rem;margin-top:.9rem;display:flex}.map__zoom{padding:calc(.34rem * var(--ui-scale)) calc(.8rem * var(--ui-scale));border:1px solid var(--ui-line);color:#cfe0ef9e;font:inherit;font-size:calc(.76rem * var(--ui-scale));letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px}.map__zoom:hover{color:var(--ui-ink);border-color:#7fe4f466}.map__zoom.is-active{color:#041018;background:#7fe4f4d9;border-color:#7fe4f4d9}.map__canvas{background:#050a12;border:1px solid #7fe4f42e;border-radius:8px;width:100%;height:auto;margin:1rem 0 .9rem;display:block}.map__legend{font-size:calc(.76rem * var(--ui-scale));color:#cfe0ef59;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.25rem 1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.map__legend .is-found{color:var(--ui-ink)}.world-buttons{top:calc(env(safe-area-inset-top,0px) + 1rem);right:calc(env(safe-area-inset-right,0px) + 1rem);gap:.5rem;display:flex;position:absolute}.world-buttons .world-menu-button{position:static}.touch-corner{top:calc(env(safe-area-inset-top,0px) + 1rem);right:calc(env(safe-area-inset-right,0px) + 1rem);gap:.5rem;display:flex;position:absolute}.touch-corner .touch-menu{position:static}.mode-strip{top:calc(env(safe-area-inset-top,0px) + 1rem);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060a0e9e;border-radius:999px;align-items:center;gap:.25rem;padding:.25rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.mode-strip__button{color:var(--ui-dim);font:inherit;font-size:calc(.66rem * var(--ui-scale));letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.35em .9em;transition:color .18s,background .18s}.mode-strip__button:hover,.mode-strip__button:focus-visible{color:var(--ui-ink);outline:none}.mode-strip__button.is-active{color:var(--ui-ink);background:#7fe4f42e}.mode-strip__count{color:var(--ui-dim);font-size:calc(.62rem * var(--ui-scale));letter-spacing:.1em;font-variant-numeric:tabular-nums;padding:0 .7em 0 .5em}.reticle{pointer-events:none;border:1px solid #9df2ff80;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;top:50%;left:50%}.reticle span{background:var(--ui-accent);width:3px;height:3px;box-shadow:0 0 8px var(--ui-accent);border-radius:50%;margin:-1.5px 0 0 -1.5px;position:absolute;top:50%;left:50%}.reticle.is-refused{border-style:dashed;border-color:#ff7a5cbf}.reticle.is-refused span{background:#ff7a5c;box-shadow:0 0 8px #ff7a5c}.build-status{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 7.5rem);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;text-align:center;background:#060a0ea8;border-radius:14px;width:min(30rem,100vw - 3rem);padding:.7rem 1rem;position:absolute;transform:translate(-50%)}.build-status__line{justify-content:center;align-items:baseline;gap:.7rem;margin:0;display:flex}.build-status__name{font-size:calc(.82rem * var(--ui-scale));letter-spacing:.06em;font-weight:300}.build-status__verdict{font-size:calc(.64rem * var(--ui-scale));letter-spacing:.12em;text-transform:uppercase;color:var(--ui-dim)}.build-status__verdict.is-ok{color:#9df47f}.build-status__verdict.is-no{color:#ff7a5c}.build-status__reason,.build-status__meta{color:var(--ui-dim);font-size:calc(.7rem * var(--ui-scale));margin:.35rem 0 0;line-height:1.45}.build-status__meta{font-size:calc(.62rem * var(--ui-scale));letter-spacing:.08em}.build-status__bar{width:calc(8rem * var(--ui-scale));height:calc(.24rem * var(--ui-scale));background:#ffffff24;border-radius:999px;margin:.5rem auto 0;display:block;overflow:hidden}.build-status__bar-fill{background:var(--ui-accent);transform-origin:0;border-radius:999px;width:100%;height:100%;display:block}.edit-panel{right:calc(env(safe-area-inset-right,0px) + 1.2rem);bottom:calc(env(safe-area-inset-bottom,0px) + 5.6rem);border:1px solid var(--ui-line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060a0eb3;border-radius:14px;width:min(19rem,100vw - 2.4rem);padding:.8rem 1rem;position:absolute}.edit-panel__title{font-size:calc(.84rem * var(--ui-scale));margin:0;font-weight:300}.edit-panel__meta{color:var(--ui-dim);font-size:calc(.66rem * var(--ui-scale));margin:.25rem 0 .7rem}.edit-panel__row{flex-wrap:wrap;gap:.4rem;display:flex}.edit-panel__row .world-menu-button,.build-actions .world-menu-button{position:static;inset:auto}.edit-panel__hint{color:var(--ui-dim);font-size:calc(.6rem * var(--ui-scale));margin:.7rem 0 0;line-height:1.5}.world-menu-button.is-warning{color:#ffb9a8;border-color:#ff7a5c}.world-menu-button:disabled{opacity:.35;cursor:default}.tool-rack{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 1.2rem);flex-wrap:wrap;justify-content:center;gap:.3rem;width:min(46rem,100vw - 2.4rem);display:flex;position:absolute;transform:translate(-50%)}.tool-rack__button{border:1px solid var(--ui-line);color:var(--ui-dim);font:inherit;font-size:calc(.62rem * var(--ui-scale));letter-spacing:.08em;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060a0e9e;border-radius:999px;padding:.4em .85em}.tool-rack__button:hover,.tool-rack__button:focus-visible{border-color:var(--ui-accent);color:var(--ui-ink);outline:none}.tool-rack__button.is-active{border-color:var(--ui-accent);color:var(--ui-ink);background:#7fe4f433}.build-actions{left:calc(env(safe-area-inset-left,0px) + 1.2rem);top:calc(env(safe-area-inset-top,0px) + 1rem);flex-direction:column;align-items:flex-start;gap:.4rem;display:flex;position:absolute}.build-hint{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + .5rem);text-align:center;max-width:min(56rem,100vw - 2rem);color:var(--ui-dim);font-size:calc(.58rem * var(--ui-scale));letter-spacing:.06em;pointer-events:none;text-shadow:0 1px 12px #000000e6;margin:0;line-height:1.6;position:absolute;transform:translate(-50%)}.craft-tool{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 5rem);pointer-events:none;text-align:center;flex-direction:column;align-items:center;gap:.2rem;margin:0;display:flex;position:absolute;transform:translate(-50%)}.craft-tool__name{font-size:calc(.66rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;color:var(--ui-accent)}.craft-tool__hint{color:var(--ui-dim);font-size:calc(.64rem * var(--ui-scale))}.world-fuel__ceiling{font-size:calc(.56rem * var(--ui-scale));letter-spacing:.14em;text-transform:uppercase;color:#ffb46a}.build-menu{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020508b8;justify-content:center;align-items:flex-end;padding:1rem;display:flex;position:fixed;inset:0}.build-menu__panel{border:1px solid var(--ui-line);background:#060a0eeb;border-radius:18px;flex-direction:column;width:min(58rem,100%);max-height:min(78vh,46rem);padding:1.2rem 1.4rem 1rem;display:flex}.build-menu__head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.build-menu__title{font-size:calc(1.05rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;margin:0;font-weight:300}.build-menu__capacity{color:var(--ui-dim);font-size:calc(.68rem * var(--ui-scale));font-variant-numeric:tabular-nums;align-items:center;gap:.7rem;margin:.4rem 0 0;display:flex}.build-menu__bar{background:#ffffff24;border-radius:999px;width:8rem;height:.24rem;display:block;overflow:hidden}.build-menu__bar-fill{background:var(--ui-accent);transform-origin:0;width:100%;height:100%;display:block}.build-menu__close{border:1px solid var(--ui-line);width:2.2rem;height:2.2rem;color:var(--ui-ink);font:inherit;cursor:pointer;background:0 0;border-radius:50%;flex:none}.build-menu__close:hover,.build-menu__close:focus-visible{border-color:var(--ui-accent);outline:none}.build-menu__search{margin:1rem 0 .6rem}.build-menu__search input{border:1px solid var(--ui-line);width:100%;color:var(--ui-ink);font:inherit;font-size:calc(.8rem * var(--ui-scale));background:#ffffff0a;border-radius:999px;padding:.6em .9em}.build-menu__search input:focus-visible{border-color:var(--ui-accent);outline:none}.build-menu__shortcuts{margin-bottom:.5rem}.build-menu__shortcut-label{color:var(--ui-accent);font-size:calc(.58rem * var(--ui-scale));letter-spacing:.2em;text-transform:uppercase;margin:.5rem 0 .3rem}.build-menu__chips{flex-wrap:wrap;gap:.35rem;display:flex}.build-chip{border:1px solid var(--ui-line);color:var(--ui-dim);font:inherit;font-size:calc(.66rem * var(--ui-scale));cursor:pointer;background:0 0;border-radius:999px;padding:.32em .8em}.build-chip:hover,.build-chip:focus-visible{border-color:var(--ui-accent);color:var(--ui-ink);outline:none}.build-menu__tabs{border-bottom:1px solid #7fe4f41f;flex-wrap:wrap;gap:.3rem;margin:.7rem 0;padding-bottom:.7rem;display:flex}.build-tab{color:var(--ui-dim);font:inherit;font-size:calc(.66rem * var(--ui-scale));letter-spacing:.08em;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:.34em .85em}.build-tab:hover,.build-tab:focus-visible{color:var(--ui-ink);border-color:var(--ui-line);outline:none}.build-tab.is-active{border-color:var(--ui-accent);color:var(--ui-ink);background:#7fe4f42e}.build-menu__grid{flex:auto;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.5rem;padding:.2rem .1rem;display:grid;overflow-y:auto}.build-menu__empty{color:var(--ui-dim);margin:1rem 0}.build-item{display:flex;position:relative}.build-item__main{border:1px solid var(--ui-line);color:var(--ui-ink);font:inherit;text-align:left;cursor:pointer;background:#ffffff05;border-radius:12px;flex-direction:column;flex:auto;gap:.22rem;padding:.65rem 2.2rem .65rem .85rem;transition:border-color .18s,background .18s;display:flex}.build-item__main:hover,.build-item__main:focus-visible{border-color:var(--ui-accent);background:#7fe4f414;outline:none}.build-item__name{font-size:calc(.8rem * var(--ui-scale));font-weight:300}.build-item__meta{color:var(--ui-dim);font-size:calc(.6rem * var(--ui-scale));letter-spacing:.04em}.build-item__hint{color:var(--ui-dim);font-size:calc(.6rem * var(--ui-scale));opacity:.8;line-height:1.4}.build-item__cost{gap:3px;margin-top:.2rem;display:flex}.build-pip{background:#ffffff29;border-radius:999px;width:12px;height:3px}.build-pip.is-filled{background:var(--ui-accent)}.build-item__star{color:#ffffff38;width:1.7rem;height:1.7rem;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;position:absolute;top:.5rem;right:.5rem}.build-item__star:hover,.build-item__star:focus-visible{color:var(--ui-ink);outline:none}.build-item__star.is-on{color:var(--ui-accent)}.build-menu__foot{border-top:1px solid #7fe4f41f;margin-top:.8rem;padding-top:.8rem}.build-menu__foot p{color:var(--ui-dim);font-size:calc(.64rem * var(--ui-scale));margin:0;line-height:1.55}.panel__select{border:1px solid var(--ui-line);color:var(--ui-ink);font:inherit;font-size:calc(.72rem * var(--ui-scale));background:#ffffff0a;border-radius:999px;flex:none;padding:.4em .7em}.panel__select:focus-visible{border-color:var(--ui-accent);outline:none}.panel__action--file{cursor:pointer;display:inline-block;position:relative}.panel__action--file input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.touch-actions.is-dense{grid-template-columns:repeat(2,auto);gap:.45rem;display:grid}@media (max-width:620px){.mode-strip{top:calc(env(safe-area-inset-top,0px) + .5rem);gap:.1rem;padding:.18rem}.mode-strip__button{font-size:calc(.58rem * var(--ui-scale));padding:.3em .6em}.build-status{bottom:calc(env(safe-area-inset-bottom,0px) + 11rem);width:calc(100vw - 1.6rem)}.edit-panel{left:calc(env(safe-area-inset-left,0px) + .8rem);right:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 11rem);width:min(17rem,100vw - 1.6rem)}.tool-rack{bottom:calc(env(safe-area-inset-bottom,0px) + 9rem);max-height:4.6rem;overflow-y:auto}.build-actions{top:calc(env(safe-area-inset-top,0px) + 3.2rem);flex-direction:row}.world-place{top:calc(env(safe-area-inset-top,0px) + 3.2rem)}.world-online{top:calc(env(safe-area-inset-top,0px) + 4.8rem)}.build-menu__panel{max-height:86vh;padding:.9rem 1rem .8rem}}.stage--contrast .mode-strip,.stage--contrast .build-status,.stage--contrast .edit-panel,.stage--contrast .build-menu__panel{background:#000000e6;border-color:#9df2ff8c}.stage--contrast .build-status__reason,.stage--contrast .build-item__meta,.stage--contrast .build-item__hint,.stage--contrast .edit-panel__meta{color:#cfe6ee}.stage--contrast .reticle{border-color:#fff}@media (prefers-reduced-motion:reduce){.mode-strip__button,.build-item__main,.tool-rack__button{transition:none}}
body:has(.site){background-color:var(--act-ink,#f4f7fc);overscroll-behavior-y:none;overflow-y:auto}html:has(.site){scroll-behavior:smooth;scroll-padding-top:6rem}@media (prefers-reduced-motion:reduce){html:has(.site){scroll-behavior:auto}}.portfolio{--font-display:var(--font-display-serif), "Iowan Old Style", Georgia, serif;--font-ui:var(--font-ui-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--font-mono-code), ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--step--2:clamp(.69rem, .67rem + .09vw, .75rem);--step--1:clamp(.81rem, .78rem + .15vw, .9rem);--step-0:clamp(1rem, .96rem + .18vw, 1.11rem);--step-1:clamp(1.18rem, 1.11rem + .3vw, 1.38rem);--step-2:clamp(1.4rem, 1.28rem + .5vw, 1.72rem);--step-3:clamp(1.66rem, 1.47rem + .8vw, 2.16rem);--step-4:clamp(1.97rem, 1.68rem + 1.22vw, 2.7rem);--step-5:clamp(2.2rem, 1.74rem + 1.94vw, 3.38rem);--step-6:clamp(2.5rem, 1.76rem + 3.1vw, 4.22rem);--step-7:clamp(2.9rem, 1.66rem + 5.2vw, 5.9rem);--step-8:clamp(3.1rem, 1.1rem + 8.4vw, 8.2rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--sp-10:9rem;--sp-act:clamp(6rem, 13vh + 3rem, 12rem);--gutter:clamp(1.25rem, 5vw, 4rem);--measure:76rem;--measure-text:36rem;--radius-1:8px;--radius-2:14px;--radius-3:22px;--radius-4:32px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-move:cubic-bezier(.65, 0, .35, 1);--ease-pen:cubic-bezier(.44, .06, .3, .98);--t-fast:.18s;--t-base:.32s;--t-slow:.62s;--t-reveal:.9s;--t-act:.75s;--header-h:68px;--nav-tone:brightness(1.06) contrast(.84);--nav-sat:1.2;--grain:.038;--accent:var(--chamber-signal,var(--act-signal));--accent-2:var(--chamber-counter,var(--act-counter));color:var(--act-text);font-family:var(--font-ui);font-size:var(--step-0);letter-spacing:-.004em;transition:--act-ink var(--t-act) var(--ease-move), --act-signal var(--t-act) var(--ease-move), --act-counter var(--t-act) var(--ease-move), --act-text var(--t-act) var(--ease-move), --act-text-dim var(--t-act) var(--ease-move), --act-line var(--t-act) var(--ease-move);font-weight:380;line-height:1.62}@media (prefers-reduced-motion:reduce){.portfolio{transition-duration:1ms}}.site{z-index:1;position:relative;overflow-x:clip}.portfolio *,.portfolio :before,.portfolio :after{box-sizing:border-box}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio h4,.portfolio p,.portfolio ul,.portfolio ol,.portfolio dl,.portfolio dd,.portfolio figure{margin:0;padding:0}.portfolio ul,.portfolio ol{list-style:none}.portfolio ::selection{background:color-mix(in oklab, var(--accent) 38%, transparent);color:var(--act-text)}.portfolio :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-1)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:60;border-radius:0 0 var(--radius-2) var(--radius-2);background:var(--act-text);color:var(--act-ink);font-family:var(--font-mono);font-size:var(--step--1);transition:translate var(--t-base) var(--ease-out);padding:.7rem 1.3rem;text-decoration:none;position:fixed;top:0;left:50%;translate:-50% -120%}.skip:focus-visible{translate:-50%}.aurora{z-index:0;pointer-events:none;isolation:isolate;position:fixed;inset:0}.aurora__wash{background:radial-gradient(90% 60% at 16% 8%, color-mix(in oklab, var(--act-signal) 38%, transparent), transparent 64%), radial-gradient(70% 55% at 88% 72%, color-mix(in oklab, var(--act-counter) 32%, transparent), transparent 62%), radial-gradient(120% 75% at 62% 102%, color-mix(in oklab, var(--act-signal) 18%, transparent), transparent 58%), radial-gradient(60% 45% at 78% 4%, color-mix(in oklab, var(--act-counter) 16%, transparent), transparent 60%), var(--act-ink);transition:background var(--t-act) var(--ease-move);position:absolute;inset:0}.aurora__canvas{opacity:0;width:100%;height:100%;transition:opacity 1.2s var(--ease-out);display:block;position:absolute;inset:0}.aurora__canvas[data-live=true]{opacity:1}.aurora__scrim{background:var(--act-ink);opacity:var(--act-scrim,.42);transition:opacity var(--t-act) var(--ease-move), background var(--t-act) var(--ease-move);position:absolute;inset:0}.aurora__grain{opacity:var(--grain,.055);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/></filter><rect width='160' height='160' filter='url(%23n)' opacity='0.9'/></svg>");background-size:160px 160px;position:absolute;inset:-50%}.site-shell{width:min(100% - var(--gutter) * 2, var(--measure));margin-inline:auto}.site-section{padding-block:var(--sp-act);position:relative}.site-eyebrow{margin:0 0 var(--sp-4);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.65em;font-weight:500;display:flex}.site-eyebrow:before{content:"";opacity:.55;background:currentColor;width:2.2rem;height:1px}.site-h2{font-family:var(--font-display);font-size:var(--step-6);letter-spacing:-.022em;font-variation-settings:"opsz" 112, "SOFT" 18, "WONK" 0;text-wrap:balance;margin:0;font-weight:420;line-height:.98}.site-lede{max-width:var(--measure-text);margin-top:var(--sp-5);font-size:var(--step-1);color:var(--act-text-dim);text-wrap:pretty;line-height:1.52}.site-link{color:var(--accent);text-underline-offset:.25em;text-decoration-thickness:1px}[data-reveal]{opacity:0;transition:opacity var(--t-reveal) var(--ease-out) var(--d,0s), translate var(--t-reveal) var(--ease-out) var(--d,0s);translate:0 18px}[data-reveal][data-revealed=true]{opacity:1;translate:none}.kin{display:block}.kin__word{vertical-align:top;margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.kin__ch{opacity:0;transition:translate 1s var(--ease-out), opacity .7s linear;transition-delay:calc(var(--i) * var(--kin-step,42ms));display:inline-block;translate:0 1.05em}.kin[data-revealed=true] .kin__ch{opacity:1;translate:none}@media (prefers-reduced-motion:reduce){[data-reveal],.kin__ch{opacity:1!important;transition:none!important;translate:none!important}.kin__word{overflow:visible}}.nav{z-index:40;align-items:center;gap:var(--sp-5);height:var(--header-h);padding-inline:var(--gutter);color:var(--act-text);display:flex;position:fixed;top:0;left:0;right:0}.nav__glass{pointer-events:none;opacity:0;background:linear-gradient(to bottom, color-mix(in oklab, var(--act-ink) 84%, transparent) 0%, color-mix(in oklab, var(--act-ink) 78%, transparent) 62%, color-mix(in oklab, var(--act-ink) 62%, transparent) 100%);-webkit-backdrop-filter:blur(30px) saturate(var(--nav-sat)) var(--nav-tone);backdrop-filter:blur(30px) saturate(var(--nav-sat)) var(--nav-tone);border-bottom:1px solid var(--act-line);transition:opacity var(--t-base) var(--ease-out), background var(--t-act) var(--ease-move);position:absolute;inset:0}.nav__glass:after{content:"";background:linear-gradient(to bottom, color-mix(in oklab, var(--act-ink) 34%, transparent), transparent);height:20px;position:absolute;top:100%;left:0;right:0}.nav[data-lifted=true] .nav__glass{opacity:1}.nav__mark{width:clamp(124px,14vw,168px);color:var(--act-text);transition:color var(--t-act) var(--ease-move);flex:none;display:block;position:relative}.nav__mark .mark{width:100%;height:auto;display:block}.nav__links{align-items:center;gap:.35rem;margin-inline:auto;display:flex;position:relative}.nav__indicator{height:2rem;width:var(--ind-w,0px);translate:var(--ind-x,0px) -50%;opacity:var(--ind-o,0);background:color-mix(in oklab, var(--accent) 16%, transparent);border:1px solid color-mix(in oklab, var(--accent) 34%, transparent);transition:translate .52s var(--ease-out), width .52s var(--ease-out), opacity var(--t-base) var(--ease-out), background var(--t-act) var(--ease-move);border-radius:999px;position:absolute;top:50%;left:0}.nav__link{z-index:1;font-size:var(--step--1);letter-spacing:.005em;color:var(--act-text-dim);transition:color var(--t-base) var(--ease-out);border-radius:999px;padding:.4rem .85rem;font-weight:450;text-decoration:none;position:relative}.nav__link:hover,.nav__link[data-active=true]{color:var(--act-text)}.nav__end{align-items:center;gap:var(--sp-3);flex:none;margin-left:auto;display:flex}.nav__burger{z-index:1;border:1px solid var(--act-line);width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0;display:none;position:relative}.nav__bars{justify-items:center;gap:5px;display:grid}.nav__bars i{width:16px;height:1.5px;transition:translate var(--t-base) var(--ease-out), rotate var(--t-base) var(--ease-out);background:currentColor;display:block}.nav__bars[data-open=true] i:first-child{translate:0 3.25px;rotate:45deg}.nav__bars[data-open=true] i:last-child{translate:0 -3.25px;rotate:-45deg}@media (max-width:900px){.nav .nav__links,.nav__end .nav__cta{display:none}.nav__burger{place-items:center;display:grid}}.sheet{z-index:50;align-content:center;gap:var(--sp-7);padding:var(--gutter);background:color-mix(in oklab, var(--act-ink) 94%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);opacity:0;visibility:hidden;transition:opacity var(--t-base) var(--ease-out), visibility 0s linear var(--t-base);display:grid;position:fixed;inset:0}.sheet[data-open=true]{opacity:1;visibility:visible;transition-delay:0s}.sheet__nav{gap:var(--sp-2);display:grid}.sheet__link{align-items:baseline;gap:var(--sp-4);padding-block:var(--sp-3);font-family:var(--font-display);font-size:var(--step-5);font-variation-settings:"opsz" 72, "SOFT" 18;color:var(--act-text);border-bottom:1px solid var(--act-line);opacity:0;transition:opacity .42s var(--ease-out), translate .42s var(--ease-out);transition-delay:calc(var(--i) * 60ms + 80ms);font-weight:420;text-decoration:none;display:flex;translate:0 14px}.sheet[data-open=true] .sheet__link{opacity:1;translate:none}.sheet__n{font-family:var(--font-mono);font-size:var(--step--2);color:var(--accent)}.sheet__foot{font-family:var(--font-mono);font-size:var(--step--1)}.action{isolation:isolate;font-family:var(--font-ui);font-size:var(--step-0);letter-spacing:-.006em;cursor:pointer;color:var(--act-text);translate:var(--mx,0) var(--my,0);transition:translate .42s var(--ease-out), color var(--t-base) var(--ease-out), scale .16s var(--ease-out);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:.92em 1.5em;font-weight:500;line-height:1;text-decoration:none;display:inline-flex;position:relative}.action:active{transition-duration:80ms;scale:.975}.action[disabled]{opacity:.5;cursor:progress}.action__label{z-index:3;translate:calc(var(--mx,0px) * .34) calc(var(--my,0px) * .34);transition:translate .42s var(--ease-out);align-items:center;gap:.6em;display:inline-flex;position:relative}.action__arrow{width:1em;height:.75em;transition:translate var(--t-base) var(--ease-out);overflow:visible}.action:hover .action__arrow{translate:.22em}.action__sheen{z-index:2;border-radius:inherit;opacity:0;background:radial-gradient(18em 12em at var(--px,50%) var(--py,50%), #ffffff6b, transparent 62%);transition:opacity var(--t-base) var(--ease-out);pointer-events:none;position:absolute;inset:0}@supports (color:lab(0% 0 0)){.action__sheen{background:radial-gradient(18em 12em at var(--px,50%) var(--py,50%), lab(100% -.0000298023 .0000119209/.42), transparent 62%)}}.action:hover .action__sheen{opacity:.5}.action__edge{z-index:1;border-radius:inherit;background:conic-gradient(from var(--edge-a,0deg), transparent 0deg, var(--accent) 60deg, transparent 140deg, transparent 220deg, var(--accent-2) 290deg, transparent 350deg);-webkit-mask-composite:xor;opacity:0;transition:opacity var(--t-base) var(--ease-out);pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.action:hover .action__edge,.action:focus-visible .action__edge{opacity:1;animation:4.2s linear infinite edge-spin}@property --edge-a{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes edge-spin{to{--edge-a:360deg}}.action--primary{color:var(--act-ink);background:linear-gradient(104deg, var(--accent) 0%, color-mix(in oklab, var(--accent) 72%, var(--accent-2)) 100%);box-shadow:0 1px 0 #ffffff57 inset, 0 10px 30px -12px color-mix(in oklab, var(--accent) 70%, transparent);transition:translate .42s var(--ease-out), background var(--t-act) var(--ease-move), box-shadow var(--t-base) var(--ease-out), scale .16s var(--ease-out)}@supports (color:lab(0% 0 0)){.action--primary{box-shadow:0 1px 0 lab(100% -.0000298023 .0000119209/.34) inset, 0 10px 30px -12px color-mix(in oklab, var(--accent) 70%, transparent)}}.action--primary:hover{box-shadow:0 1px 0 #ffffff70 inset, 0 16px 40px -14px color-mix(in oklab, var(--accent) 85%, transparent)}@supports (color:lab(0% 0 0)){.action--primary:hover{box-shadow:0 1px 0 lab(100% -.0000298023 .0000119209/.44) inset, 0 16px 40px -14px color-mix(in oklab, var(--accent) 85%, transparent)}}.action--ghost{border:1px solid var(--act-line);background:color-mix(in oklab, var(--act-text) 5%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.action--ghost:hover{border-color:color-mix(in oklab, var(--accent) 50%, transparent)}.action--quiet{color:var(--accent);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;border-radius:0;padding:.4em 0}.action--quiet .action__edge,.action--quiet .action__sheen{display:none}.action--quiet .action__label:after{content:"";transform-origin:0;height:1px;transition:scale .42s var(--ease-out);background:currentColor;position:absolute;bottom:-.45em;left:0;right:0;scale:0 1}.action--quiet:hover .action__label:after{scale:1}@media (prefers-reduced-motion:reduce){.action,.action__label{transition:none;translate:none!important}.action__edge{animation:none}}.cursorlight{z-index:30;pointer-events:none;opacity:0;background:radial-gradient(circle, color-mix(in oklab, var(--accent) 24%, transparent), transparent 62%);width:28rem;height:28rem;transition:opacity .5s var(--ease-out), scale .48s var(--ease-out);will-change:transform;margin:-14rem 0 0 -14rem;position:fixed;top:0;left:0}.cursorlight[data-live=true]{opacity:1}.cursorlight[data-over=true]{scale:1.35}.cursorlight[data-down=true]{scale:.8}.cursorlight[data-out=true]{opacity:0}@media (prefers-color-scheme:light){.cursorlight{background:radial-gradient(circle, color-mix(in oklab, var(--accent) 14%, transparent), transparent 60%)}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursorlight{display:none}}.rail{z-index:20;pointer-events:none;display:grid;position:fixed;top:50%;right:clamp(1rem,2.4vw,2.2rem);translate:0 -50%}.rail__track,.rail__fill{width:1px;position:absolute;top:0;bottom:0;left:3px}.rail__track{background:var(--act-line)}.rail__fill{background:var(--accent);transform-origin:top;scale:1 var(--progress,0)}.rail__stations{gap:clamp(1.1rem,2.6vh,2rem);display:grid}.rail__station{align-items:center;gap:.7rem;display:flex}.rail__dot{background:var(--act-line);width:7px;height:7px;transition:background var(--t-base) var(--ease-out), scale var(--t-base) var(--ease-out);border-radius:999px}.rail__label{font-family:var(--font-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--act-text-dim);opacity:0;transition:opacity var(--t-base) var(--ease-out), translate var(--t-base) var(--ease-out);font-size:.62rem;translate:-6px}.portfolio[data-act=arrival] .rail__station[data-for=arrival] .rail__dot,.portfolio[data-act=capability] .rail__station[data-for=capability] .rail__dot,.portfolio[data-act=work] .rail__station[data-for=work] .rail__dot,.portfolio[data-act=craft] .rail__station[data-for=craft] .rail__dot,.portfolio[data-act=invitation] .rail__station[data-for=invitation] .rail__dot{background:var(--accent);scale:1.45}.portfolio[data-act=arrival] .rail__station[data-for=arrival] .rail__label,.portfolio[data-act=capability] .rail__station[data-for=capability] .rail__label,.portfolio[data-act=work] .rail__station[data-for=work] .rail__label,.portfolio[data-act=craft] .rail__station[data-for=craft] .rail__label,.portfolio[data-act=invitation] .rail__station[data-for=invitation] .rail__label{opacity:1;translate:none}@media (max-width:1200px){.rail{display:none}}html[data-overture] body{overflow:hidden}.ov{z-index:70;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.ov__veil{background:var(--act-ink);transition:opacity .62s var(--ease-in);position:absolute;inset:0}.ov__stage{justify-items:center;gap:var(--sp-5);width:min(78vw,60rem);display:grid;position:relative}.ov__mark{width:100%;height:auto;overflow:visible}.ov__rule{background:linear-gradient(90deg, transparent, var(--act-signal), transparent);width:0;height:1px;transition:width .9s var(--ease-out) .9s}.mark__wipe,.mark__nib{stroke-dasharray:1 1.02;stroke-dashoffset:1px}.mark__nib{stroke-dasharray:.008 1.02;opacity:0}.ov[data-phase=writing] .mark__wipe{transition:stroke-dashoffset 1.9s var(--ease-pen);stroke-dashoffset:0}.ov[data-phase=writing] .mark__nib{transition:stroke-dashoffset 1.9s var(--ease-pen), opacity .24s linear;stroke-dashoffset:0;opacity:.85}.ov[data-quick=true][data-phase=writing] .mark__wipe,.ov[data-quick=true][data-phase=writing] .mark__nib{transition-duration:.62s}.ov[data-quick=true] .ov__rule{transition-duration:.42s;transition-delay:.3s}.ov[data-phase=writing] .ov__rule{width:100%}.ov[data-phase=leaving]{transition:opacity .62s var(--ease-in);opacity:0}.ov[data-phase=leaving] .ov__stage{transition:scale .62s var(--ease-in), translate .62s var(--ease-in);translate:0 -38vh;scale:.86}.ov[data-phase=leaving] .mark__nib{opacity:0}@media (prefers-reduced-motion:reduce){.mark__wipe{stroke-dashoffset:0}.mark__nib{display:none}.ov__mark{opacity:0;transition:opacity .42s linear}.ov[data-phase=writing] .ov__mark{opacity:1}.ov[data-phase=leaving] .ov__stage{translate:none;scale:1}.ov__rule{transition-duration:.3s;transition-delay:.16s}}.hero{min-height:100svh;padding-top:calc(var(--header-h) + var(--sp-5));padding-bottom:var(--sp-5);grid-template-rows:1fr auto;display:grid;position:relative}.hero__inner{width:min(100% - var(--gutter) * 2, var(--measure));padding-block:var(--sp-5);align-self:center;margin-inline:auto}.hero__eyebrow{color:var(--act-text)}.hero__eyebrow:before{display:none}.hero__pulse{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in oklab, var(--accent) 70%, transparent);animation:pulse 2.6s var(--ease-out) infinite;border-radius:999px}@keyframes pulse{70%{box-shadow:0 0 0 11px #0000}to{box-shadow:0 0 #0000}}.hero__title{font-family:var(--font-display);font-size:var(--step-8);letter-spacing:-.035em;font-variation-settings:"opsz" 144, "SOFT" 22, "WONK" 0;text-wrap:nowrap;margin:0;font-weight:400;line-height:.88}.hero__line{display:block}.hero__accent{padding-left:clamp(0rem,9vw,7rem);display:block}.hero__line--italic{font-variation-settings:"opsz" 144, "SOFT" 30, "WONK" 1;background:linear-gradient(96deg, var(--act-signal) 0%, var(--act-text) 44%, var(--act-counter) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}.hero__lede{max-width:44rem;margin-top:var(--sp-6);font-size:var(--step-1);color:var(--act-text-dim);text-wrap:pretty;line-height:1.5}.hero__actions{gap:var(--sp-4);margin-top:var(--sp-7);flex-wrap:wrap;display:flex}.hero__foot{width:min(100% - var(--gutter) * 2, var(--measure));justify-content:space-between;align-items:flex-end;gap:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--act-line);margin-inline:auto;display:flex}.proof{gap:var(--sp-6) clamp(1.5rem, 4vw, 3.4rem);flex-wrap:wrap;margin:0;display:flex}.proof__item{gap:.15rem;display:grid}.proof__k{font-family:var(--font-display);font-size:var(--step-2);font-variation-settings:"opsz" 40, "SOFT" 18;color:var(--act-text);font-weight:440;line-height:1}.proof__v{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;color:var(--act-text-dim);margin:0}.hero__scroll{justify-items:center;gap:var(--sp-3);color:var(--act-text-dim);flex:none;text-decoration:none;display:grid}.hero__scroll-word{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.24em;text-transform:uppercase;writing-mode:vertical-rl}.hero__scroll-line{background:linear-gradient(var(--act-line), var(--accent));width:1px;height:3.6rem;position:relative;overflow:hidden}.hero__scroll-line:after{content:"";background:var(--accent);animation:scroll-cue 2.4s var(--ease-move) infinite;position:absolute;inset:0}@keyframes scroll-cue{0%{translate:0 -100%}60%,to{translate:0 100%}}@media (max-width:760px){.hero__title{text-wrap:balance}.hero__foot{flex-direction:column;align-items:stretch}.hero__scroll{display:none}}.caps__shell{width:min(100% - var(--gutter) * 2, var(--measure));grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:stretch;gap:clamp(2rem,6vw,6rem);margin-inline:auto;display:grid}.caps__aside{min-width:0}.caps__sticky{top:calc(var(--header-h) + var(--sp-7));position:sticky}.caps__lede{margin-top:var(--sp-5)}.caps__list{gap:clamp(3rem,7vw,6rem);display:grid}.cap{gap:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--act-line);display:grid;position:relative}.cap__index{top:var(--sp-5);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.2em;color:var(--act-text-dim);opacity:.7;position:absolute;right:0}.cap__art{border-radius:var(--radius-2);aspect-ratio:16/5;position:relative;overflow:hidden}.cap__art .plate,.cap__art img{object-fit:cover;width:100%;height:100%}.cap__title{font-family:var(--font-display);font-size:var(--step-3);font-variation-settings:"opsz" 48, "SOFT" 18;letter-spacing:-.015em;font-weight:440;line-height:1.08}.cap__text{margin-top:var(--sp-3);max-width:34rem;color:var(--act-text-dim);text-wrap:pretty}.cap__evidence{margin-top:var(--sp-4);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}@media (max-width:900px){.caps__shell{grid-template-columns:minmax(0,1fr)}.caps__sticky{position:static}}.work__head{max-width:48rem}.work__title{font-size:var(--step-7)}.work__lede{margin-top:var(--sp-5)}.work__chambers{gap:clamp(5rem,12vh,9rem);margin-top:clamp(4rem,9vh,7rem);display:grid}.chamber{position:relative}.chamber__rule{width:min(100% - var(--gutter) * 2, var(--measure));margin:0 auto var(--sp-6);border-top:1px solid var(--act-line);padding-top:var(--sp-3)}.chamber__index{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.24em;color:var(--accent)}.chamber__grid{width:min(100% - var(--gutter) * 2, var(--measure));grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);margin-inline:auto;display:grid}.chamber[data-side=right] .chamber__stage{order:2}.chamber__stage{top:calc(var(--header-h) + var(--sp-6));margin:0;position:sticky}.chamber__screen{border-radius:var(--radius-3);box-shadow:0 2px 6px -2px color-mix(in oklab, var(--act-shadow) 26%, transparent), 0 40px 80px -30px color-mix(in oklab, var(--act-shadow) 46%, transparent);position:relative;overflow:hidden}.chamber__screen .plate,.chamber__screen img{width:100%;height:auto;display:block}.chamber__stage[data-frame=browser] .chamber__screen{background:color-mix(in oklab, var(--act-text) 10%, var(--act-ink));border:1px solid var(--act-line);padding-top:2.1rem}.chamber__stage[data-frame=browser] .chamber__screen:before{content:"";background:radial-gradient(circle at .27rem 50%, color-mix(in oklab, var(--act-text) 34%, transparent) .27rem, transparent .28rem), radial-gradient(circle at 1.3rem 50%, color-mix(in oklab, var(--act-text) 34%, transparent) .27rem, transparent .28rem), radial-gradient(circle at 2.33rem 50%, color-mix(in oklab, var(--act-text) 34%, transparent) .27rem, transparent .28rem);border-radius:999px;width:2.6rem;height:.55rem;position:absolute;top:.78rem;left:.95rem}.chamber__inset{border-radius:var(--radius-2);border:1px solid color-mix(in oklab, var(--act-text) 18%, transparent);width:clamp(5.5rem,15%,9rem);box-shadow:0 26px 50px -22px color-mix(in oklab, var(--act-shadow) 60%, transparent);position:absolute;bottom:-2.2rem;right:-1.6rem;overflow:hidden;rotate:-3deg}.chamber__inset .plate,.chamber__inset img{width:100%;height:auto;display:block}.chamber__body{min-width:0}.chamber__status{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.16em;text-transform:uppercase;color:var(--act-text);flex-wrap:wrap;align-items:center;gap:.55em;display:flex}.chamber__dot{background:var(--accent);border-radius:999px;width:7px;height:7px}.chamber__status[data-status=pre-launch] .chamber__dot{box-shadow:inset 0 0 0 1.5px var(--accent);background:0 0}.chamber__status-detail{color:var(--act-text-dim);letter-spacing:.08em}.chamber__name{margin-top:var(--sp-3);font-family:var(--font-display);font-size:var(--step-5);letter-spacing:-.024em;font-variation-settings:"opsz" 96, "SOFT" 18;font-weight:430;line-height:.98}.chamber__kicker{margin-top:var(--sp-2);max-width:28rem;font-family:var(--font-display);font-style:italic;font-size:var(--step-2);font-variation-settings:"opsz" 48, "SOFT" 28, "WONK" 1;color:var(--act-text-dim);font-weight:400;line-height:1.22}.chamber__prose{gap:var(--sp-5);margin-top:var(--sp-6);max-width:36rem;display:grid}.chamber__h{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.17em;text-transform:uppercase;color:var(--act-text-dim);margin-bottom:var(--sp-2);font-weight:500}.chamber__block p{color:var(--act-text);text-wrap:pretty}.chamber__facts{gap:var(--sp-4) var(--sp-5);margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--act-line);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.chamber__facts dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;color:var(--act-text-dim)}.chamber__facts dd{font-family:var(--font-display);font-size:var(--step-1);font-variation-settings:"opsz" 36, "SOFT" 18;margin:.25rem 0 0;font-weight:450;line-height:1.1}.chamber__foot{justify-content:space-between;align-items:center;gap:var(--sp-4);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.chamber__stack{flex-wrap:wrap;gap:.4rem;display:flex}.chamber__stack li{border:1px solid var(--act-line);font-family:var(--font-mono);letter-spacing:.04em;color:var(--act-text-dim);border-radius:999px;padding:.3rem .7rem;font-size:.68rem}@media (max-width:1000px){.chamber__grid{gap:var(--sp-6);grid-template-columns:minmax(0,1fr)}.chamber[data-side=right] .chamber__stage{order:0}.chamber__stage{position:static}.chamber__inset{bottom:.75rem;right:.75rem;rotate:none}}.shipped{padding-top:var(--sp-7);border-top:1px solid var(--act-line);margin-top:clamp(5rem,11vh,8rem)}.shipped__title{gap:var(--sp-3);font-family:var(--font-display);font-size:var(--step-4);font-variation-settings:"opsz" 72, "SOFT" 18;letter-spacing:-.02em;font-weight:430;line-height:1.02;display:grid}.shipped__list{gap:var(--sp-6);margin-top:var(--sp-7);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));display:grid}.ship__link{gap:var(--sp-4);color:inherit;text-decoration:none;display:grid}.ship__art{border-radius:var(--radius-2);aspect-ratio:16/10;border:1px solid var(--act-line);display:block;overflow:hidden}.ship__art .plate,.ship__art img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:scale .7s var(--ease-out)}.ship__link:hover .ship__art img{scale:1.035}.ship__body{gap:var(--sp-2);display:grid}.ship__what{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.16em;text-transform:uppercase;color:var(--act-text-dim)}.ship__name{font-family:var(--font-display);font-size:var(--step-3);font-variation-settings:"opsz" 56, "SOFT" 18;letter-spacing:-.018em;font-weight:440;line-height:1.04}.ship__note{color:var(--act-text-dim);font-size:var(--step--1);text-wrap:pretty;line-height:1.55}.ship__stack{font-family:var(--font-mono);color:var(--act-text-dim);opacity:.8;font-size:.68rem}.ship__url{margin-top:var(--sp-1);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;color:var(--accent);align-items:center;gap:.5em;display:inline-flex}.ship__url svg{width:1em;height:.75em;transition:translate var(--t-base) var(--ease-out)}.ship__link:hover .ship__url svg{translate:.25em}.process__head{max-width:44rem}.process .process__path{gap:clamp(2.5rem,6vh,4rem);margin-top:clamp(3rem,8vh,5rem);padding-left:clamp(2.5rem,6vw,4.5rem);display:grid;position:relative}.process__line{background:var(--act-line);width:1px;position:absolute;top:.6rem;bottom:.6rem;left:clamp(.65rem,1.6vw,1.2rem);overflow:hidden}.process__line-fill{background:linear-gradient(var(--accent), var(--accent-2));transform-origin:top;position:absolute;inset:0;scale:1 0}@supports (animation-timeline:view()){.process__line-fill{animation:linear both draw-line;animation-timeline:view();animation-range:entry 70% exit 20%}@keyframes draw-line{0%{scale:1 0}to{scale:1}}}.step{display:grid;position:relative}.step__node{background:var(--act-ink);border:1px solid var(--act-line);border-radius:999px;place-items:center;width:13px;height:13px;display:grid;position:absolute;top:.35rem;left:calc(-1*clamp(2.5rem,6vw,4.5rem) + clamp(.65rem,1.6vw,1.2rem) - 6px)}.step__pip{background:var(--accent);width:5px;height:5px;transition:scale .52s var(--ease-out) var(--d,0s);border-radius:999px;scale:0}.step[data-revealed=true] .step__pip{scale:1}.step__n{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.2em;color:var(--accent)}.step__title{margin-top:var(--sp-2);font-family:var(--font-display);font-size:var(--step-3);font-variation-settings:"opsz" 56, "SOFT" 18;letter-spacing:-.018em;font-weight:440;line-height:1.06}.step__text{margin-top:var(--sp-3);max-width:38rem;color:var(--act-text-dim);text-wrap:pretty}.contact__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:start;gap:clamp(2rem,6vw,5rem);display:grid}.contact__title{font-size:var(--step-6)}.contact__direct{margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--act-line)}.contact__direct-label{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.18em;text-transform:uppercase;color:var(--act-text-dim)}.contact__direct-row{align-items:center;gap:var(--sp-4);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.contact__email{font-family:var(--font-display);font-size:var(--step-2);font-variation-settings:"opsz" 40, "SOFT" 18;color:var(--act-text);border-bottom:1px solid color-mix(in oklab, var(--accent) 60%, transparent);transition:color var(--t-base) var(--ease-out);padding-bottom:.1em;font-weight:430;text-decoration:none}.contact__email:hover{color:var(--accent)}.contact__copy{border:1px solid var(--act-line);color:var(--act-text-dim);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;cursor:pointer;transition:color var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out);background:0 0;border-radius:999px;padding:.35rem .8rem}.contact__copy:hover{color:var(--act-text);border-color:color-mix(in oklab, var(--accent) 50%, transparent)}.contact__form-wrap{border-radius:var(--radius-4);border:1px solid var(--act-line);background:color-mix(in oklab, var(--act-ink) 58%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.2);backdrop-filter:blur(22px)saturate(1.2);box-shadow:0 40px 90px -40px color-mix(in oklab, var(--act-shadow) 80%, transparent);padding:clamp(1.5rem,3vw,2.5rem);position:relative}.form{gap:var(--sp-5);display:grid}.form__row{gap:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.field{gap:var(--sp-2);display:grid}.field__label{font-size:var(--step--1);color:var(--act-text);font-weight:500}.field__hint{font-weight:400;font-size:var(--step--2);color:var(--act-text-dim);display:block}.field__input{border-radius:var(--radius-2);border:1px solid var(--act-line);background:color-mix(in oklab, var(--act-ink) 55%, transparent);width:100%;color:var(--act-text);font:inherit;font-size:var(--step-0);transition:border-color var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), background var(--t-act) var(--ease-move);padding:.8rem .95rem}.field__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent);outline:none}.field__input::placeholder{color:var(--act-text-dim)}textarea.field__input{resize:vertical;min-height:9rem;line-height:1.5}.field[data-invalid=true] .field__input{border-color:var(--act-danger)}.field__select{display:block;position:relative}.field__select select{appearance:none;padding-right:2.4rem}.field__chev{pointer-events:none;color:var(--act-text-dim);font-size:.7rem;position:absolute;top:50%;right:.95rem;translate:0 -50%}.form__trap{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form__error{color:var(--act-danger);font-size:var(--step--1)}.form__notice{padding:var(--sp-4);border-radius:var(--radius-2);border:1px solid var(--act-line);font-size:var(--step--1);color:var(--act-text-dim)}.form__notice--bad{border-color:color-mix(in oklab, var(--act-danger) 48%, transparent);background:color-mix(in oklab, var(--act-danger) 8%, transparent);color:var(--act-text)}.form[aria-busy=true] .field__input{opacity:.72}.form__submit{justify-self:start}.form__fine{font-size:var(--step--2);color:var(--act-text-dim)}.contact__done{gap:var(--sp-4);display:grid}.contact__done-title{font-family:var(--font-display);font-size:var(--step-3);font-variation-settings:"opsz" 56, "SOFT" 18;font-weight:440;line-height:1.08}.contact__done p{color:var(--act-text-dim)}@media (max-width:900px){.contact__inner{grid-template-columns:minmax(0,1fr)}}.foot{padding-block:var(--sp-8) var(--sp-7);border-top:1px solid var(--act-line);position:relative}.foot__inner{gap:var(--sp-6);display:grid}.foot__mark{width:clamp(180px,26vw,300px);color:var(--act-text);display:block}.foot__mark .mark{width:100%;height:auto;display:block}.foot__contact{gap:var(--sp-2);display:grid}.foot__lead{font-family:var(--font-display);font-size:var(--step-2);font-variation-settings:"opsz" 40, "SOFT" 18;font-weight:430}.foot__email{font-family:var(--font-mono);font-size:var(--step--1);color:var(--accent);border-bottom:1px solid color-mix(in oklab, var(--accent) 45%, transparent);justify-self:start;text-decoration:none}.foot__fine{justify-content:space-between;gap:var(--sp-3);padding-top:var(--sp-5);border-top:1px solid var(--act-line);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--act-text-dim);flex-wrap:wrap;display:flex}.plate{width:100%;display:block;position:relative;overflow:hidden}.plate img{object-fit:cover;opacity:0;width:100%;height:100%;animation:plate-in .7s var(--ease-out) forwards;display:block}@keyframes plate-in{to{opacity:1}}@media (prefers-reduced-motion:reduce){.plate img{opacity:1;animation:none}}@media (prefers-color-scheme:dark){.portfolio{--nav-tone:brightness(.62) contrast(.9);--nav-sat:1.3;--grain:.055}}@media print{.aurora,.rail,.cursorlight,.ov,.nav,.sheet{display:none!important}.portfolio{color:#000}[data-reveal],.kin__ch{opacity:1!important;translate:none!important}}
