/* ============================================================================
   En La Nube – Site Fixes
   Correcciones globales de UI. No depende de estilos del tema.
   ========================================================================= */

/* Teléfonos envueltos por JS: que hereden la tipografía del contexto
   y no salgan con el azul/subrayado estándar del navegador. */
a.elnb-phone-wrapped,
a.elnb-phone-wrapped:visited {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}
a.elnb-phone-wrapped:hover,
a.elnb-phone-wrapped:focus {
    text-decoration: underline;
}

/* Botón flotante de "reabrir cookies" (plugin cookie-consent-es):
   trae un box-shadow azul. Lo neutralizamos a negro. */
.cces-reopen {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}
.cces-reopen:hover,
.cces-reopen:focus {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45) !important;
}

/* -----------------------------------------------------------------------------
   Bio del autor al final del blog (plantilla Single Post id 65454)
   ----------------------------------------------------------------------------*/
p.elnb-blog-bio {
    margin: 0;
}

/* -----------------------------------------------------------------------------
   Share buttons (Elementor Pro): círculos limpios FB + WA, alineados con label
   ----------------------------------------------------------------------------*/
.elementor-widget-share-buttons .elementor-share-btn--facebook,
.elementor-widget-share-buttons .elementor-share-btn--whatsapp,
.elementor-widget-share-buttons .elementor-share-btn {
    transition: transform .15s ease;
}
.elementor-widget-share-buttons .elementor-share-btn:hover {
    transform: translateY(-2px);
}
.elementor-widget-share-buttons .elementor-grid {
    align-items: center !important;
}

/* -----------------------------------------------------------------------------
   Tarea #5 — Header mobile: logo alineado izq., hamburguesa alineado der.
   Se apunta a los IDs concretos del template Header Main (id 18):
     · sección principal nav: .elementor-element-2d977d9e
     · columna logo:          .elementor-element-42ed8f16
     · columna menú:          .elementor-element-6e258145
   ----------------------------------------------------------------------------*/
