.elementor-kit-8{--e-global-color-primary:#000000;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#000000;--e-global-color-accent:#000000;--e-global-color-e73ad3a:#FFFFFF;--e-global-color-f531278:#FFFFFF;--e-global-color-0c5aa2e:#1A0000;--e-global-color-68e3f03:#BCB9B9;--e-global-typography-primary-font-family:"futura-pt";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"futura-pt";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"futura-pt";--e-global-typography-accent-font-weight:500;font-family:"futura-pt", Sans-serif;font-size:21px;line-height:24px;letter-spacing:0.5px;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 h1{font-size:48px;font-weight:500;text-transform:uppercase;letter-spacing:-1.2px;}.elementor-kit-8 h2{font-size:40px;font-weight:400;text-transform:uppercase;letter-spacing:-1px;}.elementor-kit-8 h3{font-size:36px;font-weight:500;text-transform:uppercase;letter-spacing:-0.8px;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{color:var( --e-global-color-text );border-radius:0px 0px 0px 0px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8 h1{font-size:40px;}.elementor-kit-8 h2{font-size:34px;}.elementor-kit-8 h3{font-size:24px;letter-spacing:-0.5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{font-size:18px;line-height:21px;}.elementor-kit-8 h1{font-size:30px;letter-spacing:-0.5px;}.elementor-kit-8 h2{font-size:26px;letter-spacing:-0.3px;}.elementor-kit-8 h3{font-size:21px;letter-spacing:-0.1px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --background-white:#ffffff; --black:#000000; --white:#ffffff; --grey:#BCB9B9; --yellow:#fffc00; }
/* Start custom CSS *//* Animación lista con imagen hover */
:root{
  --eco-line:    #d9d9d9;   
  --eco-img-x:   52%;       
  --eco-img-w:   19vw;      
  --eco-img-max: 330px;     
  --eco-ratio:   3 / 4;     
  --eco-ratio-m: 4 / 5;     
  --eco-dim:     .35;       
  --eco-shift:   14px;      
  --eco-ease:    cubic-bezier(.22,.8,.2,1);
}

.eco-lista{ border-bottom: 1px solid var(--eco-line, #d9d9d9); overflow: visible; }

.eco-item{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--eco-line, #d9d9d9);
  text-decoration: none;   
  color: inherit;
  overflow: visible;
}

.eco-item__txt{ flex: 1 1 auto; min-width: 0; }
.eco-item__arrow{ flex: 0 0 auto; }

.eco-item__img{ flex: 0 0 100%; }
.eco-item__img img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--eco-ratio-m, 4 / 5);
  object-fit: cover;
}

@media (hover: hover) and (pointer: fine) and (min-width: 1025px){

  .eco-item{
    position: relative;        /* el ancla de la imagen es LA FILA */
    flex-wrap: nowrap;
    z-index: 1;
  }
  .eco-item:hover,
  .eco-item:focus-visible{ z-index: 3; }

  .eco-item__txt{ max-width: min(46%, 520px); }

  .eco-item__img{
    position: absolute;
    top: 50%;
    left: var(--eco-img-x, 52%);
    width: var(--eco-img-w, 19vw);
    max-width: var(--eco-img-max, 330px);
    translate: 0 -50%;
    scale: .97;
    opacity: 0;
    pointer-events: none;      
    transition: opacity .45s ease, scale .7s var(--eco-ease, ease);
  }
  .eco-item__img img{ aspect-ratio: var(--eco-ratio, 3 / 4); }

  .eco-item:first-child .eco-item__img{ opacity: 1; scale: 1; }

  .eco-item:hover .eco-item__img,
  .eco-item:focus-visible .eco-item__img{ opacity: 1; scale: 1; }

  .eco-lista:has(.eco-item:hover) .eco-item:first-child:not(:hover) .eco-item__img,
  .eco-lista:has(.eco-item:focus-visible) .eco-item:first-child:not(:focus-visible) .eco-item__img{
    opacity: 0; scale: .97;
  }

  .eco-item > *:not(.eco-item__img){
    transition: opacity .35s ease, transform .5s var(--eco-ease, ease);
  }

  .eco-lista:has(.eco-item:hover) .eco-item:not(:hover) > *:not(.eco-item__img){
    opacity: var(--eco-dim, .35);
  }

  .eco-item:hover .eco-item__arrow,
  .eco-item:focus-visible .eco-item__arrow{ transform: translateX(var(--eco-shift, 14px)); }
}

.eco-item:focus-visible{ outline: 1px solid currentColor; outline-offset: 6px; }

@media (prefers-reduced-motion: reduce){
  .eco-item__img, .eco-item__txt, .eco-item__arrow{ transition: none !important; }
  .eco-item__img{ scale: 1 !important; }
}





/*Efeto hover caja*/
.caja-hover h3,
.caja-hover .elementor-heading-title,
.caja-hover p,
.caja-hover .elementor-widget-text-editor {
    transition: color .3s ease;
}

.caja-hover:hover h3,
.caja-hover:hover .elementor-heading-title,
.caja-hover:hover p,
.caja-hover:hover .elementor-widget-text-editor,
.caja-hover:hover .elementor-widget-text-editor * {
    color: #FFFFFF !important;
}





/* ===== Animación home hero ===== */
:root{
  --header-h: 0px;
  --page-bg : #ffffff;
}

.hero-scroll{
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--page-bg); 
  isolation: isolate;         
  overflow: visible;
}

