@font-face{font-family:Inclusive Sans;src:url(/fonts/inclusive-sans-latin.woff2)format("woff2");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:"Rock 3D";src:url(/fonts/rock3d-latin.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}:root{--bg:#fafaf8;--ink:#111;--ink-secondary:#555550;--ink-tertiary:#6e6e66;--border:#e5e5e0;--accent:#c40;--selection-bg:#c40;--selection-ink:#fafaf8;--accent-on-fill:#ff5c00;--max-width:640px;--gutter:clamp(1.5rem, 6vw, 6rem);--section-gap:3.5rem;--row-pad:.75rem;--description-measure:34ch;--reveal-delay:.2s;--row-line-gap:1.25rem;--mark-entrance:1s;--mark-stagger:85ms;--mark-travel:14px;--intro-portrait:.15s;--intro-swap-start:.55s;--intro-swap:.3s;--intro-exit:1.9s;--intro-exit-run:.9s;--intro-name:2.05s;--intro-letter:60ms;--intro-headline:2.5s;--page-cascade:2.7s;--portrait-size:clamp(112px, 28vw, 160px);--portrait-gap:1.5rem;--portrait-hold:4s;--portrait-fade:.5s;--portrait-flip:.12s;--stage-portrait-k:2;--display:"Rock 3D", "Arial Black", Impact, sans-serif;--sans:"Inclusive Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--t-display:clamp(2.25rem, 9.5vw, 3.5rem);--t-deck:1.5rem;--t-title:1.125rem;--t-body:1rem;--t-small:.8125rem;--t-label:.75rem;--ease:cubic-bezier(.2, .4, 0, 1)}[data-theme=dark]{--bg:#141412;--ink:#e8e8e4;--ink-secondary:#9a9a94;--ink-tertiary:#8a8a84;--border:#2c2c28;--accent:#ff5c00;--selection-bg:#ff5c00;--selection-ink:#141412;--accent-on-fill:#c40}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--t-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s var(--ease), color .3s var(--ease);margin:0;font-weight:400;line-height:1.6}::selection{background:var(--selection-bg);color:var(--selection-ink)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{max-width:var(--max-width);padding:clamp(1.75rem, 5vw, 3.5rem) var(--gutter) clamp(3rem, 8vw, 6rem);flex-direction:column;min-height:100svh;margin:0 auto;display:flex}.bar{justify-content:space-between;align-items:center;margin-bottom:clamp(3rem,12vw,6rem);display:flex}.lang{align-items:center;gap:.4rem;display:flex}.lang-btn,.icon-btn{appearance:none;font:inherit;color:var(--ink-tertiary);cursor:pointer;transition:color .2s var(--ease);background:0 0;border:0;margin:0;padding:0}.lang-btn{font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;align-items:center;margin-block:-.65rem;padding:.65rem .35rem;text-decoration:none;display:inline-flex}.lang-btn:hover{color:var(--ink-secondary)}.lang-btn.is-active{color:var(--ink)}.lang-sep{color:var(--border);font-size:var(--t-label);user-select:none}.icon-btn{border-radius:50%;place-items:center;width:40px;height:40px;margin:-6px;display:grid}.icon-btn:hover{color:var(--ink)}.icon-btn svg{transition:transform .4s var(--ease);display:block}.icon-btn:hover svg{transform:rotate(20deg)}[data-theme=light] .i-sun,[data-theme=dark] .i-moon{display:none}:where(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.display{font-family:var(--display);font-size:var(--t-display);letter-spacing:.01em;text-transform:uppercase;overflow-wrap:break-word;margin:0;font-weight:400;line-height:1.05}.headline{font-size:var(--t-deck);color:var(--ink-secondary);text-wrap:balance;margin:1rem 0 0;font-weight:400;line-height:1.35}.curtain{z-index:1;background:var(--bg);opacity:0;pointer-events:none;transition:opacity .5s var(--ease);position:fixed;inset:0}[data-intro] .curtain{opacity:1}[data-intro=exit] .curtain{opacity:0}.intro{z-index:2;position:relative}.portrait-slot{width:var(--portrait-size);margin-bottom:var(--portrait-gap)}.portrait{aspect-ratio:1;background:var(--border);border-radius:50%;width:100%;position:relative;overflow:hidden}.portrait-frame{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--portrait-fade) var(--ease);position:absolute;inset:0}.portrait-frame.is-current{opacity:1}.word{white-space:nowrap;display:inline-block}.letter{display:inline-block}:is([data-intro],[data-intro-done]) .intro .reveal{opacity:1;animation:none;transform:none}:is([data-intro],[data-intro-done]) .reveal{animation-delay:calc(var(--page-cascade) + var(--i,0) * 55ms)}[data-intro]{overflow:hidden}[data-intro] .intro .portrait-slot{transform:translate(var(--stage-portrait-x,0px), var(--stage-portrait-y,0px)) scale(var(--stage-portrait-k));transform-origin:0 0}[data-intro=exit] .intro .portrait-slot{transition:transform var(--intro-exit-run) var(--ease);transform:none}[data-intro] .intro .portrait{opacity:0;animation:rise .8s var(--ease) var(--intro-portrait) forwards;transform:scale(.75)}[data-intro] .portrait-frame{transition-duration:var(--portrait-flip)}:is([data-intro],[data-intro-done]) .intro .letter{opacity:0;animation:.2s step-start forwards appear;animation-delay:calc(var(--intro-name) + var(--l) * var(--intro-letter))}:is([data-intro],[data-intro-done]) .intro .headline{opacity:0;animation:rise .8s var(--ease) var(--intro-headline) forwards;transform:translateY(10px)}[data-intro]:not([data-stage-ready]) :is(.reveal,.portrait,.letter,.headline){animation-play-state:paused}.block{margin-top:var(--section-gap)}.eyebrow{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-tertiary);margin:0 0 .5rem;font-weight:400}.list{margin:0 calc(var(--row-pad) * -1);border-top:1px solid var(--border);padding:0;list-style:none}.list li{border-bottom:1px solid var(--border)}.row{width:100%;padding:.85rem var(--row-pad);font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.3rem 1rem;text-decoration:none;display:flex;position:relative}.row:after{content:"";z-index:-1;background:var(--ink);transform-origin:0;transition:transform .3s var(--ease);position:absolute;inset:0;transform:scaleX(0)}.row:focus-visible:after{transform:scaleX(1)}.row:focus-visible :is(.row-name,.row-meta,.arrow,.glyph,.description){color:var(--bg)}.row:focus-visible .up{color:var(--accent-on-fill)}.row:focus-visible :is(.arrow,.up){transform:translate(3px)}.row-project{row-gap:var(--row-line-gap);grid-template-columns:1fr auto;grid-template-areas:"name meta""description mark";align-items:start;display:grid}.row-project .row-name{grid-area:name}.row-project .row-meta{grid-area:meta;justify-self:end}.row-project .description{grid-area:description;align-self:end}.row-project .up{grid-area:mark;place-self:end}.row-name{min-width:0;font-weight:400;font-size:var(--t-title);transition:color .3s var(--ease);flex:1 1 0;margin:0;line-height:1.3}.description{font-size:var(--t-small);color:var(--ink-tertiary);transition:color .3s var(--ease);text-wrap:pretty;flex:0 0 100%;padding-inline-end:max(0px, 100% - var(--description-measure));line-height:1.5}.row-meta{font-size:var(--t-label);color:var(--ink-tertiary);transition:color .3s var(--ease), opacity .3s var(--ease)}.arrow{color:var(--ink-tertiary);transition:transform .3s var(--ease), color .3s var(--ease);flex-shrink:0}.up{color:var(--accent);transition:transform .3s var(--ease), color .3s var(--ease), opacity .3s var(--ease);flex-shrink:0}.list-small .row-name{font-size:var(--t-body);align-items:center;gap:.5rem;display:inline-flex}.row-quiet{cursor:default}.row-tight{padding:.65rem var(--row-pad);align-items:center}.glyph{color:var(--ink-tertiary);transition:color .3s var(--ease);flex-shrink:0}.glyph-tail{align-self:center}@media (hover:none){.row-project .up{opacity:0;transform:translateX(calc(var(--mark-travel) * -1));animation:rise .45s var(--ease) forwards;animation-delay:calc(var(--mark-entrance) + var(--i,0) * var(--mark-stagger))}}@media (hover:hover){.row:not(.row-quiet):hover:after{transform:scaleX(1)}.row:not(.row-quiet):hover :is(.row-name,.row-meta,.arrow,.glyph,.description){color:var(--bg)}.row:not(.row-quiet):hover .up{color:var(--accent-on-fill)}.row:not(.row-quiet):hover :is(.arrow,.up){transform:translate(3px)}.row-project{grid-template-areas:"name tail""description tail"}.row-project .row-meta,.row-project .up{grid-area:tail;align-self:start}.up{opacity:0}.row:not(.row-quiet):is(:hover,:focus-visible) .up{opacity:1}.row:not(.row-quiet):is(:hover,:focus-visible) .row-meta{opacity:0}.row:not(.row-quiet):is(:hover,:focus-visible) :is(.up,.row-meta){transition-delay:var(--reveal-delay)}}.tip{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--selection-ink);background:var(--selection-bg);opacity:0;pointer-events:none;transition:opacity .18s var(--ease);place-items:center;display:grid;position:absolute;inset:0}.is-copied .tip{opacity:1}.legal{padding-top:var(--section-gap);font-size:var(--t-label);color:var(--ink-tertiary);margin-top:auto}.reveal{opacity:0;animation:rise .7s var(--ease) forwards;animation-delay:calc(var(--i,0) * 55ms);transform:translateY(10px)}@keyframes rise{to{opacity:1;transform:none}}@keyframes appear{to{opacity:1}}::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}@media (prefers-reduced-motion:reduce){.curtain{display:none}.reveal{opacity:1;animation:none;transform:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}::view-transition-old(root),::view-transition-new(root){animation:none}}
