/* ==========================================================================
   Blossom - locked soft-pastel theme (loaded AFTER vanilla).
   Gentle lavender page (not white), pale-lilac cards, candy-violet accent,
   muted-plum band, generous rounded corners. Quicksand headings + Inter body.
     page #efe7fb   cards #faf7ff   bands #3a2d54   accent violet #7c4dde
   ========================================================================== */

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

    --color-accent: #7c4dde;          /* candy violet (white passes) */
    --color-accent-hover: #6738c4;

    --color-bg: #efe7fb;
    --color-surface: #faf7ff;          /* pale lilac (not pure white) */
    --color-surface-dark: #3a2d54;     /* muted plum band */
    --color-border: #e4d8f5;

    --color-text: #3b2f4f;
    --color-text-secondary: #6b5d80;
    --color-text-muted: #4f4267;
    --color-text-on-dark: #ffffff;
    --color-text-on-dark-muted: #c4b7da;

    --radius-sm: 12px;
    --radius-md: 20px;
    --radius-lg: 28px;
}

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

/* Rounded, friendly headings; sentence-case nav. */
.theme-blossom h1,
.theme-blossom h2,
.theme-blossom h3,
.theme-blossom h4 { font-weight: 700; letter-spacing: -0.01em; }
.theme-blossom .c-nav__link,
.theme-blossom .c-nav__mobile a { letter-spacing: normal; text-transform: none; font-weight: 600; }
.theme-blossom .c-nav__logo { font-weight: 700; }

/* Frosted lavender nav. */
.theme-blossom .c-nav { background: rgba(239, 231, 251, 0.88); border-bottom-color: rgba(58, 45, 84, 0.12); }

/* Pill-ish buttons, sentence case. */
.theme-blossom .btn,
.theme-blossom .btn-primary,
.theme-blossom .btn-secondary,
.theme-blossom .btn--primary,
.theme-blossom .btn--secondary { letter-spacing: normal; text-transform: none; font-weight: 700; }

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

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

/* Pale-lilac cards + form surfaces. */
.theme-blossom .c-service-card,
.theme-blossom .c-pricing-index__card,
.theme-blossom .oh-dept { background: var(--color-surface); }
.theme-blossom .c-service-card:hover { box-shadow: 0 16px 40px rgba(124, 77, 222, 0.16); }
.theme-blossom .c-pricing-index__card:hover { border-color: var(--color-accent); }
.theme-blossom .field input,
.theme-blossom .field select,
.theme-blossom .field textarea,
.theme-blossom .slot-btn,
.theme-blossom .bk-card,
.theme-blossom .bk-upsell { background: var(--color-surface); }
.theme-blossom .field input:focus,
.theme-blossom .field select:focus,
.theme-blossom .field textarea:focus,
.theme-blossom .bk-search input:focus { border-color: var(--color-accent); box-shadow: 0 0 0 3px rgba(124, 77, 222, 0.18); }
.theme-blossom .slot-btn.is-selected { background: var(--color-accent); color: #fff; border-color: var(--color-accent); }

/* ===== HERO: soft pastel gradient "banner", dark text ===== */
.theme-blossom .c-hero--banner {
    background: linear-gradient(120deg, #f9d5ec 0%, #e7d6fb 50%, #d6f0e6 100%);
    color: var(--color-text);
}
.theme-blossom .c-hero--banner .c-hero__title,
.theme-blossom .c-hero--banner .c-hero__desc { color: var(--color-text); }
.theme-blossom .c-hero--banner .c-hero__label { color: var(--color-accent); }
.theme-blossom .c-hero--banner .btn-primary,
.theme-blossom .c-hero--banner .btn--primary { background: var(--color-accent); color: #fff; }
.theme-blossom .c-hero--banner .btn-primary:hover,
.theme-blossom .c-hero--banner .btn--primary:hover { background: var(--color-accent-hover); }
