/* Redeemed Promoter event presentation only. Standalone Sound keeps styles.css unchanged. */
body[data-promoter-presentation="modern"] {
  --promoter-background: #070708;
  --promoter-surface: #111113;
  --promoter-text: #f4f0e8;
  --promoter-muted: #b8b4aa;
  --promoter-accent: #dbff45;
  --promoter-accent-ink: #111113;
  --promoter-accent-text: #dbff45;
  /* Reuse the event palette throughout the existing Sound workflow, including
     quote rows, equipment, account panels and validation. No pricing changes. */
  --paper: var(--promoter-background);
  --paper-deep: var(--promoter-surface);
  --surface: var(--promoter-surface);
  --surface-soft: color-mix(in srgb, var(--promoter-text) 5%, var(--promoter-surface));
  --ink: var(--promoter-text);
  --ink-strong: var(--promoter-text);
  --muted: var(--promoter-muted);
  --line: color-mix(in srgb, var(--promoter-text) 16%, transparent);
  --line-strong: color-mix(in srgb, var(--promoter-text) 26%, transparent);
  --brass: var(--promoter-accent-text);
  --brass-soft: var(--promoter-accent-text);
  --sage: var(--promoter-accent-text);
  --blue: var(--promoter-muted);
  --sans: Inter, "Helvetica Neue", Arial, sans-serif;
  --mono: Inter, "Helvetica Neue", Arial, sans-serif;
  --shadow: none;
  background: var(--promoter-background);
  color: var(--promoter-text);
  font-family: var(--sans);
  line-height: 1.5;
}
body[data-promoter-presentation="modern"]::before,
body[data-promoter-presentation="modern"]::after,
body[data-promoter-presentation="modern"] .hero-section::before,
body[data-promoter-presentation="modern"] .hero-section::after,
body[data-promoter-presentation="modern"] .hero-image-frame::before,
body[data-promoter-presentation="modern"] .hero-image-frame::after { display: none; }
body[data-promoter-presentation="modern"] .site-header { background: color-mix(in srgb, var(--promoter-background) 94%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--promoter-text) 16%, transparent); }
body[data-promoter-presentation="modern"] .brand { border: 0; }
body[data-promoter-presentation="modern"] .vision-toggle {
  display: inline-flex; top: 12px; right: 16px; bottom: auto;
  width: 44px; height: 44px; min-height: 44px; justify-content: center;
  padding: 0; border: 1px solid var(--line); border-radius: 50%;
  background: var(--promoter-surface); color: var(--promoter-text);
  font-size: 18px; box-shadow: none;
}
body[data-promoter-presentation="modern"] .vision-toggle [data-theme-label] {
  position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}
