/* ==========================================================================
   WEDDINGS SUB-BRAND — "Lakeside Luxe, Elevated"
   Bolder cream + gold/copper treatment, per Megan's feedback.
   Loaded only on weddings.html, scoped to body.theme-weddings so nothing
   else on the site is affected.
   ========================================================================== */

body.theme-weddings {
  --offwhite: #FBF6EC;
  --cream: #FDFAF3;
  --brass: #C9974B;
  --brass-light: #E3C286;
  --bark: #3B2E1F;
  --cypress-dark: #23422D;
  --sunset-amber: #DDB271;
  --sunset-brass: #C9974B;
  --sunset-rose: #B98A6A;
}

body.theme-weddings h1,
body.theme-weddings h2,
body.theme-weddings h3 {
  font-style: italic;
}

body.theme-weddings .eyebrow {
  color: var(--brass);
  letter-spacing: 0.3em;
}

body.theme-weddings .package-card {
  border-top-width: 3px;
  background: linear-gradient(180deg, var(--cream) 0%, #FAF3E4 100%);
}
body.theme-weddings .package-card.featured {
  background: linear-gradient(180deg, #FFFFFF 0%, #FDF6EA 100%);
  box-shadow: 0 18px 45px -18px rgba(201, 151, 75, 0.4);
}
body.theme-weddings .package-card h3 { font-size: 1.4rem; }

body.theme-weddings .btn-brass {
  background: linear-gradient(135deg, #D8AC66, #B8843F);
  color: #2A2117;
}
body.theme-weddings .btn-brass:hover { background: var(--bark); color: var(--offwhite); }

body.theme-weddings .site-footer,
body.theme-weddings .cta-strip {
  background: #2A2117;
}

/* Decorative gold divider */
.gold-divider {
  display: flex; align-items: center; justify-content: center; gap: 14px;
  margin: 0 auto 48px; width: 100%; max-width: 320px;
}
.gold-divider::before, .gold-divider::after {
  content: ""; height: 1px; flex: 1; background: linear-gradient(90deg, transparent, currentColor);
}
.gold-divider::after { background: linear-gradient(90deg, currentColor, transparent); }
.gold-divider span {
  width: 7px; height: 7px; transform: rotate(45deg); background: currentColor; flex-shrink: 0;
}
body.theme-weddings .gold-divider { color: var(--brass); }

body.theme-weddings .hero-eyebrow { color: var(--brass-light); }

body.theme-weddings .sub-brand-badge {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--brass); color: var(--brass-light);
  background: rgba(20, 16, 10, 0.45); backdrop-filter: blur(2px);
  border-radius: 100px; padding: 8px 18px; font-size: 0.68rem;
  letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700;
  margin-bottom: 22px; text-shadow: 0 1px 8px rgba(0,0,0,0.5);
}

/* ---------- Oct 2026: Megan's palette (forest green, navy, maroon, gold) ---------- */
body.theme-weddings {
  --w-forest: #2F4A34;
  --w-navy:   #1F3352;
  --w-maroon: #6B2329;
  --w-gold:   #8E6B2A;
  --w-cream-rich: #F1E6D0;
  background: var(--w-cream-rich);
}
body.theme-weddings .card { background: #FBF6EC; }
body.theme-weddings h2 { color: var(--w-forest); }

body.theme-weddings .packages-grid.wedding-packages { grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 1180px) { body.theme-weddings .packages-grid.wedding-packages { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 680px)  { body.theme-weddings .packages-grid.wedding-packages { grid-template-columns: 1fr; } }

body.theme-weddings .wedding-packages .package-card {
  --pkg: var(--w-forest);
  background: #FBF6EC;
  border: 1px solid color-mix(in srgb, var(--pkg) 45%, transparent);
  border-top: 5px solid var(--pkg);
  padding: 30px 26px;
  display: flex; flex-direction: column;
}
body.theme-weddings .wedding-packages .pkg-premier   { --pkg: var(--w-navy); }
body.theme-weddings .wedding-packages .pkg-signature { --pkg: var(--w-maroon); }
body.theme-weddings .wedding-packages .pkg-legacy    { --pkg: var(--w-gold); }

body.theme-weddings .wedding-packages h3 {
  color: var(--pkg); font-style: normal; text-transform: uppercase; letter-spacing: 0.08em;
  text-align: center; font-size: 1.55rem;
}
body.theme-weddings .wedding-packages .pkg-label {
  display: block; text-align: center; font-size: 0.68rem; letter-spacing: 0.3em; text-transform: uppercase;
  color: var(--pkg); margin: 4px 0 18px; font-weight: 600;
}
body.theme-weddings .wedding-packages .price-row .rate { color: var(--pkg); }
body.theme-weddings .wedding-packages .deposit { text-align: center; font-style: italic; opacity: 0.75; margin: 12px 0 16px; }
body.theme-weddings .wedding-packages .pkg-use {
  font-size: 0.84rem; line-height: 1.55; padding: 14px 0; border-top: 1px solid color-mix(in srgb, var(--pkg) 30%, transparent);
}
body.theme-weddings .wedding-packages .pkg-use b { display: block; color: var(--pkg); text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.72rem; margin-bottom: 4px; }
body.theme-weddings .wedding-packages .includes-label {
  font-family: var(--font-display); font-style: italic; color: var(--pkg); font-size: 1.1rem;
  border-top: 1px solid color-mix(in srgb, var(--pkg) 30%, transparent); padding-top: 14px;
}
body.theme-weddings .wedding-packages .package-includes { margin-top: 8px; padding-top: 0; border-top: 0; }
body.theme-weddings .wedding-packages .package-includes li::before { color: var(--pkg); }
body.theme-weddings .wedding-packages .footnote { font-size: 0.72rem; opacity: 0.6; margin-top: auto; padding-top: 12px; }

body.theme-weddings .addons-card ul { columns: 2; column-gap: 40px; margin-top: 6px; }
@media (max-width: 640px) { body.theme-weddings .addons-card ul { columns: 1; } }
body.theme-weddings .addons-card li { break-inside: avoid; }
body.theme-weddings .addons-note { font-style: italic; color: var(--w-maroon); margin-top: 4px; font-size: 0.92rem; }
body.theme-weddings .cta-strip h2 { color: var(--offwhite); }
body.theme-weddings .wedding-packages .pkg-pricing {
  margin-top: auto; padding-top: 16px; border-top: 1px solid color-mix(in srgb, var(--pkg) 30%, transparent);
}
body.theme-weddings .wedding-packages .package-includes { margin-bottom: 20px; }
body.theme-weddings .wedding-packages .pkg-pricing .deposit { margin: 12px 0 0; }
body.theme-weddings .wedding-packages .pkg-pricing .footnote { margin-top: 8px; padding-top: 0; }
body.theme-weddings .wedding-packages .pkg-label { margin-bottom: 8px; }
