.elementor-33 .elementor-element.elementor-element-1ecae72{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;--z-index:2;}.elementor-33 .elementor-element.elementor-element-1ecae72:not(.elementor-motion-effects-element-type-background), .elementor-33 .elementor-element.elementor-element-1ecae72 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-02754a5 );}.elementor-33 .elementor-element.elementor-element-c99499a{--display:flex;--min-height:0px;--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:0px 5px;--row-gap:0px;--column-gap:5px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-fc9768d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:none;--border-style:none;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-fc9768d.e-con{--align-self:center;}.elementor-widget-theme-site-logo .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 );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-33 .elementor-element.elementor-element-33321eb1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-33 .elementor-element.elementor-element-33321eb1.elementor-element{--align-self:flex-start;}.elementor-33 .elementor-element.elementor-element-33321eb1 img{width:80%;height:25px;object-fit:contain;object-position:center center;border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-a983356 );}.elementor-33 .elementor-element.elementor-element-da4d1ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:none;--border-style:none;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-da4d1ea.e-con{--align-self:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-33 .elementor-element.elementor-element-4e4eab1 .elementor-button{background-color:#C7C2C000;font-family:"TWK Lausanne", Sans-serif;font-size:20px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:26px;letter-spacing:0px;word-spacing:0px;border-style:none;padding:0px 0px 0px 0px;}.elementor-33 .elementor-element.elementor-element-4e4eab1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-33 .elementor-element.elementor-element-4e4eab1.elementor-element{--align-self:flex-end;}.elementor-33 .elementor-element.elementor-element-5ee167e{--display:flex;--min-height:80px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;--z-index:2;}.elementor-33 .elementor-element.elementor-element-5ee167e:not(.elementor-motion-effects-element-type-background), .elementor-33 .elementor-element.elementor-element-5ee167e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-02754a5 );}.elementor-33 .elementor-element.elementor-element-6a120d5{z-index:-9999999999999;}.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-33 .elementor-element.elementor-element-fc9768d{--width:50%;}.elementor-33 .elementor-element.elementor-element-da4d1ea{--width:50%;}}@media(max-width:1024px){.elementor-33 .elementor-element.elementor-element-c99499a{--justify-content:space-between;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-33 .elementor-element.elementor-element-c99499a.e-con{--align-self:stretch;}.elementor-33 .elementor-element.elementor-element-fc9768d{--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-33 .elementor-element.elementor-element-da4d1ea{--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-33 .elementor-element.elementor-element-4e4eab1 .elementor-button{font-size:18px;}}@media(max-width:767px){.elementor-33 .elementor-element.elementor-element-1ecae72{--width:100%;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:5px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-1ecae72.e-con{--align-self:center;}.elementor-33 .elementor-element.elementor-element-c99499a{--width:100%;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-fc9768d{--width:50%;--justify-content:space-around;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-fc9768d.e-con{--align-self:flex-start;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-33 .elementor-element.elementor-element-33321eb1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-33 .elementor-element.elementor-element-33321eb1.elementor-element{--align-self:flex-start;}.elementor-33 .elementor-element.elementor-element-33321eb1 img{width:80%;height:30px;border-width:0px 0px 0px 0px;}.elementor-33 .elementor-element.elementor-element-da4d1ea{--width:50%;--padding-top:10px;--padding-bottom:10px;--padding-left:0px;--padding-right:15px;}.elementor-33 .elementor-element.elementor-element-da4d1ea.e-con{--align-self:flex-end;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-33 .elementor-element.elementor-element-4e4eab1{width:100%;max-width:100%;}.elementor-33 .elementor-element.elementor-element-4e4eab1 .elementor-button{font-size:16px;line-height:18px;letter-spacing:0px;}.elementor-33 .elementor-element.elementor-element-5ee167e{--width:0px;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS *//* =============================================
   1. BASE: Comportamiento y transiciones
   ============================================= */
.ab-site-header {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    transform: translateY(0); 
    will-change: transform; 
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                background-color 0.4s ease,
                color 0.4s ease !important;
}

.ab-site-header.header-hidden {
    transform: translateY(-110%);
}

.ab-site-header *, 
.ab-site-header .elementor-divider-separator {
    transition: color 0.4s ease, fill 0.4s ease, border-color 0.4s ease, border-top-color 0.4s ease !important;
}

/* =============================================
   2. MODO LIGHT (Blanco - Hero Home)
   ============================================= */
.home .ab-site-header.ab-header-light .elementor-nav-menu--main .elementor-item, 
.home .ab-site-header.ab-header-light .elementor-heading-title,
.home .ab-site-header.ab-header-light .elementor-icon svg,
.home .ab-site-header.ab-header-light .elementor-menu-toggle svg,
.home .ab-site-header.ab-header-light .e-con, 
.home .ab-site-header.ab-header-light .e-child {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

.home .ab-site-header.ab-header-light .elementor-divider-separator {
    border-top-color: rgba(255, 255, 255, 0.7) !important;
}

/* =============================================
   3. MODO DARK (Negro - Scroll e Internas)
   ============================================= */
.ab-site-header.ab-header-dark .elementor-item,
.ab-site-header.ab-header-dark .elementor-heading-title,
.ab-site-header.ab-header-dark .elementor-icon svg,
.ab-site-header.ab-header-dark .elementor-menu-toggle svg,
.ab-site-header.ab-header-dark .e-con, 
.ab-site-header.ab-header-dark .e-child {
    color: #24110d !important;
    fill: #24110d !important;
    stroke: #24110d !important;
}

.ab-site-header.ab-header-dark .elementor-divider-separator {
    border-top-color: rgba(36, 17, 13, 0.7) !important;
}

/* =============================================
   4. MENÚ DESPLEGABLE MÓVIL
   ============================================= */
.home .ab-site-header .elementor-nav-menu--dropdown .elementor-item,
.ab-site-header .elementor-nav-menu--dropdown .elementor-item {
    color: #888888 !important; 
}

.home .ab-site-header .elementor-nav-menu--dropdown .elementor-item:hover,
.ab-site-header .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    color: #ff7414 !important;
}

/* =============================================
   5. LOGO: Filtros
   ============================================= */
.ab-site-header.ab-header-dark img {
    filter: brightness(0) saturate(100%) invert(7%) sepia(13%) saturate(3474%) hue-rotate(320deg) brightness(95%) contrast(96%) !important;
}

/* =============================================
   6. HOVER Y ACTIVE 
   ============================================= */
   
.ab-site-header .elementor-item:hover,
.ab-site-header .elementor-item.elementor-item-active {
    color: #ff7414 !important;
}

/* =============================================
   7. UNIFICADO: LÍNEAS DE DISEÑO Y ESTRUCTURA
   ============================================= */

/* 7.1. Base de Contenedores e Igualación de Altura */
.elementor-element-c99499a { 
    display: flex !important; 
    align-items: stretch !important; 
}

.elementor-element-fc9768d, 
.elementor-element-da4d1ea {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 100% !important;
    position: relative !important;
}

/* 7.2. La Línea Vertical */
.elementor-element-c99499a::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    background-color: #210B01;
    z-index: 100;
    transition: all 0.4s ease;
}

/* 7.3. Estructura de las Líneas Horizontales */
.elementor-element-fc9768d::after,
.elementor-element-da4d1ea::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    min-height: 1px !important;
    max-height: 1px !important;
    background-color: #210B01;
    z-index: 100;
    transition: background-color 0.4s ease;
}


