:root{
  --bg:#090909;--paper:#f4f1ea;--muted:#aaa7a0;--line:#292929;
  --accent:#d7b46a;--dark:#121212;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f5f3ee;font-family:Inter,system-ui,sans-serif}
a{text-decoration:none;color:inherit}button{font:inherit}.nav{height:78px;position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:linear-gradient(#090909cc,transparent);backdrop-filter:blur(8px)}
.brand{font-weight:800;letter-spacing:.16em;font-size:18px}.brand span{color:var(--accent)}
.nav nav{display:flex;gap:32px;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.nav nav a{opacity:.78;transition:.25s}.nav nav a:hover{opacity:1;color:var(--accent)}
.menu{display:none;background:none;border:0;color:white}.menu span{display:block;width:25px;height:2px;background:white;margin:5px}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:100px 9vw;overflow:hidden}.hero-photo{position:absolute;inset:0;background:url("images/hero.jpeg") center 30%/cover no-repeat;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#050505dd 0%,#05050588 43%,#05050522 100%),linear-gradient(0deg,#090909 0%,transparent 30%)}.hero-content{position:relative;z-index:1;max-width:720px}.eyebrow{font-size:11px;letter-spacing:.25em;color:var(--accent);font-weight:700;margin:0 0 22px}.hero h1{font-size:clamp(58px,10vw,132px);line-height:.86;letter-spacing:-.055em;margin:0;font-weight:800}.hero h1 em,.section h2 em,.social-band h2 em,.contact h2 em{font-family:"Playfair Display",serif;font-weight:600;color:var(--accent);font-style:italic;letter-spacing:-.04em}.intro{max-width:440px;color:#d0cec9;line-height:1.7;margin:30px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{padding:15px 23px;border:1px solid #fff4;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;transition:.25s}.btn.primary{background:var(--paper);color:#111}.btn.primary:hover{transform:translateY(-2px);background:var(--accent)}.btn.ghost{background:#ffffff0a;border-color:#fff5}.btn.ghost:hover{background:#fff;color:#111}.btn.dark{border-color:#1113;color:#111;background:#1110}.scroll{position:absolute;right:5vw;bottom:45px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em;color:#aaa}.scroll span{color:var(--accent);font-size:17px}
.section{padding:130px 9vw}.about{background:var(--paper);color:#111;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.about .eyebrow,.contact .eyebrow{color:#8b6a2e}.section-head h2,.contact h2,.social-band h2{font-size:clamp(48px,7vw,92px);line-height:.92;letter-spacing:-.05em;margin:0}.about-copy{align-self:end;max-width:520px}.about-copy .lead{font-size:25px;font-weight:700}.about-copy>p:not(.lead),.contact-copy{color:#555;line-height:1.8}.text-link{display:inline-block;margin-top:18px;padding-bottom:7px;border-bottom:1px solid #111;font-size:12px;text-transform:uppercase;letter-spacing:.14em}.text-link span{margin-left:12px}
.gallery{background:#0b0b0b}.center{text-align:center;margin-bottom:60px}.grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;max-width:1250px;margin:auto}.photo-card{border:0;padding:0;position:relative;overflow:hidden;cursor:pointer;min-height:480px;background:#151515}.photo-card.tall{grid-row:span 2;min-height:980px}.photo-card.wide{grid-column:span 1}.photo-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s,filter .7s}.photo-card:hover img{transform:scale(1.045);filter:saturate(1.08)}.photo-card span{position:absolute;top:18px;left:18px;font-size:10px;letter-spacing:.18em;background:#0009;padding:7px 9px}
.social-band{padding:120px 9vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:linear-gradient(120deg,#17130d,#0a0a0a)}.social-links{display:flex;flex-direction:column}.social-links a{font-size:clamp(30px,4vw,55px);padding:22px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;transition:.25s}.social-links a:hover{color:var(--accent);padding-left:10px}.social-links span{font-size:20px;color:var(--accent)}
.contact{background:var(--paper);color:#111;text-align:center}.contact h2{margin-bottom:25px}.contact-copy{margin:0 auto 30px;max-width:480px}.contact .actions{justify-content:center}
footer{padding:35px 9vw;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);color:#777;font-size:11px}footer p{margin:0}
.lightbox{position:fixed;inset:0;background:#000e;z-index:50;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:92vw;max-height:90vh;object-fit:contain}.close{position:absolute;right:25px;top:15px;border:0;background:none;color:white;font-size:42px;cursor:pointer}
@media(max-width:760px){
 .nav{height:65px;padding:0 6vw}.menu{display:block}.nav nav{display:none;position:absolute;top:65px;left:0;right:0;background:#0b0b0bf5;padding:25px 6vw;flex-direction:column;gap:20px}.nav.open nav{display:flex}
 .hero{padding:95px 7vw 70px;align-items:flex-end}.hero-photo{background-position:54% center}.hero-overlay{background:linear-gradient(0deg,#050505ee 0%,#05050555 55%,#05050522 100%)}.hero h1{font-size:58px}.intro{font-size:14px;margin:22px 0}.scroll{display:none}
 .section{padding:85px 7vw}.about,.social-band{grid-template-columns:1fr;gap:45px}.section-head h2,.social-band h2,.contact h2{font-size:54px}.about-copy{align-self:auto}.grid{grid-template-columns:1fr;gap:12px}.photo-card,.photo-card.tall{min-height:500px;grid-row:auto}.photo-card.wide{grid-column:auto}.center{margin-bottom:35px}
 .social-band{padding:85px 7vw}.social-links a{font-size:30px}.contact{padding:90px 7vw}footer{padding:28px 7vw;flex-direction:column;gap:15px}
}
