/* ==========================================================================
   THEME · Luxury  —  refined black & gold, elegant serif, airy spacing.
   Charcoal / Champagne gold / Ivory. Thin rules, wide tracking, understated.
   ========================================================================== */
body.theme-luxury {
  --font-head: "Cormorant Garamond", Georgia, serif;
  --font-body: "Jost", system-ui, sans-serif;

  --color-bg:        #12100e;
  --color-surface:   #1b1815;
  --color-surface-2: #242019;
  --color-text:      #f3ece0;
  --color-muted:     #a99f8d;
  --color-border:    #3a3428;

  --color-primary:          #c9a227;   /* gold */
  --color-primary-contrast: #14110b;
  --color-secondary:        #b08d57;   /* bronze */
  --color-accent:           #e6c66b;   /* champagne */

  --color-success: #9caf6a;
  --color-warn:    #d0a34a;
  --color-error:   #c1615a;

  --radius-sm: 2px;
  --radius:    4px;
  --radius-lg: 6px;
  --border-width: 1px;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.5);
  --shadow:    0 14px 40px rgba(0, 0, 0, 0.6);
  --shadow-lg: 0 30px 70px rgba(0, 0, 0, 0.7);
}

/* Personality: hairline gold rules, generous letter-spacing, serif display */
body.theme-luxury h1, body.theme-luxury h2, body.theme-luxury h3,
body.theme-luxury .card-title, body.theme-luxury .hero h3,
body.theme-luxury .price { font-weight: 500; letter-spacing: .5px; }
body.theme-luxury .btn { border-radius: 2px; text-transform: uppercase; letter-spacing: .22em; font-size: .8rem; font-weight: 500; padding: .85rem 1.6rem; }
body.theme-luxury .btn-outline { border-color: var(--color-primary); color: var(--color-primary); }
body.theme-luxury .badge { border-radius: 2px; text-transform: uppercase; letter-spacing: .18em; font-weight: 500; }
body.theme-luxury .card,
body.theme-luxury .pricing,
body.theme-luxury .testimonial { border-color: var(--color-border); }
body.theme-luxury .card-eyebrow,
body.theme-luxury .plan,
body.theme-luxury .stat .lbl { letter-spacing: .2em; color: var(--color-secondary); }
body.theme-luxury .card-media {
  background: linear-gradient(135deg, #242019, #c9a227 130%);
}
body.theme-luxury .navbar { background: #1b1815; color: var(--color-text); border: 1px solid var(--color-border); }
body.theme-luxury .navbar .brand { color: var(--color-primary); letter-spacing: .2em; }
body.theme-luxury .footer-demo { background: #1b1815; color: var(--color-text); border: 1px solid var(--color-border); }
body.theme-luxury .hero { border: 1px solid var(--color-border); background: radial-gradient(120% 120% at 100% 0%, rgba(201,162,39,0.22), transparent 55%), linear-gradient(135deg, #1b1815, #12100e); }
body.theme-luxury .hero h3 { color: var(--color-accent); }
body.theme-luxury .doc-canvas { background: #12100e; }
body.theme-luxury .doc-demo { border-color: var(--color-border); }
body.theme-luxury .doc-demo-label { background: #1b1815; color: var(--color-muted); border-bottom-color: var(--color-border); }
