/* Escala tipográfica única do tema. Carregada após os estilos das páginas.
   As exceções abaixo representam funções de texto, nunca páginas diferentes.
   Números gráficos, símbolos e texto dentro do SVG preservam sua geometria. */
:root{
 --mhc-type-family:Montserrat,Arial,sans-serif;
 --mhc-type-h1:37px;
 --mhc-type-h2:30px;
 --mhc-type-h3:18px;
 --mhc-type-body:16px;
 --mhc-type-ui:14px;
 --mhc-type-note:13px;
 --mhc-type-label:12px;
 --mhc-leading-title:1.2;
 --mhc-leading-subtitle:1.35;
 --mhc-leading-body:1.75;
}
body.mhc-theme-v42{font-family:var(--mhc-type-family);font-size:var(--mhc-type-body)}
body.mhc-theme-v42 main h1{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-h1)!important;
 line-height:var(--mhc-leading-title)!important;
 font-weight:600!important;
 letter-spacing:-.03em!important;
}
body.mhc-theme-v42 main h2,
body.mhc-theme-v42 main .qa-panel-content h3{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-h2)!important;
 line-height:var(--mhc-leading-title)!important;
 font-weight:600!important;
 letter-spacing:-.025em!important;
}
body.mhc-theme-v42 main h3,
body.mhc-theme-v42 main h4,
body.mhc-theme-v42 main h5,
body.mhc-theme-v42 main h6,
body.mhc-theme-v42 main .hero-item b,
body.mhc-theme-v42 main .about-pillars-v2-cell span{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-h3)!important;
 line-height:var(--mhc-leading-subtitle)!important;
 font-weight:600!important;
 letter-spacing:-.015em!important;
}
body.mhc-theme-v42 main :is(h1,h2,h3,h4,h5,h6) :is(em,strong,b){
 font-size:inherit!important;
 line-height:inherit!important;
 font-weight:inherit!important;
}
body.mhc-theme-v42 main p,
body.mhc-theme-v42 main li,
body.mhc-theme-v42 main .qa-result,
body.mhc-theme-v42 main .result-row,
body.mhc-theme-v42 main .mhc-cycle47-legend-item strong,
body.mhc-theme-v42 main .hero-item div>span,
body.mhc-theme-v42 main .co2-copy h2{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-body)!important;
 line-height:var(--mhc-leading-body)!important;
 font-weight:400!important;
 letter-spacing:0!important;
}
body.mhc-theme-v42 main :is(p,li) :is(strong,b){
 font-size:inherit!important;
 line-height:inherit!important;
 font-weight:600!important;
}
body.mhc-theme-v42 main :is(p,li) em{font-size:inherit!important;line-height:inherit!important}
/* Navegação e chamadas para ação. */
body.mhc-theme-v42 .main-nav,
body.mhc-theme-v42 .main-nav>a,
body.mhc-theme-v42 .nav-cta,
body.mhc-theme-v42 .footer-nav,
body.mhc-theme-v42 main .primary-btn,
body.mhc-theme-v42 main .about-split-v2-link,
body.mhc-theme-v42 main .about-pillars-v2-cta,
body.mhc-theme-v42 main .qf-home-link{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-ui)!important;
 line-height:1.5!important;
 font-weight:600!important;
}
/* Etiquetas de seção: mesma escala em todas as páginas. */
body.mhc-theme-v42 main .eyebrow,
body.mhc-theme-v42 main .qa-kicker,
body.mhc-theme-v42 main .about-portfolio-v2-materials-label{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-label)!important;
 line-height:1.5!important;
 font-weight:600!important;
}
/* Fontes de referência, legendas e informações de apoio. */
body.mhc-theme-v42 main .co2-copy>p,
body.mhc-theme-v42 main .qf-reference,
body.mhc-theme-v42 main .stat small,
body.mhc-theme-v42 main .about-stat span,
body.mhc-theme-v42 main .about-history-v2-badge span,
body.mhc-theme-v42 main .qa-top-note,
body.mhc-theme-v42 main .qa-side-note,
body.mhc-theme-v42 main .qa-bottom-note,
body.mhc-theme-v42 main .qa-bottom-note :is(b,span),
body.mhc-theme-v42 .footer-bottom{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-note)!important;
 line-height:1.5!important;
}
body.mhc-theme-v42 .footer-brand p,
body.mhc-theme-v42 .footer-contact p,
body.mhc-theme-v42 .footer-contact strong{
 font-family:var(--mhc-type-family)!important;
 font-size:var(--mhc-type-ui)!important;
 line-height:var(--mhc-leading-body)!important;
}
/* Permite a quebra natural do texto com a nova escala. */
body.mhc-theme-v42 main :is(h1,h2,h3,h4,h5,h6,p,li){overflow-wrap:break-word}
body.mhc-theme-v42 main .qa-bottom-note span{white-space:normal}
/* O painel da Home usa posicionamento absoluto: reserva espaço para o texto padrão. */
@media(min-width:1101px){
 body.mhc-theme-v42 main .quality-approved{min-height:920px}
}
@media(max-width:760px){
 :root{
  --mhc-type-h1:27px;
  --mhc-type-h2:26px;
  --mhc-type-h3:17px;
  --mhc-type-body:15px;
  --mhc-type-ui:14px;
  --mhc-type-note:12px;
  --mhc-type-label:11px;
 }
}
