@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-body:"Inter","Inter Fallback"}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_48cfcd{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_48cfcd{--font-display:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ae822095a172cc5c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3c70c5716f1730b3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fc727f226c737876-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/77fb5eec12c66d49-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/281dae1e814de8c6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/806de4d605d3ad01-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Mono Fallback;src:local("Arial");ascent-override:81.58%;descent-override:26.30%;line-gap-override:0.00%;size-adjust:137.28%}.__className_e8b655{font-family:Space Mono,Space Mono Fallback;font-style:normal}.__variable_e8b655{--font-mono:"Space Mono","Space Mono Fallback"}:root{--paper:#f7f7f4;--paper-deep:#efeee8;--panel:#f1f0eb;--ink:#15151a;--ink-2:#35353d;--muted:#666671;--faint:#70707a;--line:#e1e0da;--line-strong:#cecdc5;--accent:#ffcd2c;--accent-ink:#6d4b00;--accent-soft:#fff2b8;--accent-weak:rgba(255,205,44,0.16);--shadow-soft:0 18px 60px rgba(21,21,26,0.07)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{color-scheme:light;scroll-behavior:smooth;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}body{min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 16% -6%,rgba(255,205,44,.23),transparent 29rem),linear-gradient(rgba(21,21,26,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(21,21,26,.022) 1px,transparent 1px),var(--paper);background-size:auto,96px 96px,96px 96px,auto;color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px;border-radius:3px}a{color:inherit}.page{position:relative;width:min(100%,1120px);margin-inline:auto;padding:clamp(1.5rem,4vw,3.5rem) clamp(1.25rem,4vw,3rem) clamp(2.5rem,6vw,4.5rem)}section{scroll-margin-top:6.5rem}.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;min-height:2.75rem;padding:.55rem .9rem;border:1px solid var(--line-strong);border-radius:999px;background:var(--paper);box-shadow:var(--shadow-soft);color:var(--ink);font-family:var(--font-mono);font-size:.75rem;line-height:1.5;text-decoration:none;transform:translateY(-170%);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}.topbar{position:-webkit-sticky;position:sticky;z-index:20;top:.75rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:3.25rem;margin-inline:-.75rem;padding:.35rem .45rem .35rem .8rem;border:1px solid color-mix(in srgb,var(--line-strong) 82%,transparent);border-radius:999px;background:color-mix(in srgb,var(--paper) 90%,transparent);box-shadow:0 10px 34px rgba(21,21,26,.055);color:var(--muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.02em;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.topbar__brand{gap:.75rem;min-height:2.5rem;text-decoration:none}.topbar__brand,.topbar__mark{display:inline-flex;align-items:center}.topbar__mark{gap:.55em;color:var(--ink);font-weight:700}.topbar__mark:before{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-weak);content:""}.topbar__brand-meta{padding-left:.75rem;border-left:1px solid var(--line-strong);color:var(--faint)}.topbar__nav{display:flex;align-items:center;gap:.15rem}.topbar__nav a{display:inline-flex;align-items:center;min-height:2.5rem;padding-inline:.68rem;border-radius:999px;color:var(--muted);text-decoration:none;transition:background .18s ease,color .18s ease}.topbar__nav a:hover{background:var(--panel);color:var(--ink)}.hero{margin-top:clamp(4.5rem,10vw,8.5rem)}.hero__topline{display:flex;align-items:center;justify-content:space-between;gap:1rem}.coordinates,.eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.eyebrow{display:inline-flex;align-items:center;gap:.75em}.eyebrow:before{width:24px;height:1px;background:var(--line-strong);content:""}.coordinates{color:var(--faint);letter-spacing:.08em}.hero__layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(17rem,.72fr);align-items:end;grid-gap:clamp(2.5rem,7vw,6.5rem);gap:clamp(2.5rem,7vw,6.5rem);margin-top:1.7rem}.hero__title{max-width:10ch;font-family:var(--font-display);font-size:clamp(3.6rem,7.4vw,6.15rem);font-weight:500;letter-spacing:-.05em;line-height:.96;text-wrap:balance}.hero__title .dot{color:var(--accent)}.hero__title .hl{color:var(--accent-ink);background:linear-gradient(transparent 80%,var(--accent-weak) 0);box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero__copy{padding-bottom:.45rem}.hero__lead{max-width:45ch;color:var(--ink-2);font-size:clamp(1.03rem,1.7vw,1.17rem);line-height:1.68;text-wrap:pretty}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.4rem;min-height:2.9rem;padding:.68rem .9rem;border:1px solid transparent;border-radius:4px;font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.02em;line-height:1.4;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.button:hover{transform:translateY(-2px)}.button--primary{border-color:var(--accent);background:var(--accent);color:var(--ink)}.button--primary:hover{border-color:#e5ae00;background:#ffd64f}.button--ghost{border-color:var(--line-strong);background:color-mix(in srgb,var(--paper) 80%,transparent);color:var(--ink)}.button--ghost:hover{border-color:var(--ink);background:var(--paper)}.button--dark{min-width:12.5rem;background:var(--ink);color:#fff}.button--dark:hover{background:#2a2a31}.meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(3.5rem,7vw,5.5rem);padding-block:1.35rem;border-block:1px solid var(--line-strong)}.meta__item{display:flex;min-width:0;flex-direction:column;gap:.4rem;padding-inline:clamp(1rem,2.6vw,2rem);border-left:1px solid var(--line)}.meta__item:first-child{padding-left:0;border-left:0}.meta__item:last-child{padding-right:0}.meta__key{color:var(--faint);font-size:.65rem;letter-spacing:.11em;text-transform:uppercase}.meta__key,.meta__val{font-family:var(--font-mono)}.meta__val{overflow-wrap:anywhere;color:var(--ink);font-size:.78rem;line-height:1.5}.meta__val--live{display:inline-flex;align-items:center;gap:.55em;color:var(--accent-ink)}.meta__val--live:before{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--accent);content:"";animation:pulse 2.4s ease-in-out infinite}.section{margin-top:clamp(6rem,12vw,10rem)}.section__heading{display:grid;grid-template-columns:minmax(13rem,.85fr) minmax(18rem,1fr) auto;align-items:end;grid-gap:1.5rem 3rem;gap:1.5rem 3rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line-strong)}.section__heading>div{display:flex;align-items:baseline;gap:1rem}.contact__index,.section__count,.section__index{color:var(--faint);font-family:var(--font-mono);font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}.section__title{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.35rem);font-weight:500;letter-spacing:-.035em;line-height:1.05}.section__intro{max-width:44ch;color:var(--muted);font-size:.93rem;line-height:1.55;text-wrap:pretty}.section__count{padding-bottom:.15rem;white-space:nowrap}.section__heading--compact{grid-template-columns:minmax(13rem,.85fr) minmax(18rem,1fr)}.work{list-style:none}.work__item{position:relative;border-bottom:1px solid var(--line)}.work__item:before{position:absolute;z-index:1;inset-block:1rem;left:0;width:3px;border-radius:999px;background:var(--accent);content:"";pointer-events:none;transform:scaleY(0);transform-origin:center;transition:transform .2s ease}.work__item--featured{background:linear-gradient(90deg,color-mix(in srgb,var(--accent-weak) 72%,transparent),transparent 70%)}.work__item--featured:before,.work__item:has(.work__link:focus-visible):before,.work__item:has(.work__link:hover):before{transform:scaleY(1)}.work__link{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;min-height:7.25rem;padding:1.25rem .8rem 1.25rem .4rem;color:inherit;text-decoration:none;transition:background .2s ease}a.work__link:focus-visible,a.work__link:hover{background:var(--accent-weak)}.work__index{align-self:start;padding-top:.2rem;color:var(--faint);font-family:var(--font-mono);font-size:.72rem;transition:color .2s ease}.work__body{display:flex;min-width:0;flex-direction:column;gap:.4rem;transition:transform .2s ease}a.work__link:focus-visible .work__body,a.work__link:hover .work__body{transform:translateX(.45rem)}a.work__link:focus-visible .work__index,a.work__link:hover .work__index{color:var(--accent-ink)}.work__name{color:var(--ink);font-family:var(--font-display);font-size:clamp(1.2rem,2.3vw,1.55rem);font-weight:500;letter-spacing:-.018em;line-height:1.2}.work__desc{max-width:62ch;color:var(--muted);font-size:.9rem;line-height:1.55;text-wrap:pretty}.work__meta{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;min-width:12.5rem}.work__category{color:var(--faint);font-size:.68rem;letter-spacing:.02em}.work__category,.work__tag{font-family:var(--font-mono);white-space:nowrap}.work__tag{display:inline-flex;align-items:center;min-height:1.45rem;padding-inline:.5rem;border:1px solid color-mix(in srgb,var(--accent) 70%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--accent-soft) 58%,var(--paper));color:var(--accent-ink);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.work__arrow{color:var(--faint);font-family:var(--font-mono);font-size:1rem;opacity:.6;transform:translate(-2px,2px);transition:color .2s ease,opacity .2s ease,transform .2s ease}a.work__link:focus-visible .work__arrow,a.work__link:hover .work__arrow{color:var(--accent-ink);opacity:1;transform:translate(2px,-2px)}.work__item--inactive .work__link{cursor:default}.work__item--inactive .work__desc,.work__item--inactive .work__name{color:var(--faint)}.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,.82fr);grid-gap:clamp(2.5rem,8vw,7rem);gap:clamp(2.5rem,8vw,7rem);margin-top:2.6rem}.prose{max-width:57ch}.prose p{color:var(--ink-2);font-size:clamp(1.02rem,1.8vw,1.13rem);line-height:1.75;text-wrap:pretty}.prose p+p{margin-top:1.15rem}.prose strong{color:var(--ink);font-weight:600}.capabilities{border-top:1px solid var(--line-strong)}.capabilities__item{display:grid;grid-template-columns:6.25rem minmax(0,1fr);grid-gap:1rem;gap:1rem;padding-block:1rem;border-bottom:1px solid var(--line)}.capabilities dt{color:var(--faint);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.capabilities dd{color:var(--ink-2);font-size:.86rem;line-height:1.5}.contact{position:relative;overflow:hidden;padding:clamp(1.5rem,5vw,3.5rem);border:1px solid color-mix(in srgb,var(--accent) 58%,var(--line-strong));border-radius:6px;background:radial-gradient(circle at 88% 15%,rgba(255,255,255,.75),transparent 15rem),linear-gradient(135deg,var(--accent-soft),#f8e38a);box-shadow:var(--shadow-soft)}.contact:after{position:absolute;right:-4.5rem;bottom:-5.75rem;width:15rem;height:15rem;border:1px solid rgba(21,21,26,.13);border-radius:50%;box-shadow:0 0 0 2.5rem rgba(21,21,26,.035),0 0 0 5rem rgba(21,21,26,.025);content:"";pointer-events:none}.contact__index{position:relative;z-index:1;color:var(--accent-ink)}.contact__layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(15rem,.65fr);align-items:end;grid-gap:clamp(2rem,7vw,6rem);gap:clamp(2rem,7vw,6rem);margin-top:2.2rem}.contact__title{max-width:14ch;color:var(--ink);font-family:var(--font-display);font-size:clamp(2.5rem,5.5vw,4.5rem);font-weight:500;letter-spacing:-.045em;line-height:.98;text-wrap:balance}.contact__note{max-width:48ch;margin-top:1.25rem;color:color-mix(in srgb,var(--ink-2) 86%,var(--accent-ink));font-size:.94rem;line-height:1.65;text-wrap:pretty}.contact__links{display:flex;flex-direction:column;align-items:stretch;gap:.65rem}.contact__link{display:flex;align-items:center;justify-content:space-between;min-height:2.75rem;padding-inline:.2rem;border-bottom:1px solid rgba(21,21,26,.2);color:var(--ink);font-family:var(--font-mono);font-size:.75rem;text-decoration:none;transition:border-color .18s ease,padding .18s ease}.contact__link:hover{padding-inline:.45rem;border-color:var(--ink)}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:clamp(4.5rem,9vw,7rem);padding-top:1.3rem;border-top:1px solid var(--line-strong);color:var(--faint);font-family:var(--font-mono);font-size:.67rem;letter-spacing:.03em}.reveal{opacity:0;transform:translateY(12px);animation:reveal .72s cubic-bezier(.2,.6,.2,1) forwards}.reveal--2{animation-delay:.08s}.reveal--3{animation-delay:.16s}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}@media (max-width:880px){.hero__layout{grid-template-columns:1fr;align-items:start;gap:2rem}.hero__title{max-width:12ch}.hero__copy{max-width:40rem;padding-bottom:0}.meta{grid-template-columns:repeat(2,minmax(0,1fr))}.meta__item{padding:1rem;border-bottom:1px solid var(--line)}.meta__item:first-child{padding-left:1rem}.meta__item:nth-child(odd){border-left:0}.meta__item:nth-last-child(-n+2){border-bottom:0}.section__heading,.section__heading--compact{grid-template-columns:minmax(12rem,1fr) auto}.section__intro{grid-column:1/-1;grid-row:2}.section__count{grid-column:2;grid-row:1}.work__meta{min-width:9rem}.work__category{display:none}.about{gap:2.5rem}.about,.contact__layout{grid-template-columns:1fr}.contact__links{max-width:24rem}}@media (max-width:620px){body{background-size:auto,64px 64px,64px 64px,auto}.page{padding-inline:1rem}.topbar{gap:.5rem;margin-inline:-.25rem;padding-left:.7rem}.topbar__brand-meta{display:none}.topbar__nav{gap:0}.topbar__nav a{padding-inline:.5rem}.topbar__nav a:nth-child(2){display:none}.hero{margin-top:4.5rem}.hero__topline{align-items:flex-start;flex-direction:column;gap:.65rem}.hero__title{max-width:11ch;font-size:clamp(2.7rem,13vw,4rem)}.hero__actions{align-items:stretch;flex-direction:column}.button{width:100%}.meta{margin-top:3.25rem}.meta__item{padding:.85rem .75rem}.meta__item:first-child{padding-left:.75rem}.section{margin-top:6rem}.section__heading,.section__heading--compact{gap:1rem}.section__heading>div{gap:.7rem}.section__title{font-size:1.7rem}.work__link{grid-template-columns:2.1rem minmax(0,1fr);align-items:start;gap:.65rem;min-height:0;padding-block:1.3rem}.work__body,.work__meta{grid-column:2}.work__meta{grid-row:2;justify-content:flex-start;min-width:0}.work__category{display:inline}.work__arrow{margin-left:auto}a.work__link:focus-visible .work__body,a.work__link:hover .work__body{transform:none}.capabilities__item{grid-template-columns:5.25rem minmax(0,1fr)}.contact{margin-inline:-.25rem;padding:1.4rem}.contact__title{font-size:clamp(2.35rem,12vw,3.4rem)}.contact__links{max-width:none}}@media (max-width:410px){.topbar__nav a:last-child{display:none}.coordinates{font-size:.64rem}.section__count{display:none}.section__heading,.section__heading--compact{grid-template-columns:1fr}.section__heading>div,.section__intro{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}