/* Mejoras portátiles: navegación móvil, ajuste responsive y carrusel administrable. */
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
main,main>*,section,footer{min-width:0}
img,svg,video{max-width:100%}
h1,h2,h3,p,a{overflow-wrap:break-word}
[id]{scroll-margin-top:86px}

.mobile-menu-toggle{display:none;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.28);border-radius:999px;width:42px;height:42px;padding:0;align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:1002}
.mobile-menu-toggle span{position:absolute;width:18px;height:1.5px;background:currentColor;border-radius:999px;transition:transform .25s ease,opacity .2s ease,top .25s ease}
.mobile-menu-toggle span:nth-child(1){top:14px}
.mobile-menu-toggle span:nth-child(2){top:20px}
.mobile-menu-toggle span:nth-child(3){top:26px}
.mobile-menu-toggle:focus-visible{outline:2px solid #d5e249;outline-offset:3px}
.site-header.menu-open .mobile-menu-toggle span:nth-child(1){top:20px;transform:rotate(45deg)}
.site-header.menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}
.site-header.menu-open .mobile-menu-toggle span:nth-child(3){top:20px;transform:rotate(-45deg)}
.mobile-menu-participa{display:none}

.logo-carousel{isolation:isolate}
.logo-track [data-carousel-logo]{display:flex;align-items:center;justify-content:center}
.logo-track [data-carousel-logo] figure{display:flex;align-items:center;justify-content:center;background:#fff!important;border:0!important;margin:0}
.logo-track [data-carousel-logo] img{display:block;object-fit:contain;max-width:82%;max-height:74px;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}
.logo-track [data-carousel-logo] figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.logo-track [data-carousel-logo].logo-featured figure{width:220px}
.logo-track [data-carousel-logo].logo-featured img{max-width:88%;max-height:86px}
.logo-track [data-carousel-logo].logo-wide figure{width:280px}
.logo-track [data-carousel-logo].logo-wide img{max-width:92%;max-height:78px}

@media (max-width:1100px){
  body.fiax-menu-open{overflow:hidden}
  .site-header{grid-template-columns:minmax(0,1fr) auto auto!important;gap:12px!important;padding-left:20px!important;padding-right:20px!important;z-index:1000!important}
  .site-header>.wordmark{min-width:0}
  .mobile-menu-toggle{display:inline-flex}
  .site-header>nav{display:none!important}
  .site-header.menu-open>nav{display:flex!important;position:absolute;top:100%;left:0;right:0;z-index:1001;flex-direction:column;align-items:stretch;gap:0!important;max-height:calc(100svh - 66px);overflow-y:auto;padding:14px 20px 24px;background:rgba(5,7,6,.985);border-top:1px solid rgba(255,255,255,.14);box-shadow:0 22px 44px rgba(0,0,0,.28)}
  .site-header.menu-open>nav a{display:flex;align-items:center;min-height:48px;padding:10px 4px;color:#fff!important;font-size:13px!important;line-height:1.25;letter-spacing:.075em!important;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.12)}
  .site-header.menu-open>nav a::after{display:none!important}
  .site-header.menu-open>nav a:hover,.site-header.menu-open>nav a:focus-visible{color:#d5e249!important;padding-left:10px}
  .site-header .header-actions{justify-self:end;gap:8px!important}
  .site-header .header-actions>.participa-button{display:none!important}
  .site-header.menu-open>nav .mobile-menu-participa{display:flex!important;justify-content:center;margin-top:14px;padding:14px 18px!important;color:#142019!important;background:#d5e249;border:0;font-weight:800}
}

@media (max-width:700px){
  .site-header{height:66px!important;padding-left:14px!important;padding-right:14px!important;gap:8px!important}
  .site-header>.wordmark small{font-size:9px!important;line-height:1.05!important}
  .language-switcher{gap:1px!important;padding:2px!important}
  .language-switcher button{width:24px!important;height:24px!important;font-size:8px!important}
  .mobile-menu-toggle{width:38px;height:38px}
  .mobile-menu-toggle span{width:16px}
  .mobile-menu-toggle span:nth-child(1){top:12px}
  .mobile-menu-toggle span:nth-child(2){top:18px}
  .mobile-menu-toggle span:nth-child(3){top:24px}
  .site-header.menu-open .mobile-menu-toggle span:nth-child(1),.site-header.menu-open .mobile-menu-toggle span:nth-child(3){top:18px}
  .site-header.menu-open>nav{max-height:calc(100svh - 66px);padding-left:18px;padding-right:18px}
  .logo-carousel{margin-left:-22px!important;margin-right:-22px!important}
  .logo-track [data-carousel-logo] figure{width:150px!important;height:96px!important;padding:14px!important}
  .logo-track [data-carousel-logo] img{max-width:88%;max-height:66px}
  .logo-track [data-carousel-logo].logo-featured figure{width:178px!important}
  .logo-track [data-carousel-logo].logo-featured img{max-height:72px}
  .logo-track [data-carousel-logo].logo-wide figure{width:210px!important}
}

@media (max-width:390px){
  .site-header>.wordmark small{display:none!important}
  .site-header>.wordmark span{font-size:25px!important}
  .site-header{grid-template-columns:minmax(60px,1fr) auto auto!important;padding-left:11px!important;padding-right:11px!important;gap:5px!important}
  .language-switcher button{width:22px!important;height:22px!important;font-size:7px!important}
  .mobile-menu-toggle{width:36px;height:36px}
}

@media (prefers-reduced-motion:reduce){
  .mobile-menu-toggle span,.site-header.menu-open>nav a,.logo-track{transition:none!important;animation:none!important}
  html{scroll-behavior:auto!important}
}