.hero-scroll .hero-text{
  position: sticky;
  top: var(--header-h);
  min-height: calc(100svh - var(--header-h));
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 2;       
  background: transparent !important;
  pointer-events: none;             
  mix-blend-mode: difference;
  color: #ffffff;
}

/* los botones sí deben ser clicables */
.hero-scroll .hero-text a,
.hero-scroll .hero-text button,
.hero-scroll .hero-text .elementor-button{ pointer-events: auto; }

.hero-scroll .hero-text :is(h1,h2,h3,h4,p,span,a,li,.elementor-button){
  color: #ffffff !important;
}
.hero-scroll .hero-text .elementor-button{
  background-color: transparent !important;
  border-color: #ffffff !important;
}

.hero-scroll .hero-media{
  position: relative;
  z-index: 1;
  min-height: 100svh;
}

.hero-scroll .hero-text :is(a,button,.elementor-button,.e-button,.elementor-button-wrapper){
  pointer-events: auto;
}
.hero-scroll .hero-text :is(.elementor-button,.e-button,button){
  background-color: transparent !important;
  border-color: #ffffff !important;
  transition: background-color .35s ease, border-color .35s ease, color .35s ease;
}
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):hover,
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):focus-visible{
  background-color: #ffffff !important;
  border-color: #ffffff !important;
}
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):hover,
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):hover *,
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):focus-visible,
.hero-scroll .hero-text :is(.elementor-button,.e-button,button):focus-visible *{
  color: #000000 !important;
}

/*Animación scroll list*/

.caja-foco :is(h1,h2,h3,h4,h5,h6,p,span,li,a,
               .elementor-heading-title,.elementor-widget-text-editor){
  transition: color .45s ease;
}
.caja-foco.en-foco :is(h1,h2,h3,h4,h5,h6,p,span,li,
                       .elementor-heading-title,.elementor-widget-text-editor){
  color: #000000 !important;
}

/*Página de marca*/

/* Texto que se invierte según el fondo */
.mezcla-fondo{
  isolation: isolate;
  background-color: #ffffff;   /* el fondo real de la página */
}

.mezcla-texto{
  mix-blend-mode: difference;
  color: #ffffff;
}
.mezcla-texto *{ color: #ffffff !important; }

.mezcla-texto .elementor-button,
.mezcla-texto .e-button,
.mezcla-texto button{
  background-color: transparent !important;
  border-color: #ffffff !important;
}

/* ===== Fade in por scroll · solo escritorio ===== */

@media (min-width: 1025px){

  @supports (animation-timeline: view()){
    @media (prefers-reduced-motion: no-preference){

      .caja-imagen-marca{
        animation: fundido linear both;
        animation-timeline: scroll(root block);
        animation-range: 0px 350px;
      }

      .caja-logo-marca{
        animation: fundido-sube linear both;
        animation-timeline: view();
        animation-range: contain 0% contain 30%;   /* antes: entry 10% entry 55% */
      }
    }
  }

  @keyframes fundido{
    from{ opacity: 0; }
    to  { opacity: 1; }
  }

  @keyframes fundido-sube{
    from{ opacity: 0; transform: translateY(30px); }
    to  { opacity: 1; transform: translateY(0); }
  }
}

body.elementor-editor-active .caja-imagen-marca,
body.elementor-editor-active .caja-logo-marca{
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
}/* End custom CSS */