:root{--fg:#0b0b0b;--muted:rgba(0,0,0,.62);--hairline:rgba(0,0,0,.16);--bg:#ffffff;}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;color:var(--fg);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
img,video,iframe,figure,.card,.tile,.thumb,.video,.media,.media-wrap{border-radius:0 !important;}
.video,.media,.media-wrap,figure{overflow:visible !important;}
.wrap{max-width:980px;margin:0 auto;padding:34px 22px 56px}
header{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:22px}
nav.top{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}
nav.top a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
nav.top a.active{color:var(--fg)}
hr.hair{border:0;border-top:1px solid var(--hairline);margin:22px 0}
.footer{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(8px);border-top:1px solid var(--hairline);}
.footer .inner{max-width:980px;margin:0 auto;padding:12px 22px;display:flex;gap:14px 18px;flex-wrap:wrap;align-items:baseline;justify-content:space-between;}
.footer .contact{font-size:12px;color:var(--muted);letter-spacing:.06em;}
.footer .contact a{color:var(--fg);letter-spacing:.02em;}
.footer .loc{font-size:12px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;}
.hero-16x9{aspect-ratio:16/9;width:100%;border:1px solid var(--hairline);background:#000}
.hero-16x9 iframe{width:100%;height:100%;border:0;display:block}
.grid{display:grid;gap:12px}
@media(min-width:760px){.grid.cols-3{grid-template-columns:repeat(3,1fr)}}
@media(max-width:759px){.grid.cols-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.grid.cols-3{grid-template-columns:1fr}}
.portrait-grid img{width:100%;height:auto;display:block;background:#eee;aspect-ratio:3/4;object-fit:cover}
.lead{display:grid;gap:18px;align-items:start}
@media(min-width:860px){.lead{grid-template-columns:1.2fr .8fr}}
.lead .copy p{margin:0 0 12px;color:var(--muted);line-height:1.6;max-width:70ch}
.lead .copy h1{margin:0 0 10px;font-size:20px;letter-spacing:.02em}
.lead .copy .sub{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
