/* 1.8.0 - Solo paginas internas. Nunca se aplica a la portada. */
body.cafiesencia-cc-internal .cafiesencia-cc-hidden-hero {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.cafiesencia-cc-internal .cafiesencia-cc-collapsed-header {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* Mesmerize: la navegacion esta en .header-top, como hermana de #page.
   El video/header visual ocupa #page > .header-wrapper. */
body.cafiesencia-cc-internal.cafiesencia-cc-theme-mesmerize #page > .header-wrapper {
    display: none !important;
}
body.cafiesencia-cc-internal.cafiesencia-cc-theme-one-page-express #page > .header-wrapper:not(:has(nav, .navigation-bar, .main-navigation, [role="navigation"])) {
    display: none !important;
}
/* CORRECCION PRINCIPAL: la navegacion pasa a flujo NORMAL en paginas internas.
   Un header fixed/sticky tapa titulos ubicados A MEDIA pagina durante scroll;
   aumentar padding al comienzo de #page-content nunca resuelve ese caso.
   La navegacion permanece en la parte superior, conserva logo y botones,
   pero deja de flotar sobre el contenido al desplazarse. */
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow .header-top {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    min-height: 0;
}
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow .header-top .navigation-bar,
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow .header-top .navigation-wrapper,
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow .header-top > nav {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
}
/* Sin la cabecera de video no debe quedar el desplazamiento creado para
   compensar un menu fijo. Mantenemos una separacion discreta, editable. */
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow #page {
    margin-top: 0 !important;
}
body.cafiesencia-cc-internal.cafiesencia-cc-nav-flow #page-content {
    padding-top: var(--cafiesencia-cc-space, 24px) !important;
}
/* En el modo fijo voluntario se compensa la barra al abrir la pagina,
   aunque un menu flotante siempre pasara sobre contenido al hacer scroll. */
body.cafiesencia-cc-internal:not(.cafiesencia-cc-nav-flow) #page-content {
    padding-top: max(var(--cafiesencia-cc-space, 24px), var(--cafiesencia-cc-header-offset, 90px)) !important;
}
/* Enlaces a anclas: scroll con margen de seguridad para encabezados. */
html:has(body.cafiesencia-cc-internal) {
    scroll-padding-top: var(--cafiesencia-cc-header-offset, 24px);
}
body.cafiesencia-cc-internal :is(h1, h2, h3, h4, h5, h6, section[id], article[id], div[id]) {
    scroll-margin-top: var(--cafiesencia-cc-header-offset, 24px);
}
