/* === Celebrity Management Agency - Luxury Dark Theme ===
   Palette:
   - Primary Background: #2E4053 (Imperial Navy Blue)
   - Text Primary: #EAEAEA (Silvery White)
   - Text Secondary: #BFC9CA (Muted Gray)
   - Accent Gold (Primary): #D4AC0D
   - Accent Gold (Hover/Highlight): #F1C40F
   - Surface/Card (derived): #1F2A36
   Accessibility: all common text combinations meet or exceed WCAG AA.
*/ 

:root {
  --bg-primary: #2E4053;
  --text-primary: #EAEAEA;
  --text-secondary: #BFC9CA;
  --accent-gold: #D4AC0D;
  --accent-gold-hover: #F1C40F;
  --surface: #1F2A36;
  --border: #2B3A47;
  --muted: #93A1AA;
}

/* Base */
html, body {
  background: var(--bg-primary);
  color: var(--text-primary);
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
  color: #FFFFFF;
}

p, li, dd, dt {
  color: var(--text-primary);
}

small, .text-muted, .meta, time, .subtitle {
  color: var(--text-secondary);
}

/* Links */
a, a:visited {
  color: var(--accent-gold-hover);
  text-decoration-color: rgba(241, 196, 15, 0.5);
}
a:hover, a:focus {
  color: var(--accent-gold);
  text-decoration-color: var(--accent-gold);
}

/* Buttons (generic) */
button, .btn, .button, [type="submit"], .cta {
  background: var(--accent-gold);
  color: #000000;
  border: 1px solid var(--accent-gold);
}
button:hover, .btn:hover, .button:hover, [type="submit"]:hover, .cta:hover {
  background: var(--accent-gold-hover);
  border-color: var(--accent-gold-hover);
  color: #000000;
}

/* Cards / Panels */
.card, .panel, .box, .feature, .pricing-card, .team-card, .service-card {
  background: var(--surface);
  color: var(--text-primary);
  border: 1px solid var(--border);
}

/* Inputs */
input, select, textarea {
  background: var(--surface);
  color: var(--text-primary);
  border: 1px solid var(--border);
}
input::placeholder, textarea::placeholder {
  color: var(--muted);
}

/* Nav / Footer */
header, .navbar, nav, footer, .site-footer, .site-header {
  background: #243443;
  color: var(--text-primary);
  border-bottom: 1px solid var(--border);
}
footer, .site-footer {
  border-top: 1px solid var(--border);
}

/* Tables */
table {
  color: var(--text-primary);
  border-color: var(--border);
}
thead th {
  color: #FFFFFF;
  border-bottom: 1px solid var(--border);
}
tbody td, tbody th {
  border-top: 1px solid var(--border);
}

/* Utility helpers without touching layout */
.text-primary { color: var(--text-primary) !important; }
.text-secondary { color: var(--text-secondary) !important; }
.bg-surface { background: var(--surface) !important; }
.bg-primary { background: var(--bg-primary) !important; }
.border { border: 1px solid var(--border) !important; }
.acc-gold { color: var(--accent-gold) !important; }
.acc-gold-bg { background: var(--accent-gold) !important; color: #000 !important; }
