/* PALETTE: Graphite #3a3335 | Raspberry Red #d81e5b | Cinnabar #f0544f | Papaya Whip #fdf0d5 | Ash Grey #c6d8d3 */
[data-theme-variant="refined"] {
  /* BASE TOKENS */
  --bg-primary: #fdf0d5;
  --bg-surface: #FFFFFF;
  --bg-inverse: #3a3335;
  --text-primary: #3a3335;
  --text-inverse: #fdf0d5;
  --border: rgba(58,51,53,0.15);
  --border-strong: rgba(58,51,53,0.3);
  --bg-muted: #f0e4d0;
  --bg-elevated: #FFFFFF;
  /* ACCENT TOKENS */
  --accent: #d81e5b;
  --accent-hover: #b8184e;
  --accent-text: #FFFFFF;
  --accent-light: #f0544f;
  --accent-light-hover: #d94440;
  --accent-light-muted: rgba(240,84,79,0.15);
  --accent-muted: rgba(216,30,91,0.12);
  --shadow-gold: 0 4px 16px rgba(216,30,91,0.25);
  --text-secondary: #8a7a70;
  --text-muted: rgba(58,51,53,0.5);
  --focus-ring: 0 0 0 3px rgba(216,30,91,0.25);
  --bg-panel: #f5e8d8;
  --bg-soft: #fef7ec;
}

