:root{--bg:#0c0b09;--bg-raised:#161411;--ink:#f3eee4;--mute:#b8ae9c;--faint:#8a8274;--line:#2c2820;--signal:#ff6a2a;--signal-soft:#ff8c55;--focus:#ffe08a;--serif:"Instrument Serif", "Iowan Old Style", "Palatino Linotype", Palatino, serif;--sans:"Schibsted Grotesk", "Avenir Next", "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--pad:clamp(1.25rem, 4vw, 3.5rem);--measure:68rem}*,:before,:after{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--ink);background:radial-gradient(1100px 480px at 92% -8%, #24180f 0%, transparent 55%), var(--bg);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:clamp(1.05rem,.98rem + .35vw,1.18rem);line-height:1.5}a{color:inherit}a:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.skip{z-index:10;background:var(--ink);color:var(--bg);padding:.55rem .8rem;font-size:.9rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.page{width:min(100%, var(--measure));padding:clamp(1.5rem, 4vw, 3.5rem) var(--pad) 4rem;margin:0 auto}.kicker{color:var(--faint);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .85rem;font-size:.74rem;font-weight:500}.identity{align-items:end;gap:1.4rem;display:grid}.portrait{object-fit:cover;background:var(--bg-raised);border-radius:2px;width:min(100%,14.5rem);height:auto}.identity h1{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(3.4rem,2.4rem + 6vw,6.4rem);font-weight:400;line-height:.88}.identity .given,.identity .family{display:block}.identity .family{color:var(--signal);font-style:italic}.lede{max-width:36rem;color:var(--mute);margin:1.15rem 0 0;font-size:clamp(1.02rem,.98rem + .25vw,1.15rem)}.lede a{color:var(--ink);text-underline-offset:.16em}.lede a:hover{color:var(--signal-soft)}.invite{max-width:36rem;color:var(--ink);margin:1rem 0 0;font-size:clamp(1.02rem,.98rem + .25vw,1.15rem)}.facets{max-width:38rem;color:var(--faint);margin:.9rem 0 0;font-size:.95rem;line-height:1.55}.featured,.awards,.sites,.design,.roles,.contact{margin-top:clamp(2.4rem,5vw,3.8rem)}.featured{border:1px solid var(--line);background:var(--bg-raised);padding:clamp(1.4rem,3vw,2.1rem)}.featured-grid{align-items:center;gap:1.5rem;display:grid}.featured h2{font-family:var(--serif);letter-spacing:-.03em;margin:0;font-size:clamp(2.4rem,1.7rem + 3.4vw,4.4rem);font-weight:400;line-height:.95}.featured-sub{color:var(--signal-soft);letter-spacing:-.02em;margin:.35rem 0 0;font-size:clamp(1.15rem,1rem + .6vw,1.45rem);font-weight:500}.award-line{color:var(--ink);margin:1rem 0 0;font-size:1.02rem}.featured-desc{max-width:34rem;color:var(--mute);margin:.85rem 0 0}.featured-desc a{color:var(--ink);text-underline-offset:.16em}.featured-desc a:hover{color:var(--signal-soft)}.featured-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.15rem;margin:1.35rem 0 0;display:flex}.btn{background:var(--ink);min-height:3rem;color:var(--bg);letter-spacing:-.02em;align-items:center;padding:.7rem 1.15rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--signal-soft);color:#1a0d08}.text-link{color:var(--mute);text-underline-offset:.18em;font-size:.95rem}.text-link:hover{color:var(--ink)}.badge-wrap{justify-self:start;width:min(100%,11.5rem)}.badge{width:100%;height:auto;display:block}.video{aspect-ratio:16/9;background:#000;width:100%;margin:1.25rem 0 0;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.how{margin:1.5rem 0 0}.how h3,.design h2{color:var(--faint);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .85rem;font-size:.74rem;font-weight:500}.how ul,.design ul{grid-template-columns:1fr 1fr;gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.how li,.design li{margin:0}.how img,.design img{background:#f4efe6;border-radius:2px;width:100%;height:auto;display:block}.how span,.design span{color:var(--mute);margin:.4rem 0 0;font-size:.88rem;display:block}.design-lead,.design-note{max-width:38rem;color:var(--mute);margin:0 0 .75rem}.design-note{color:var(--faint);font-size:.95rem}.design-more{margin:.9rem 0 0}.design-more a{color:var(--mute);text-underline-offset:.18em;font-size:.95rem}.design-more a:hover{color:var(--ink)}.awards h2,.sites h2,.roles h2,.contact h2{color:var(--faint);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1rem;font-size:.74rem;font-weight:500}.awards ul,.roles ul{margin:0;padding:0;list-style:none}.awards li,.roles li{border-top:1px solid var(--line);grid-template-columns:6.4rem 1fr;gap:.75rem 1rem;padding:.95rem 0;display:grid}.awards li:first-child,.roles li:first-child{border-top:0;padding-top:0}.awards .label,.roles .label{color:var(--faint);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;padding-top:.18rem;font-size:.72rem;font-weight:500}.awards p,.roles p{max-width:38rem;margin:0}.awards a,.roles a{text-underline-offset:.16em}.awards a:hover,.roles a:hover{color:var(--signal-soft)}.contact-grid{gap:1.4rem;display:grid}.contact h3{color:var(--faint);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .4rem;font-size:.72rem;font-weight:500}.contact p{margin:.2rem 0}.contact a{border-bottom:1px solid #0000;text-decoration:none}.contact a:hover{color:var(--signal-soft);border-bottom-color:currentColor}.hint{color:var(--faint);margin-left:.45rem;font-size:.88rem}.sites-head p{color:var(--mute);margin:-.35rem 0 1.15rem}.sites ol{margin:0;padding:0;list-style:none}.sites li+li{border-top:1px solid var(--line)}.sites a{align-items:baseline;gap:.9rem 1.1rem;min-height:3.4rem;padding:.95rem .15rem;text-decoration:none;display:flex}.sites .idx{color:var(--faint);font-family:var(--mono);letter-spacing:.06em;flex:0 0 2.1rem;font-size:.74rem}.sites .row{flex-wrap:wrap;flex:1;justify-content:space-between;align-items:baseline;gap:.2rem 1rem;display:flex}.sites .name{letter-spacing:-.03em;font-size:clamp(1.3rem,1.12rem + .9vw,1.7rem);font-weight:500;line-height:1.2}.sites .gloss,.sites .host{color:var(--mute);font-size:.95rem}.sites a:hover .name,.sites a:focus-visible .name{color:var(--signal-soft)}.sites a:hover .idx,.sites a:focus-visible .idx{color:var(--signal)}footer{border-top:1px solid var(--line);color:var(--faint);font-family:var(--mono);letter-spacing:.06em;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.5rem;margin-top:clamp(3rem,7vw,5rem);padding-top:1.2rem;font-size:.74rem;display:flex}footer p{margin:0}@media (width>=720px){.identity{grid-template-columns:13.5rem 1fr;align-items:center;gap:2rem}.portrait{width:13.5rem}.featured-grid{grid-template-columns:1fr auto;gap:2.5rem}.badge-wrap{justify-self:end;width:12.5rem}.how ul,.design ul{grid-template-columns:repeat(4,1fr)}.contact-grid{grid-template-columns:1fr 1fr;max-width:36rem}.awards li,.roles li{grid-template-columns:7.2rem 1fr}}@media (prefers-reduced-motion:no-preference){.sites a,.roles a,.awards a,.contact a,.lede a,.featured-desc a,.design-more a,.text-link,.btn{transition:color .14s,background-color .14s,border-color .14s}.sites .name{transition:color .14s}}
