/**
 * Hot House — Hub pages QA (contrast, typography, layout)
 * Scoped: rich landing pages + shop/archives with unified cards
 */

/* ── Warm hearth tokens (footer-adjacent) ── */
body.hh-theme.hh-catalog-showcase,
body.hh-theme.hh-landing-page,
body.hh-theme.hh-shop-archive {
  --hh-hearth: #040f1a;
  --hh-navy: #0a1219;
  --hh-navy-hover: #141c24;
  --hh-bronze: #a88b5b;
}

/* ── Hero CTAs — readable on light hero ── */
body.hh-theme .hh-landing-hero__actions .hh-btn--navy,
body.hh-theme .hh-landing-hero__actions .hh-btn--primary {
  background: var(--hh-navy) !important;
  border-color: var(--hh-navy) !important;
  color: #fff !important;
}

body.hh-theme .hh-landing-hero__actions .hh-btn--navy::after,
body.hh-theme .hh-landing-hero__actions .hh-btn--primary::after {
  display: none !important;
}

body.hh-theme .hh-landing-hero__actions .hh-btn--navy:hover,
body.hh-theme .hh-landing-hero__actions .hh-btn--primary:hover {
  background: var(--hh-navy-hover) !important;
  border-color: var(--hh-navy-hover) !important;
  color: #fff !important;
}

body.hh-theme .hh-landing-hero__catalog .hh-link-arrow {
  color: var(--hh-navy) !important;
  border-bottom-color: rgba(168, 139, 91, 0.55);
  font-family: var(--hh-font-sans);
  font-weight: 500;
}

body.hh-theme .hh-landing-hero__catalog .hh-link-arrow:hover {
  color: var(--hh-bronze, #8a6f3e) !important;
}

/* ── Bottom CTA on dark band ── */
body.hh-theme .hh-landing-cta .hh-h2,
body.hh-theme .hh-landing-cta .hh-h3,
body.hh-theme .hh-landing-cta .hh-lead,
body.hh-theme .hh-landing-cta .hh-landing-cta__title,
body.hh-theme .hh-landing-cta .hh-landing-cta__lead {
  color: #fff !important;
  border-bottom: none;
  display: block;
  padding-bottom: 0;
  font-family: var(--hh-font-sans);
}

body.hh-theme .hh-landing-cta .hh-btn--secondary {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.85) !important;
  background: transparent !important;
}

body.hh-theme .hh-landing-cta .hh-btn--secondary:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
}

body.hh-theme .hh-landing-cta .hh-btn--whatsapp {
  color: #fff !important;
}

body.hh-theme .hh-landing__more .hh-btn--navy,
body.hh-theme .hh-landing__more .hh-btn--primary {
  background: var(--hh-navy) !important;
  border-color: var(--hh-navy) !important;
  color: #fff !important;
}

body.hh-theme .hh-landing__more .hh-btn--navy::after,
body.hh-theme .hh-landing__more .hh-btn--primary::after {
  display: none !important;
}

/* ── Footer CTA (Elementor) — gold + links on dark ── */
body.hh-theme .hh-footer-cta__btn--primary,
body.hh-theme .hh-footer-cta__btn--primary .elementor-button-text {
  color: #fff !important;
}

body.hh-theme .hh-footer-cta__link,
body.hh-theme .hh-footer-cta__link .elementor-button-text {
  color: rgba(255, 255, 255, 0.78) !important;
}

body.hh-theme .hh-footer-cta__link:hover {
  color: #e8d4b0 !important;
}

/* ── Section headings — gold underline only on major h2, not compact h3 ── */
body.hh-theme .hh-landing--catalog-first .hh-h3.hh-heat-section__title,
body.hh-theme .hh-landing--catalog-first .hh-h3.hh-product-preview__title,
body.hh-theme .hh-landing--catalog-first .hh-h3.hh-rich-section__title,
body.hh-theme .hh-pavel-faq .hh-h3.hh-heat-section__title {
  border-bottom: none;
}

body.hh-theme .hh-landing .hh-faq-section__title {
  color: var(--hh-navy, #0a1219);
}

/* ── FAQ readability ── */
body.hh-theme .hh-scope.hh-landing .hh-faq__question {
  font-family: var(--hh-font-sans);
  font-size: 1rem;
  font-weight: 600;
  color: var(--hh-ink, #101318);
}

body.hh-theme .hh-scope.hh-landing .hh-faq__answer,
body.hh-theme .hh-scope.hh-landing .hh-faq__answer p {
  color: var(--hh-graphite, #1a1d21);
  font-size: 0.92rem;
  line-height: 1.65;
}

body.hh-theme .hh-pavel-faq .hh-faq {
  margin-top: 0.5rem;
}

/* ── Rich prose — subsection h3 not hero-sized ── */
body.hh-theme .hh-landing .hh-rich-prose h3.hh-h3 {
  font-family: var(--hh-font-sans);
  font-size: 1.05rem;
  font-weight: 600;
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
  color: var(--hh-navy, #0a1219);
}

body.hh-theme .hh-landing .hh-rich-prose p {
  color: var(--hh-graphite, #1a1d21);
  font-size: 0.95rem;
  line-height: 1.65;
}

body.hh-theme .hh-landing .hh-rich-intro .hh-lead {
  color: var(--hh-graphite, #1a1d21);
}

/* ── Safety callout ── */
body.hh-theme .hh-landing .hh-callout--safety {
  background: var(--hh-sand, #f1f0ec);
  border-inline-start-color: var(--hh-ember, #d8662a);
}

body.hh-theme .hh-landing .hh-callout--safety,
body.hh-theme .hh-landing .hh-callout--safety p,
body.hh-theme .hh-landing .hh-callout--safety strong {
  color: var(--hh-ink, #101318);
}

/* ── Full-bleed hero — all catalog-first hubs ── */
body.hh-theme.hh-heating-service-hub .hh-scope.hh-landing > .hh-landing-hero,
body.hh-theme.hh-catalog-showcase .hh-scope.hh-landing.hh-landing--catalog-first > .hh-landing-hero {
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
  box-sizing: border-box;
}

/* ── About page — pavel block title not oversized ── */
body.hh-theme .hh-pavel-explain__title {
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  line-height: 1.3;
}

body.hh-theme .hh-pavel-explain__body p {
  color: var(--hh-graphite, #1a1d21);
}

/* ── Internal nav links ── */
body.hh-theme .hh-landing-internal-nav a {
  color: var(--hh-navy, #0a1219);
}

/* ── Woo loop — showcase card inside li.product (see hh-product-cards.css) ── */
body.hh-theme ul.products li.product.hh-loop-card > a.woocommerce-loop-product__link,
body.hh-theme ul.products li.product.hh-loop-card > .button {
  display: none !important;
}

/* ── Mobile — CTA stacks, readable tap targets ── */
@media (max-width: 48rem) {
  body.hh-theme .hh-landing-hero__actions,
  body.hh-theme .hh-landing-cta .hh-landing-cta__actions,
  body.hh-theme .hh-landing-cta .hh-landing-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  body.hh-theme .hh-landing-hero__actions .hh-btn,
  body.hh-theme .hh-landing-cta .hh-btn {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  body.hh-theme .hh-card-grid--products-preview {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: var(--hh-space-md) !important;
  }
}

@media (max-width: 24rem) {
  body.hh-theme .hh-card-grid--products-preview {
    grid-template-columns: 1fr !important;
  }
}
