/* Ultra Premium Black + Gold */
:root{
  --bg:#0b0b0c;
  --card:#121214;
  --gold:#c9a34a;
  --gold-2:#9e7d2e;
  --text:#f2f2f2;
  --muted:#c9c9cf;
  --line: rgba(201,163,74,0.25);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto}
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.nav{position:sticky;top:0;z-index:20;background:rgba(11,11,12,0.7);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{font-family:'Playfair Display',serif;font-weight:700;letter-spacing:.4px}
.brand span{color:var(--gold)}
.nav a{color:var(--text);text-decoration:none;margin-left:18px;font-size:14px}
.btn{display:inline-block;padding:12px 18px;border-radius:999px;text-decoration:none;border:1px solid transparent;font-weight:600}
.btn-outline{border-color:var(--line)}
.btn-primary{background:var(--gold);color:#161616;border-color:var(--gold)}
.btn-ghost{border-color:transparent}
.hero{position:relative;min-height:78vh;display:flex;align-items:center;justify-content:center;background:
linear-gradient(180deg, rgba(0,0,0,0.6), rgba(0,0,0,0.7)),
url('images/northhaus_hero.webp') center/cover no-repeat}
.hero .overlay{position:absolute;inset:0;box-shadow:inset 0 0 0 1px var(--line)}
.hero-content{position:relative;text-align:center}
h1{font-family:'Playfair Display',serif;font-size:42px;line-height:1.12;margin:0 0 10px}
.subtitle{color:var(--muted)}
.price{margin-top:4px;font-weight:700;color:var(--gold);letter-spacing:.5px}
.cta-group{margin-top:18px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.intro{padding:48px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lead{font-size:18px;color:#e8e8ea;max-width:920px;margin:0 auto;text-align:center}
.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:36px 0}
.feature{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;text-align:center}
.feature h3{font-family:'Playfair Display',serif;margin:0 0 6px;color:var(--gold)}
.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 0 32px}
.gallery-card{height:160px;border-radius:16px;border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);background:#0f0f11}
.split{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;padding:32px 0 12px}
.split h2{font-family:'Playfair Display',serif;color:var(--gold);margin-top:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}
.bullets{padding-left:18px;color:#e8e8ea}
.check{list-style:none;padding:0;margin:0}
.check li{margin:8px 0;padding-left:22px;position:relative}
.check li:before{content:'✓';position:absolute;left:0;color:var(--gold)}
.map-section{padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.map-wrap{height:360px;border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.map-wrap iframe{width:100%;height:100%;border:0}
.contact{padding:36px 0}
.contact-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}
.contact form{display:flex;flex-direction:column;gap:12px;margin-top:10px}
.contact input,.contact textarea{background:#0f0f11;color:var(--text);border:1px solid var(--line);border-radius:14px;padding:12px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.small{color:var(--muted);font-size:14px}
.footer{border-top:1px solid var(--line);padding:18px 0;margin-top:18px}
.footer-inner{display:flex;align-items:center;justify-content:space-between}
/* Floating WhatsApp */
.whatsapp{position:fixed;right:18px;bottom:18px;background:var(--gold);color:#111;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(201,163,74,.25);border:1px solid var(--gold-2);z-index:50;text-decoration:none;font-weight:900}
.whatsapp:hover{transform:translateY(-1px)}
@media (max-width:900px){
  .features{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}
  h1{font-size:34px}
}
