.elementor-50 .elementor-element.elementor-element-c75d7e1{--display:flex;--min-height:84px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#FFF7F433;--border-color:#FFF7F433;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;--z-index:999;}.elementor-50 .elementor-element.elementor-element-c75d7e1:not(.elementor-motion-effects-element-type-background), .elementor-50 .elementor-element.elementor-element-c75d7e1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#06113052;}.elementor-50 .elementor-element.elementor-element-7c6ce5d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-50 .elementor-element.elementor-element-7c6ce5d.e-con{--align-self:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-50 .elementor-element.elementor-element-ffa753b.elementor-element{--align-self:flex-start;}.elementor-50 .elementor-element.elementor-element-ffa753b{text-align:start;}.elementor-50 .elementor-element.elementor-element-ffa753b img{width:130px;}.elementor-50 .elementor-element.elementor-element-fce6d12.elementor-element{--align-self:flex-start;}.elementor-50 .elementor-element.elementor-element-fce6d12{text-align:start;}.elementor-50 .elementor-element.elementor-element-fce6d12 img{width:115px;}.elementor-50 .elementor-element.elementor-element-909f03c{--display:flex;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-50 .elementor-element.elementor-element-909f03c.e-con{--align-self:center;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-menu-toggle{margin:0 auto;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu .elementor-item{font-family:"Nunito Sans", Sans-serif;font-size:10px;font-weight:800;text-transform:uppercase;line-height:1em;letter-spacing:0.12em;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main .elementor-item{color:#FFF7F4;fill:#FFF7F4;padding-left:13px;padding-right:13px;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a, .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-menu-toggle{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown{background-color:#FFF7F4;border-style:solid;border-width:1px 1px 1px 1px;border-color:#D3BFBC;border-radius:0px 0px 0px 0px;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a:hover,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a:focus,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-menu-toggle:hover,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a:hover,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a:focus,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a.highlighted{background-color:#F7E7E3;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a.elementor-item-active{background-color:#FFFFFF00;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown .elementor-item, .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Nunito Sans", Sans-serif;font-size:12px;font-weight:500;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:0px;border-top-right-radius:0px;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--dropdown a{padding-left:12px;padding-right:12px;padding-top:10px;padding-bottom:10px;}.elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:0px !important;}.elementor-50 .elementor-element.elementor-element-6568c10 div.elementor-menu-toggle{color:#FFF7F4;}.elementor-50 .elementor-element.elementor-element-6568c10 div.elementor-menu-toggle svg{fill:#FFF7F4;}.elementor-50 .elementor-element.elementor-element-c07f97a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-50 .elementor-element.elementor-element-c07f97a.e-con{--align-self:center;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-50 .elementor-element.elementor-element-ffbfb88 .elementor-button{background-color:#FFF7F4;font-family:"Nunito Sans", Sans-serif;font-size:14px;font-weight:500;line-height:1.4em;fill:#061130;color:#061130;border-radius:3px 3px 3px 3px;padding:8px 16px 8px 16px;}.elementor-50 .elementor-element.elementor-element-ffbfb88.elementor-element{--align-self:center;}.elementor-50 .elementor-element.elementor-element-ffbfb88 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-50 .elementor-element.elementor-element-ffbfb88 .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-50 .elementor-element.elementor-element-87a7ac2{width:auto;max-width:auto;}.elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-element{--align-self:center;}.elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-view-stacked .elementor-icon{background-color:#FFF7F4;}.elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-view-framed .elementor-icon, .elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-view-default .elementor-icon{color:#FFF7F4;border-color:#FFF7F4;}.elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-view-framed .elementor-icon, .elementor-50 .elementor-element.elementor-element-87a7ac2.elementor-view-default .elementor-icon svg{fill:#FFF7F4;}.elementor-50 .elementor-element.elementor-element-87a7ac2 .elementor-icon{font-size:16px;}.elementor-50 .elementor-element.elementor-element-87a7ac2 .elementor-icon svg{height:16px;}.elementor-50 .elementor-element.elementor-element-3927e77 .elementor-icon-wrapper{text-align:center;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-50 .elementor-element.elementor-element-c75d7e1{--content-width:1440px;}}@media(max-width:1366px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-50 .elementor-element.elementor-element-3927e77 .elementor-icon{font-size:16px;}.elementor-50 .elementor-element.elementor-element-3927e77 .elementor-icon svg{height:16px;}}@media(max-width:767px){.elementor-50 .elementor-element.elementor-element-c75d7e1{--min-height:70px;--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-50 .elementor-element.elementor-element-ffa753b img{width:90px;}.elementor-50 .elementor-element.elementor-element-fce6d12 img{width:85px;}.elementor-50 .elementor-element.elementor-element-909f03c.e-con{--order:99999 /* order end hack */;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-50 .elementor-element.elementor-element-c07f97a{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}}/* Start custom CSS for nav-menu, class: .elementor-element-6568c10 *//* ==========================================
   GALO WINES — SUBMENÚS DESKTOP
   Requiere la columna del menú con:
   Align self / Alinearse: Stretch / Estirar
   ========================================== */

@media (min-width: 1025px) {

    /* El widget ocupa la altura de su columna */
    .elementor-50 .elementor-element.elementor-element-6568c10 {
        flex-grow: 1;
    }

    /* La navegación ocupa la altura del widget */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main {
        flex-grow: 1;
        align-items: stretch;
    }

    /* Lista y elementos principales a toda altura */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    > ul.elementor-nav-menu {
        display: flex;
        align-items: stretch;
    }

    /* Enlaces centrados, sin imponer alturas */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    > ul.elementor-nav-menu > li {
        position: relative;
        display: flex;
        align-items: center;
    }


    /* ==========================================
       CONTENEDOR DE LOS SUBMENÚS
       ========================================== */

    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    > ul.elementor-nav-menu > li > ul.sub-menu {
        box-sizing: border-box;

        width: 252px !important;
        min-width: 252px;
        padding: 10px !important;

        background-color: #fff7f4 !important;
        border-radius: 0 !important;
        box-shadow: 0 16px 35px #0611302e !important;

        left: -18px !important;
        top: calc(100% - 1px) !important;
        margin-top: 0 !important;
    }


    /* ==========================================
       ENLACES DE SUBMENÚS
       ========================================== */

    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    .sub-menu a.elementor-sub-item {
        color: #061130 !important;
        opacity: 1 !important;

        transition:
            background-color .15s ease,
            color .15s ease !important;
    }

    /* Estado activo sin fondo destacado */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    .sub-menu a.elementor-sub-item.elementor-item-active {
        background-color: transparent !important;
        color: #061130 !important;
    }

    /* Hover, también sobre elementos activos */
    @media (hover: hover) and (pointer: fine) {
        .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
        .sub-menu a.elementor-sub-item:hover {
            background-color: #f7e7e3 !important;
            color: #061130 !important;
        }
    }


    /* ==========================================
       SUBMENÚ SUCURSALES
       ========================================== */

    /* Títulos de elementos con descripción */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    .sub-menu li.galo-menu-con-descripcion > a {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0;

        font-family: "Nunito Sans", Arial, sans-serif;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.4;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    /* Descripciones de las sucursales */
    .elementor-50 .elementor-element.elementor-element-6568c10 .elementor-nav-menu--main
    .galo-menu-descripcion {
        display: block;
        margin-top: 4px;

        font-family: "Nunito Sans", Arial, sans-serif;
        font-size: 11px;
        font-weight: 400;
        line-height: 1.4;
        letter-spacing: 0;
        text-transform: none;

        color: #575e6c;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-909f03c */@media (max-width: 1024px) {
    .elementor-50 .elementor-element.elementor-element-909f03c {
        display: none;
    }
}

.elementor-50 .elementor-element.elementor-element-909f03c {
   align-self: stretch !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ffbfb88 */.elementor-50 .elementor-element.elementor-element-ffbfb88 .elementor-button {
    height: 36px;
}

.elementor-50 .elementor-element.elementor-element-ffbfb88 svg {
    width: 16px;
    height: 16px;
}

@media (max-width: 767px) {
    .elementor-50 .elementor-element.elementor-element-ffbfb88 {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-3927e77 */@media (min-width: 1025px) {
    .elementor-50 .elementor-element.elementor-element-3927e77 {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c75d7e1 *//* ==========================================
   HEADER GLOBAL — GALO WINES
   ========================================== */

.elementor-50 .elementor-element.elementor-element-c75d7e1 .col-header {
    width: auto;
}

.galo-header {
    /* Colores del header sólido */
    --header-fondo: #fff7f4;
    --header-color: #061130;
    --header-borde: #d3bfbc;
    --header-sombra: 0 3px 16px #06113012;

    /* Botón de reservas */
    --boton-fondo: #061130;
    --boton-color: #fff7f4;
    --boton-hover: #061130e6;

    /* Iconos de usuario y carrito */
    --icono-hover-fondo: #f7e7e3;

    /* Transición general */
    --transicion-header: .25s ease;

    background-color: var(--header-fondo) !important;
    color: var(--header-color) !important;
    border-bottom: 1px solid var(--header-borde) !important;
    box-shadow: var(--header-sombra) !important;
    z-index: 100;

    transition:
        background-color var(--transicion-header),
        color var(--transicion-header),
        border-color var(--transicion-header),
        box-shadow var(--transicion-header);
}


/* ==========================================
   HEADER TRANSPARENTE
   Solo en páginas configuradas mediante el snippet.
   Al activarse el sticky, vuelve al estado sólido.
   ========================================== */

body.galo-header-transparente
.galo-header:not(.elementor-sticky--effects) {
    --header-fondo: rgba(6, 17, 48, .32);
    --header-color: #fff7f4;
    --header-borde: rgba(255, 247, 244, .20);
    --header-sombra: none;

    --boton-fondo: #fff7f4;
    --boton-color: #061130;
    --boton-hover: #f7e7e3;

    --icono-hover-fondo: #fff7f42e;
}

/* Mezcla de colores utilizada por Lovable */
@supports (color: color-mix(in oklab, red, red)) {
    body.galo-header-transparente
    .galo-header:not(.elementor-sticky--effects) {
        --header-fondo: color-mix(
            in oklab,
            #061130 32%,
            transparent
        );

        --header-borde: color-mix(
            in oklab,
            #fff7f4 20%,
            transparent
        );
    }
}


/* ==========================================
   MENÚ DE NAVEGACIÓN
   ========================================== */

.galo-header .elementor-nav-menu--main .elementor-item {
    color: var(--header-color) !important;
    opacity: 1;

    transition:
        color var(--transicion-header),
        opacity .15s ease;
}

/* Hover y página activa */
.galo-header .elementor-nav-menu--main .elementor-item:hover,
.galo-header .elementor-nav-menu--main .elementor-item.elementor-item-active,
.galo-header .elementor-nav-menu--main .elementor-item[aria-current="page"] {
    opacity: .55;
}

/* Flechas de los submenús */
.galo-header .sub-arrow {
    color: inherit !important;
}

.galo-header .sub-arrow svg {
    fill: currentColor !important;
    transition: fill var(--transicion-header);
}

/* ==========================================
   ICONOS DE USUARIO Y CARRITO
   ========================================== */

/* Apariencia y dimensiones compartidas */
.galo-header :is(
    .elementor-widget-icon .elementor-icon,
    .galo-cart-trigger
) {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;
    padding: 0;

    background-color: transparent !important;
    color: var(--header-color) !important;

    transition:
        background-color .15s ease,
        color var(--transicion-header);
}

/* Radio del botón de usuario */
.galo-header .elementor-widget-icon .elementor-icon {
    border-radius: 3px;
}

/* SVG centrados y sin espacio inferior */
.galo-header :is(
    .elementor-widget-icon .elementor-icon,
    .galo-cart-trigger
) svg {
    display: block;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: inherit;
}

/* Hover para dispositivos con puntero */
@media (hover: hover) and (pointer: fine) {
    .galo-header :is(
        .elementor-widget-icon .elementor-icon,
        .galo-cart-trigger
    ):hover {
        background-color: var(--icono-hover-fondo) !important;
    }
}


/* ==========================================
   BOTÓN RESERVAR MESA
   ========================================== */

.galo-header .elementor-button {
    background-color: var(--boton-fondo) !important;
    color: var(--boton-color) !important;

    transition:
        background-color var(--transicion-header),
        color var(--transicion-header);
}

.galo-header :is(
    .elementor-button-text,
    .elementor-button-icon
) {
    color: inherit !important;
}

@media (hover: hover) and (pointer: fine) {
    .galo-header .elementor-button:hover {
        background-color: var(--boton-hover) !important;
        color: var(--boton-color) !important;
    }
}


/* ==========================================
   MENÚ HAMBURGUESA
   ========================================== */

.galo-header .elementor-menu-toggle {
    color: var(--header-color) !important;
    background-color: transparent !important;

    transition: color var(--transicion-header);
}


/* ==========================================
   CAMBIO DE LOGOS
   Ambos logos ocupan la misma posición.
   La variante activa se controla con opacity.
   ========================================== */

.galo-logos {
    position: relative;
}

.galo-logos :is(
    .logo-header-claro,
    .logo-header-azul
) {
    display: block !important;
    transition: opacity var(--transicion-header);
}

/* Estado sólido: logo azul */
.galo-logos .logo-header-azul {
    position: relative;
    opacity: 1;
    pointer-events: auto;
}

.galo-logos .logo-header-claro {
    position: absolute !important;
    inset: 0;
    opacity: 0;
    pointer-events: none;
}

/* Estado transparente: logo claro */
body.galo-header-transparente
.galo-header:not(.elementor-sticky--effects)
.logo-header-claro {
    opacity: 1;
    pointer-events: auto;
}

body.galo-header-transparente
.galo-header:not(.elementor-sticky--effects)
.logo-header-azul {
    opacity: 0;
    pointer-events: none;
}/* End custom CSS */