[data-theme-variant="refined"] .header { background: rgba(58,51,53,0.85); border-bottom-color: rgba(253,240,213,0.08); }
[data-theme-variant="refined"] .header--scrolled { background: rgba(58,51,53,0.95); }
[data-theme-variant="refined"] .header__link { color: rgba(253,240,213,0.85); font-weight: 500; letter-spacing: 0.02em; }
[data-theme-variant="refined"] .header__link:hover, [data-theme-variant="refined"] .header__link:focus-visible { color: #fdf0d5; }
[data-theme-variant="refined"] .header__link[aria-current="page"] { color: var(--accent, #d81e5b); }
[data-theme-variant="refined"] .header__link[aria-current="page"]::after { background: var(--accent, #d81e5b); }

[data-theme-variant="refined"] .hero-content h1, [data-theme-variant="refined"] .hero-content .text-display { letter-spacing: -0.03em; max-width: 14ch; }
[data-theme-variant="refined"] .hero-content p { max-width: 55ch; font-size: 1.125rem; line-height: 1.6; color: var(--text-secondary); }

[data-theme-variant="refined"] .btn--primary { background-color: var(--accent, #d81e5b); color: var(--accent-text, #FFFFFF); }
[data-theme-variant="refined"] .btn--primary:hover { background-color: var(--accent-hover, #b8184e); color: #FFFFFF; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(216,30,91,0.3); }
[data-theme-variant="refined"] .btn--primary:active { transform: scale(0.97); transition-duration: 80ms; }
[data-theme-variant="refined"] .btn--secondary { border-color: var(--accent, #d81e5b); color: var(--accent, #d81e5b); }
[data-theme-variant="refined"] .btn--secondary:hover { background-color: var(--accent, #d81e5b); color: #FFFFFF; }
[data-theme-variant="refined"] .btn--tertiary { text-decoration: none; position: relative; }
[data-theme-variant="refined"] .btn--tertiary::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1px; background: var(--accent, #d81e5b); transform: scaleX(0); transform-origin: left; transition: transform 220ms ease; }
[data-theme-variant="refined"] .btn--tertiary:hover { color: var(--accent, #d81e5b); }
[data-theme-variant="refined"] .btn--tertiary:hover::after { transform: scaleX(1); }

[data-theme-variant="refined"] .pill { color: var(--accent, #d81e5b); }
[data-theme-variant="refined"] .pill--active { background-color: var(--accent, #d81e5b); color: #FFFFFF; border-color: transparent; }

[data-theme-variant="refined"] .footer__link:hover { color: var(--accent, #d81e5b); }
[data-theme-variant="refined"] .footer__column-title { color: var(--accent, #d81e5b); }

[data-theme-variant="refined"] .back-to-top { background-color: var(--accent, #d81e5b); color: #FFFFFF; box-shadow: 0 4px 16px rgba(216,30,91,0.3); }
[data-theme-variant="refined"] .back-to-top:hover { background-color: var(--accent-hover, #b8184e); color: #FFFFFF; }

[data-theme-variant="refined"] .modal__title { color: var(--accent, #d81e5b); }

/* DARK MODE */
[data-theme-variant="refined"][data-theme="dark"] {
  --bg-primary: #3a3335;
  --bg-surface: #453d3f;
  --bg-panel: #4d4446;
  --bg-soft: #40383a;
  --bg-muted: #3d3638;
  --bg-elevated: #504749;
  --accent: #f0544f;
  --accent-hover: #d94440;
  --accent-text: #3a3335;
  --accent-light: #d81e5b;
  --accent-muted: rgba(240,84,79,0.15);
  --accent-light-muted: rgba(216,30,91,0.15);
  --text-primary: #fdf0d5;
  --text-secondary: #c6d8d3;
  --text-muted: rgba(253,240,213,0.5);
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
  --shadow-md: 0 6px 20px rgba(0,0,0,0.5);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.55);
  --shadow-gold: 0 4px 16px rgba(240,84,79,0.25);
  --border: rgba(198,216,211,0.25);
  --border-strong: rgba(198,216,211,0.4);
  --focus-ring: 0 0 0 3px rgba(240,84,79,0.35);
}
[data-theme-variant="refined"][data-theme="dark"] .card {
  border-color: var(--border); background-color: var(--bg-surface);
  box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(253,240,213,0.04);
}
[data-theme-variant="refined"][data-theme="dark"] .card:hover {
  border-color: var(--accent); background-color: var(--bg-elevated);
  box-shadow: var(--shadow-md), inset 0 1px 0 rgba(253,240,213,0.06);
}
[data-theme-variant="refined"][data-theme="dark"] .card__icon {
  background: linear-gradient(135deg, rgba(240,84,79,0.15), rgba(255,255,255,0.04));
  color: var(--accent);
}
[data-theme-variant="refined"][data-theme="dark"] .card__category {
  background-color: rgba(253,240,213,0.12) !important; color: #fdf0d5 !important;
}
[data-theme-variant="refined"][data-theme="dark"] .card--service {
  background: linear-gradient(180deg, rgba(240,84,79,0.08), var(--bg-surface)) !important;
  border-color: rgba(240,84,79,0.15);
}
[data-theme-variant="refined"][data-theme="dark"] .card--testimonial {
  background: linear-gradient(135deg, var(--bg-surface), rgba(240,84,79,0.06));
  border-left: 4px solid var(--accent) !important;
}
[data-theme-variant="refined"][data-theme="dark"] .hero-orb {
  background: radial-gradient(circle at center, rgba(240,84,79,0.18), transparent 70%) !important;
  border-color: rgba(240,84,79,0.25);
  box-shadow: 0 8px 32px rgba(240,84,79,0.2), 0 24px 64px rgba(0,0,0,0.5) !important;
}
[data-theme-variant="refined"][data-theme="dark"] .page-hero {
  background: radial-gradient(circle at top center, rgba(240,84,79,0.2), transparent 30%),
    linear-gradient(135deg, #3a3335 0%, #5c4a4c 100%) !important;
}
[data-theme-variant="refined"][data-theme="dark"] .mobile-menu {
  background: radial-gradient(circle at top right, rgba(240,84,79,0.18), transparent 28%),
    rgba(58,51,53,0.98) !important;
}
[data-theme-variant="refined"][data-theme="dark"] .visual-card--muted {
  background: linear-gradient(180deg, rgba(240,84,79,0.12), rgba(240,84,79,0.04)) !important;
  border-color: rgba(240,84,79,0.15);
}
[data-theme-variant="refined"][data-theme="dark"] .hero__stat {
  background-color: rgba(253,240,213,0.06); border-color: rgba(253,240,213,0.12);
}
[data-theme-variant="refined"][data-theme="dark"] .hero__stat-number { color: var(--accent); }
[data-theme-variant="refined"][data-theme="dark"] .cta-panel {
  background: linear-gradient(135deg, rgba(69,61,63,0.95), rgba(77,68,70,0.95));
  border: 1px solid rgba(253,240,213,0.1);
}
[data-theme-variant="refined"][data-theme="dark"] .modal {
  background-color: var(--bg-surface); border: 1px solid var(--border); box-shadow: var(--shadow-lg);
}
[data-theme-variant="refined"][data-theme="dark"] .modal__title { color: var(--accent); }
[data-theme-variant="refined"][data-theme="dark"] .modal__close { color: var(--text-secondary); }
[data-theme-variant="refined"][data-theme="dark"] .modal__close:hover { background-color: var(--border); }
[data-theme-variant="refined"][data-theme="dark"] .footer { border-top: 1px solid var(--border); }
[data-theme-variant="refined"][data-theme="dark"] .form-input {
  background-color: var(--bg-soft); border-color: var(--border); color: var(--text-primary);
}
[data-theme-variant="refined"][data-theme="dark"] .form-input:focus {
  border-color: var(--accent); box-shadow: 0 0 0 3px rgba(240,84,79,0.15);
}
[data-theme-variant="refined"][data-theme="dark"] .legal-section {
  background-color: var(--bg-surface); border-color: var(--border);
}
@media (prefers-reduced-motion: reduce) {
  [data-theme-variant="refined"] *, [data-theme-variant="refined"] *::before, [data-theme-variant="refined"] *::after {
    transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; transform: none !important;
  }
}
