/* Luxury dark + gold aesthetic */
:root{
  --bg: #070a12;
  --panel: rgba(255,255,255,.06);
  --text: rgba(255,255,255,.92);
  --muted: rgba(255,255,255,.72);
  --muted2: rgba(255,255,255,.58);
  --gold: #f5d67b;
  --gold2:#caa24a;
  --stroke: rgba(255,255,255,.14);
  --shadow: 0 22px 60px rgba(0,0,0,.55);
  --radius: 18px;
  --radius2: 26px;
}
*{ box-sizing:border-box; }
body{
  margin:0; font-family: Manrope, sans-serif;
  background: linear-gradient(180deg, #070a12 0%, #050710 100%);
  color: var(--text); line-height:1.55;
}
.wrap{ width:min(1140px, calc(100% - 48px)); margin:0 auto; }
.header{ position: sticky; top:0; z-index:999; backdrop-filter: blur(10px); background: rgba(7,10,18,.35); border-bottom: 1px solid rgba(255,255,255,.06); }
.header--scrolled{ background: rgba(7,10,18,.8); }
.header__inner{ display:flex; align-items:center; justify-content:space-between; padding: 14px 0; }
.brand__title{ font-family: "Playfair Display", serif; font-weight:700; }
.brand__sub{ color: var(--muted2); font-size: 12px; display:block; }
.nav{ display:flex; gap: 18px; align-items:center; }
.nav a{ color: var(--muted); font-weight:600; font-size: 14px; }
.nav__cta{ padding: 10px 14px; border-radius: 999px; border: 1px solid rgba(245,214,123,.35); background: rgba(245,214,123,.08); }
.hero{ padding: 60px 0 40px; }
.hero__grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items:center; }
.chips{ display:flex; gap: 10px; margin-bottom: 20px; }
.chip{ font-size: 12px; padding: 8px 12px; border-radius: 999px; border: 1px solid var(--stroke); background: rgba(255,255,255,.04); }
h1{ font-family: "Playfair Display", serif; font-size: clamp(32px, 4vw, 52px); line-height: 1.1; margin-bottom: 20px; }
.accent{ color: var(--gold); }
.lead{ color: var(--muted); font-size: 17px; margin-bottom: 30px; }
.hero__bullets{ display:grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-bottom: 30px; }
.bullet{ padding: 15px; border-radius: 16px; border: 1px solid var(--stroke); background: rgba(255,255,255,.03); }
.bullet__title{ font-weight: 800; font-size: 14px; }
.bullet__text{ color: var(--muted2); font-size: 13px; margin-top: 5px; }
.btn{ display:inline-flex; padding: 14px 24px; border-radius: 999px; font-weight: 800; transition: .2s; cursor: pointer; }
.btn--primary{ background: linear-gradient(180deg, #f5d67b, #caa24a); color: #070a12; border: none; }
.btn--ghost{ border: 1px solid var(--stroke); background: rgba(255,255,255,.05); }
.frame{ border-radius: var(--radius2); overflow:hidden; border: 1px solid var(--stroke); box-shadow: var(--shadow); }
.frame img{ width: 100%; aspect-ratio: 1; object-fit: cover; }
.section{ padding: 80px 0; }
.section__head{ text-align: center; margin-bottom: 50px; }
.section__head h2{ font-family: "Playfair Display", serif; font-size: 36px; margin-bottom: 10px; }
.grid-4{ display:grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.grid-2{ display:grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.card{ padding: 25px; border-radius: var(--radius); border: 1px solid var(--stroke); background: rgba(255,255,255,.03); }
.card--lux{ border-color: rgba(245,214,123,.2); background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(245,214,123,.02)); }
.list{ list-style: none; padding: 0; margin: 20px 0; }
.list li{ margin-bottom: 10px; padding-left: 20px; position: relative; color: var(--muted); }
.list li::before{ content: "•"; color: var(--gold); position: absolute; left: 0; }
.price{ padding: 35px; border-radius: var(--radius2); border: 1px solid var(--stroke); background: rgba(255,255,255,.03); display: flex; flex-direction: column; }
.price--featured{ border-color: var(--gold); background: rgba(245,214,123,.05); }
.price__top{ display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 20px; }
.price__name{ font-size: 20px; font-weight: 800; }
.price__tag{ font-family: "Playfair Display", serif; font-size: 32px; color: var(--gold); }
.price__body{ flex-grow: 1; }
.price-note{ text-align: center; margin-top: 30px; color: var(--muted2); font-size: 14px; }
.faq__item{ margin-bottom: 15px; padding: 20px; border-radius: var(--radius); border: 1px solid var(--stroke); }
.cta-block{ display: grid; grid-template-columns: 1.2fr .8fr; gap: 40px; padding: 50px; border-radius: var(--radius2); background: rgba(255,255,255,.03); border: 1px solid var(--stroke); }
.sidecard{ padding: 20px; border-radius: 16px; background: rgba(0,0,0,.3); border: 1px solid var(--stroke); margin-bottom: 15px; }
.footer{ margin-top: 50px; padding: 30px 0; border-top: 1px solid var(--stroke); }
.footer__inner{ display: flex; justify-content: space-between; align-items: center; }
@media (max-width: 900px){
  .hero__grid, .grid-4, .grid-2, .cta-block{ grid-template-columns: 1fr; }
}
