.elementor-kit-21{--e-global-color-text:#083A4F;--e-global-color-primary:#E4E0DC;--e-global-color-secondary:#083A4F;--e-global-color-accent:#A58D66;--e-global-color-985375b:#407E8C;--e-global-color-e53fd4c:#CBD5D6;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Nunito";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Nunito";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Nunito";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;}.elementor-kit-21 button,.elementor-kit-21 input[type="button"],.elementor-kit-21 input[type="submit"],.elementor-kit-21 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Playfair Display", Sans-serif;font-size:16px;color:var( --e-global-color-text );}.elementor-kit-21 a{font-family:"Nunito", Sans-serif;}.elementor-kit-21 h1{color:var( --e-global-color-text );font-family:"Playfair Display", Sans-serif;font-size:4.21rem;font-weight:700;line-height:4.841px;}.elementor-kit-21 h2{color:var( --e-global-color-text );font-family:"Playfair Display", Sans-serif;font-size:48px;line-height:57.6px;}.elementor-kit-21 h3{color:var( --e-global-color-text );font-family:"Playfair Display", Sans-serif;font-size:36px;line-height:43.2px;}.elementor-kit-21 h4{color:var( --e-global-color-text );font-family:"Playfair Display", Sans-serif;font-size:24px;line-height:31.2px;}.elementor-kit-21 h5{font-family:"Poppins", Sans-serif;}.elementor-kit-21 h6{font-family:"Playfair Display", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html, body {
  overflow-x: hidden;
  max-width: 100%;
}


/* --- ESTADO INICIAL --- */
.scroll-reveal {
    opacity: 0;
    filter: blur(12px);
    transition: opacity 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                filter 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                transform 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform, opacity, filter;
}

/* Variaciones de dirección */
.from-bottom { transform: translateY(40px); }
.from-top    { transform: translateY(-40px); }
.from-left   { transform: translateX(-40px); }
.from-right  { transform: translateX(40px); }

/* --- ESTADO ACTIVO --- */
.scroll-reveal.ativo {
    opacity: 1;
    filter: blur(0px);
    transform: translate(0, 0);
}

/* Delays escalonados */
.delay-1 { transition-delay: 0.3s; }
.delay-2 { transition-delay: 0.6s; }
.delay-3 { transition-delay: 0.9s; }
.delay-4 { transition-delay: 1.2s; }
.delay-5 { transition-delay: 1.5s; }
.delay-6 { transition-delay: 1.8s; }



/* Evitar que los elementos desaparezcan mientras editas en Elementor */
.elementor-editor-active .scroll-reveal {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
}


.texto-resaltado {
    color: #407e8c;
    font-style: italic;
    font-weight: bold;
}

/* Logo - prevenir layout shift */
img.wp-image-5771 {
  width: 200px; 
  height: auto;
  aspect-ratio: 1246 / 549;
}

/* Reservar espacio mínimo para el icon-box del email */
.elementor-element-f94710e {
  min-height: 50px; /* ajusta al alto real del elemento */
}

/* Reservar espacio exacto del footer */
footer.elementor-2660 {
  min-height: 378.4px;
  contain: layout;
}

/* Si usas content-visibility */
footer.elementor-2660 {
  content-visibility: auto;
  contain-intrinsic-size: 0 378px;
}/* End custom CSS */