/* Tres estilos de portada móvil. Solo afecta <=650px. */
@media(max-width:650px){
/* Limpio: imagen completa en flujo y contenido separado, sin texto sobre la imagen */
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio{height:auto!important;min-height:0!important;background:#0d294a!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio>.fef-slide-photo{position:relative!important;inset:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;display:block!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio>.fef-slide-photo picture{height:auto!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio>.fef-slide-photo img{width:100%!important;height:auto!important;max-height:320px!important;object-fit:contain!important;display:block!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio>.fef-slide-photo:after{display:none!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio .fef-home-hero-inner{min-height:0!important;display:flex!important;flex-direction:column!important;gap:12px!important;padding:20px 18px 78px!important;align-items:stretch!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio .fef-home-copy{max-width:100%!important;width:100%!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio .fef-home-copy h1{font-size:clamp(24px,7vw,36px)!important;line-height:1.15!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio .fef-hero-side-banner{max-width:260px!important}
/* Igual a escritorio: lienzo horizontal escalado proporcionalmente, sin redistribución vertical. */
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio{height:var(--fef-mobile-desktop-height,260px)!important;min-height:0!important;overflow:hidden!important;position:relative!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio>.fef-slide-photo{height:100%!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio>.fef-slide-photo img{object-fit:contain!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-hero-inner{width:1100px!important;max-width:none!important;height:620px!important;min-height:620px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,36%)!important;gap:36px!important;align-items:center!important;padding:45px 70px 85px!important;box-sizing:border-box!important;transform:scale(var(--fef-mobile-desktop-scale,.32));transform-origin:top left!important;position:relative!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio:not(:has(.fef-hero-side-banner)) .fef-home-hero-inner{grid-template-columns:minmax(0,1fr)!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy{width:auto!important;max-width:760px!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy h1{font-size:66px!important;line-height:1.08!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-subtitle{font-size:22px!important;line-height:1.45!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-side-banner{max-width:390px!important;width:100%!important;align-self:center!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-side-banner img{max-height:370px!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-art{display:block!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio>.fef-slide-photo:after{background:linear-gradient(90deg,rgba(3,16,34,.65),rgba(3,16,34,.13))!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-actions{flex-direction:row!important;flex-wrap:nowrap!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-video-open{display:flex!important}
.fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-cta{font-size:17px!important}
}


/* FEF | ajuste final del carrusel para móviles verticales.
   Un único lienzo proporcional, controles externos compactos y sin huecos. */
@media (max-width:650px) and (orientation:portrait){
  html body .fef-hero-carousel{background:#0b2544!important;}
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio{
    height:var(--fef-mobile-desktop-height,220px)!important;
    min-height:0!important;
    margin:0!important;padding:0!important;
    overflow:hidden!important;position:relative!important;
    background:#0b2544!important;
  }
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-hero-inner{
    top:0!important;left:0!important;margin:0!important;
    width:1100px!important;max-width:none!important;
    height:620px!important;min-height:620px!important;
    padding:50px 70px 50px!important;
    display:grid!important;align-items:center!important;
    transform:scale(var(--fef-mobile-desktop-scale,.32))!important;
    transform-origin:top left!important;
    overflow:visible!important;
  }
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy{
    padding:0!important;margin:0!important;
    align-self:center!important;min-width:0!important;
  }
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy h1{
    margin-top:12px!important;font-size:66px!important;line-height:1.1!important;
  }
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio>.fef-slide-photo{
    position:absolute!important;inset:0!important;height:100%!important;
  }
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio>.fef-slide-photo img{
    width:100%!important;height:100%!important;object-fit:cover!important;
    object-position:center center!important;
  }
  html body .fef-hero-carousel .fef-hero-controls{
    position:relative!important;inset:auto!important;left:auto!important;bottom:auto!important;
    transform:none!important;margin:0 auto!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:max-content!important;max-width:calc(100% - 20px)!important;
    gap:10px!important;padding:7px 12px!important;
    border-radius:0 0 16px 16px!important;
    background:#102b4b!important;box-shadow:none!important;
  }
  html body .fef-hero-carousel .fef-hero-prev,
  html body .fef-hero-carousel .fef-hero-next{
    width:32px!important;height:32px!important;min-width:32px!important;
    min-height:32px!important;font-size:17px!important;
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.12)!important;
  }
  html body .fef-hero-carousel .fef-hero-dots{gap:7px!important;}
  html body .fef-hero-carousel .fef-hero-dot{width:7px;height:7px;}
  html body .fef-hero-carousel .fef-hero-dot.active{width:20px;height:7px;}
  html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-limpio .fef-home-hero-inner{
    padding-bottom:18px!important;
  }
}

/* FEF 2026-10-14 | Corrección de título recortado: anclar el contenido
   al borde superior del lienzo escalado en vez de centrarlo verticalmente.
   Se aplica SOLO al estilo escritorio en móviles verticales. */
@media (max-width:650px) and (orientation:portrait){
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-hero-inner{
   position:absolute!important;top:0!important;left:0!important;
   align-items:start!important;align-content:start!important;
   padding:0 70px!important;
   height:620px!important;min-height:620px!important;
   box-sizing:border-box!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy{
   align-self:start!important;
   margin:85px 0 0!important;
   padding:0!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy h1{
   margin-top:12px!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-side-banner{
   align-self:start!important;margin-top:100px!important;
 }
}


/* FEF | Posicionamiento definitivo del lienzo de escritorio en móvil.
   El texto no participa del centrado vertical heredado. */
@media (max-width:650px) {
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio {
   position:relative!important;
   height:var(--fef-mobile-desktop-height,220px)!important;
   min-height:0!important;
   overflow:hidden!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio > .fef-home-hero-inner {
   position:absolute!important;
   top:0!important;left:0!important;right:auto!important;bottom:auto!important;
   width:1100px!important;max-width:none!important;
   height:620px!important;min-height:620px!important;
   margin:0!important;padding:0!important;
   display:block!important;overflow:visible!important;
   transform:scale(var(--fef-mobile-desktop-scale,.32))!important;
   transform-origin:0 0!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy {
   position:absolute!important;
   top:64px!important;left:68px!important;right:auto!important;bottom:auto!important;
   width:720px!important;max-width:720px!important;
   margin:0!important;padding:0!important;
   align-self:auto!important;transform:none!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio:has(.fef-hero-side-banner) .fef-home-copy {
   width:620px!important;max-width:620px!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-hero-side-banner {
   position:absolute!important;
   top:65px!important;right:68px!important;left:auto!important;
   width:320px!important;max-width:320px!important;
   margin:0!important;align-self:auto!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy h1 {
   margin:12px 0 18px!important;
   font-size:66px!important;line-height:1.08!important;
 }
 html body .fef-hero-carousel .fef-hero-frame.fef-mobile-style-escritorio .fef-home-copy .fef-home-kicker {
   margin-top:0!important;
 }
}

/* FEF | 2026-10-14: la cabecera global .nav es position:fixed.
   Reservar su altura ANTES del carrusel evita que tape los titulos.
   No desplazar el texto dentro de la foto: desplazar el carrusel entero. */
@media (max-width:650px) {
  html body > .fef-hero-carousel {
    margin-top:72px !important;
  }
}
