/*
 * Holiday Illumination v1.19.0 — adjustable ambient lighting & site palette.
 * Purposefully appended after theme.css: the site's original templates,
 * menus, animations, and responsive rules stay intact.
 *
 * Variables are emitted via wp_add_inline_style() from inc/appearance.php.
 * Do NOT apply filter/opacity to .site-shell: that would darken copy,
 * change positioned-element containing blocks and affect third-party forms.
 */
.site-shell,
.site-shell[data-theme] {
  --hic-lighting-factor: 0.94;
  --hic-primary: #8f1020;
  --hic-primary-dark: #620d19;
  --hic-primary-bright: #aa1d2d;
  --hic-secondary: #dba93c;
  --hic-secondary-light: #edd29c;
  --hic-page-surface: #dadee0; /* Overridden by sanitized PHP output. */
  --hic-card-surface: #f0edea;
  --hic-soft-surface: #e3e7e7;
  --hic-header-surface: #e7ebeb;
  --hic-footer-surface: #e2e3de;
  --hic-dark-surface: #0f1717;
  --hic-body-ink: #26343a;
  --hic-body-muted: #52616a;
  --hic-light-ink: #fff8eb;
  --red: var(--hic-primary);
  --red-dark: var(--hic-primary-dark);
  --red-bright: var(--hic-primary-bright);
  --gold: var(--hic-secondary);
  --gold-light: var(--hic-secondary-light);
  --black: var(--hic-dark-surface);
  --ink: var(--hic-dark-surface);
  --cream: var(--hic-light-ink);
  --white: var(--hic-card-surface);
  --snow-bg: var(--hic-page-surface);
  --snow-bg-2: var(--hic-card-surface);
  --snow-surface: color-mix(in srgb, var(--hic-card-surface) 82%, transparent);
  --snow-surface-strong: color-mix(in srgb, var(--hic-card-surface) 94%, transparent);
  --snow-ink: var(--hic-body-ink);
  --snow-muted: var(--hic-body-muted);
  color: var(--hic-body-ink);
  background: var(--hic-page-surface);
}

body.hic-native-theme { background: var(--hic-page-surface, #dadede); }

/* Core canvas behind the entire design. No global filter or overlays. */
.site-shell {
  background: linear-gradient(180deg,
    var(--hic-header-surface) 0%,
    var(--hic-page-surface) 36%,
    var(--hic-soft-surface) 72%,
    var(--hic-footer-surface) 100%);
}

/* Top bar, navigation, hamburger and floating mobile navigation. */
.site-shell .announcement {
  background: linear-gradient(100deg, var(--hic-header-surface), var(--hic-soft-surface), var(--hic-header-surface));
  color: var(--hic-body-ink);
}
.site-shell .header {
  background: var(--hic-header-surface) !important;
  border-bottom-color: color-mix(in srgb, var(--hic-secondary) 20%, transparent);
}
.site-shell .nav {
  background: color-mix(in srgb, var(--hic-card-surface) 89%, transparent);
  border-color: color-mix(in srgb, var(--hic-body-muted) 20%, transparent);
}
.site-shell .nav > a,
.site-shell .nav-item > .nav-parent-link { color: var(--hic-body-ink); }
.site-shell .header-phone,
.site-shell .mobile-toggle {
  background: var(--hic-card-surface) !important;
  border-color: color-mix(in srgb, var(--hic-body-muted) 20%, transparent) !important;
}
.site-shell .mobile-panel { background: color-mix(in srgb, var(--hic-header-surface) 98%, transparent) !important; }
.site-shell .mobile-panel-nav a { color: var(--hic-body-ink); }
.site-shell .mobile-submenu,
.site-shell .nav-submenu {
  background: var(--hic-card-surface);
}

/* Hero retains the dark dramatic photography treatment and readable light copy. */
.site-shell .hero,
.site-shell .hero-media { background: var(--hic-dark-surface); }
.site-shell .hero-media img {
  filter: saturate(.86) contrast(1.06) brightness(calc(.62 * var(--hic-lighting-factor)));
}
.site-shell .hero-title,
.site-shell .hero .source-subtitle { color: var(--hic-light-ink); }
.site-shell .hero-lead,
.site-shell .hero-source-copy,
.site-shell .hero-booking { color: color-mix(in srgb, var(--hic-light-ink) 82%, transparent); }
.site-shell .hero .concierge-card {
  background: linear-gradient(145deg,
    color-mix(in srgb, var(--hic-dark-surface) 92%, var(--hic-primary)),
    color-mix(in srgb, var(--hic-primary) 39%, var(--hic-dark-surface)));
}
.site-shell .hero .concierge-card h2 { color: var(--hic-light-ink); }
.site-shell .hero .concierge-card p { color: color-mix(in srgb, var(--hic-light-ink) 75%, transparent); }

/* Light and frosted sections become moderately darker; avoid dimming fonts. */
.site-shell .services,
.site-shell .portfolio,
.site-shell .experiences,
.site-shell .faq,
.site-shell .areas,
.site-shell .hic-home-local-intent,
.site-shell .hic-home-resources,
.site-shell .hic-review-all-section,
.site-shell .hic-review-proof-section,
.site-shell .hic-content-wrap {
  background: var(--hic-page-surface);
}
.site-shell .quote {
  background: linear-gradient(135deg,
    var(--hic-soft-surface),
    color-mix(in srgb, var(--hic-page-surface) 90%, var(--hic-secondary)));
}
.site-shell .process {
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--hic-primary) 72%, var(--hic-dark-surface)),
    var(--hic-primary) 55%,
    color-mix(in srgb, var(--hic-primary) 22%, var(--hic-dark-surface)));
}
.site-shell .process .section-title,
.site-shell .process .process-step h3 { color: var(--hic-light-ink); }
.site-shell .process .section-copy,
.site-shell .process .process-step p { color: color-mix(in srgb, var(--hic-light-ink) 82%, transparent); }
.site-shell .section-title,
.site-shell .areas .section-title,
.site-shell .hic-content-wrap h1,
.site-shell .hic-content-wrap h2 { color: var(--hic-body-ink); }
.site-shell .section-copy,
.site-shell .areas .section-copy { color: var(--hic-body-muted); }
.site-shell .eyebrow,
.site-shell .areas .eyebrow { color: var(--hic-primary); }
.site-shell .hero .eyebrow,
.site-shell .process .eyebrow,
.site-shell .dark-section .eyebrow { color: var(--hic-secondary-light); }

