.fef-hero-carousel{position:relative;background:#061b36}.fef-hero-frame{display:none!important}.fef-hero-frame.is-active{display:block!important;animation:fefHeroFade .5s ease both}.fef-hero-frame[aria-hidden="true"]{visibility:hidden}.fef-hero-frame.is-active{visibility:visible}.fef-hero-controls{position:absolute;z-index:10;bottom:15px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:6px 12px;border-radius:30px;background:#061a35b8;box-shadow:0 3px 20px #0003}.fef-hero-controls button{cursor:pointer;border:0;color:white}.fef-hero-prev,.fef-hero-next{border-radius:50%;width:32px;height:32px;background:#ffffff30;font-size:19px}.fef-hero-dots{display:flex;gap:9px;align-items:center}.fef-hero-dot{width:9px;height:9px;border-radius:50%;background:#ffffff80;padding:0}.fef-hero-dot.active{background:#f2c46c;width:24px;border-radius:8px}.fef-hero-carousel .fef-home-hero-inner{padding-bottom:30px}@keyframes fefHeroFade{from{opacity:.35}to{opacity:1}}@media(prefers-reduced-motion:reduce){.fef-hero-frame.is-active{animation:none}}@media(max-width:650px){.fef-hero-controls{bottom:8px}.fef-hero-carousel .fef-home-hero-inner{padding-bottom:42px}}
/* Corrección: cada portada utiliza exclusivamente su fotografía. */
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image{
  background-image:linear-gradient(90deg,rgba(3,16,34,.76) 0%,rgba(3,16,34,.40) 55%,rgba(3,16,34,.13) 100%),var(--fef-hero-bg)!important;
  background-size:cover,cover!important;background-position:center,center!important;background-repeat:no-repeat!important;
}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-hero-inner{grid-template-columns:minmax(0,1fr)!important;}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-copy{max-width:min(760px,92%);position:relative;z-index:2;}
.fef-hero-carousel .fef-hero-frame:not(.fef-hero-legacy) .fef-home-art{display:none!important;}
@media(max-width:650px){
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image{min-height:440px!important;background-position:center,center!important;}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-hero-inner{min-height:440px!important;display:flex!important;align-items:center!important;padding-top:28px!important;padding-bottom:64px!important;}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-copy{width:100%;max-width:100%;}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-copy h1{font-size:clamp(34px,10vw,60px)!important;overflow-wrap:anywhere;}
}
/* Controles visibles sobre la portada en escritorio y móvil */
.fef-hero-carousel .fef-hero-controls{z-index:80!important;bottom:16px!important;display:flex!important;visibility:visible!important;opacity:1!important;max-width:calc(100% - 20px)}
.fef-hero-carousel .fef-hero-prev,.fef-hero-carousel .fef-hero-next{display:inline-flex!important;align-items:center;justify-content:center;min-width:42px;min-height:42px;font-size:24px;background:#183454!important;color:#fff!important;opacity:1!important;flex-shrink:0}
.fef-hero-carousel .fef-hero-dot{display:block!important;flex-shrink:0}
@media(max-width:650px){.fef-hero-carousel .fef-hero-controls{bottom:12px!important}.fef-hero-carousel .fef-hero-prev,.fef-hero-carousel .fef-hero-next{min-width:40px;min-height:40px}}

/* Portadas con foto: anular decoraciones de fondo heredadas */
.fef-hero-carousel .fef-home-hero.fef-hero-with-image{background-image:linear-gradient(90deg,rgba(3,16,34,.78),rgba(3,16,34,.12)),var(--fef-hero-bg)!important;background-size:cover!important;background-position:center!important;}
.fef-hero-carousel .fef-home-hero.fef-hero-with-image::before,.fef-hero-carousel .fef-home-hero.fef-hero-with-image::after{pointer-events:none;}
.fef-hero-carousel .fef-video-trigger{display:flex!important;}

/* site(6): fotografía real por diapositiva; evita conflictos con fondos institucionales. */
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image{position:relative;isolation:isolate;background:#071b34!important;background-image:none!important}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,16,34,.68),rgba(3,16,34,.18));pointer-events:none}
.fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-home-hero-inner{position:relative;z-index:1}
@media(max-width:650px){.fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo:after{background:linear-gradient(90deg,rgba(3,16,34,.74),rgba(3,16,34,.25))}}

/* Banner publicitario independiente por portada. No altera los textos ni botones existentes. */
.fef-hero-carousel .fef-hero-frame:has(.fef-hero-side-banner) .fef-home-hero-inner{position:relative;z-index:2;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,36%)!important;gap:clamp(18px,3vw,55px);align-items:center}
.fef-hero-carousel .fef-hero-frame:has(.fef-hero-side-banner) .fef-home-copy{min-width:0;max-width:100%;position:relative;z-index:2}
.fef-hero-carousel .fef-hero-side-banner{min-width:0;max-width:600px;width:100%;justify-self:end;position:relative;z-index:3}
.fef-hero-carousel .fef-hero-side-banner img{display:block;width:100%;height:auto;max-height:370px;object-fit:contain;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.28)}
.fef-hero-carousel .fef-hero-side-banner a{display:block;transition:transform .2s ease}
.fef-hero-carousel .fef-hero-side-banner a:hover{transform:translateY(-3px)}
@media(max-width:800px){
 .fef-hero-carousel .fef-hero-frame:has(.fef-hero-side-banner) .fef-home-hero-inner{display:flex!important;flex-direction:column;align-items:stretch!important;gap:20px;padding-bottom:85px!important}
 .fef-hero-carousel .fef-hero-side-banner{max-width:440px;width:min(100%,440px);align-self:center;justify-self:auto}
 .fef-hero-carousel .fef-hero-side-banner img{max-height:250px}
}

/* Mejora móvil FEF: solo carrusel, sin alterar escritorio. */
.fef-hero-carousel .fef-slide-photo picture{display:block;width:100%;height:100%}
.fef-hero-carousel .fef-slide-photo-mobile-only{display:none}
@media(max-width:650px){
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image{min-height:clamp(440px,60svh,650px)!important}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-hero-inner{min-height:clamp(440px,60svh,650px)!important;padding-inline:clamp(18px,5vw,32px)!important}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo-mobile-only{display:block}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image>.fef-slide-photo img{object-position:center center}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-copy h1{font-size:clamp(30px,8vw,46px)!important;line-height:1.1}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-copy{max-width:100%}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image .fef-home-subtitle{overflow-wrap:anywhere}
}
@media(min-width:651px){
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image:has(>.fef-slide-photo-mobile-only){background-image:none!important}
 .fef-hero-carousel .fef-hero-frame.fef-hero-with-image:has(>.fef-slide-photo-mobile-only) .fef-home-art{display:block!important}
}
