/* --- Esconde tudo que o Google injeta e pode ocupar espaço --- */
.goog-te-banner-frame,
/* barra amarela no topo */
.goog-te-gadget-icon,
/* ícone do gadget */
.goog-logo-link,
/* link "Google Translate" */
.skiptranslate,
/* wrapper que injeta o iframe */
.skiptranslate iframe {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    visibility: hidden !important;
}

/* Evita que o body fique deslocado quando o Google tenta empurrar a página */
body {
    top: 0 !important;
}

/* Opcional: evita “flicker” de fontes quando traduz */
html {
    transition: none !important;
}

.lang-select ul {
    max-height: initial !important;
    overflow: auto !important;
    /* padding: 0 !important; */
}

/* .lang-select__menu {
    list-style: none;
    margin: 0;
    padding: 0;
} */

/* .lang-select__menu li+li {
    margin-top: 6px;
} */

/* .lang-select__menu a {
    display: flex !important;
    align-items: center;
    gap: 8px;
    text-decoration: none;
} */

/* .flag {
    width: 23px !important;
    height: 16px;
    display: inline-block;
    border-radius: 2px;
} */


.topo nav>ul>li>a {
    font-size: 17px !important;
}

/* @media (max-width: 575.98px) {

    .lang-select ul li a {
        padding: 0 !important;
    }

    .lang-select__menu span {
        display: none !important;
    }

    .flag {
        height: 16px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto !important;
        margin-top: 5px !important;
    }

}
*/
@media (min-width: 1200px) {
    .topo nav>ul>li>a {
        padding: 0 7px !important;
    }
}

.item-evento.no-link::before,
.item-evento.no-link::after {
    display: none !important;
    content: none !important;
}

.active-2 {
    color: #e84548 !important;
}

#speaker.padrao-bloco {
    padding: 20px 0 !important;
}

.bloco-chamada-speakers .padrao-img {
    display: flex !important;
    align-items: flex-end !important;
    margin-top: 0 !important;
    bottom: -20px !important;
}

.align-items-xl-start {
    align-items: end !important;
}


/* ===== ESCOPADO AO BANNER HOME ===== */
.padrao-banner.is-fixed-banner {
    position: relative;
}

/* Garante que o fundo (picture) continue no fluxo normal do banner */
/* .padrao-banner.is-fixed-banner picture { position: static !important; } */
.padrao-banner.is-fixed-banner picture img {
    width: 100%;
    height: auto;
    /* não mexe na altura do banner */
    object-fit: cover;
    /* ok se sua imagem permitir */
    display: block;
}

/* ===== CAMADA DE CONTEÚDO SOBREPOSTA ===== */
.padrao-banner.is-fixed-banner .custom-container {
    position: absolute;
    /* sobrepõe SEM alterar o banner */
    inset: 0;
    /* ocupa toda a área do banner */
    z-index: 2;

    /* Layout estável: CTA sempre na última linha */
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    gap: 10px;
    padding: 24px;
    box-sizing: border-box;
    margin-top: 140px;
}

/* ----- Título / Subtítulo / Texto: não alteramos font-size nem line-height ----- */
.padrao-banner.is-fixed-banner .padrao-titulo {
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* até 2 linhas no título */
}

.padrao-banner.is-fixed-banner .padrao-banner__subtitulo {
    margin: 0;
    white-space: nowrap;
    /* 1 linha */
    overflow: hidden;
    text-overflow: ellipsis;
}

/* O slot de texto fica na linha "elástica" (1fr) e NUNCA cresce além dela */
.padrao-banner.is-fixed-banner .slot-text {
    overflow: hidden;
}

.padrao-banner.is-fixed-banner .padrao-banner__texto {
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* ajuste: 2–3 linhas conforme seu layout */
}

/* ----- CTA SEMPRE NO RODAPÉ DO CONTEÚDO ----- */
.padrao-banner.is-fixed-banner .slot-cta {
    align-self: end;
    /* última linha da grid */
    padding-bottom: 297px;
}

.padrao-banner .padrao-link {
    margin-top: 0 !important;
}

.padrao-banner.is-fixed-banner .padrao-link.seta-rosa {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ===== RESPONSIVO (só neste banner) ===== */
@media (max-width: 991px) {

    .padrao-banner.is-fixed-banner .custom-container {
        padding: 20px 16px;
        gap: 8px;
        margin-top: 200px !important;
    }

    .padrao-banner.is-fixed-banner .padrao-banner__subtitulo {
        white-space: initial !important;
        display: none !important;
    }

    .padrao-banner.is-fixed-banner .slot-cta {
        align-self: end;
        /* última linha da grid */
        padding-bottom: 60px !important;
    }

    /* se quiser mais linhas de texto no mobile */
    .padrao-banner.is-fixed-banner .padrao-banner__texto {
        -webkit-line-clamp: 3;
    }
}

.padrao-banner picture img[gs-parallax],
.padrao-banner picture video[gs-parallax],
.padrao-banner__video img[gs-parallax],
.padrao-banner__video video[gs-parallax] {
    height: 130%;
}