/* IN LOCO FOODS — V8.1 | CONSISTÊNCIA TIPOGRÁFICA
   Aplicado APÓS o design-system-v8.css para eliminar a mudança brusca de
   tamanho entre desktop, tablet e mobile. Mantém a largura e o layout V8.
   Hierarquia fixa: H1/hero 34px · H2/seção 30px · H3/card 24px · texto 15px.
*/
body.layout-v8 {
  --v8-heading-hero: 34px !important;
  --v8-heading-section: 30px !important;
  --v8-heading-card: 24px !important;
  --v8-body: 15px !important;
  --v8-line-height: 1.6;
}
/* Títulos com tamanho determinado pela hierarquia, não por viewport. */
body.layout-v8 :is(
 .v5-home-headline h1, .v8-catalog-hero-copy h1, .product-hero-content h1,
 .v5-about-copy h1, .v5-partner-herotext h1, .v5-contact-copy h1,
 .v5-blog-herotext h1
) {
  font-size:var(--v8-heading-hero) !important;
  line-height:1.13 !important;
  letter-spacing:-.045em !important;
}
body.layout-v8 :is(
 .v5-centered h2,.v5-metrics>h2,.v5-story-copy h2,.v5-review-copy h2,
 .v5-final-copy h2,.v5-about-end-content h2,.v5-partner-endtext h2,
 .v5-contact-rowtext h3,.v5-blog-end-copy h2,.v5-contact-end-copy h2,
 .v5-catalog-ending h2,.v5-about-purpose h2,.v5-partner-support h2,
 .v5-partner-description h2,.v5-about-navy-text h2,.v5-catalog-copy h2,
 .product-uses h2,.product-intro .section-heading h2,.v5-partner-head h2
) {
  font-size:var(--v8-heading-section) !important;
  line-height:1.15 !important;
}
body.layout-v8 :is(
 .v5-value-text h3,.v5-culture-tile h3,.v5-why-cards h3,
 .hub-library-title h2,.v5-blog-body h2
) {
  font-size:var(--v8-heading-card) !important;
  line-height:1.2 !important;
}
/* Mesma legibilidade de descrições nos principais módulos, inclusive em 390px. */
body.layout-v8 main :is(
 .v5-home-headline p,.v8-catalog-hero-copy p,.product-hero-content p,
 .v5-about-copy p,.v5-partner-herotext p,.v5-contact-copy p,
 .v5-blog-herotext p,.v5-catalog-copy p,.v5-partner-description p,
 .v5-about-navy-text p,.v5-final-copy p,.v5-about-end-content p,
 .v5-contact-rowtext p,.v5-blog-end-copy p,.v5-contact-end-copy p,
 .v5-value-text p,.v5-culture-tile p,.v5-why-cards p,
 .v5-blog-card p,.v5-metric-item p,.product-intro p,.product-uses li
) {
  font-size:var(--v8-body) !important;
  line-height:1.6 !important;
}
/* Mantém os espaçamentos e evita títulos em colunas estreitas. */
body.layout-v8 :is(.v5-home-headline h1,.v5-partner-herotext h1,
 .v5-blog-herotext h1,.v5-catalog-copy h2,.v5-about-copy h1) {
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
@media (max-width:600px) {
  body.layout-v8 .v5-home-headline h1 {max-width:100% !important;}
  body.layout-v8 .v5-partner-head h2 {max-width:100% !important;}
  body.layout-v8 .v5-catalog-copy h2 {max-width:100% !important;}
}
