@font-face{font-family:Geist;src:url(/assets/geist.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--bg:#0B0D10;--bg2:#0E1014;--tx:#F2F1EE;--mu:#8E9096;--di:#5C5F66;--ln:rgba(255,255,255,.08);--ac:#D4A373;--w:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--tx);font:400 17px/1.65 Geist,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
::selection{background:var(--ac);color:var(--bg)}
.wrap{max-width:var(--w);margin:0 auto;padding:0 28px}.narrow{max-width:760px}
.skip{position:absolute;left:-999px;top:8px;background:var(--tx);color:var(--bg);padding:8px 12px;z-index:9}.skip:focus{left:8px}
:focus-visible{outline:1px solid var(--ac);outline-offset:4px}
.hdr{position:sticky;top:0;z-index:5;background:rgba(11,13,16,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--ln)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:60px}
.mark{font-weight:600;letter-spacing:-.02em;font-size:15px;border:1px solid var(--ln);padding:4px 8px;border-radius:6px;transition:border-color .3s}.mark:hover{border-color:var(--ac)}
.hdr nav{display:flex;gap:28px;font-size:14px;color:var(--mu)}.hdr nav a{transition:color .25s}.hdr nav a:hover{color:var(--tx)}
.hero{padding:clamp(72px,12vw,150px) 0 clamp(72px,10vw,130px)}
.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(40px,7vw,110px);align-items:end}
.eyebrow,.label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--di);margin:0 0 28px}
h1{font-weight:500;font-size:clamp(48px,8.4vw,112px);line-height:.96;letter-spacing:-.05em;margin:0}
.acc{color:var(--ac)}
.lead{font-size:clamp(19px,2.1vw,25px);letter-spacing:-.015em;line-height:1.35;margin:36px 0 0;max-width:30ch}
.intro{color:var(--mu);max-width:52ch;margin:24px 0 0}
.photo{margin:0;position:relative;aspect-ratio:440/484;border-radius:4px;overflow:hidden;background:var(--bg2)}
.photo img{display:block;width:100%;height:100%;object-fit:cover;filter:contrast(1.02) brightness(.88);transition:filter .8s}
.photo::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px var(--ln);background:linear-gradient(180deg,transparent 60%,rgba(11,13,16,.35))}
.photo:hover img{filter:contrast(1.04) brightness(.96)}
.photo-empty{display:grid;place-items:center;border:1px dashed var(--ln)}.photo-empty span{color:var(--di);font-size:40px;letter-spacing:-.04em}
.sec{border-top:1px solid var(--ln);padding:clamp(72px,10vw,132px) 0}
.sec:nth-of-type(odd){background:var(--bg2)}
.cols{display:grid;grid-template-columns:220px 1fr;gap:40px}
.cols .label{margin-top:14px}
h2{font-weight:500;font-size:clamp(32px,4.4vw,56px);line-height:1.04;letter-spacing:-.04em;margin:0 0 40px;max-width:18ch}
.prose{color:var(--mu);max-width:62ch;margin:0}.prose p{margin:0 0 1.1em}
.since{margin:48px 0 0;padding-top:24px;border-top:1px solid var(--ln);max-width:62ch;color:var(--mu);font-size:15px}
.since .num{color:var(--tx);font-weight:500;margin-right:8px}
.pjs{list-style:none;margin:0;padding:0;border-top:1px solid var(--ln)}
.pj{display:grid;grid-template-columns:48px 180px 1fr auto;gap:24px;align-items:baseline;padding:28px 0;border-bottom:1px solid var(--ln)}
.pj-n{font-size:12px;color:var(--di);font-variant-numeric:tabular-nums}
.pj h3{margin:0;font-weight:500;font-size:20px;letter-spacing:-.02em}
.pj p{margin:0;color:var(--mu);font-size:15.5px;max-width:52ch}
.pj-link,.pj-note{font-size:14px;color:var(--mu);white-space:nowrap}
.pj-link span{display:inline-block;margin-left:6px;transition:transform .3s,color .3s}
.pj-link:hover{color:var(--tx)}.pj-link:hover span{transform:translate(2px,-2px);color:var(--ac)}
.pj-note{color:var(--di)}
.mail{margin:40px 0 0;display:flex;flex-wrap:wrap;gap:16px;align-items:baseline}
.mail a{font-size:clamp(24px,3.4vw,40px);letter-spacing:-.03em;background:linear-gradient(var(--ac),var(--ac)) 0 100%/0 1px no-repeat;padding-bottom:4px;transition:background-size .5s}
.mail a:hover{background-size:100% 1px}
.pend{font-size:12px;color:var(--ac);opacity:.8;letter-spacing:.04em}
.ftr{border-top:1px solid var(--ln);padding:48px 0}
.ftr-in{display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:end}
.ftr p{margin:0}.ftr-name{font-weight:500}.muted{color:var(--mu);font-size:14px}.small{font-size:13px;color:var(--di)}
.ftr nav{display:flex;gap:24px;font-size:14px;color:var(--mu)}.ftr nav a:hover{color:var(--tx)}
.legal{padding:100px 0 120px}.legal h1{font-size:clamp(40px,6vw,64px);margin-bottom:24px}.legal h2{font-size:20px;letter-spacing:-.01em;margin:40px 0 12px}
.legal p,.legal li{color:var(--mu)}.draft{border-left:2px solid var(--ac);padding-left:16px;font-size:14px}.back{color:var(--tx)}
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.photo{max-width:340px;order:-1}.cols{grid-template-columns:1fr;gap:8px}
.pj{grid-template-columns:36px 1fr;gap:6px 12px}.pj p,.pj-link,.pj-note{grid-column:2}.ftr-in{grid-template-columns:1fr;gap:20px}}
@media (max-width:520px){.hdr nav{gap:18px;font-size:13px}.wrap{padding:0 22px}.photo{max-width:none;aspect-ratio:4/3}.photo img{object-position:50% 25%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
