/* ==========================================================================
   Indigo - locked deep-blue theme (loaded AFTER vanilla).
   Saturated navy page (not white), warm amber accent, lighter-navy cards,
   near-black-navy bands. Sora headings + Inter body.
     page #16224d   cards #213163   bands #0d1530   accent amber #f0a500
   ========================================================================== */

.theme-indigo {
    --font-heading: 'Sora', system-ui, -apple-system, sans-serif;
    --font-body: 'Inter', system-ui, -apple-system, sans-serif;

    --color-accent: #f0a500;          /* warm amber pop on cool navy */
    --color-accent-hover: #ffba2e;

    --color-bg: #16224d;
    --color-surface: #213163;
    --color-surface-dark: #0d1530;
    --color-border: #2f4080;

    --color-text: #eaf0ff;
    --color-text-secondary: #a7b6dc;
    --color-text-muted: #c6d2f0;
    --color-text-on-dark: #ffffff;
    --color-text-on-dark-muted: #8a99c4;

    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 16px;
}

body.theme-indigo { background: var(--color-bg); }

.theme-indigo h1,
.theme-indigo h2,
.theme-indigo h3,
.theme-indigo h4 { font-weight: 700; letter-spacing: -0.02em; }
.theme-indigo .c-nav__link,
.theme-indigo .c-nav__mobile a { letter-spacing: normal; text-transform: none; font-weight: 600; }

/* Buttons: amber fill, navy label (white fails on amber). */
.theme-indigo .btn-primary,
.theme-indigo .btn--primary { color: #16224d; font-weight: 700; }
.theme-indigo .btn-primary:hover,
.theme-indigo .btn--primary:hover { background: var(--color-accent-hover); color: #16224d; }
.theme-indigo .btn-secondary,
.theme-indigo .btn--secondary { color: var(--color-text); border-color: var(--color-border); }
.theme-indigo .btn-secondary:hover,
.theme-indigo .btn--secondary:hover { border-color: var(--color-accent); }

/* Nav: translucent navy, amber CTA. */
.theme-indigo .c-nav { background: rgba(22, 34, 77, 0.9); border-bottom: 1px solid var(--color-border); }
.theme-indigo .c-nav__logo,
.theme-indigo .c-nav__link { color: var(--color-text); }
.theme-indigo .c-nav__link:hover { opacity: 0.62; }
.theme-indigo .c-nav__link--button { background: var(--color-accent); color: #16224d; }
.theme-indigo .c-nav__link--button:hover { background: var(--color-accent-hover); opacity: 1; }
.theme-indigo .c-nav__hamburger span { background: var(--color-text); }
.theme-indigo .c-nav__mobile { background: rgba(22, 34, 77, 0.98); }
.theme-indigo .c-nav__mobile a { border-bottom-color: var(--color-border); }

/* Eyebrows in amber. */
.theme-indigo .c-hero__label,
.theme-indigo .c-section-head__label,
.theme-indigo .c-services__label,
.theme-indigo .c-label { color: var(--color-accent); }
.theme-indigo .c-hero--image .c-hero__label { color: rgba(255, 255, 255, 0.9); }

/* Cards lifted off the navy page. */
.theme-indigo .c-service-card,
.theme-indigo .c-pricing-index__card,
.theme-indigo .oh-dept { background: var(--color-surface); }
.theme-indigo .c-service-card__image { background: var(--color-bg); }
.theme-indigo .c-service-card:hover { border-color: var(--color-accent); box-shadow: 0 16px 44px rgba(0, 0, 0, 0.45); }
.theme-indigo .c-pricing-index__card:hover { border-color: var(--color-accent); }
.theme-indigo .c-services,
.theme-indigo .c-tabs,
.theme-indigo .c-cta { background: var(--color-bg); }

/* Dark bands. */
.theme-indigo .c-footer,
.theme-indigo .c-stats,
.theme-indigo .c-quote-cta { background-color: var(--color-surface-dark); border-top: 1px solid var(--color-border); }

/* Prose links in amber. */
.theme-indigo .c-prose a { color: var(--color-accent); border-bottom-color: var(--color-accent); }

/* Forms: navy fields, amber focus ring. */
.theme-indigo .field input,
.theme-indigo .field select,
.theme-indigo .field textarea,
.theme-indigo .bk-search input,
.theme-indigo .slot-btn,
.theme-indigo .bk-card,
.theme-indigo .bk-upsell { background: var(--color-surface); color: var(--color-text); border-color: var(--color-border); }
.theme-indigo .field input::placeholder,
.theme-indigo .field textarea::placeholder { color: var(--color-text-secondary); }
.theme-indigo .field input:focus,
.theme-indigo .field select:focus,
.theme-indigo .field textarea:focus,
.theme-indigo .bk-search input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(240, 165, 0, 0.22); }
.theme-indigo .slot-btn.is-selected { background: var(--color-accent); color: #16224d; border-color: var(--color-accent); }
.theme-indigo .bk-card.is-selected .bk-card__check,
.theme-indigo .bk-card--option:has(input:checked) .bk-card__check,
.theme-indigo .bk-upsell:has(input:checked) .bk-upsell__check { color: #16224d; }
.theme-indigo .bk-cart__toggle { color: #16224d; }
.theme-indigo .bk-cart__count { background: var(--color-surface-dark); color: var(--color-accent); }

/* Quote-CTA button on the dark band: amber fill, navy label. */
.theme-indigo .c-quote-cta .btn-primary,
.theme-indigo .c-quote-cta .btn--primary { background: var(--color-accent); color: #16224d; }
.theme-indigo .c-quote-cta .btn-primary:hover,
.theme-indigo .c-quote-cta .btn--primary:hover { background: var(--color-accent-hover); }

/* ===== HERO: amber "banner" - navy text, navy button ===== */
.theme-indigo .c-hero--banner { background: var(--color-accent); color: #16224d; }
.theme-indigo .c-hero--banner .c-hero__title,
.theme-indigo .c-hero--banner .c-hero__desc { color: #16224d; }
.theme-indigo .c-hero--banner .c-hero__label { color: rgba(22, 34, 77, 0.72); }
.theme-indigo .c-hero--banner .btn-primary,
.theme-indigo .c-hero--banner .btn--primary { background: #16224d; color: var(--color-accent); }
.theme-indigo .c-hero--banner .btn-primary:hover,
.theme-indigo .c-hero--banner .btn--primary:hover { background: #0d1530; }