/* Frosted panels, article widgets and cards reuse the same adjustable tone. */
.site-shell .stats-grid,
.site-shell .service-card,
.site-shell .experience-card,
.site-shell .faq-item,
.site-shell .area-panel,
.site-shell .trust-card,
.site-shell .hic-home-nap-card,
.site-shell .hic-seo-card,
.site-shell .hic-proof-card,
.site-shell .hic-content-section-block,
.site-shell .hic-context-links,
.site-shell .hic-contact-map-block,
.site-shell .hic-resource-card,
.site-shell .hic-review-card,
.site-shell .hic-service-scope-highlight,
.site-shell .hic-service-hub-grid--compact .hic-seo-card,
.site-shell .concierge-card,
.site-shell .form-shell {
  background: var(--hic-card-surface);
}
.site-shell .service-scope-highlight,
.site-shell .source-feature-pills span,
.site-shell .area-pill,
.site-shell .quote-points li,
.site-shell .hic-local-testimonial {
  background: var(--hic-soft-surface);
}
.site-shell .service-card h3,
.site-shell .experience-card h3,
.site-shell .trust-card h3,
.site-shell .faq-question,
.site-shell .hic-service-scope-highlight strong,
.site-shell .hic-service-scope-highlight small { color: var(--hic-body-ink); }
.site-shell .service-card p,
.site-shell .experience-card p,
.site-shell .trust-card p,
.site-shell .faq-answer p { color: var(--hic-body-muted); }
.site-shell .hic-content-wrap .entry-content { color: var(--hic-body-ink); }
.site-shell .hic-content-wrap .entry-content h2,
.site-shell .hic-content-wrap .entry-content h3 { color: var(--hic-body-ink); }
.site-shell .hic-content-wrap .entry-content a,
.site-shell .hic-resource-cta { color: var(--hic-primary); }

/* Dark story and image sections preserve their light-on-dark typography. */
.site-shell .story.dark-section,
.site-shell .image-carousel.dark-section,
.site-shell .trust.dark-section {
  background: linear-gradient(150deg, var(--hic-dark-surface),
    color-mix(in srgb, var(--hic-dark-surface) 82%, var(--hic-primary)));
}
.site-shell .dark-section .section-title,
.site-shell .dark-section h2,
.site-shell .dark-section h3,
.site-shell .trust.dark-section .trust-card h3 { color: var(--hic-light-ink); }
.site-shell .dark-section .section-copy,
.site-shell .dark-section p,
.site-shell .trust.dark-section .trust-card p { color: color-mix(in srgb, var(--hic-light-ink) 76%, transparent); }
.site-shell .trust.dark-section .trust-card {
  background: color-mix(in srgb, var(--hic-dark-surface) 88%, var(--hic-primary));
}
.site-shell .portfolio-item img {
  filter: saturate(.78) brightness(calc(.78 * var(--hic-lighting-factor)));
}
.site-shell .portfolio-item:hover img {
  filter: saturate(1) brightness(calc(.9 * var(--hic-lighting-factor)));
}
.site-shell .experience-media img {
  filter: saturate(.72) brightness(calc(.8 * var(--hic-lighting-factor)));
}
.site-shell .experience-card:hover .experience-media img {
  filter: saturate(.95) brightness(calc(.88 * var(--hic-lighting-factor)));
}