/* --- MODO DESKTOP Y TABLET (Ancho > 767px) --- */
@media (min-width: 768px) {
    .elementor-element-fc9768d { 
        width: 50% !important; 
        align-items: flex-start !important;
        padding-right: 20px !important; /* Margen de seguridad para que el logo no toque la línea */
    }
    .elementor-element-da4d1ea { 
        width: 50% !important; 
        align-items: flex-end !important;
        padding-left: 20px !important; /* Margen de seguridad para el menú */
    }
    .elementor-element-c99499a::before { left: 50%; height: 85%; }
    .elementor-element-fc9768d::after { left: 0; right: 5px; }
    .elementor-element-da4d1ea::after { left: 5px; right: 0; }
}

/* --- MODO MÓVIL (Ancho < 768px) --- */
@media (max-width: 767px) {
    .elementor-element-fc9768d { 
        width: 49% !important; 
        align-items: flex-start !important;
        padding-left: 15px ;
        padding-right: 10px !important;
    }
    .elementor-element-da4d1ea { 
        width: 49% !important; 
        align-items: flex-end !important;
    }
    .elementor-element-c99499a::before { left: 50% !important; height: 70% !important; }
    .elementor-element-fc9768d::after { left: 0; right: 1px; }
    .elementor-element-da4d1ea::after { left: 1px; right: 0; }
}

/* =============================================
   8. SINCRONIZACIÓN DE COLORES
   ============================================= */
.home .ab-site-header.ab-header-light .elementor-element-c99499a::before,
.home .ab-site-header.ab-header-light .elementor-element-fc9768d::after,
.home .ab-site-header.ab-header-light .elementor-element-da4d1ea::after {
    background-color: rgba(255, 255, 255, 0.7) !important;
}

.ab-site-header.ab-header-dark .elementor-element-c99499a::before,
.ab-site-header.ab-header-dark .elementor-element-fc9768d::after,
.ab-site-header.ab-header-dark .elementor-element-da4d1ea::after {
    background-color: rgba(36, 17, 13, 0.7) !important;
}/* End custom CSS */