.elementor-253 .elementor-element.elementor-element-1ecd39c:not(.elementor-motion-effects-element-type-background), .elementor-253 .elementor-element.elementor-element-1ecd39c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-253 .elementor-element.elementor-element-1ecd39c{border-style:solid;border-width:0px 0px 0px 0px;border-color:#C1C1C100;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.08);transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0em;margin-bottom:2em;padding:0em 0em 0em 0em;z-index:600;}.elementor-253 .elementor-element.elementor-element-1ecd39c, .elementor-253 .elementor-element.elementor-element-1ecd39c > .elementor-background-overlay{border-radius:0px 0px 0px 0px;}.elementor-253 .elementor-element.elementor-element-1ecd39c > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-253 .elementor-element.elementor-element-7e54ee9 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}body.elementor-page-253:not(.elementor-motion-effects-element-type-background), body.elementor-page-253 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#A38671;}@media(max-width:767px){.elementor-253 .elementor-element.elementor-element-1ecd39c{margin-top:0em;margin-bottom:2em;padding:0px 0px 0px 0px;z-index:300;}.elementor-253 .elementor-element.elementor-element-7e54ee9 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-812fc09 */*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:system-ui,-apple-system,Segoe UI,Roboto;
}


/* TOP BAR */

.topbar{
background:#2f3d67;
color:white;
font-size:14px;
}

.top-container{
max-width:1200px;
margin:auto;
display:flex;
align-items:center;
justify-content:space-between;
padding:8px 20px;
}

.top-left a,
.top-right a{
color:white;
text-decoration:none;
margin-right:12px;
}

.top-center{
opacity:.9;
}


/* HEADER */

.container-header{
max-width:1200px;
margin:auto;
display:flex;
align-items:center;
justify-content:space-between;
padding:14px 20px;
}


/* LOGO */

.logo img{
height:46px;
}


/* MENU DESKTOP */

.menu-desktop{
display:flex;
gap:28px;
}

.menu-desktop a{
text-decoration:none;
color:#2f3d67;
font-weight:500;
font-size:16px;
transition:.2s;
}

.menu-desktop a:hover{
opacity:.7;
}


/* ACTIONS */

.header-actions{
display:flex;
align-items:center;
gap:14px;
}


/* BOTON PUBLICAR */

.btn-publicar{
background:linear-gradient(135deg,#2f3d67,#4f6f91);
color:white;
padding:8px 14px;
font-size:14px;
border-radius:9px;
text-decoration:none;
font-weight:600;
white-space:nowrap;
transition:.25s;
}

.btn-publicar:hover{
transform:translateY(-1px);
box-shadow:0 4px 12px rgba(0,0,0,0.2);
}


/* HAMBURGER */

.hamburger{
width:28px;
height:20px;
display:none;
flex-direction:column;
justify-content:space-between;
cursor:pointer;
}

.hamburger span{
height:3px;
background:#2f3d67;
border-radius:3px;
transition:.3s;
}


/* FULLSCREEN MENU */

.fullscreen-menu{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;

background:#2b3769;

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

padding:40px 20px;

opacity:0;
visibility:hidden;

transform:translateY(-30px);

transition:.45s ease;

z-index:2000;
}

.fullscreen-menu.active{
opacity:1;
visibility:visible;
transform:translateY(0);
}


/* HEADER MENU */

.menu-header{
position:absolute;
top:25px;
left:0;
width:100%;
display:flex;
align-items:center;
justify-content:flex-end;
padding:0 28px;
}


/* BOTON CERRAR */

.close-menu{
font-size:36px;
cursor:pointer;
color:white;
transition:.25s;
}

.close-menu:hover{
transform:rotate(90deg) scale(1.1);
}


/* LINKS MENU */

.menu-links{
display:flex;
flex-direction:column;
align-items:center;
width:100%;
max-width:420px;
}


/* ITEMS MENU */

.menu-links a{
font-size:30px;
font-weight:500;
color:white;
text-decoration:none;
width:100%;
text-align:center;
padding:18px 0;
position:relative;
transition:.25s;
}


/* LINEAS DIVISORIAS */

.menu-links a:not(:last-child)::after{
content:"";
position:absolute;
bottom:0;
left:50%;
transform:translateX(-50%);
width:60%;
height:1px;
background:rgba(255,255,255,0.12);
}


/* HOVER LINKS */

.menu-links a:hover{
opacity:.85;
transform:translateY(-2px);
}


/* INFO EXTRA */

.menu-extra{
margin-top:50px;
display:flex;
flex-direction:column;
align-items:center;
gap:12px;
font-size:16px;
opacity:.9;
}

.menu-extra a{
color:white;
text-decoration:none;
transition:.2s;
}

.menu-extra a:hover{
opacity:.7;
}


/* BOTON TELEFONO DESTACADO */

.phone-button{
display:flex;
align-items:center;
justify-content:center;
gap:12px;

margin-top:22px;

padding:16px 24px;

background:white;

color:#2b3769;

border-radius:14px;

font-weight:700;

text-decoration:none;

font-size:18px;

width:260px;

box-shadow:0 12px 28px rgba(0,0,0,0.35);

transition:.3s;
}


/* TEXTO */

.phone-button span{
color:#2b3769;
}


/* ICONO */

.phone-button svg{
width:24px;
height:24px;
}

.phone-button svg path{
fill:#2b3769;
}


/* HOVER */

.phone-button:hover{
transform:translateY(-3px);
box-shadow:0 18px 40px rgba(0,0,0,0.45);
}

/* RESPONSIVE */

@media(max-width:980px){

.menu-desktop{
display:none;
}

.hamburger{
display:flex;
}

.top-left,
.top-right{
display:none;
}

.top-center{
margin:auto;
}

}


/* MOBILE */

@media(max-width:600px){

.menu-links a{
font-size:26px;
}

.menu-extra{
font-size:15px;
}

}


/* MOBILE SMALL */

@media(max-width:400px){

.menu-links a{
font-size:23px;
}

/* ===================== FIX DEFINITIVO MENU ===================== */

#fullscreenMenu{
position: fixed !important;
top: 0 !important;
left: 0 !important;

width: 100vw !important;
height: 100vh !important;

background: #2b3769;

/* CLAVE */
z-index: 2147483647 !important;

/* HARD RESET CONTRA ELEMENTOR */
transform: none !important;
filter: none !important;
perspective: none !important;

display: flex;
flex-direction: column;
align-items: center;
justify-content: center;

opacity: 0;
visibility: hidden;

transition: opacity .3s ease;

/* rompe cualquier stacking raro */
isolation: isolate;
}

#fullscreenMenu.active{
opacity: 1;
visibility: visible;
}

/* ===================== FIX REAL SIN ROMPER DISEÑO ===================== */

.fullscreen-menu{
z-index: 2147483647 !important;

/* evita bugs de elementor */
transform: translateY(-30px);
will-change: transform;

/* refuerzo */
isolation: isolate;
}

.fullscreen-menu.active{
transform: translateY(0);
}

/* bloquea todo lo de atrás */
body.menu-open{
overflow: hidden;
}

body.menu-open > *:not(.fullscreen-menu){
pointer-events: none;
}



}/* End custom CSS */