@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;1,300&family=Montserrat:wght@300;400;500&display=swap');
:root{--ink:#0a0a0a;--panel:#0f0f0f;--gold:#c9a96e;--white:#f4f1eb;--muted:rgba(255,255,255,.52)}
*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Montserrat,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.portfolio-header{align-items:center;display:flex;height:96px;justify-content:space-between;left:0;padding:0 5vw;position:fixed;right:0;top:0;transition:background .4s,border-color .4s;z-index:20}.portfolio-header.scrolled{background:rgba(10,10,10,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(201,169,110,.16)}.portfolio-header img{display:block;width:230px}.portfolio-header nav{align-items:center;display:flex;gap:34px}.portfolio-header nav a{font-size:11px;letter-spacing:.18em;text-transform:uppercase}.portfolio-header nav .active{color:var(--gold)}.portfolio-header .contact{border:1px solid var(--gold);color:var(--gold);padding:13px 20px;transition:.3s}.portfolio-header .contact:hover{background:var(--gold);color:var(--ink)}.portfolio-hero{align-items:flex-end;background:linear-gradient(90deg,rgba(10,10,10,.95),rgba(10,10,10,.42)),url('/assets/IMG_0590-f7ffc32e-1500.jpg') center 38%/cover;display:flex;flex-direction:column;justify-content:flex-end;min-height:82vh;padding:150px 7vw 9vh;text-align:right}.eyebrow{color:var(--gold);font-size:10px;font-weight:500;letter-spacing:.32em;text-transform:uppercase}.portfolio-hero h1,.work h2,.gallery-links h2{font-family:'Cormorant Garamond',serif;font-weight:300;margin:18px 0;line-height:.93}.portfolio-hero h1{font-size:clamp(4rem,9vw,9rem)}.portfolio-hero h1 em{color:var(--gold)}.intro{color:var(--muted);line-height:1.8;max-width:500px}.scroll-cue{align-items:center;display:flex;font-size:9px;gap:14px;letter-spacing:.22em;margin-top:40px;text-transform:uppercase}.scroll-cue span{background:var(--gold);height:1px;width:70px}.work{padding:130px 5vw}.work-heading h2{font-size:clamp(3rem,6vw,6rem)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:48px 0}.filters button{background:transparent;border:1px solid rgba(255,255,255,.18);color:var(--muted);cursor:pointer;font:500 10px Montserrat,sans-serif;letter-spacing:.2em;padding:13px 20px;text-transform:uppercase;transition:.3s}.filters button:hover,.filters button.active{background:var(--gold);border-color:var(--gold);color:var(--ink)}.photo-grid{columns:3 320px;column-gap:16px}.photo-card{break-inside:avoid;cursor:zoom-in;margin:0 0 16px;opacity:0;overflow:hidden;position:relative;transform:translateX(var(--start-x));transition:opacity .8s cubic-bezier(.2,.65,.25,1),transform .8s cubic-bezier(.2,.65,.25,1);transition-delay:var(--delay)}.photo-card.in-view{opacity:1;transform:translateX(0)}.photo-card img{display:block;height:auto;transition:transform .7s cubic-bezier(.2,.65,.25,1),filter .5s;width:100%}.photo-card:hover img{filter:brightness(.78);transform:scale(1.035)}.photo-card::after{border:1px solid rgba(201,169,110,.55);content:'';inset:12px;opacity:0;pointer-events:none;position:absolute;transform:scale(.97);transition:.4s}.photo-card:hover::after{opacity:1;transform:scale(1)}.gallery-links{border-bottom:1px solid rgba(255,255,255,.07);border-top:1px solid rgba(255,255,255,.07);margin:0 5vw 100px;padding:110px 5vw;text-align:center}.gallery-links h2{font-size:clamp(3rem,6vw,6rem)}.gallery-links>p:not(.eyebrow){color:var(--muted)}.gallery-links a{border:1px solid var(--gold);color:var(--gold);display:inline-block;font-size:10px;letter-spacing:.2em;margin-top:25px;padding:17px 28px;text-transform:uppercase;transition:.3s}.gallery-links a:hover{background:var(--gold);color:var(--ink)}.motion-item{opacity:0;transform:translateX(var(--motion-x));transition:opacity .9s,transform .9s}.motion-item.in-view{opacity:1;transform:translateX(0)}.from-left{--motion-x:-55px}.from-right{--motion-x:55px}.lightbox{background:rgba(5,5,5,.96);border:0;height:100%;max-height:none;max-width:none;padding:4vh 7vw;width:100%}.lightbox[open]{align-items:center;display:flex;justify-content:center}.lightbox::backdrop{background:#050505}.lightbox img{max-height:88vh;max-width:82vw;object-fit:contain}.lightbox button{background:transparent;border:0;color:var(--white);cursor:pointer;font-size:30px;position:fixed}.lightbox .close{right:30px;top:20px}.lightbox .previous{left:25px}.lightbox .next{right:25px}.lightbox p{bottom:18px;color:var(--muted);font-size:10px;letter-spacing:.18em;position:fixed;text-transform:uppercase}footer{color:rgba(255,255,255,.32);display:flex;font-size:9px;gap:18px;justify-content:center;letter-spacing:.16em;padding:0 5vw 50px;text-transform:uppercase}footer span{background:var(--gold);height:1px;margin-top:5px;width:35px}
@media(max-width:760px){.portfolio-header{height:80px;padding:0 20px}.portfolio-header img{width:165px}.portfolio-header nav a:not(.contact){display:none}.portfolio-header .contact{font-size:9px;padding:11px 13px}.portfolio-hero{min-height:75vh;padding:120px 24px 60px}.work{padding:90px 20px}.photo-grid{columns:2 140px;column-gap:8px}.photo-card{margin-bottom:8px}.gallery-links{margin:0 20px 70px;padding:80px 20px}.lightbox img{max-width:92vw}.lightbox .previous,.lightbox .next{bottom:20px;top:auto}.lightbox p{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.photo-card,.motion-item{opacity:1!important;transform:none!important;transition:none!important}}
