/* ==========================================================================
   Lime - locked vibrant-chartreuse theme (loaded AFTER vanilla).
   Bold lime page (not white), pale cream-lime cards, ink-black accent (ink
   buttons with white text), near-black olive bands. Heavy Archivo headings.
     page #d4ee4a   cards #fbfde9   bands #15180a   accent ink #1a1f08
   ========================================================================== */

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

    --color-accent: #1a1f08;           /* ink (white text passes) */
    --color-accent-hover: #000000;

    --color-bg: #d4ee4a;
    --color-surface: #fbfde9;           /* pale cream-lime cards */
    --color-surface-dark: #15180a;      /* near-black olive band */
    --color-border: #bcd44a;

    --color-text: #1a1f08;
    --color-text-secondary: #44521c;
    --color-text-muted: #2c3510;
    --color-text-on-dark: #ffffff;
    --color-text-on-dark-muted: #c7d68a;

    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
}

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

/* Heavy, slightly condensed headings. */
.theme-lime h1,
.theme-lime h2,
.theme-lime h3,
.theme-lime h4 { font-weight: 900; letter-spacing: -0.02em; }
.theme-lime .c-hero__title,
.theme-lime .c-section-head__title { text-transform: uppercase; }
.theme-lime .c-nav__link,
.theme-lime .c-nav__mobile a { letter-spacing: 0.02em; text-transform: uppercase; font-weight: 700; }

/* Frosted lime nav. */
.theme-lime .c-nav { background: rgba(212, 238, 74, 0.9); border-bottom-color: rgba(26, 31, 8, 0.18); }

/* Buttons: ink fill, white label. */
.theme-lime .btn,
.theme-lime .btn-primary,
.theme-lime .btn-secondary,
.theme-lime .btn--primary,
.theme-lime .btn--secondary { letter-spacing: 0.03em; font-weight: 800; }
.theme-lime .btn-secondary,
.theme-lime .btn--secondary { color: var(--color-text); border-color: var(--color-text); }

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

/* Let the lime be the canvas. */
.theme-lime .c-services,
.theme-lime .c-tabs,
.theme-lime .c-cta { background: transparent; }

/* Cream cards + form surfaces. */
.theme-lime .c-service-card,
.theme-lime .c-pricing-index__card,
.theme-lime .oh-dept { background: var(--color-surface); }
.theme-lime .c-service-card:hover { border-color: var(--color-accent); box-shadow: 0 16px 40px rgba(26, 31, 8, 0.22); }
.theme-lime .c-pricing-index__card:hover { border-color: var(--color-accent); }
.theme-lime .field input,
.theme-lime .field select,
.theme-lime .field textarea,
.theme-lime .slot-btn,
.theme-lime .bk-card,
.theme-lime .bk-upsell { background: var(--color-surface); }
.theme-lime .field input:focus,
.theme-lime .field select:focus,
.theme-lime .field textarea:focus,
.theme-lime .bk-search input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(26, 31, 8, 0.20); }
.theme-lime .slot-btn.is-selected { background: var(--color-accent); color: #fff; border-color: var(--color-accent); }
.theme-lime .bk-card.is-selected .bk-card__check,
.theme-lime .bk-card--option:has(input:checked) .bk-card__check,
.theme-lime .bk-upsell:has(input:checked) .bk-upsell__check { background: var(--color-accent); color: #fff; border-color: var(--color-accent); }

/* ===== HERO: ink "banner" - white text, lime button ===== */
.theme-lime .c-hero--banner { background: var(--color-surface-dark); color: #fff; }
.theme-lime .c-hero--banner .c-hero__title,
.theme-lime .c-hero--banner .c-hero__desc { color: #fff; }
.theme-lime .c-hero--banner .c-hero__label { color: var(--color-bg); }
.theme-lime .c-hero--banner .btn-primary,
.theme-lime .c-hero--banner .btn--primary { background: var(--color-bg); color: var(--color-accent); }
.theme-lime .c-hero--banner .btn-primary:hover,
.theme-lime .c-hero--banner .btn--primary:hover { background: #c2dd3a; }
