@font-face{font-family:"Jersey 10";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jersey-10-latin-400-normal-DrL73VYW.woff2)format("woff2"),url(/assets/jersey-10-latin-400-normal-B8YT2i2g.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;color:currentColor}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}:root{--snow:#f3f6f9;--white:#fff;--flag:var(--white);--ice:#cfe4f2;--ice-deep:#2c659f;--glacier:#6da9e1;--canvas:#5d7c98;--timber:#9f886c;--sky:#527fb8;--haze:#f4bf80;--sunlight:#ffdfa6;--shadow:#6489cd;--rock:#5c6068;--ink:#14222f;--red:#c42a22;--cat-fur:#788b9f;--cat-eyes:#d7a651;--scene-key:3.8;--scene-fill:1.55;--scene-glow:1;--fallback-light:1;--hut-light:#ffcf8c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-time-of-day=morning]{--scene-sky:#7f99c3;--scene-haze:#edc2b0;--scene-sunlight:#ffe0c6;--scene-shadow:#778ac0;--scene-key:3;--scene-fill:1.45}:root[data-time-of-day=evening]{--scene-sky:#465274;--scene-haze:#b17d8d;--scene-sunlight:#efb69d;--scene-shadow:#525f91;--scene-ice:#929cb8;--scene-key:1.65;--scene-fill:1.1;--scene-glow:.45;--fallback-light:.7}:root[data-time-of-day=night]{--scene-sky:#182840;--scene-haze:#445b7e;--scene-sunlight:#a9c6ee;--scene-shadow:#354d78;--scene-ice:#829abb;--scene-key:1.05;--scene-fill:.85;--scene-glow:.18;--fallback-light:.48}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--ice);color:var(--ink);font:1.125rem/1.45 Atkinson Hyperlegible,system-ui,sans-serif}ol,ul{list-style:none}h1,h2{font:2.75rem/1 "Jersey 10",sans-serif}@media (width<=40rem){h1,h2{font-size:2.25rem}}a{color:var(--ink);text-underline-offset:.15em}a:hover{color:var(--red)}a:focus-visible{outline:3px solid var(--red);outline-offset:2px}.stop{flex-direction:column;justify-content:center;min-height:100svh;padding:16px calc(14rem + 64px) 16px 48px;scroll-margin-block:0;display:flex}@media (width<=40rem){.stop{justify-content:flex-end;padding:5.5rem 20px 20px 16px}}.has-scene .stop{min-height:calc(var(--section-screens) * 100svh);justify-content:flex-start}@media (width<=40rem){.has-scene .stop{justify-content:flex-end}}.backdrop img{z-index:-1;object-fit:cover;width:100%;height:100%;filter:brightness(var(--fallback-light));position:fixed;inset:0}.scene{z-index:-1;opacity:0;width:100%;height:100%;image-rendering:pixelated;transition:opacity .8s;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.scene{transition:none}}.scene.ready{opacity:1}.panel{background:var(--snow);border:3px solid var(--ink);width:100%;max-width:29rem;box-shadow:6px 6px 0 var(--ink)}@media (width<=40rem){.panel{box-shadow:4px 4px 0 var(--ink)}}.has-scene .panel{transition:opacity .35s,transform .35s;position:sticky;top:18svh}@media (prefers-reduced-motion:reduce){.has-scene .panel{transition:none}}@media (width<=40rem){.has-scene .panel{top:auto;bottom:20px}}.has-scene .stop:not(.is-held) .panel:not(:focus-within){opacity:0;pointer-events:none;transform:translate(-3rem)}@media (width<=40rem){.has-scene .stop:not(.is-held) .panel:not(:focus-within){transform:translateY(3rem)}}.band{background:var(--red);color:var(--white);border-bottom:3px solid var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1.125rem .375rem;display:flex}.band .handle{font-size:1.875rem}.band .alt{flex:none;font:1.875rem/1 "Jersey 10",sans-serif}@media (width<=40rem){.band .alt{font-size:1.5rem}}.body{flex-direction:column;gap:.75rem;padding:1.125rem 1.25rem 1.375rem;display:flex}@media (width<=40rem){.body{padding:.875rem 1rem 1rem;font-size:1.0625rem}}.body .label{letter-spacing:.04em;text-transform:uppercase;margin-top:.25rem;font-size:1rem;font-weight:700}.pack{flex-wrap:wrap;gap:.375rem;font-size:1rem;display:flex}.pack li{border:2px solid var(--ink);align-items:center;gap:.375rem;padding:.125rem .5rem;display:inline-flex}.new-tag{border:1px solid var(--ink);background:var(--red);color:var(--white);text-transform:uppercase;padding:.0625rem .25rem;font:1rem/1 "Jersey 10",sans-serif;display:inline-block}.projects li{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.4375rem 0;display:flex}.projects li:last-child{border-bottom:0}.projects .stack{width:1.75rem;height:1.75rem;color:var(--ink);flex:0 0 1.75rem;display:inline-flex}.projects .stack svg{shape-rendering:crispedges;width:100%;height:100%;display:block}.project-credit{font-size:1rem}.tech-symbols{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.tech-accent{fill:var(--red)}.altimeter{z-index:5;background:var(--snow);border:3px solid var(--ink);width:14rem;box-shadow:6px 6px 0 var(--ink);position:fixed;top:32px;right:32px;transform:none}@media (width<=40rem),(height<=32rem){.altimeter{width:auto;box-shadow:4px 4px 0 var(--ink);top:16px;left:16px;right:20px;transform:none}}@media (width>=40.001rem) and (height<=32rem){.altimeter{width:20rem;left:auto}}.altimeter .head{background:var(--ink);color:var(--snow);justify-content:space-between;align-items:baseline;padding:.375rem .875rem .25rem;font:1.5rem/1 "Jersey 10",sans-serif;display:flex}@media (width<=40rem),(height<=32rem){.altimeter .head{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.altimeter .reading{font-variant-numeric:tabular-nums}.altimeter ol{background:linear-gradient(var(--ink), var(--ink)) no-repeat 1.4375rem 1.75rem/3px calc(100% - 3.5rem);flex-direction:column-reverse;gap:.875rem;padding:.875rem;display:flex}@media (width<=40rem),(height<=32rem){.altimeter ol{background:linear-gradient(var(--ink), var(--ink)) no-repeat center/calc(100% - 4rem) 3px;flex-direction:row;justify-content:space-between;align-items:center;padding:.25rem .625rem}}.altimeter a{align-items:center;gap:.75rem;text-decoration:none;display:flex}@media (width<=40rem),(height<=32rem){.altimeter a{background:var(--snow);justify-content:center;min-height:44px;padding:.5rem .375rem}}.altimeter a:hover .name{text-decoration:underline}@media (width<=40rem),(height<=32rem){.altimeter a[aria-current]{background:var(--red);color:var(--white);outline:2px solid var(--ink)}}.altimeter a[aria-current] .mark{background:var(--red)}.altimeter a[aria-current] .name{font-weight:700}.altimeter a[aria-current] .num{color:var(--red)}@media (width<=40rem),(height<=32rem){.altimeter a[aria-current] .num{color:inherit}}.altimeter .mark{background:var(--snow);border:3px solid var(--ink);flex:none;width:1.25rem;height:1.25rem}@media (width<=40rem),(height<=32rem){.altimeter .mark{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.altimeter .name{flex-grow:1;font-size:1.0625rem}@media (width<=40rem),(height<=32rem){.altimeter .name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.altimeter .num{font:1.5rem/1 "Jersey 10",sans-serif}.altimeter .unit{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hint{background:var(--snow);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);align-self:flex-start;margin-top:2rem;padding:.375rem .875rem .25rem;font:1.625rem/1 "Jersey 10",sans-serif;transition:opacity .4s}@media (width<=40rem){.hint{order:-1;margin:0 0 1rem}}@media (prefers-reduced-motion:reduce){.hint{transition:none}}.has-scene .hint{margin:0;position:fixed;bottom:2.5rem;left:50%;transform:translate(-50%)}@media (width<=40rem){.has-scene .hint{top:5.5rem;bottom:auto}}.scrolled .hint{opacity:0;pointer-events:none}.continue-climb{background:var(--snow);color:var(--ink);border:3px solid var(--ink);white-space:nowrap;text-underline-offset:.2em;align-self:flex-start;margin-top:1rem;padding:.35rem .65rem;font-size:1rem}@media (width<=40rem){.continue-climb{order:-1}}.continue-climb:hover{color:var(--red)}.has-scene .continue-climb{margin:0;position:fixed;bottom:6rem;left:50%;transform:translate(-50%)}@media (width<=40rem){.has-scene .continue-climb{top:9rem;bottom:auto}}.scrolled .continue-climb{visibility:hidden}.checkpoint-hint{align-items:center;gap:.5rem;padding-top:.25rem;font:1.375rem/1.15 "Jersey 10",sans-serif;display:flex}.has-scene .stop:not(.is-held) .checkpoint-hint{visibility:hidden}.checkpoint-hint svg{width:.75rem;height:.875rem;fill:var(--red);shape-rendering:crispedges;flex:none}.travel-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.panel-footer,.short-name,.tap-copy,.journey-next{display:none}[hidden]{display:none!important}.tap-travel{overflow:hidden}.tap-travel body{height:100dvh;min-height:0}.tap-travel .stop{pointer-events:none;min-height:0;position:absolute;inset:0}.tap-travel .hint,.tap-travel .checkpoint-hint{display:none}.tap-travel .continue-climb{visibility:visible;white-space:normal;pointer-events:auto;align-items:center;min-height:44px;margin:0;display:flex;position:static;transform:none}.tap-travel .journey-next{bottom:max(24px, env(safe-area-inset-bottom));z-index:4;border:2px solid var(--ink);background:var(--snow);min-height:52px;color:var(--ink);box-shadow:3px 3px 0 var(--ink);white-space:nowrap;flex-direction:column;align-items:center;gap:.125rem;padding:.375rem 1.125rem;text-decoration:none;display:flex;position:fixed;left:50%;transform:translate(-50%)}.tap-travel .journey-next:hover{background:var(--white)}.tap-travel .journey-next:active{box-shadow:1px 1px 0 var(--ink);margin-bottom:-2px}.tap-travel .journey-next[aria-disabled=true]{opacity:0;pointer-events:none}.tap-travel .next-label{font:1.625rem/1 "Jersey 10",sans-serif}.tap-travel .next-destination{font-size:.875rem}.floating-panels{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floating-panels .panel{clip-path:polygon(12px 0,calc(100% - 14px) 0,100% 12px,100% calc(100% - 16px),calc(100% - 18px) 100%,14px 100%,0 calc(100% - 12px),0 14px);max-width:none;box-shadow:none;pointer-events:auto;backface-visibility:hidden;background:0 0;border:0;flex-direction:column;padding:.75rem;transition:none;display:flex;position:absolute;top:auto;bottom:auto}.floating-panels .band{box-shadow:0 -2px 0 var(--ice), 0 2px 0 var(--ice);border:0;flex:none;gap:.625rem;padding:.5rem .875rem .375rem}.floating-panels .band h1,.floating-panels .band h2{font-size:2.5rem}.floating-panels .band .alt,.floating-panels .band .handle{font-size:1.5rem}.floating-panels .body{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding:.875rem .75rem .625rem;font-size:1.0625rem;line-height:1.45;overflow:auto}.floating-panels .projects li{padding:0}.floating-panels .projects a{line-height:1.6;display:inline}.floating-panels .projects li:has(a){min-height:44px}.floating-panels .pack{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .875rem;display:grid}.floating-panels .pack li{border-width:1px;padding:.05rem .35rem}.floating-panels .pack .new-tag{margin-left:auto;font-size:.875rem}.floating-panels[data-layout=sheet] .band,.floating-panels[data-layout=side] .band{padding:.375rem .75rem}.floating-panels[data-layout=sheet] .band h1,.floating-panels[data-layout=sheet] .band h2,.floating-panels[data-layout=side] .band h1,.floating-panels[data-layout=side] .band h2{font-size:2rem}.floating-panels[data-layout=sheet] .band .alt,.floating-panels[data-layout=side] .band .alt{font-size:1.25rem}.floating-panels[data-layout=sheet] .panel,.floating-panels[data-layout=side] .panel{padding:.625rem}.floating-panels[data-layout=sheet] .body,.floating-panels[data-layout=side] .body{padding:.75rem .375rem .5rem;font-size:1rem}.floating-panels[data-layout=sheet] .pack,.floating-panels[data-layout=side] .pack{gap:.25rem .5rem}.floating-panels[data-layout=sheet] .pack li,.floating-panels[data-layout=side] .pack li{padding:.05rem .2rem}.has-floating-panels .stop{visibility:hidden}html[data-scene-boot=pending]{overflow:hidden}html[data-scene-boot=pending] body{background:var(--sky)}html[data-scene-boot=pending] .backdrop,html[data-scene-boot=pending] main,html[data-scene-boot=pending] .altimeter,html[data-scene-boot=pending] .journey-next,html[data-scene-boot=pending] .continue-climb{visibility:hidden!important}.has-scene body{background:var(--sky)}.has-scene .altimeter,.has-scene .journey-next{transition:opacity .45s ease-out}@media (prefers-reduced-motion:reduce){.has-scene .altimeter,.has-scene .journey-next{transition:none}}.has-scene.scene-intro .altimeter,.has-scene.scene-intro .journey-next{opacity:0;visibility:hidden;pointer-events:none}.has-scene.scene-intro main,.has-scene.scene-intro .continue-climb{visibility:hidden!important}