/*
 * Inner pages, posts, article archives and blog cards. These WordPress
 * templates have their own formerly-white backgrounds, so they need to use
 * the same admin-controlled lighting rather than remaining noticeably brighter.
 */
.site-shell .hic-page-main {
  color: var(--hic-body-ink);
  background: linear-gradient(180deg,
    var(--hic-soft-surface),
    var(--hic-page-surface) 45%,
    var(--hic-footer-surface));
}
.site-shell .hic-page-hero {
  background: linear-gradient(130deg,
    var(--hic-soft-surface),
    var(--hic-header-surface) 55%,
    var(--hic-page-surface));
}
.site-shell .hic-page-content-section { background: transparent; }
.site-shell .hic-page-title,
.site-shell .hic-post-title,
.site-shell .hic-contact-business-copy > strong,
.site-shell .entry-content h1,
.site-shell .entry-content h2,
.site-shell .entry-content h3,
.site-shell .entry-content h4 { color: var(--hic-body-ink); }
.site-shell .hic-page-breadcrumb,
.site-shell .hic-page-hero-lead,
.site-shell .hic-post-excerpt,
.site-shell .entry-content,
.site-shell .hic-contact-detail { color: var(--hic-body-muted); }
.site-shell .hic-page-breadcrumb a,
.site-shell .hic-post-readmore,
.site-shell .hic-post-meta { color: var(--hic-primary); }
.site-shell .hic-page-card,
.site-shell .hic-post-card,
.site-shell .hic-page-hero-badge,
.site-shell .hic-contact-business,
.site-shell .hic-contact-logo-wrap,
.site-shell .hic-contact-service-context,
.site-shell .hic-contact-map-block,
.site-shell .hic-pagination a,
.site-shell .hic-review-export-note,
.site-shell .hic-form-review-trust,
.site-shell .hic-customer-photo-card {
  background: var(--hic-card-surface);
}
.site-shell .hic-page-hero-badge strong,
.site-shell .hic-review-proof-heading h2,
.site-shell .hic-review-proof-heading h3,
.site-shell .hic-review-identity strong { color: var(--hic-body-ink); }
.site-shell .hic-page-hero-badge span,
.site-shell .hic-review-proof-heading p,
.site-shell .hic-review-meta,
.site-shell .hic-contact-detail b { color: var(--hic-body-muted); }
.site-shell .entry-content blockquote,
.site-shell .entry-content table,
.site-shell .entry-content th,
.site-shell .entry-content input:not([type="checkbox"]):not([type="radio"]),
.site-shell .entry-content textarea,
.site-shell .entry-content select {
  background: var(--hic-soft-surface);
  color: var(--hic-body-ink);
}
.site-shell .entry-content a { color: var(--hic-primary); }
.site-shell .hic-featured-image img,
.site-shell .hic-post-card-image img {
  filter: brightness(var(--hic-lighting-factor));
}
.site-shell .hic-review-proof-section,
.site-shell .hic-review-all-section {
  background: var(--hic-soft-surface);
}

/* Final footer overrides the old hard-coded white background (which was !important). */
.site-shell .footer {
  background: linear-gradient(105deg,
      color-mix(in srgb, var(--hic-footer-surface) 97%, transparent),
      color-mix(in srgb, var(--hic-footer-surface) 92%, transparent),
      color-mix(in srgb, var(--hic-page-surface) 88%, transparent)),
    url('../images/footer-christmas-lights.webp') center 58% / cover no-repeat !important;
  color: var(--hic-body-ink) !important;
}
.site-shell .footer-panel,
.site-shell .footer-phone-card { background: color-mix(in srgb, var(--hic-card-surface) 80%, transparent); }
.site-shell .footer-brand h2,
.site-shell .footer-col h3,
.site-shell .footer-phone-card { color: var(--hic-body-ink) !important; }
.site-shell .footer-brand-copy,
.site-shell .footer-links a,
.site-shell .footer-area-grid span,
.site-shell .footer-area-grid a,
.site-shell .footer-address,
.site-shell .footer-bottom { color: var(--hic-body-muted) !important; }
.site-shell .footer-area-grid a:hover,
.site-shell .footer-area-grid a:focus-visible { color: var(--hic-primary) !important; }

@media(max-width:760px) {
  .hic-mobile-conversion-bar { background: color-mix(in srgb, var(--hic-header-surface) 96%, transparent); }
  .hic-mobile-conversion-quote { background: var(--hic-primary); }
}
