@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,ul,ol,figure,dl,dd,blockquote{margin:0}ul[role=list],ul:where(.ports,.stack-group ul,.actions){padding:0;list-style:none}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-block-start:5rem}img,svg,video{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--brass);outline-offset:4px;border-radius:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer tokens{:root{color-scheme:light dark;--bg:light-dark(#f3f1ec,#0e1116);--surface:light-dark(#fbfaf7,#171d26);--surface-2:light-dark(#f2efe7,#202834);--border:light-dark(#dad4c8,#2c3644);--text:light-dark(#16191f,#f1efe9);--text-muted:light-dark(#5c6572,#8a94a4);--brass:light-dark(#8a6100,#e3b23c);--sky:light-dark(#1a5f94,#56a8e0);--rose:light-dark(#a62943,#e0607e);--mint:light-dark(#106b4e,#63c4a0);--on-brass:light-dark(#fff8e8,#12161c);--sans:"Avenir Next", "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Menlo, Consolas, monospace;--step--1:clamp(.76rem, .74rem + .1vw, .82rem);--step-0:clamp(1rem, .97rem + .15vw, 1.08rem);--step-1:clamp(1.15rem, 1.05rem + .5vw, 1.4rem);--step-2:clamp(1.35rem, 1.2rem + .75vw, 1.8rem);--step-3:clamp(1.7rem, 1.4rem + 1.4vw, 2.6rem);--step-4:clamp(2.7rem, 1.7rem + 4.6vw, 6rem);--gutter:clamp(1.25rem, 4vw, 3.5rem);--gap:10px;--radius:14px;--stud-w:30px;--stud-h:9px;--lift:light-dark(0 1px 2px #16191f0f,none);--accent:var(--border)}[data-accent=brass]{--accent:var(--brass)}[data-accent=sky]{--accent:var(--sky)}[data-accent=rose]{--accent:var(--rose)}[data-accent=mint]{--accent:var(--mint)}}@layer layout{body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--step-0);padding-inline:var(--gutter);line-height:1.6}@media (prefers-color-scheme:dark){body{-webkit-font-smoothing:antialiased}}.shell{max-width:1200px;margin-inline:auto}.band{padding-block:clamp(2.75rem,6vw,5rem);&>h2{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-block-end:1.6rem;font-weight:400}}.lede{max-width:58ch;color:var(--text-muted);margin-block:-.75rem 2rem}.grid{gap:var(--gap);display:grid}@media (width>=52rem){.grid-6{grid-template-columns:repeat(6,1fr)}}.span-2{grid-column:span 2}.span-3{grid-column:span 3}footer.site{border-block-start:1px solid var(--border);font-family:var(--mono);font-size:var(--step--1);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;margin-block-start:2.5rem;padding-block:2rem 3.5rem;display:flex}}@layer components{.masthead{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem;padding-block:1.75rem;display:flex;& .mark{color:var(--text);align-items:center;gap:.6rem;text-decoration:none;display:flex;& i{background:var(--brass);border-radius:4px;flex:none;block-size:14px;inline-size:14px}}& nav{flex-wrap:wrap;gap:1.1rem 1.4rem;display:flex;& a{color:var(--text-muted);text-decoration:none;&:hover,&[aria-current=page]{color:var(--brass)}}}}.hero{padding-block:clamp(2rem,6vw,4.5rem) clamp(2rem,5vw,3.5rem);& h1{font-size:var(--step-4);letter-spacing:-.045em;text-wrap:balance;max-width:15ch;font-weight:700;line-height:.92;& em{color:var(--brass);font-style:normal}}}.eyebrow{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-block-end:1.75rem}.standfirst{max-width:60ch;font-size:var(--step-1);color:var(--text-muted);margin-block-start:1.9rem;line-height:1.55;& strong{color:var(--text);font-weight:500}}.availability{border:1px solid color-mix(in oklab, var(--mint) 40%, var(--border));font-family:var(--mono);font-size:var(--step--1);color:var(--mint);border-radius:999px;align-items:center;gap:.6rem;margin-block-start:1.6rem;padding:.45rem .9rem;display:inline-flex;& i{background:var(--mint);border-radius:50%;flex:none;block-size:7px;inline-size:7px}}.bench{gap:var(--gap);grid-template-columns:repeat(2,1fr);margin-block-start:clamp(2.25rem,5vw,3.25rem);display:grid}@media (width>=46rem){.bench{grid-template-columns:repeat(4,1fr)}}.cap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);flex-direction:column;gap:.4rem;min-block-size:8.5rem;padding:1.1rem 1.1rem 1.2rem;display:flex;position:relative;&:before{content:"";inline-size:26px;block-size:var(--stud-h);background:var(--accent);border-radius:5px 5px 0 0;position:absolute;inset-block-start:-5px;inset-inline-start:1.2rem}& b{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-weight:400}& span{font-size:var(--step-3);letter-spacing:-.035em;color:var(--accent);font-weight:600;line-height:1}& p{font-size:var(--step--1);color:var(--text-muted);margin-block-start:auto;line-height:1.45}}@media (prefers-reduced-motion:no-preference){.cap{animation:.52s cubic-bezier(.2,.8,.25,1) backwards snap;&:first-child{animation-delay:60ms}&:nth-child(2){animation-delay:.12s}&:nth-child(3){animation-delay:.18s}&:nth-child(4){animation-delay:.24s}}@keyframes snap{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);flex-direction:column;padding:clamp(1.3rem,3vw,1.9rem);display:flex;position:relative;&:before{content:"";inline-size:var(--stud-w);block-size:var(--stud-h);background:var(--accent);border-radius:5px 5px 0 0;position:absolute;inset-block-start:-5px;inset-inline-start:clamp(1.4rem,3vw,2rem)}& .kicker{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-block-end:.85rem}& h3{font-size:var(--step-2);letter-spacing:-.03em;text-wrap:balance;font-weight:600;line-height:1.15}&>p{color:var(--text-muted);max-width:54ch;margin-block-start:.8rem}}a.tile{color:inherit;text-decoration:none;transition:border-color .18s,background .18s;&:hover,&:focus-visible{background:var(--surface-2);border-color:var(--accent)}}.ports{border-block-start:1px solid var(--border);font-family:var(--mono);font-size:var(--step--1);flex-wrap:wrap;gap:.4rem;margin-block-start:1.3rem;padding-block-start:1rem;display:flex;& li{background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:.25rem .6rem}}.filter{font-family:var(--mono);font-size:var(--step--1);flex-wrap:wrap;gap:.4rem;margin-block-end:1.5rem;display:flex;& button{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.4rem .9rem;transition:border-color .18s,color .18s;&:hover{color:var(--text);border-color:var(--text-muted)}&[aria-pressed=true]{background:var(--brass);border-color:var(--brass);color:var(--on-brass);font-weight:600}}}.tile[hidden]{display:none}.stack{gap:var(--gap);display:grid}@media (width>=46rem){.stack{grid-template-columns:repeat(2,1fr)}}@media (width>=68rem){.stack{grid-template-columns:repeat(4,1fr)}}.stack-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);padding:1.2rem;& h3{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin-block-end:.9rem;font-weight:400}& ul{font-family:var(--mono);font-size:var(--step--1);flex-wrap:wrap;gap:.4rem;display:flex}& li{background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:.25rem .6rem;&[data-core]{color:var(--text);background:var(--border)}}}.prose{max-width:62ch;font-size:var(--step-1);color:color-mix(in oklab, var(--text) 88%, var(--text-muted));line-height:1.65;&>*+*{margin-block-start:1.35em}&>h2{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-block-start:3rem;font-weight:400}& strong{color:var(--text);font-weight:600}& a{color:var(--brass);text-underline-offset:3px;text-decoration-thickness:1px}& .lead{font-size:var(--step-2);color:var(--text);letter-spacing:-.015em;text-wrap:pretty;line-height:1.45}}.aside{--accent:var(--sky);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);font-size:var(--step-0);color:var(--text-muted);margin-block:2.25rem;padding:1.3rem 1.4rem;position:relative;&:before{content:"";inline-size:26px;block-size:var(--stud-h);background:var(--accent);border-radius:5px 5px 0 0;position:absolute;inset-block-start:-5px;inset-inline-start:1.5rem}& p+p{margin-block-start:.8rem}}.principles{gap:var(--gap);max-width:none;margin-block:2.5rem;display:grid}@media (width>=46rem){.principles{grid-template-columns:repeat(2,1fr)}}.principle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);padding:1.2rem;position:relative;&:before{content:"";inline-size:26px;block-size:var(--stud-h);background:var(--accent);border-radius:5px 5px 0 0;position:absolute;inset-block-start:-5px;inset-inline-start:1.3rem}& h3{font-size:var(--step-1);letter-spacing:-.025em;text-wrap:balance;color:var(--text);font-weight:600;line-height:1.2}& p{font-size:var(--step-0);color:var(--text-muted);margin-block-start:.6rem;line-height:1.55}}.about-head{align-items:start;gap:clamp(1.5rem,4vw,3rem);display:grid}@media (width>=60rem){.about-head{grid-template-columns:1fr 18rem}}.portrait{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);aspect-ratio:4/5;object-fit:cover;inline-size:100%}.portrait-caption{font-family:var(--mono);font-size:var(--step--1);color:var(--text-muted);margin-block-start:.7rem;line-height:1.6}.roles{gap:var(--gap);display:grid}.role{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);gap:.6rem 2rem;padding:clamp(1.2rem,3vw,1.75rem);display:grid;& h3{font-size:var(--step-1);letter-spacing:-.02em;font-weight:600}& p{color:var(--text-muted);max-width:62ch;margin-block-start:.5rem}}@media (width>=56rem){.role{grid-template-columns:15rem 1fr}}.role-meta{font-family:var(--mono);font-size:var(--step--1);color:var(--text-muted);line-height:1.75;& b{color:var(--text);letter-spacing:.04em;text-transform:uppercase;font-weight:400;display:block}}.facts{gap:var(--gap);display:grid}@media (width>=52rem){.facts{grid-template-columns:repeat(3,1fr)}}.fact{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--lift);padding:1.2rem;& dt{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-block-end:.6rem}& dd+dd{color:var(--text-muted);font-size:var(--step--1);margin-block-start:.35rem}& a{color:var(--brass);text-underline-offset:3px}}.contact{--accent:var(--brass);background:var(--surface);border:1px solid color-mix(in oklab, var(--brass) 35%, var(--border));border-radius:var(--radius);box-shadow:var(--lift);padding:clamp(1.5rem,4vw,2.5rem);position:relative;&:before{content:"";inline-size:34px;block-size:var(--stud-h);background:var(--brass);border-radius:5px 5px 0 0;position:absolute;inset-block-start:-5px;inset-inline-start:clamp(1.6rem,4vw,2.6rem)}& h2{font-size:var(--step-3);letter-spacing:-.035em;text-wrap:balance;max-width:20ch;font-weight:700}& p{color:var(--text-muted);max-width:52ch;margin-block-start:.9rem}}.actions{flex-wrap:wrap;gap:.6rem;margin-block-start:1.6rem;display:flex}.btn{font-family:var(--mono);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--border);color:var(--text);background:var(--surface-2);border-radius:999px;padding:.7rem 1.2rem;text-decoration:none;transition:border-color .18s;&:hover{border-color:var(--brass)}&[data-primary]{background:var(--brass);color:var(--on-brass);border-color:var(--brass);font-weight:600}}}@layer utilities{.visually-hidden:not(:focus):not(:active){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--brass);color:var(--on-brass);font-family:var(--mono);font-size:var(--step--1);border-radius:8px;padding:.6rem 1rem;text-decoration:none;position:absolute;inset-block-start:.5rem;inset-inline-start:.5rem;transform:translateY(-200%);&:focus{transform:none}}}