
/* =========================================================
   HERO TYPOGRAPHY — SINGLE VISUAL STANDARD
   Referência: H1 do Hero de Praias.
   Composição/alinhamento permanecem específicos por página.
   ========================================================= */

:root{
    --guia-hero-title-weight:700;
    --guia-hero-title-size:clamp(42px,4.5vw,58px);
    --guia-hero-title-line:.98;
    --guia-hero-title-track:-.04em;
}

/* Todos os quatro Heroes passam a usar o mesmo peso visual. */
html body .guia-hero :is(
    .ggp-v25-hero-content h1,
    .guia-praias-hero__copy h1,
    .sp-hero-title,
    .gevento-hero__title
){
    font-size:var(--guia-hero-title-size)!important;
    font-weight:var(--guia-hero-title-weight)!important;
    line-height:var(--guia-hero-title-line)!important;
    letter-spacing:var(--guia-hero-title-track)!important;
}

/* Remove variações herdadas de sombra/contorno que alterem o peso percebido. */
html body .guia-hero :is(
    .ggp-v25-hero-content h1,
    .guia-praias-hero__copy h1,
    .sp-hero-title,
    .gevento-hero__title
){
    text-shadow:none!important;
    -webkit-text-stroke:0!important;
}

/* Mobile — mesma lógica tipográfica, apenas reduz a escala. */
@media (max-width:780px){
    html body .guia-hero :is(
        .ggp-v25-hero-content h1,
        .guia-praias-hero__copy h1,
        .sp-hero-title,
        .gevento-hero__title
    ){
        font-size:clamp(34px,9vw,46px)!important;
        font-weight:var(--guia-hero-title-weight)!important;
        line-height:var(--guia-hero-title-line)!important;
        letter-spacing:var(--guia-hero-title-track)!important;
    }
}
