:root{--bg:#f1ede4;--ink:#2b2824;--mute:#8a8479;--line:#d9d3c6}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:'Jost',sans-serif;font-weight:300;letter-spacing:.02em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
h1,h2{font-weight:300;text-transform:uppercase}
:root{--mono:'DM Mono',ui-monospace,Menlo,monospace}
.bar{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:22px clamp(16px,4vw,48px);font-size:13px;letter-spacing:.14em;text-transform:uppercase;mix-blend-mode:multiply}
.bar nav{display:flex;gap:clamp(14px,2.5vw,32px)}
.bar a{opacity:.75;transition:opacity .3s}.bar a:hover{opacity:1}
.hero{min-height:100svh;display:grid;place-content:center;text-align:center;gap:26px;position:relative}
.hero h1{font-size:clamp(30px,6vw,84px);letter-spacing:.18em;padding-left:.18em}
.split{font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--mute);display:flex;gap:18px;justify-content:center}
.split a:hover{color:var(--ink)}
.down{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);color:var(--mute)}
.paintings{height:100svh;position:relative}
.track{display:flex;align-items:center;gap:clamp(40px,7vw,110px);overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:64px 6vw 52px;height:100svh;scrollbar-width:none;outline:none}
.track::-webkit-scrollbar{display:none}
figure{flex:none;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px}
figure img{max-height:calc(100% - 46px);max-width:92vw;width:auto;height:auto;filter:drop-shadow(0 16px 20px rgba(70,50,30,.2)) drop-shadow(0 2px 4px rgba(70,50,30,.12))}
figcaption{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--mute);text-align:center;min-height:30px;line-height:1.5}
figcaption b{display:block;font-weight:400;color:var(--ink);text-transform:uppercase;margin-bottom:2px}
.gallery-ui{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:24px;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--mute);letter-spacing:.2em}
.track{cursor:grab}.track.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.next-link{color:var(--mute);margin-left:18px;transition:color .3s}.next-link:hover{color:var(--ink)}
.gallery-ui button{background:none;border:0;font:inherit;font-size:20px;color:var(--ink);cursor:pointer;padding:6px 12px;opacity:.6}.gallery-ui button:hover{opacity:1}
.land{padding:14vh clamp(16px,4vw,48px) 10vh}
.land h2,.about h2,.contact h2{font-size:clamp(18px,2vw,24px);letter-spacing:.3em;margin-bottom:40px;text-align:center}
.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(16px,2vw,28px);max-width:1500px;margin:auto}
.vid{position:relative;aspect-ratio:16/9;overflow:hidden;cursor:pointer;background:#ddd7ca}
.vid video,.vid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s}
.vid:hover video,.vid:hover img{transform:scale(1.03)}
.vid-cap{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--mute);margin-top:12px;line-height:1.5}.vid-cap b{font-weight:400;color:var(--ink);text-transform:uppercase;display:block}
.stills{columns:3 280px;gap:clamp(16px,2vw,28px);max-width:1500px;margin:clamp(16px,2vw,28px) auto 0}
.stills img{width:100%;display:block;margin-bottom:clamp(16px,2vw,28px);cursor:zoom-in}
.about{display:grid;grid-template-columns:minmax(0,320px) minmax(0,420px);gap:56px;justify-content:center;align-items:center;padding:12vh clamp(16px,4vw,48px)}
.about img{width:100%;filter:grayscale(.2)}
.about h2{text-align:left}.about p{line-height:1.9;font-size:16px}
.note{color:var(--mute);font-size:12px;margin-top:14px}
.contact{padding:6vh clamp(16px,4vw,48px) 12vh;text-align:center}
.mail{font-family:var(--mono);font-size:clamp(15px,2vw,20px);letter-spacing:.04em;overflow-wrap:anywhere}
.mail a{border-bottom:1px solid var(--line);padding-bottom:4px;transition:border-color .3s}
.mail a:hover{border-color:var(--ink)}
footer{text-align:center;padding:30px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--mute)}
.lightbox{position:fixed;inset:0;background:rgba(241,237,228,.97);z-index:50;display:grid;place-items:center}
.lightbox[hidden]{display:none}
.lightbox video,.lightbox img{max-width:94vw;max-height:90svh}
.x{position:absolute;top:14px;right:22px;background:none;border:0;font-size:38px;cursor:pointer;color:var(--ink)}
@media(max-width:700px){.track{padding:60px 5vw 50px}.about{grid-template-columns:1fr;gap:28px}.bar nav{gap:12px;font-size:11px}.bar .mark{display:none}.track{padding:0 8vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
