/* v19-city.css — Proud Entertainment local SEO pages (city + venue recaps).
   Brand-matched to the main site: warm near-black, gold display type,
   cream body copy. Covers every class used by the 2026-09-21 local pages. */
@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,600;6..96,700&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&display=swap');

:root{
  --bg:#131009; --surface:#171310; --surface-2:#1e1813;
  --gold:#d4a548; --gold-bright:#edc66d; --gold-pale:#f6db9c;
  --ink:#f4ead0; --ink-dim:#cfc4ab; --line:rgba(212,165,72,.22);
  --display:"Bodoni Moda",Georgia,"Times New Roman",serif;
  --sans:"DM Sans",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.7;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold-bright)}
main{display:block}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:1.4rem;
  padding:.7rem 1.2rem;background:rgba(10,8,5,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line)}
.nav .brand img{height:44px;width:auto}
.nav a{color:var(--ink);text-decoration:none;font-size:.85rem;font-weight:500;letter-spacing:.04em}
.nav a:hover{color:var(--gold-pale)}
.nav .book{margin-left:auto;border:1px solid var(--gold);color:var(--gold-pale)!important;
  font-weight:700;padding:.6rem 1.1rem;border-radius:6px;text-transform:uppercase;
  font-size:.72rem;letter-spacing:.12em;white-space:nowrap}
.nav .book:hover{background:rgba(212,165,72,.15);box-shadow:0 0 18px rgba(212,165,72,.25)}

/* ---------- hero ---------- */
.city-hero,.venue-hero{position:relative;text-align:center;padding:5.5rem 1.25rem 3.5rem;
  background:radial-gradient(1200px 500px at 50% -10%,rgba(212,165,72,.14),transparent 60%),var(--bg)}
.city-hero img{width:min(560px,86vw);margin:0 auto 1.6rem;border-radius:10px;
  border:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,.55)}
.city-hero h1,.venue-hero h1{font-family:var(--display);font-weight:700;
  font-size:clamp(2rem,5.4vw,3.4rem);line-height:1.12;margin:0 0 .8rem;color:#fff;
  text-wrap:balance}
.city-hero>p:first-of-type,.venue-hero p{color:var(--gold-pale);font-size:1.05rem;margin:.4rem 0 1.6rem}

/* ---------- buttons ---------- */
.btn{display:inline-block;text-decoration:none;font-weight:700;border-radius:6px;
  padding:.85rem 1.6rem;font-size:.9rem;letter-spacing:.06em;margin:.3rem .4rem .3rem 0}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),#b47a18);color:#141005!important;
  text-transform:uppercase;box-shadow:0 10px 30px rgba(212,165,72,.28)}
.btn-primary:hover{box-shadow:0 10px 36px rgba(212,165,72,.45);transform:translateY(-1px)}
.btn-ghost{border:1px solid rgba(244,234,208,.4);color:var(--ink)!important;text-transform:uppercase}
.btn-ghost:hover{border-color:var(--gold-pale);color:#fff!important}

/* ---------- sections ---------- */
section{padding:3rem 1.25rem}
section>*,nav.venue-related{max-width:860px;margin-left:auto;margin-right:auto}
.city-trust p,.city-angle p,.venue-recap p,.venue-fit p,.venue-room p{font-size:1.05rem;color:var(--ink)}
.city-angle h2,.city-packages h2,.city-reviews h2,.city-faq h2,.city-cta h2,
.venue-recap h2,.venue-room h2,.venue-fit h2,.venue-proof h2,.venue-cta h2{
  font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.6vw,2.2rem);
  color:var(--gold-pale);margin:0 0 1rem}
.city-packages{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.city-packages ul{list-style:none;padding:0;margin:1.2rem 0;display:grid;gap:.7rem}
.city-packages li{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;
  padding:.9rem 1.1rem;font-size:1rem}
.city-packages li strong{color:var(--gold-bright);font-size:1.15rem}
.city-packages p{color:var(--ink-dim)}

/* ---------- reviews ---------- */
.city-reviews blockquote,.venue-proof blockquote{margin:1.4rem 0;padding:1.3rem 1.5rem;
  background:var(--surface-2);border-left:3px solid var(--gold);border-radius:0 10px 10px 0}
.city-reviews blockquote p,.venue-proof blockquote p{font-family:Georgia,serif;font-style:italic;
  font-size:1.1rem;color:#fff;margin:0 0 .6rem}
.city-reviews cite,.venue-proof cite{font-style:normal;color:var(--gold-pale);font-size:.9rem}
.reviews-note,.photo-note{color:var(--ink-dim);font-size:.88rem}

/* ---------- venue proof grid ---------- */
.venue-proof figure{margin:0 0 1.6rem}
.venue-proof figure img{border-radius:10px;border:1px solid var(--line);box-shadow:0 18px 44px rgba(0,0,0,.5)}
.venue-proof figcaption{color:var(--ink-dim);font-size:.9rem;margin-top:.55rem}

/* ---------- faq ---------- */
.city-faq details{background:var(--surface);border:1px solid var(--line);border-radius:8px;
  margin:0 0 .8rem;padding:1rem 1.2rem}
.city-faq summary{cursor:pointer;font-weight:700;color:var(--gold-pale);font-size:1rem}
.city-faq summary:hover{color:#fff}
.city-faq details p{margin:.7rem 0 0;color:var(--ink)}

/* ---------- cta / related / footer ---------- */
.city-cta,.venue-cta{text-align:center;background:radial-gradient(900px 400px at 50% 120%,rgba(212,165,72,.12),transparent 65%)}
.city-cta p,.venue-cta p{color:var(--ink-dim)}
.also-serving{margin-top:1.6rem;font-size:.92rem;color:var(--ink-dim)}
nav.venue-related{padding:0 1.25rem 3rem;text-align:center;color:var(--ink-dim)}
footer{border-top:1px solid var(--line);padding:2.2rem 1.25rem;text-align:center;color:var(--ink-dim);font-size:.9rem}
footer strong{color:var(--gold-pale)}

@media(max-width:700px){
  .nav a:not(.brand):not(.book){display:none}
  section{padding:2.2rem 1.1rem}
  .city-hero,.venue-hero{padding:4rem 1.1rem 2.6rem}
}