body[data-promoter-presentation="modern"] .brand-mark,
body[data-promoter-presentation="modern"] .nav-cta,
body[data-promoter-presentation="modern"] .button-primary { background: var(--promoter-accent); color: var(--promoter-accent-ink); }
body[data-promoter-presentation="modern"] .brand-mark { border-radius: 9px; border-color: transparent; }
body[data-promoter-presentation="modern"] h1,
body[data-promoter-presentation="modern"] h2,
body[data-promoter-presentation="modern"] h3 { color: var(--promoter-text); letter-spacing: -.045em; }
body[data-promoter-presentation="modern"] h2,
body[data-promoter-presentation="modern"] h3 { text-transform: none; line-height: 1.05; }
body[data-promoter-presentation="modern"] p,
body[data-promoter-presentation="modern"] .field-help { color: var(--promoter-muted); }
body[data-promoter-presentation="modern"] .icon-button,
body[data-promoter-presentation="modern"] input,
body[data-promoter-presentation="modern"] select,
body[data-promoter-presentation="modern"] textarea { border-radius: 10px; }
body[data-promoter-presentation="modern"] .button,
body[data-promoter-presentation="modern"] .nav-cta,
body[data-promoter-presentation="modern"] .nav-account {
  min-height: 48px; border-radius: 40px; padding: 12px 22px;
  font-size: 13px; font-weight: 700; letter-spacing: 0; text-transform: none;
  transition: background-color 180ms ease, border-color 180ms ease, opacity 180ms ease;
}
body[data-promoter-presentation="modern"] .button:hover,
body[data-promoter-presentation="modern"] .nav-cta:hover { transform: none; box-shadow: none; opacity: .88; }
body[data-promoter-presentation="modern"] .button-secondary,
body[data-promoter-presentation="modern"] .icon-button { border-color: color-mix(in srgb, var(--promoter-text) 22%, transparent); color: var(--promoter-text); background: var(--promoter-surface); }
body[data-promoter-presentation="modern"] .hero-section { background: var(--promoter-background); }
body[data-promoter-presentation="modern"] .hero-image-frame { border-radius: 22px; transform: none !important; box-shadow: none; }
body[data-promoter-presentation="modern"] .consultation-drawer .drawer-panel,
body[data-promoter-presentation="modern"] .booking-step-panel,
body[data-promoter-presentation="modern"] .equipment-package,
body[data-promoter-presentation="modern"] .compact-disclosure { background: var(--promoter-surface); border-color: color-mix(in srgb, var(--promoter-text) 16%, transparent); box-shadow: none; }
body[data-promoter-presentation="modern"] .drawer-header { padding: 24px 26px 20px; }
body[data-promoter-presentation="modern"] .drawer-header h2 { font-size: clamp(28px, 4vw, 42px); line-height: 1.05; }
body[data-promoter-presentation="modern"] .booking-wizard-nav { gap: 8px; padding: 14px 22px; }
body[data-promoter-presentation="modern"] .booking-wizard-nav button { min-height: 48px; border-radius: 12px; padding: 10px; }
body[data-promoter-presentation="modern"] .booking-wizard-nav button.is-active { background: var(--surface-soft); }
body[data-promoter-presentation="modern"] .booking-wizard-nav .booking-step-number { width: 26px; height: 26px; font-size: 11px; }
body[data-promoter-presentation="modern"] .booking-wizard-nav button.is-active .booking-step-number { background: var(--promoter-accent); border-color: var(--promoter-accent); color: var(--promoter-accent-ink); }
body[data-promoter-presentation="modern"] .booking-wizard-nav button strong { font-size: 12px; letter-spacing: 0; text-transform: none; }
body[data-promoter-presentation="modern"] .booking-step-copy small { font-size: 10px; }
body[data-promoter-presentation="modern"] .booking-step-panel { gap: 22px; padding: 22px 26px 32px; }
body[data-promoter-presentation="modern"] .booking-wizard-footer { padding: 14px 22px max(14px, env(safe-area-inset-bottom)); }
body[data-promoter-presentation="modern"] .booking-wizard-footer > span { font-size: 10px; letter-spacing: 0; text-transform: none; }
body[data-promoter-presentation="modern"] .consultation-form label { gap: 8px; font-size: 12px; line-height: 1.5; text-transform: none; }
body[data-promoter-presentation="modern"] .form-two-col { gap: 16px; }
body[data-promoter-presentation="modern"] .field-info > div { border-radius: 12px; background: var(--surface-soft); color: var(--promoter-text); font-size: 12px; }
body[data-promoter-presentation="modern"] .lead-planner { border: 0; padding: 0; margin: 0; gap: 18px; }
body[data-promoter-presentation="modern"] .lead-planner-head { gap: 16px; padding-bottom: 18px; }
body[data-promoter-presentation="modern"] .lead-planner-head h3 { font-size: clamp(24px, 3vw, 32px); }
body[data-promoter-presentation="modern"] .lead-planner-head p { font-size: 14px; }
body[data-promoter-presentation="modern"] .lead-completeness { border: 0; border-radius: 14px; padding: 12px; }
body[data-promoter-presentation="modern"] .lead-completeness span { font-size: 11px; text-transform: none; }
body[data-promoter-presentation="modern"] .music-service-decision { background: transparent; border: 0; padding: 0; }
body[data-promoter-presentation="modern"] .rental-section-label > strong { font-size: 18px; line-height: 1.4; text-transform: none; letter-spacing: -.02em; }
body[data-promoter-presentation="modern"] .music-coverage { gap: 8px; }
body[data-promoter-presentation="modern"] .terms-check { min-height: 48px; padding-block: 14px; align-items: start; }
body[data-promoter-presentation="modern"] .terms-check span { font: 14px/1.55 var(--sans); }
body[data-promoter-presentation="modern"] .terms-check span strong { color: var(--promoter-text); }
body[data-promoter-presentation="modern"] .terms-check span small { font-size: 12px; }
body[data-promoter-presentation="modern"] .terms-check input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--promoter-accent); }
body[data-promoter-presentation="modern"] .music-choice-help { font-size: 12px; line-height: 1.5; }
body[data-promoter-presentation="modern"] .lead-question-group { border: 1px solid var(--line); border-radius: 14px; background: transparent; }
body[data-promoter-presentation="modern"] .lead-question-group > summary { min-height: 56px; text-transform: none; font-size: 14px; padding: 14px 16px; }
body[data-promoter-presentation="modern"] .lead-question-group > summary span { font-size: 11px; text-transform: none; }
body[data-promoter-presentation="modern"] .lead-question-group[data-requirement-group="required"] > summary span { color: var(--promoter-accent-text); }
body[data-promoter-presentation="modern"] .lead-question-grid { padding: 16px; gap: 16px; }
body[data-promoter-presentation="modern"] .lead-workflow-result > summary :is(strong, em),
body[data-promoter-presentation="modern"] .planner-inventory-preview > summary :is(strong, em) { text-transform: none; font-size: 13px; }
body[data-promoter-presentation="modern"] .lead-workflow-result > summary small,
body[data-promoter-presentation="modern"] .planner-inventory-preview > summary small { font-size: 12px; }
body[data-promoter-presentation="modern"] .service-card,
body[data-promoter-presentation="modern"] .equipment-package,
body[data-promoter-presentation="modern"] .compact-disclosure,
body[data-promoter-presentation="modern"] .lead-option,
body[data-promoter-presentation="modern"] .lead-workflow-result,
body[data-promoter-presentation="modern"] .booking-resume,
body[data-promoter-presentation="modern"] .rental-cart,
body[data-promoter-presentation="modern"] .rental-catalog-card { border: 1px solid var(--line); border-radius: 18px; box-shadow: none; }
body[data-promoter-presentation="modern"] .service-card:hover { transform: none; }
body[data-promoter-presentation="modern"] .rental-cart,
body[data-promoter-presentation="modern"] .rental-cart-line,
body[data-promoter-presentation="modern"] .rental-cart-lines > p,
body[data-promoter-presentation="modern"] .rental-cart-summary span { background: var(--promoter-surface); color: var(--promoter-muted); }
body[data-promoter-presentation="modern"] .rental-cart-lines,
body[data-promoter-presentation="modern"] .rental-cart-summary { background: var(--line); }
body[data-promoter-presentation="modern"] .rental-cart :is(h3, strong, button) { color: var(--promoter-text); }
body[data-promoter-presentation="modern"] .rental-cart :is(small, p) { color: var(--promoter-muted); }
body[data-promoter-presentation="modern"] .rental-cart .button-primary { color: var(--promoter-accent-ink); }
body[data-promoter-presentation="modern"] .rental-cart-line button { border-color: var(--line-strong); border-radius: 40px; min-height: 40px; font-size: 11px; text-transform: none; }
body[data-promoter-presentation="modern"] .rental-quote { border-radius: 18px; overflow: hidden; }
body[data-promoter-presentation="modern"] .rental-quote > div { padding: 14px 16px; gap: 16px; }
body[data-promoter-presentation="modern"] .rental-quote > div > :is(span, strong) { font-size: 13px; line-height: 1.5; text-transform: none; }
body[data-promoter-presentation="modern"] .rental-quote > div > strong { font-variant-numeric: tabular-nums; }
body[data-promoter-presentation="modern"] .status-pill { border-radius: 999px; background: color-mix(in srgb, var(--promoter-accent) 18%, transparent); color: var(--promoter-accent-text); }
body[data-promoter-presentation="modern"] :focus-visible { outline: 3px solid var(--promoter-accent); outline-offset: 4px; }
body[data-promoter-presentation="modern"] .form-error-summary-action { margin-top: 12px; }
@media (max-width: 680px) {
  body[data-promoter-presentation="modern"] .site-header { padding-inline: 5vw; }
  body[data-promoter-presentation="modern"] .brand-copy small { display: none; }
  body[data-promoter-presentation="modern"] .consultation-drawer .drawer-panel { width: 100%; border-radius: 20px 20px 0 0; }
  body[data-promoter-presentation="modern"] .drawer-header { padding: 18px 5vw 14px; }
  body[data-promoter-presentation="modern"] .booking-wizard-nav { padding: 10px 3vw; gap: 4px; }
  body[data-promoter-presentation="modern"] .booking-wizard-nav button { padding: 8px 6px; }
  body[data-promoter-presentation="modern"] .booking-step-panel { padding: 20px 5vw 26px; }
  body[data-promoter-presentation="modern"] .lead-completeness { display: flex; align-items: center; gap: 10px; width: fit-content; padding: 6px 12px; }
  body[data-promoter-presentation="modern"] .lead-completeness strong { font-size: 16px; }
  body[data-promoter-presentation="modern"] .consultation-form :is(input:not([type="radio"]):not([type="checkbox"]), select, textarea) { font-size: 16px; }
  body[data-promoter-presentation="modern"] .booking-wizard-footer { padding-inline: 3vw; }
  body[data-promoter-presentation="modern"] .booking-wizard-footer .button { padding: 10px 13px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-promoter-presentation="modern"], body[data-promoter-presentation="modern"] * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
