:root{
  --bg: #0b0b0d; --panel:#121216; --ink:#f5f5f7; --muted:#b8bcc7; --border: rgba(255,255,255,.08);
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.65;}

.nav{position:sticky;top:0;z-index:50;background:rgba(11,11,13,.75);backdrop-filter: blur(10px);border-bottom:1px solid var(--border);}
.nav-inner{width:min(1100px,92vw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 0;}
.brand{font-family:'Playfair Display',serif;font-size:22px;letter-spacing:.12em}
.brand span{opacity:.85}
.menu a{color:var(--ink);text-decoration:none;margin:0 10px;font-weight:500}
.btn.btn-outline{border:1px solid var(--border);padding:8px 12px;border-radius:999px}

.hero img{width:100%;height:72vh;object-fit:cover;display:block;}

.container{width:min(980px,88vw);margin:0 auto;padding:30px 0 46px;}
.intro{border-top:1px solid var(--border);}
.intro .lede{font-family:'Playfair Display',serif;font-size:clamp(20px,2.2vw,24px);color:var(--ink);margin:22px 0 10px;line-height:1.6}
.intro p{color:var(--muted);margin:10px 0 0;}

.footer{border-top:1px solid var(--border);color:var(--muted);text-align:center;padding:26px 0 36px;font-size:14px}

.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}


/* --- Mobile tweaks --- */
.menu-toggle{display:none;background:transparent;border:1px solid var(--border);color:var(--ink);border-radius:10px;padding:6px 10px;font-size:18px}
@media (max-width: 820px){
  .nav-inner{padding:10px 0; gap:10px;}
  .menu-toggle{display:block;}
  .menu{position:absolute; top:56px; right:0; left:0; background:rgba(11,11,13,.98); border-top:1px solid var(--border); display:none; flex-direction:column; align-items:center; padding:10px 0;}
  .menu.open{display:flex;}
  .menu a{padding:10px 0; display:block;}
  .hero img{height:52vh; object-position:center;}
  .container{width:92vw; padding:18px 0 32px;}
  .intro .lede{font-size:20px; line-height:1.55; margin-top:16px;}
  .intro p{font-size:15px; line-height:1.7;}
  .btn.btn-outline{padding:8px 12px;}
}
@media (max-width: 480px){
  .hero img{height:48vh;}
  .intro .lede{font-size:18px;}
  .intro p{font-size:14px;}
}


/* --- Fix hero cropping on mobile: show full image without cutting --- */
.hero{display:flex;justify-content:center;align-items:center;background:#000;}
.hero img{width:100%;height:72vh;object-fit:cover;object-position:center;}
@media (max-width: 820px){
  .hero img{height:auto;max-height:70vh;object-fit:contain;object-position:center;}
}
@media (max-width: 480px){
  .hero img{max-height:64vh;}
}


.nav-logo{height:40px;display:block;}
.btn-brochure{border:1px solid var(--silver);background:var(--silver);color:#0b0b0d;font-weight:600;
  padding:8px 14px;border-radius:999px;text-decoration:none;white-space:nowrap;}
.btn-brochure:hover{background:#d9d9d9;}
