:root{--bg:#090909;--surface:#111;--text:#f2f1ed;--muted:#989898;--line:#292929;--accent:#d8d2c7}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}
a{color:inherit;text-decoration:none}button{font:inherit}.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;height:76px;padding:0 3.2vw;display:flex;align-items:center;justify-content:space-between;color:#fff}
.brand{display:flex;align-items:center;gap:.7rem;flex:0 0 auto}.brand-mark{display:block;width:40px;height:40px;object-fit:contain}.brand-name{font-size:1rem;font-weight:800;letter-spacing:.11em;line-height:1}.brand-name span{font-weight:400}.site-header nav{display:flex;gap:2rem;text-transform:uppercase;font-size:.78rem;letter-spacing:.15em}.site-header nav a{padding:.8rem 0}
.hero{height:100svh;min-height:640px;position:relative;overflow:hidden;background:#050505}.hero>img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;filter:grayscale(1);transform:scale(1.015);animation:hero-in 1.8s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.54),transparent 52%,rgba(0,0,0,.1)),linear-gradient(0deg,rgba(0,0,0,.54),transparent 45%)}
.hero-copy{position:absolute;left:5vw;bottom:12vh}.hero-copy p,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--muted);margin:0 0 1rem}.hero-copy p{color:#ddd}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(5.4rem,15vw,14rem);font-weight:400;line-height:.72;letter-spacing:-.06em;margin:0}.hero-note{position:absolute;right:3.2vw;bottom:4vh;margin:0;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.scroll-cue{position:absolute;left:5vw;bottom:4vh;font-size:.73rem;text-transform:uppercase;letter-spacing:.14em;display:flex;gap:1rem}.scroll-cue span{font-size:1.1rem;line-height:.7}
.statement{padding:15vh 8vw 17vh;max-width:1380px}.statement-copy{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.3rem,5.2vw,5.8rem);line-height:1.04;letter-spacing:-.035em;margin:0;max-width:1250px}.exhibition-note{margin:4rem 0 0;color:var(--muted);font-size:.86rem;letter-spacing:.08em}
.work{padding:3rem 3.2vw 10rem}.work-head{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--line);padding-top:2rem;margin-bottom:3rem}.work h2,.about h2,.contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(3.2rem,7vw,7.8rem);letter-spacing:-.045em;line-height:.92;margin:0}.filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.filter{border:0;background:transparent;color:var(--muted);padding:.65rem .85rem;cursor:pointer;border-bottom:1px solid transparent;text-transform:uppercase;font-size:.68rem;letter-spacing:.11em}.filter:hover,.filter:focus-visible{color:#fff}.filter.is-active{color:#fff;border-color:#fff}.filter span{opacity:.55;margin-left:.25rem}
.gallery{columns:3 320px;column-gap:1.2vw}.photo{position:relative;margin:0 0 1.2vw;break-inside:avoid;overflow:hidden;background:#151515;cursor:zoom-in}.photo img{width:100%;height:auto;display:block;filter:grayscale(1);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s}.photo:hover img{transform:scale(1.018);filter:grayscale(1) contrast(1.04)}.photo figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;padding:3.2rem 1rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,.82));font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;opacity:0;transition:opacity .3s}.photo:hover figcaption,.photo:focus-within figcaption{opacity:1}.photo button{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:zoom-in}
.about{padding:12rem 8vw 14rem;border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:start}.about-grid div{padding-top:1.1rem;font-size:clamp(1.05rem,1.4vw,1.3rem);color:#c4c4c0}.about-grid div p{margin:0 0 1.6rem}
footer{border-top:1px solid var(--line);padding:2rem 3.2vw 3rem;display:flex;justify-content:space-between;color:var(--muted);text-transform:uppercase;font-size:.68rem;letter-spacing:.12em}
.lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:rgba(4,4,4,.97);color:#fff}.lightbox[open]{display:grid;grid-template-columns:80px 1fr 80px;align-items:center}.lightbox::backdrop{background:#050505}.lightbox figure{margin:0;height:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0 1.5rem}.lightbox figure img{max-width:100%;max-height:calc(100dvh - 6rem);object-fit:contain}.lightbox figcaption{width:min(100%,1200px);display:flex;justify-content:space-between;padding-top:.8rem;color:#aaa;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.lightbox-close,.lightbox-nav{border:0;background:transparent;color:#fff;cursor:pointer}.lightbox-close{position:absolute;right:2rem;top:1.25rem;font-size:2.2rem;font-weight:200;z-index:2}.lightbox-nav{height:100%;font-size:1.6rem}.lightbox-nav:hover,.lightbox-close:hover{color:var(--accent)}
@keyframes hero-in{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1.015)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:800px){.site-header{height:64px;padding:0 5vw}.brand{gap:.55rem}.brand-mark{width:34px;height:34px}.brand-name{font-size:.85rem}.site-header nav{gap:1rem}.hero{min-height:580px}.hero>img{object-position:58% center}.hero-copy{left:5vw;bottom:17vh}.hero h1{font-size:clamp(4.7rem,23vw,7rem)}.hero-note{right:5vw}.statement{padding:8rem 5vw}.statement-copy{font-size:clamp(2.2rem,10vw,4rem)}.work{padding:2rem 0 7rem}.work-head{align-items:flex-start;flex-direction:column;gap:2rem;margin:0 5vw 2rem}.filters{justify-content:flex-start}.gallery{columns:1}.photo{margin:0 0 3px}.photo figcaption{opacity:1;padding:3rem .8rem .8rem}.about{padding:7rem 5vw}.about-grid{grid-template-columns:1fr;gap:3rem}footer{padding:2rem 5vw;flex-direction:column;gap:.65rem}.lightbox[open]{grid-template-columns:42px 1fr 42px}.lightbox figure{padding:4rem 0 1rem}.lightbox-close{right:1rem}.lightbox figcaption{padding:.8rem .5rem 0}}
.contact{padding:8rem 8vw 10rem;border-top:1px solid var(--line)}.contact-links{display:flex;flex-direction:column;gap:1rem;padding-top:1.1rem;font-size:clamp(1.05rem,1.4vw,1.3rem)}.contact-links a{color:#c4c4c0;border-bottom:1px solid var(--line);padding-bottom:.4rem;width:max-content}.contact-links a:hover{color:#fff;border-color:#fff}.about-grid em{font-style:italic;color:var(--accent)}
@media(max-width:800px){.contact{padding:5rem 5vw 6rem}.site-header nav{gap:.9rem;font-size:.7rem}}

.gate{position:fixed;inset:0;z-index:50;background:rgba(5,5,5,.96);display:flex;align-items:center;justify-content:center;padding:6vw}.gate[hidden]{display:none}.gate-box{max-width:640px;border:1px solid var(--line);padding:3rem;background:var(--bg)}.gate h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2rem,4.5vw,3.4rem);letter-spacing:-.035em;line-height:1;margin:0 0 1.5rem}.gate-copy{color:#c4c4c0;font-size:.98rem;line-height:1.65;margin:0 0 2.2rem}.gate-actions{display:flex;gap:1.5rem;align-items:center}.gate-enter{background:var(--text);color:#090909;border:0;padding:.95rem 1.8rem;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;font-weight:700;cursor:pointer}.gate-enter:hover{background:#fff}.gate-leave{color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;border-bottom:1px solid transparent}.gate-leave:hover{color:#fff;border-color:#fff}body.gated{overflow:hidden}
@media(max-width:800px){.gate{padding:5vw}.gate-box{padding:2rem 1.5rem}}
