@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none}body{-webkit-font-smoothing:antialiased;min-height:100svh;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4{overflow-wrap:break-word}ul,ol{padding:0;list-style:none}a{color:inherit}[hidden]{display:none!important}}@layer tokens{:root{--color-void:#000;--color-signal:#ff6565;--color-signal-faint:#ff656529;--color-text:#f7f2ed;--color-text-muted:#8d8a85;--color-text-faint:#8a867f;--color-line:#ebe8e324;--color-line-strong:#ebe8e352;--glow-text:0 0 .5px #fffaf5bf, 0 0 .85em #ffece429;--glow-heading:0 0 1px #fffcf8e6, 0 0 .3em #ffeee642, 0 0 1.3em #ff6e641f;--glow-signal:0 0 .5px #ff8c8ce6, 0 0 .75em #ff656580;--font-sans:"Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Source Code Pro", ui-monospace, "SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace;--text-micro:.6875rem;--text-small:.8125rem;--text-body:clamp(1rem, .94rem + .25vw, 1.125rem);--text-lead:clamp(1.125rem, 1rem + .6vw, 1.5rem);--text-heading:clamp(2.25rem, 1.4rem + 3.6vw, 5.5rem);--text-display:clamp(3rem, 1.4rem + 7.4vw, 10rem);--weight-display:200;--weight-light:300;--weight-body:400;--tracking-display:-.035em;--tracking-mono:.12em;--leading-tight:1;--leading-body:1.65;--gutter:clamp(1rem, .6rem + 2vw, 3rem);--hud-inset:clamp(.625rem, .4rem + 1vw, 1.25rem);--space-2xs:.25rem;--space-xs:.5rem;--space-s:1rem;--space-m:1.5rem;--space-l:clamp(2rem, 1.5rem + 2vw, 3.5rem);--space-xl:clamp(3rem, 2rem + 5vw, 7rem);--measure:62ch;--bar-height:3.5rem;--status-height:2.75rem;--rail-width:3.75rem;--panel-width:clamp(21rem, 42vw, 46rem);--ease-out-expo:cubic-bezier(.19, 1, .22, 1);--ease-out-quart:cubic-bezier(.2, .8, .2, 1);--ease-in-out-quart:cubic-bezier(.76, 0, .24, 1);--duration-fast:.18s;--duration-base:.42s;--duration-slow:.9s;--layer-canvas:0;--layer-content:10;--layer-hud:40;--layer-header:50;--layer-loader:100;--layer-cursor:150;--layer-skip-link:200}}@layer base{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--color-void);scroll-padding-block-start:4rem}body{background-color:var(--color-void);color:var(--color-text);text-shadow:var(--glow-text);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-body);line-height:var(--leading-body);font-synthesis:none;overflow-x:clip}h1,h2,h3,h4{font-weight:var(--weight-light);line-height:var(--leading-tight);text-shadow:var(--glow-heading);text-wrap:balance}p{max-width:var(--measure);text-wrap:pretty}a{text-underline-offset:.2em;transition:color var(--duration-fast) var(--ease-out-quart);text-decoration-thickness:1px}a:hover{color:var(--color-signal);text-shadow:var(--glow-signal)}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:1px solid var(--color-signal);outline-offset:4px}::selection{background-color:var(--color-signal);color:var(--color-void)}.brand-symbol{width:0;height:0;position:absolute;overflow:hidden}.skip-link{z-index:var(--layer-skip-link);padding:var(--space-xs) var(--space-s);background-color:var(--color-signal);color:var(--color-void);font-family:var(--font-mono);font-size:var(--text-small);text-decoration:none;position:fixed;inset-block-start:var(--space-s);inset-inline-start:var(--space-s);transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.eyebrow{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-signal);text-shadow:var(--glow-signal)}.surface{background-color:var(--color-void)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer layout{.experience-canvas{z-index:var(--layer-canvas);width:100%;height:100%;position:fixed;inset:0}.no-js .experience-canvas,[data-webgl=unavailable] .experience-canvas{display:none}.site-main{z-index:var(--layer-content);position:relative}.site-main:focus{outline:none}.page{gap:var(--space-xl);min-height:100svh;padding:calc(var(--bar-height) + var(--space-xl)) var(--gutter) calc(var(--status-height) + var(--space-xl));background-color:var(--color-void);display:grid}.page__header{gap:var(--space-m);display:grid}.page__title{font-size:var(--text-heading);font-weight:var(--weight-display);letter-spacing:var(--tracking-display)}.page__lead{font-size:var(--text-lead);color:var(--color-text-muted)}}@layer components{.action{--action-color:var(--color-line-strong);--action-base:var(--color-void);--action-wash:#ff656524;background:linear-gradient(var(--action-color) 0 0) left top / var(--action-corner) 1px, linear-gradient(var(--action-color) 0 0) left top / 1px var(--action-corner), linear-gradient(var(--action-color) 0 0) right top / var(--action-corner) 1px, linear-gradient(var(--action-color) 0 0) right top / 1px var(--action-corner), linear-gradient(var(--action-color) 0 0) left bottom / var(--action-corner) 1px, linear-gradient(var(--action-color) 0 0) left bottom / 1px var(--action-corner), linear-gradient(var(--action-color) 0 0) right bottom / var(--action-corner) 1px, linear-gradient(var(--action-color) 0 0) right bottom / 1px var(--action-corner), linear-gradient(90deg, var(--action-wash), transparent) left / var(--action-fill) 100%, var(--action-base);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-small);letter-spacing:var(--tracking-mono);text-shadow:none;text-transform:uppercase;white-space:nowrap;transition:--action-color .36s var(--ease-out-quart), --action-corner .62s var(--ease-out-expo), --action-fill .76s var(--ease-out-expo), --action-trail .62s var(--ease-out-expo), color var(--duration-fast) var(--ease-out-quart), text-shadow var(--duration-base) var(--ease-out-quart);background-repeat:no-repeat;border:0;justify-self:start;align-items:center;gap:.875rem;padding:1.05rem 1.25rem 1.05rem 1.125rem;line-height:1;text-decoration:none;display:inline-flex;position:relative}.action:before{content:"";background-color:var(--action-color);width:.375rem;height:.375rem;animation:action-pulse 2.4s var(--ease-in-out-quart) infinite;transition:box-shadow var(--duration-base) var(--ease-out-quart);flex:none}.action:after{content:"";width:var(--action-trail);background-color:var(--action-color);clip-path:polygon(0 calc(50% - .5px),calc(100% - .375rem) calc(50% - .5px),calc(100% - .375rem) 0,100% 50%,calc(100% - .375rem) 100%,calc(100% - .375rem) calc(50% + .5px),0 calc(50% + .5px));flex:none;height:.5625rem}.action:is(:hover,:focus-visible){--action-color:var(--color-signal);--action-corner:1.125rem;--action-fill:100%;--action-trail:3.25rem;color:var(--color-text);text-shadow:var(--glow-heading)}.action:is(:hover,:focus-visible):before{box-shadow:0 0 .5rem var(--action-color), 0 0 1.25rem #ff656573}.action:disabled{opacity:.4;cursor:not-allowed}@keyframes action-pulse{50%{opacity:.3}}.loader{z-index:var(--layer-loader);place-content:center;justify-items:center;gap:var(--space-s);background-color:var(--color-void);font-family:var(--font-mono);transition:opacity var(--duration-slow) var(--ease-out-expo), visibility 0s linear var(--duration-slow);animation:loader-failsafe var(--duration-base) var(--ease-out-quart) 15s forwards;display:grid;position:fixed;inset:0}.no-js .loader{display:none}.loader[data-state]{animation:none}.loader[data-state=complete]{opacity:0;visibility:hidden;pointer-events:none}.loader__status{font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.loader__value{font-size:var(--text-heading);font-variant-numeric:tabular-nums;color:var(--color-signal);text-shadow:var(--glow-signal);font-weight:300}.loader__track{background-color:var(--color-line);width:min(16rem,60vw);height:1px;display:block}.loader__fill{background-color:var(--color-signal);transform-origin:0;height:100%;display:block;transform:scaleX(0);box-shadow:0 0 .75rem #ff6565bf}@keyframes loader-failsafe{to{opacity:0;visibility:hidden}}.site-header{z-index:var(--layer-header);align-items:center;gap:var(--space-m);height:var(--bar-height);padding-inline:var(--gutter);border-block-end:1px solid var(--color-line);background-color:var(--color-void);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;view-transition-name:site-header;display:flex;position:fixed;inset-block-start:0;inset-inline:0}.site-header a{text-decoration:none}.brand{color:var(--color-text);clip-path:inset(-.5rem -1rem);transition:opacity .42s var(--ease-out-quart), translate .9s var(--ease-out-expo), clip-path .9s var(--ease-out-expo), visibility 0s linear 0s;align-items:center;gap:.75rem;margin-inline-end:auto;display:inline-flex}.js .site-header[data-brand-state=hidden] .brand{opacity:0;visibility:hidden;clip-path:inset(-.5rem 100% -.5rem -1rem);transition:opacity .3s var(--ease-out-quart), translate .5s var(--ease-out-expo), clip-path .5s var(--ease-out-expo), visibility 0s linear .5s;translate:-1rem}@media (prefers-reduced-motion:reduce){.brand,.js .site-header[data-brand-state=hidden] .brand{transition-duration:1ms;transition-delay:0s}}.brand__mark{width:auto;height:1.75rem;fill:var(--color-signal);transition:rotate var(--duration-slow) var(--ease-out-expo)}.brand:hover .brand__mark{rotate:-9deg}.brand__name{white-space:nowrap}.site-header__action{color:var(--color-signal);text-shadow:var(--glow-signal);position:relative}.site-header__action:after{content:"";transform-origin:100%;height:1px;transition:scale var(--duration-base) var(--ease-out-expo);background-color:currentColor;position:absolute;inset-block-end:-.35rem;inset-inline:0;scale:0 1}.site-header__action:hover:after{transform-origin:0;scale:1}.language-switch__list{gap:.5rem;display:flex}.language-switch__list li+li:before{content:"/";color:var(--color-text-faint);margin-inline-end:.5rem}.language-switch__link{color:var(--color-text-faint);padding-block:.25rem;display:inline-block}.language-switch__link[aria-current=true]{color:var(--color-text);text-shadow:var(--glow-text)}.menu-toggle{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--color-text);align-items:center;gap:.625rem;display:inline-flex}.menu-toggle__glyph{width:1.125rem;height:.4375rem;transition:width var(--duration-base) var(--ease-out-expo), border-color var(--duration-fast) var(--ease-out-quart);border-block:1px solid;display:block}.menu-toggle:hover .menu-toggle__glyph{border-color:var(--color-signal);width:1.625rem}@media not (min-width:40rem){.site-header{gap:var(--space-s)}.site-header__action{display:none}}@media not (min-width:23rem){.brand__name{display:none}}.site-menu{background-color:var(--color-void);width:100%;max-width:none;height:100%;max-height:none;color:var(--color-text);clip-path:inset(0 0 100%);transition:clip-path var(--wipe-duration) var(--wipe-ease), overlay var(--wipe-duration) allow-discrete, display var(--wipe-duration) allow-discrete;border:0;margin:0;padding:0;display:none;position:fixed;inset:0;overflow-y:auto}.site-menu:before{content:"";z-index:1;background-color:var(--color-signal);pointer-events:none;height:2px;transition:translate var(--wipe-duration) var(--wipe-ease), opacity .24s var(--ease-out-quart) var(--wipe-duration);position:fixed;inset-block-start:-2px;inset-inline:0;translate:0;box-shadow:0 0 1rem .15rem #ff6565b3}.site-menu:popover-open{clip-path:inset(0);display:block}.site-menu:popover-open:before{opacity:0;translate:0 100svh}@starting-style{.site-menu:popover-open{clip-path:inset(0 0 100%)}.site-menu:popover-open:before{opacity:1;translate:0}}@media (prefers-reduced-motion:reduce){.site-menu{clip-path:none;transition:none}.site-menu:before{display:none}}:root:has(.site-menu:popover-open){overflow:hidden}.site-menu__frame{align-content:center;gap:var(--space-xl);min-height:100%;padding:calc(var(--space-xl) + 2rem) var(--gutter) var(--space-xl);display:grid}.site-menu__chapters li{opacity:0;transition:opacity var(--duration-base) var(--ease-out-quart), translate var(--duration-slow) var(--ease-out-expo);translate:0 .75rem}.site-menu:popover-open .site-menu__chapters li{opacity:1;translate:0}@starting-style{.site-menu:popover-open .site-menu__chapters li{opacity:0;translate:0 .75rem}}.site-menu__chapters li:nth-child(2){transition-delay:40ms}.site-menu__chapters li:nth-child(3){transition-delay:80ms}.site-menu__chapters li:nth-child(4){transition-delay:.12s}.site-menu__chapters li:nth-child(5){transition-delay:.16s}.site-menu__chapters li:nth-child(n+6){transition-delay:.2s}.site-menu__chapter{align-items:baseline;gap:var(--space-m);font-size:var(--text-heading);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);padding-block:.1em;line-height:1.08;text-decoration:none;display:flex}.site-menu__index{min-width:2.5ch;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-body);letter-spacing:var(--tracking-mono);color:var(--color-text-faint)}.site-menu__chapter[aria-current=true],.site-menu__chapter[aria-current=true] .site-menu__index{color:var(--color-signal);text-shadow:var(--glow-signal)}.site-menu__aside{gap:var(--space-l);font-family:var(--font-mono);font-size:var(--text-small);letter-spacing:var(--tracking-mono);text-transform:uppercase;align-content:end;display:grid}.site-menu__aside ul{gap:var(--space-xs);display:grid}.site-menu__aside a{text-decoration:none}.site-menu__heading{font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-body);color:var(--color-text-faint);margin-block-end:var(--space-s)}.site-menu__close{height:var(--bar-height);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:var(--gutter)}.site-menu__close:hover{color:var(--color-signal)}@media (min-width:48rem){.site-menu__frame{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:end}}.hud{z-index:var(--layer-hud);justify-content:space-between;align-items:center;gap:var(--space-m);height:var(--status-height);padding-inline:var(--gutter);border-block-start:1px solid var(--color-line);background-color:var(--color-void);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--color-text-muted);text-shadow:none;view-transition-name:hud;line-height:1;display:flex;position:fixed;inset-block-end:0;inset-inline:0}.hud__readout{white-space:nowrap;align-items:center;gap:1rem;display:flex}.hud__label{color:var(--color-text-faint)}.hud__value--chapter{color:var(--color-text);text-shadow:var(--glow-text)}.hud__meter{background-color:var(--color-line);width:7.5rem;height:1px;display:block}.hud__meter-fill{background-color:var(--color-signal);transform-origin:0;height:100%;scale:var(--hud-progress,0) 1;display:block;box-shadow:0 0 .5rem #ff6565cc}.chapter-rail{inset-block:var(--bar-height) var(--status-height);z-index:var(--layer-hud);width:var(--rail-width);border-inline-start:1px solid var(--color-line);background-color:var(--color-void);align-content:center;display:grid;position:fixed;inset-inline-end:0}.chapter-rail__list{gap:.125rem;display:grid}.chapter-rail__link{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);font-variant-numeric:tabular-nums;color:var(--color-text-faint);justify-content:center;align-items:center;gap:.5rem;padding-block:.625rem;text-decoration:none;display:flex}.chapter-rail__link:hover{color:var(--color-text)}.chapter-rail__link[aria-current=true]{color:var(--color-signal);text-shadow:var(--glow-signal)}@media not (min-width:48rem){.hud__readout--location{display:none}.hud{justify-content:flex-end}.hud__meter{width:4.5rem}}@media not (min-width:64rem){.chapter-rail{display:none}}.site-footer{z-index:var(--layer-content);gap:var(--space-xl);padding:var(--space-xl) var(--gutter) calc(var(--space-xl) + 2.5rem);border-block-start:1px solid var(--color-line);background-color:var(--color-void);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted);display:grid;position:relative}.site-footer__grid{gap:var(--space-l) var(--space-m);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.site-footer__identity{align-content:start;gap:var(--space-2xs);display:grid}.site-footer__mark{width:auto;height:2.5rem;fill:var(--color-signal);margin-block-end:var(--space-s)}.site-footer__name{color:var(--color-text)}.site-footer__heading{font-size:var(--text-micro);font-weight:var(--weight-body);color:var(--color-text-faint);margin-block-end:var(--space-s)}.site-footer__links{gap:var(--space-xs);display:grid}.site-footer a{color:var(--color-text);text-decoration:none}.site-footer a:hover{color:var(--color-signal)}.site-footer__bottom{justify-content:space-between;gap:var(--space-s);border-block-start:1px solid var(--color-line);flex-wrap:wrap;padding-block-start:var(--space-m);display:flex}.site-footer__legal{max-width:none}.chapter{min-height:100svh;display:grid}.chapter__panel{align-content:end;gap:var(--space-m);width:var(--panel-width);min-height:100svh;padding:calc(var(--bar-height) + var(--space-xl)) var(--gutter) calc(var(--status-height) + var(--space-xl));border-inline-end:1px solid var(--color-line);display:grid}.chapter--hero .chapter__panel{align-content:center}@media not (min-width:48rem){.chapter{padding-block-start:56svh}.chapter__panel{width:100%;min-height:44svh;border-inline-end:0;border-block-start:1px solid var(--color-line);padding-block-start:var(--space-l)}.chapter--hero .chapter__panel{align-content:end}}.hero__title{gap:var(--space-s);display:grid}.hero__name{font-size:clamp(3.25rem,8.2vw,9.5rem);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);line-height:.92}.hero__role{font-family:var(--font-mono);font-size:var(--text-small);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-signal);text-shadow:var(--glow-signal)}.chapter__index{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);font-variant-numeric:tabular-nums;color:var(--color-text-faint)}.chapter__title{font-size:var(--text-heading);font-weight:var(--weight-display);letter-spacing:var(--tracking-display)}.chapter__lead{font-size:var(--text-lead);font-weight:var(--weight-light)}.archive-list{gap:var(--space-s);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));display:grid}.archive-item__card{align-content:start;gap:var(--space-xs);height:100%;padding:var(--space-s) var(--space-s) var(--space-m);border:1px solid var(--color-line);transition:border-color var(--duration-base) var(--ease-out-quart);display:grid;position:relative}.archive-item__card:is(:hover,:focus-within){border-color:var(--color-signal)}.archive-item__open{color:inherit;text-decoration:none}.archive-item__open:after{content:"";position:absolute;inset:0}.archive-item__open:focus-visible{outline:none}.archive-item__card:has(.archive-item__open:focus-visible){outline:1px solid var(--color-signal);outline-offset:3px}.archive-item__award{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-signal);text-shadow:var(--glow-signal)}.archive-item__meta{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.archive-item__cover{aspect-ratio:16/10;background-color:var(--color-void);margin-block-end:var(--space-xs);display:block;position:relative;overflow:hidden}.archive-item__cover img{object-fit:cover;width:100%;height:100%;transition:filter var(--duration-slow) var(--ease-out-expo), scale var(--duration-slow) var(--ease-out-expo)}@media (hover:hover){.archive-item__cover img{filter:grayscale()contrast(1.08)brightness(.86);will-change:filter}.archive-item:is(:hover,:focus-within) .archive-item__cover img{filter:grayscale(0)contrast()brightness();scale:1.03}}.archive-item__title{font-size:var(--text-lead)}.archive-item__summary{font-size:var(--text-small);color:var(--color-text-muted)}.archive-item__facts{gap:var(--space-2xs) var(--space-s);font-size:var(--text-small);grid-template-columns:auto 1fr;display:grid}.archive-item__facts dt{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.archive-item__facts dd{margin:0}.archive-item__links{font-size:var(--text-small)}.chapter__cover{aspect-ratio:16/9;border:1px solid var(--color-line);display:block;overflow:hidden}.chapter__cover img{object-fit:cover;width:100%;height:100%}.archive-item__card{cursor:pointer}.chapter__actions{align-items:center;gap:var(--space-s);flex-wrap:wrap;display:flex}.highlights{border-block:1px solid var(--color-line);grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));display:grid}.highlights__item{justify-content:start;gap:var(--space-2xs);padding-block:var(--space-s);flex-direction:column-reverse;display:flex}.highlights__item+.highlights__item{border-inline-start:1px solid var(--color-line);padding-inline-start:var(--space-s)}.highlights dt{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.highlights dd{font-size:clamp(2rem,3.4vw,3.25rem);font-weight:var(--weight-display);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-display);text-shadow:var(--glow-heading);margin:0;line-height:1}.path{gap:var(--space-s);margin-block-start:var(--space-s);display:grid}.path__list{border-block-start:1px solid var(--color-line);display:grid}.path__entry{gap:var(--space-s);padding-block:var(--space-s);border-block-end:1px solid var(--color-line);transition:border-color var(--duration-base) var(--ease-out-quart);grid-template-columns:7.5rem 1fr;display:grid}.path__entry:hover{border-block-end-color:var(--color-signal)}.path__period{font-family:var(--font-mono);font-size:var(--text-micro);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-mono);line-height:var(--leading-body);color:var(--color-signal);text-shadow:var(--glow-signal)}.path__detail{gap:var(--space-2xs);display:grid}.path__title{font-size:var(--text-body);font-weight:var(--weight-body)}.path__place{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.path__body{font-size:var(--text-small);color:var(--color-text-muted)}@media not (min-width:30rem){.path__entry{gap:var(--space-2xs);grid-template-columns:1fr}}.tool-list{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.tool-list li{border:1px solid var(--color-line);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted);transition:border-color var(--duration-fast) var(--ease-out-quart), color var(--duration-fast) var(--ease-out-quart);padding:.375rem .5rem}.tool-list li:hover{border-color:var(--color-signal);color:var(--color-text)}.content-block{gap:var(--space-m);max-width:72rem;display:grid}.content-block h2{font-size:var(--text-lead);font-weight:var(--weight-light)}.content-block--stack ul,.content-block--links ul{gap:var(--space-xs) var(--space-m);font-family:var(--font-mono);font-size:var(--text-small);letter-spacing:var(--tracking-mono);text-transform:uppercase;flex-wrap:wrap;display:flex}.content-block--media{margin:0}.content-block--wide{max-width:none;margin-inline:calc(var(--gutter) * -1)}.content-block--media img{width:100%;height:auto}.content-block figcaption{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted)}.gallery{gap:var(--space-s);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));display:grid}.gallery__trigger{width:100%;display:block;position:relative;overflow:hidden}.gallery__trigger img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:scale var(--duration-slow) var(--ease-out-expo)}.gallery__trigger:hover img{scale:1.04}.gallery__index{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);color:var(--color-text);mix-blend-mode:difference;position:absolute;inset-block-start:var(--space-xs);inset-inline-start:var(--space-xs)}.lightbox{width:100%;max-width:none;height:100%;max-height:none;padding:var(--space-xl) var(--gutter);background-color:var(--color-void);color:var(--color-text);border:0;margin:0}.lightbox::backdrop{background-color:var(--color-void)}.lightbox__stage{place-items:center;height:100%;display:grid}.lightbox__stage img{max-width:100%;max-height:calc(100svh - var(--space-xl) * 2);object-fit:contain;width:auto;height:auto}.lightbox :is(.lightbox__close,.lightbox__previous,.lightbox__next){padding:var(--space-s);font-family:var(--font-mono);font-size:var(--text-lead);color:var(--color-text);position:absolute}.lightbox :is(.lightbox__close,.lightbox__previous,.lightbox__next):hover{color:var(--color-signal)}.lightbox__close{inset-block-start:var(--space-s);inset-inline-end:var(--gutter)}.lightbox__previous{inset-block-start:50%;inset-inline-start:var(--space-s)}.lightbox__next{inset-block-start:50%;inset-inline-end:var(--space-s)}.lightbox__counter{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-muted);position:absolute;inset-block-end:var(--space-m);inset-inline-start:var(--gutter)}.video{aspect-ratio:16/9;background-color:var(--color-void);position:relative;overflow:hidden}.video img,.video iframe,.video video{object-fit:cover;border:0;width:100%;height:100%;position:absolute;inset:0}.video__play{font-family:var(--font-mono);font-size:var(--text-small);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text);background-color:#0000008c;place-items:center;display:grid;position:absolute;inset:0}.video__play:hover{color:var(--color-signal)}.process{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));display:grid}.process__step{gap:var(--space-xs);border-block-start:1px solid var(--color-line);padding-block-start:var(--space-s);display:grid}.process__index{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-signal)}.process__step h3{font-size:var(--text-body)}.process__step p{font-size:var(--text-small);color:var(--color-text-muted)}.catalog{gap:var(--space-s);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));display:grid}.catalog__card{gap:var(--space-xs);height:100%;padding:var(--space-s);border:1px solid var(--color-line);transition:border-color var(--duration-base) var(--ease-out-quart);grid-template-rows:auto auto 1fr auto;display:grid}.catalog__card:is(:hover,:focus-within){border-color:var(--color-signal)}.catalog__meta{justify-content:space-between;gap:var(--space-s);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--color-text-muted);display:flex}.catalog__price{color:var(--color-signal);text-shadow:var(--glow-signal);font-variant-numeric:tabular-nums}.catalog__title{font-size:var(--text-lead);font-weight:var(--weight-light)}.catalog__summary{font-size:var(--text-small);color:var(--color-text-muted)}.catalog__links{gap:var(--space-xs) var(--space-m);border-block-start:1px solid var(--color-line);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;flex-wrap:wrap;padding-block-start:var(--space-xs);display:flex}:root:has(.project-sheet[open]){scrollbar-gutter:stable;overflow:hidden}.project-sheet{inset:var(--bar-height) var(--rail-width) var(--status-height) var(--panel-width);background-color:var(--color-void);width:auto;max-width:none;height:auto;max-height:none;color:var(--color-text);clip-path:inset(0 100% 0 0);transition:clip-path var(--wipe-duration) var(--wipe-ease), overlay var(--wipe-duration) allow-discrete, display var(--wipe-duration) allow-discrete;border:0;margin:0;padding:0;display:none;position:fixed;overflow:hidden}.project-sheet:before{content:"";z-index:2;background-color:var(--color-signal);pointer-events:none;width:2px;transition:inset-inline-start var(--wipe-duration) var(--wipe-ease), opacity .24s var(--ease-out-quart) var(--wipe-duration);position:absolute;inset-block:0;inset-inline-start:-2px;box-shadow:0 0 1rem .15rem #ff6565b3}.project-sheet::backdrop{transition:background-color var(--wipe-duration) var(--wipe-ease), overlay var(--wipe-duration) allow-discrete, display var(--wipe-duration) allow-discrete;background-color:#0000}.project-sheet:is([open],:target){clip-path:inset(0);display:block}.project-sheet[open]:before{opacity:0;inset-inline-start:calc(100% - 2px)}.project-sheet[open]::backdrop{background-color:#00000080}@starting-style{.project-sheet[open]{clip-path:inset(0 100% 0 0)}.project-sheet[open]:before{opacity:1;inset-inline-start:-2px}.project-sheet[open]::backdrop{background-color:#0000}}@media not (min-width:48rem){.project-sheet{inset:var(--bar-height) 0 0}}@media (prefers-reduced-motion:reduce){.project-sheet{transition-duration:1ms}.project-sheet::backdrop{transition-duration:1ms}.project-sheet:before{display:none}}.project-sheet__scroll{align-content:start;gap:var(--space-m);height:100%;padding:var(--space-m) var(--gutter) var(--space-xl);overscroll-behavior:contain;scrollbar-color:var(--color-line-strong) transparent;scrollbar-width:thin;display:grid;overflow-y:auto}.project-sheet__close{z-index:1;border:1px solid var(--color-line-strong);background-color:var(--color-void);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-transform:uppercase;transition:border-color var(--duration-fast) var(--ease-out-quart), color var(--duration-fast) var(--ease-out-quart);justify-self:end;padding:.625rem .75rem;text-decoration:none;position:sticky;inset-block-start:0}.project-sheet__close:is(:hover,:focus-visible){border-color:var(--color-signal);color:var(--color-text)}.project-sheet__header{gap:var(--space-s);display:grid}.project-sheet__title{font-size:var(--text-heading);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);line-height:var(--leading-tight);text-shadow:var(--glow-heading)}.project-sheet__lead{max-width:var(--measure);font-size:var(--text-lead);font-weight:var(--weight-light)}.project-sheet__story{gap:var(--space-s);max-width:var(--measure);color:var(--color-text-muted);display:grid}.project-sheet .content-block{max-width:none}.project-sheet .gallery{grid-template-columns:1fr}.project-sheet .gallery__trigger{border:1px solid var(--color-line);transition:border-color var(--duration-base) var(--ease-out-quart);place-items:center;display:grid}.project-sheet .gallery__trigger:is(:hover,:focus-visible){border-color:var(--color-signal)}.project-sheet .gallery__trigger img{aspect-ratio:auto;object-fit:contain;width:100%}.project-sheet .gallery__trigger img[data-pixel]{width:min(100%,32rem);image-rendering:pixelated}.project-sheet .gallery__trigger:hover img{scale:1}.secret-mail{--hold:0;align-items:center;gap:var(--space-2xs) var(--space-s);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);flex-wrap:wrap;display:flex}.secret-mail__label{color:var(--color-text-muted);text-transform:uppercase;flex-basis:100%}.secret-mail__value{min-width:0;color:var(--color-text);font-size:var(--text-small);letter-spacing:.02em;text-transform:none;overflow-wrap:anywhere;-webkit-user-select:none;user-select:none}.secret-mail[data-revealed] .secret-mail__value{-webkit-user-select:text;user-select:text;text-shadow:var(--glow-signal)}.secret-mail__button{border:1px solid var(--color-line-strong);background-color:var(--color-void);color:var(--color-text-muted);font:inherit;text-transform:uppercase;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:border-color var(--duration-fast) var(--ease-out-quart), color var(--duration-fast) var(--ease-out-quart);padding:.5rem .75rem;position:relative;overflow:hidden}.secret-mail__button:is(:hover,:focus-visible),.secret-mail:is([data-holding],[data-revealed]) .secret-mail__button{border-color:var(--color-signal);color:var(--color-text)}.secret-mail__fill{transform:scaleX(var(--hold));transform-origin:0;pointer-events:none;background-color:#ff656547;position:absolute;inset:0}.secret-mail[data-revealed] .secret-mail__fill{animation:15s linear forwards secret-mail-countdown}.secret-mail__text{position:relative}.no-js .secret-mail__button{display:none}@keyframes secret-mail-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);z-index:1;border:1px solid var(--color-signal);background-color:var(--color-void);color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-body);letter-spacing:var(--tracking-mono);text-shadow:var(--glow-text);text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;clip-path:inset(0 100% 0 0);transition:clip-path .52s var(--ease-out-expo), opacity .2s var(--ease-out-quart), translate .64s var(--ease-out-expo);padding:.5rem .625rem;line-height:1;position:absolute;inset-block-start:calc(100% + .625rem);inset-inline-start:50%;translate:-50% -.375rem;box-shadow:0 0 1.25rem -.5rem #ff6565a6}[data-tooltip]:focus-visible:before{opacity:1;clip-path:inset(0);translate:-50%}.chapter-rail [data-tooltip]:before{clip-path:inset(0 0 0 100%);inset-block-start:50%;inset-inline:auto calc(100% + .25rem);translate:.5rem -50%}.chapter-rail [data-tooltip]:focus-visible:before{clip-path:inset(0);translate:0 -50%}@media (hover:hover){[data-tooltip]:hover:before{opacity:1;clip-path:inset(0);translate:-50%}.chapter-rail [data-tooltip]:hover:before{translate:0 -50%}}.cursor{z-index:var(--layer-cursor);pointer-events:none;opacity:0;width:0;height:0;transition:opacity var(--duration-base) var(--ease-out-quart);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0 auto auto 0;overflow:visible}.cursor[data-visible]{opacity:1}.cursor__lens{width:calc(var(--lens-radius) * 2);height:calc(var(--lens-radius) * 2);will-change:transform;border-radius:50%;position:absolute;inset-block-start:calc(var(--lens-radius) * -1);inset-inline-start:calc(var(--lens-radius) * -1)}.cursor[data-surface] .cursor__lens{-webkit-backdrop-filter:url(#cursor-lens);backdrop-filter:url(#cursor-lens)}.cursor__pin{will-change:transform;position:absolute;inset-block-start:0;inset-inline-start:0}.cursor__dot{background-color:var(--color-text);width:6px;height:6px;transition:background-color var(--duration-fast) var(--ease-out-quart), scale var(--duration-base) var(--ease-out-expo);border-radius:50%;position:absolute;inset-block-start:-3px;inset-inline-start:-3px;box-shadow:0 0 .5rem #ffffffb3,0 0 1.25rem #ff656599}.cursor[data-hover] .cursor__dot{background-color:var(--color-signal);scale:1.8}.cursor[data-pressed] .cursor__dot{scale:.6}.cursor__tag{will-change:transform;position:absolute;inset-block-start:0;inset-inline-start:0}.cursor__tag-text{border:1px solid var(--color-signal);background-color:var(--color-void);color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-mono);text-shadow:var(--glow-text);text-transform:uppercase;white-space:nowrap;opacity:0;clip-path:inset(0 100% 0 0);transition:clip-path .46s var(--ease-out-expo), opacity .16s var(--ease-out-quart), translate .52s var(--ease-out-expo);padding:.4375rem .625rem;line-height:1;display:block;translate:-.5rem;box-shadow:0 0 1.25rem -.5rem #ff6565b3}.cursor[data-label] .cursor__tag-text{opacity:1;clip-path:inset(0);translate:0}[data-reveal-state=pending]{opacity:0}:is(h1,h2,h3,h4):is([data-reveal-state=split],[data-reveal-state=visible]){will-change:filter}:is(h1,h2,h3,h4)[data-reveal-state=split]{filter:blur(6px)}:is(h1,h2,h3,h4)[data-reveal-state=visible]{filter:blur();transition:filter .9s var(--ease-out-quart)}.reveal-line{transition:opacity .64s var(--ease-out-quart) var(--reveal-delay,0s), translate 1.1s var(--ease-out-expo) var(--reveal-delay,0s);display:block}[data-reveal-state=split] .reveal-line{opacity:0;translate:0 .55em}:root[data-intro=pending] :is(.site-header,.hud,.chapter-rail,.hero__title){opacity:0;pointer-events:none}:root:is([data-intro=pending],[data-intro=reveal]) .chapter--hero .chapter__panel{background-color:#0000;background-image:linear-gradient(var(--color-void), var(--color-void));background-position:0 0;background-repeat:no-repeat;background-size:0% 100%}:root[data-intro=pending] .chapter--hero .chapter__panel{border-color:#0000}:root[data-intro=reveal] .chapter--hero .chapter__panel{transition:background-size 1.1s cubic-bezier(.16, 1, .3, 1), border-color .7s var(--ease-out-quart) .65s;background-size:100% 100%}:root[data-intro=reveal] :is(.site-header,.hud,.chapter-rail){transition:opacity .8s var(--ease-out-quart) .32s}@media not (min-width:48rem){:root:is([data-intro=pending],[data-intro=reveal]) .chapter--hero .chapter__panel{background-position:0 100%;background-size:100% 0%}:root[data-intro=reveal] .chapter--hero .chapter__panel{background-size:100% 100%}}.hero__title[data-intro-state] .intro-word{white-space:nowrap;display:inline-block}.hero__title[data-intro-state] .intro-letter{transition:opacity .56s var(--ease-out-quart) calc(var(--letter-index) * 34ms + .2s), translate 1.1s cubic-bezier(.34, 1.56, .64, 1) calc(var(--letter-index) * 34ms + .2s), text-shadow 1.3s var(--ease-out-expo) calc(var(--letter-index) * 34ms + .32s);display:inline-block}.hero__title[data-intro-state=enter] .intro-letter{opacity:0;text-shadow:-.07em 0 .015em #ff2e54e6,.07em 0 .015em #2ed6ffe6;translate:0 .42em}.hero__title[data-intro-state=play] .hero__role{transition:opacity .7s var(--ease-out-quart) .46s}.hero__title[data-intro-state=enter] .hero__role{opacity:0}}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:200;font-display:swap;src:url(/assets/be-vietnam-pro-latin-200-normal-5c8vEJYY.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:Be Vietnam Pro;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/be-vietnam-pro-latin-300-normal-Y7NOBCwQ.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:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/be-vietnam-pro-latin-400-normal-PpnXBOrz.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:Source Code Pro;font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/source-code-pro-latin-wght-normal-BP8Zz55n.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}@property --action-corner{syntax:"<length>";inherits:false;initial-value:8px}@property --action-fill{syntax:"<percentage>";inherits:false;initial-value:0%}@property --action-color{syntax:"<color>";inherits:true;initial-value:#3a3633}@property --action-trail{syntax:"<length>";inherits:false;initial-value:28px}@view-transition{navigation:auto}:root{--wipe-duration:.82s;--wipe-ease:cubic-bezier(.76, 0, .18, 1)}::view-transition-group(*){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-out-expo)}::view-transition-old(root){animation:page-recede var(--wipe-duration) var(--wipe-ease) both}::view-transition-new(root){animation:page-wipe var(--wipe-duration) var(--wipe-ease) both}:root:after{content:none;z-index:var(--layer-skip-link);background-color:var(--color-signal);pointer-events:none;height:2px;position:fixed;inset-block-start:-2px;inset-inline:0;box-shadow:0 0 1.25rem .2rem #ff6565bf}:root:active-view-transition:after{content:"";animation:wipe-line var(--wipe-duration) var(--wipe-ease) both}@keyframes page-recede{to{opacity:.25;filter:brightness(.4)}}@keyframes page-wipe{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes wipe-line{0%{opacity:1;translate:0}85%{opacity:1}to{opacity:0;translate:0 100svh}}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}
