:root{--bone:#f5f2ed;--bone-2:#ebe6de;--ink:#191714;--ink-2:#4a443d;--muted:#8b837a;--line:#dad3c9;--accent:#2b4c7e;--measure:62ch;--gutter:clamp(1.25rem, 5vw, 5rem);--serif:"Instrument Serif", Georgia, "Times New Roman", serif;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bone);color:var(--ink);font-family:var(--sans);font-feature-settings:"kern", "liga";-webkit-font-smoothing:antialiased;margin:0;font-size:clamp(1rem,.95rem + .2vw,1.0625rem);line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--serif);letter-spacing:-.015em;margin:0;font-weight:400;line-height:1.04}.wrap{max-width:96rem;padding-inline:var(--gutter);margin-inline:auto}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.6875rem;font-weight:500}.skip{z-index:99;background:var(--ink);color:var(--bone);padding:.75rem 1.25rem;text-decoration:none;position:absolute;top:0;left:-9999px}.skip:focus{left:0}:where(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.site-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2rem;padding-block:clamp(1.5rem,3vw,2.5rem);display:flex}.mark{font-family:var(--serif);letter-spacing:-.01em;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);text-decoration:none}.site-head nav{gap:clamp(1.25rem,3vw,2.5rem);display:flex}.site-head nav a{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid #0000;padding-bottom:2px;font-size:.75rem;text-decoration:none;transition:border-color .25s,color .25s}.site-head nav a:hover{color:var(--ink);border-color:var(--ink)}.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:clamp(2rem,6vw,6rem) clamp(4rem,9vw,9rem);display:grid}.hero h1{margin-bottom:clamp(1.25rem,2.5vw,2rem);font-size:clamp(2.5rem,1.2rem + 5.6vw,5.5rem)}.hero h1 em{color:var(--ink-2);font-style:italic}.hero-sub{max-width:34ch;color:var(--ink-2);margin:0 0 clamp(1.75rem,3vw,2.5rem);font-size:clamp(1rem,.95rem + .35vw,1.1875rem)}.btn{letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--ink);padding:.9rem 1.75rem;font-size:.75rem;text-decoration:none;transition:background .3s,color .3s;display:inline-block}.btn:hover{background:var(--ink);color:var(--bone)}.hero-fig{margin:0}.hero-fig img{width:100%}@media (width<=900px){.hero{grid-template-columns:1fr;padding-block:1rem 4rem}.hero-fig{order:-1}}.work{padding-block:clamp(2rem,4vw,3rem) clamp(4rem,9vw,9rem)}.work-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.5rem 2rem;margin-bottom:clamp(1.5rem,3vw,2.5rem);padding-bottom:1.25rem;display:flex}.filters{flex-wrap:wrap;gap:.35rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.filters button{font:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--muted);background:0 0;border:0;border-bottom:1px solid #0000;padding:.25rem 0;font-size:.75rem;transition:color .25s,border-color .25s}.filters button:hover{color:var(--ink)}.filters button.is-on{color:var(--ink);border-color:var(--ink)}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.5rem);display:grid}.tile{background:var(--bone-2);text-decoration:none;display:block;position:relative;overflow:hidden}.tile.wide{grid-column:span 2}.tile img{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .7s cubic-bezier(.2,.7,.3,1),opacity .4s}.tile.wide img{aspect-ratio:2}.tile:hover img{transform:scale(1.035)}.tile-meta{color:#fff;opacity:0;background:linear-gradient(#0f0d0b00,#0f0d0bb8);padding:1.25rem;transition:opacity .35s,transform .35s;position:absolute;inset:auto 0 0;transform:translateY(6px)}.tile:hover .tile-meta,.tile:focus-visible .tile-meta{opacity:1;transform:none}.tile-meta h3{margin-bottom:.2rem;font-size:1.0625rem}.tile-meta .eyebrow{color:#ffffffb8;font-size:.625rem}.empty{color:var(--muted);text-align:center;padding-block:3rem}@media (width<=1200px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tile.wide{grid-column:span 2}.tile-meta{opacity:1;padding:.875rem;transform:none}.tile-meta h3{font-size:.9375rem}}.about{border-top:1px solid var(--line);grid-template-columns:minmax(0,.62fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:clamp(3rem,7vw,7rem);display:grid}.about-fig{margin:0}.about-fig img{aspect-ratio:4/5;object-fit:cover;width:100%}.about-copy h2{max-width:20ch;margin:.75rem 0 1.5rem;font-size:clamp(1.75rem,1.1rem + 2.4vw,3rem)}.about-copy p{max-width:var(--measure);color:var(--ink-2);margin:0 0 1.1rem}@media (width<=800px){.about{grid-template-columns:1fr}.about-fig{max-width:18rem}}.contact{border-top:1px solid var(--line);padding-block:clamp(3rem,7vw,7rem)}.contact h2{margin:.75rem 0 clamp(2rem,4vw,3rem);font-size:clamp(2rem,1.2rem + 3.6vw,4rem)}.contact h2 em{color:var(--ink-2);font-style:italic}.contact-list{flex-wrap:wrap;gap:.5rem 3rem;margin:0;padding:0;list-style:none;display:flex}.contact-list a,.contact-list span{border-bottom:1px solid var(--line);padding-bottom:2px;font-size:clamp(1rem,.95rem + .3vw,1.125rem);text-decoration:none;transition:border-color .25s}.contact-list a:hover{border-color:var(--ink)}.contact-list span{color:var(--muted);border-color:#0000}.site-foot{border-top:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:2.5rem 3.5rem;font-size:.75rem;display:flex}