@media (max-width: 767px) {
    /* 1) Cap del tamaño del logo */
    .elementor-location-header .elementor-widget-image img {
        max-width: 140px !important;
        height: auto !important;
        width: auto !important;
    }

    /* 2) La sección de nav se mantiene en fila (no stackea) */
    .elementor-location-header .elementor-element-2d977d9e > .elementor-container {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    /* 3) Columna logo: ancho por contenido, nunca ocupa la fila entera */
    .elementor-location-header .elementor-element-42ed8f16 {
        width: auto !important;
        flex: 0 0 auto !important;
        max-width: 60% !important;
    }

    /* 4) Columna menú: ocupa el resto, contenido a la derecha */
    .elementor-location-header .elementor-element-6e258145 {
        width: auto !important;
        flex: 1 1 auto !important;
        text-align: right !important;
    }
    .elementor-location-header .elementor-element-6e258145 .elementor-widget-wrap,
    .elementor-location-header .elementor-element-6e258145 .elementor-widget-container {
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
    }
    .elementor-location-header .elementor-element-6e258145 .jeg-elementor-kit.jkit-nav-menu {
        justify-content: flex-end !important;
        display: flex !important;
        width: 100% !important;
    }

    /* 5) z-index: el hamburguesa y el drawer nativo de JEG por encima del resto.
          No alteramos position/top/left del drawer: JEG usa un slide-in
          (position:fixed; left:-110% → left:0) que ya funciona. */
    .elementor-location-header .jkit-hamburger-menu {
        position: relative;
        z-index: 10 !important;
    }
    .elementor-location-header .jkit-menu-wrapper {
        z-index: 99999 !important;
    }

    /* 6) Logo dentro del drawer: el widget fuerza height:40px + object-fit:cover
          que recorta la imagen arriba y abajo. Lo liberamos para que se vea
          completo, manteniendo proporción. */
    .elementor-location-header .jkit-nav-identity-panel .jkit-nav-site-title .jkit-nav-logo,
    .elementor-location-header .jkit-nav-identity-panel .jkit-nav-site-title .jkit-nav-logo img {
        height: auto !important;
        max-height: 48px !important;
        width: auto !important;
        max-width: 200px !important;
        object-fit: contain !important;
    }
    .elementor-location-header .jkit-nav-identity-panel {
        padding: 14px 12px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }
    .elementor-location-header .jkit-nav-identity-panel .jkit-nav-site-title {
        margin: 0 auto 0 0 !important;
        padding: 0 !important;
        text-align: left !important;
        flex: 0 1 auto !important;
    }
    .elementor-location-header .jkit-nav-identity-panel .jkit-close-menu {
        float: none !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
    }

    /* 7) Items del menú dentro del drawer alineados a la izquierda */
    .elementor-location-header .jkit-menu-wrapper .jkit-menu,
    .elementor-location-header .jkit-menu-wrapper .jkit-menu .sub-menu {
        text-align: left !important;
        justify-content: flex-start !important;
    }
    .elementor-location-header .jkit-menu-wrapper .jkit-menu li {
        text-align: left !important;
        justify-content: flex-start !important;
    }
    .elementor-location-header .jkit-menu-wrapper .jkit-menu li > a {
        text-align: left !important;
        justify-content: flex-start !important;
        padding-left: 16px !important;
    }
    .elementor-location-header .jkit-menu-wrapper .jkit-menu .sub-menu li > a {
        padding-left: 28px !important;
    }
}

/* -----------------------------------------------------------------------------
   Tarea #4 — Banner hero en mobile: quitar imagen, color sólido, contenido centrado
   Sólo afecta a la PRIMERA sección top del contenido (el hero) en mobile.
   ----------------------------------------------------------------------------*/
@media (max-width: 767px) {
    /* Color base para tratamientos */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
        background-image: none !important;
        background-color: #E5E9EC !important;
    }

    /* Color base para Contacto y Nosotros */
    .elnb-hero-contact [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-contact [data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
    .elnb-hero-about   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-about   [data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
        background-image: none !important;
        background-color: #CDCCD0 !important;
    }

    /* Color base para Home */
    .elnb-page-home [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-page-home [data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
        background-image: none !important;
        background-color: #BFC2CA !important;
    }

    /* Overlays de fondo también fuera en mobile */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-background-overlay,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-background-overlay,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-background-overlay,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-background-overlay {
        display: none !important;
    }

    /* Centrado del contenido del banner en mobile */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
    .elnb-page-home      [data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
        text-align: center !important;
    }

    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget {
        text-align: center !important;
    }

    /* Columnas del banner: que apilen y centren su contenido en mobile */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-column,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-column,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-column,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-column {
        text-align: center !important;
    }

    /* Igualar padding horizontal del column del hero en mobile.
       Algunas columnas tienen padding asimétrico (p.ej. left:10/right:40)
       que descentra ópticamente el contenido aunque tenga text-align:center. */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-container > .elementor-column > .elementor-element-populated,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-container > .elementor-column > .elementor-element-populated,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-container > .elementor-column > .elementor-element-populated,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child > .elementor-container > .elementor-column > .elementor-element-populated {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-wrap,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-wrap,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-wrap,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-wrap {
        align-items: center !important;
        justify-content: center !important;
    }

    /* Botones e iconos: centrarlos dentro del widget */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-button .elementor-button-wrapper,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-button .elementor-button-wrapper,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-button .elementor-button-wrapper,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-button .elementor-button-wrapper,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-icon-list .elementor-icon-list-items,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-icon-list .elementor-icon-list-items,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-icon-list .elementor-icon-list-items,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-icon-list .elementor-icon-list-items {
        display: flex !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
    }

    /* Heading / textos: dar espacio y color legible sobre el color claro */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title {
        color: #1A1A1A !important;
    }

    /* Texto debajo del H1 (text-editor, párrafos, headings secundarios):
       el editor de Elementor suele aplicar text-align directo sobre el
       elemento — forzamos center en mobile para alinear con el H1. */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-container,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-container,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-container,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-container,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor p,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor p,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor p,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-text-editor p,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child p,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child p,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child p,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child p,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h1,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h1,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h1,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h1,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h2,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h2,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h2,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h2,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h3,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h3,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h3,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h3,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h4,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h4,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h4,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child h4,
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-heading-title {
        text-align: center !important;
    }

    /* Heading widget: Elementor usa la clase elementor-align-{left,center,right}
       para alinear; forzamos a center en mobile dentro del hero. */
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-heading,
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-heading,
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-heading,
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child .elementor-widget-heading {
        text-align: center !important;
    }
    .elnb-hero-treatment [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child [class*="elementor-align-"],
    .elnb-hero-contact   [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child [class*="elementor-align-"],
    .elnb-hero-about     [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child [class*="elementor-align-"],
    .elnb-page-home      [data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-child [class*="elementor-align-"] {
        text-align: center !important;
    }
}
