/*! Shared typography and grid corrections, 2026-09-25.
 * Scope: existing content roles, not form controls, captions or editorial display quotes.
 * Fresh asset filename prevents stale LiteSpeed copies. */
body.wp-theme-hype {
  --hype-layout-gap:24px;
  --hype-section-title:clamp(28px,3.2vw,40px);
}

/* Lego widgets inherit the same body scale as the surrounding page. */
body.lego main .card:not(.card--prose) > p:not(.lead),
body.lego main .proof-block__cap,
body.lego main .card--editorial .card__body > p,
body.lego main .review:not(.review--lead):not(.review--featured):not(.review--editorial) .review__q,
body.lego main .quote:not(.quote--editorial):not(.quote--portrait) .quote__text,
body.lego main .faq__a,
body.lego main .qa p,
body.lego main .hr-card__text,
body.lego main .producer > p {
  font-size:var(--fs-body);
  line-height:1.65;
}
body.lego main .faq__q,
body.lego main .hr-card__title { font-size:var(--fs-body); line-height:1.35; }
body.lego main .producer__h,
body.lego main .hr-section__heading h2,
body.lego main .section-head > h2 { font-size:var(--hype-section-title); line-height:1.12; }
body.lego main .callout--panel h4 { font-size:20px; line-height:1.3; }

/* A full-width section gets its horizontal gutter from its container once. */
body.lego main .cta-band:has(> .container) { padding-inline:0; }

/* The main PDP grid is twelve columns; equal halves use six columns each.
 * Other two/three/four-column grids share the same gutter and therefore the same tracks. */
@media(min-width:1024px) {
  body.lego main .pdp-hero { grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:var(--hype-layout-gap); }
  body.lego main .pdp-hero__gallery { grid-column:1 / span 6; min-width:0; }
  body.lego main .pdp-hero__intro,
  body.lego main .pdp-hero__details,
  body.lego main .pdp-hero__purchase { grid-column:7 / span 6; min-width:0; }
  body.lego main :is(.split,.ritual,.cards,.steps,.post-grid,.vs-grid,.hr-section__cards) { column-gap:var(--hype-layout-gap); }
  body.lego main :is(.hero,.pdp2 .section--navy .hero) { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:var(--hype-layout-gap); }
  body.lego main .reviews:not(.reviews--stacked) { max-width:none; }
  body.lego main .proof-block:not(.proof-block--card):not(.proof-block--wide) .proof-block__body { grid-template-columns:repeat(12,minmax(0,1fr)); }
  body.lego main .proof-block:not(.proof-block--card):not(.proof-block--wide) .proof-block__body > :first-child { grid-column:span 7; min-width:0; }
  body.lego main .proof-block:not(.proof-block--card):not(.proof-block--wide) .proof-block__body > :nth-child(2) { grid-column:span 5; min-width:0; }
}

/* Older landing-page styles use important declarations inside this same layer. */
@layer hype-components {
  body.wp-theme-hype main .lg-producer .lg-producer__in .lg-producer__h {
    font-size:var(--hype-section-title) !important; line-height:1.12 !important;
  }
  body.wp-theme-hype main .lg-producer .lg-producer__in .lg-producer__p {
    font-size:17px !important; line-height:1.65 !important;
  }
  body.wp-theme-hype main .lpa1.silent-premium h2,
  body.wp-theme-hype main .lpa1.silent-premium :is(.silent-founder,.silent-mechanism,.final) h2 {
    font-size:var(--hype-section-title) !important; line-height:1.12 !important;
  }
  @media(min-width:1025px) {
    body.wp-theme-hype main .lpa1.silent-premium .wrap,
    body.wp-theme-hype main .lpa1.silent-premium #offer > .lg-e-540215f,
    body.wp-theme-hype.page-id-16339 main .lg-producer > .lg-inner {
      width:100% !important; max-width:1440px !important;
      margin-inline:auto !important; padding-inline:clamp(24px,5.6%,80px) !important;
    }
    body.wp-theme-hype main .lpa1.silent-premium :is(.silent-problem-layout,.silent-mechanism-inner,.review-row),
    body.wp-theme-hype main .lpa1.silent-premium .wrap.grid,
    body.wp-theme-hype main .lpa1.silent-premium .faq .wrap,
    body.wp-theme-hype main .lpa1.silent-premium #offer .lg-e-540215f > .lg-inner {
      column-gap:24px !important;
    }
    body.wp-theme-hype main .lpa1.silent-premium .hero .grid,
    body.wp-theme-hype main .lpa1.silent-premium .solution .grid,
    body.wp-theme-hype main .lpa1.silent-premium .silent-founder .grid,
    body.wp-theme-hype main .lpa1.silent-premium .silent-ritual .grid {
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
  }
  @media(max-width:767px) {
    body.wp-theme-hype main .lg-producer .lg-producer__in .lg-producer__p { font-size:16px !important; }
  }
}

/* Broad rail fixes remain desktop-only; reading columns and forms retain their measure. */
@media(min-width:1025px) {
  body.wp-theme-hype:is(.lg-pair-story,.lg-pair-benefits,.lg-pair-ingredients) main .lg-section-hero > .lg-inner {
    width:100% !important; max-width:1440px !important;
    padding-inline:clamp(24px,5.6%,80px) !important;
  }
  body.wp-theme-hype.page-id-16349 main .lpa1 .wrap {
    width:100%; max-width:1440px; margin-inline:auto; padding-inline:clamp(24px,5.6%,80px);
  }
}
