*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;background:#fff;line-height:1.65}body,button,a{font:inherit}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Playfair Display",serif;line-height:1.08}h2{font-size:clamp(2.3rem,5vw,4.6rem)}button{border:0}.section{padding:clamp(80px,10vw,140px) 0}.section-shell{width:var(--shell);margin:auto}.soft{background:#f5f7f8}.eyebrow{display:block;margin-bottom:14px;color:var(--theme-secondary);font-size:.76rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 25px;border-radius:999px;font-weight:700;transition:.25s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--theme-secondary);color:#102233}.button-primary{background:var(--theme-primary);color:#fff}.button-ghost{border:1px solid rgba(255,255,255,.55);color:#fff}.button-light{background:#fff;color:var(--navy)}.text-link{display:inline-flex;gap:10px;align-items:center;color:var(--theme-primary);font-weight:700}.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}

/* =============================================================================
   CONTENÇÃO HORIZONTAL GLOBAL - VERSÃO 3.0.40
   Impede que vídeos ampliados, pseudo-elementos e decorações posicionadas fora
   das seções criem espaço branco ou barra de rolagem horizontal.
   ============================================================================= */

html {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
}

body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    overflow-x: clip;
}

main,
.site-header,
.site-footer {
    width: 100%;
    max-width: 100%;
}

.section-shell {
    max-width: calc(100% - 2rem);
}


/* =============================================================================
   CORREÇÃO DEFINITIVA DA LARGURA DA VIEWPORT - VERSÃO 3.0.41
   A largura dos elementos estruturais considera a barra vertical do navegador
   e impede que qualquer descendente aumente o scrollWidth do documento.
   ============================================================================= */

html,
body {
    position: relative;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
}

body > header,
body > main,
body > footer,
main > section {
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

body * {
    min-width: 0;
}


/* PIBH 3.0.79 - escala tipográfica mais compacta em chamadas e títulos. */
h2 { font-size: clamp(1.75rem, 3.2vw, 3rem); }
.section-heading { margin-bottom: 32px; }
.section-heading h2 { font-size: clamp(1.75rem, 3.2vw, 3rem); }
.internal-hero { min-height: 260px; padding: 112px 20px 44px; }
.internal-hero h1 { margin-bottom: 8px; font-size: clamp(2rem, 4.8vw, 3.6rem); }
.internal-hero p { font-size: .98rem; }
