/* ============================================================================
   BIONICADRI · LAYOUT COMPARTIDO
   Fuentes + tokens + cabecera (.ba-nav) + pie (.ba-footer) + botón WhatsApp.
   Lo cargan TODAS las páginas (antes que css/site.css). Namespace ba-* para
   no chocar con el CSS legado de las páginas que aún no se han migrado.
   ========================================================================== */

/* ---------- FUENTES (auto-alojadas, sin CDN) ---------- */
@font-face{font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:300 700;
  src:url('../assets/fonts/space-grotesk-variable.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400 700;
  src:url('../assets/fonts/inter-variable.woff2') format('woff2');}

/* ---------- TOKENS (fuente única: site.css los usa) ---------- */
:root{
  --ba-nav-h:68px;
  /* claro corporativo */
  --ba-bg:#FFFFFF;
  --ba-bg-alt:#F5F6FA;
  --ba-bg-tile:#F7F8FB;
  --ba-line:rgba(23,26,43,.10);
  --ba-line-strong:rgba(23,26,43,.16);
  --ba-ink:#161A2E;
  --ba-ink-muted:#4E5568;
  --ba-ink-faint:#646B7C;
  --ba-indigo:#6366F1;
  --ba-indigo-hover:#4F46E5;
  --ba-indigo-active:#4338CA;
  --ba-indigo-deep:#1E1B4B;
  --ba-tint:rgba(99,102,241,.10);
  --ba-tint-strong:rgba(99,102,241,.16);
  --ba-shadow:0 1px 2px rgba(23,26,43,.05),0 10px 28px rgba(23,26,43,.07);
  --ba-shadow-hover:0 2px 4px rgba(23,26,43,.05),0 16px 38px rgba(79,70,229,.14);
  --ba-shadow-pop:0 2px 6px rgba(23,26,43,.06),0 24px 60px rgba(23,26,43,.16);
  /* oscuro (solo hero de portada y nav sobre él) */
  --ba-dark:#050710;
  --ba-dark-raised:#0A0E1E;
  --ba-dark-card:#0D1226;
  --ba-dark-line:rgba(148,163,214,.16);
  --ba-text-dark:#F2F5FF;
  --ba-text-dark-muted:#A3ACC8;
  --ba-cyan:#2FE6FF;
  --ba-violet:#8B7BFF;
  /* semánticos */
  --ba-ok:#047857;
  --ba-warn:#B45309;
  --ba-err:#B91C1C;
  /* tipografía */
  --ba-font-display:'Space Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ba-font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ba-font-mono:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
  /* forma y movimiento */
  --ba-r-sm:10px;
  --ba-r:16px;
  --ba-r-lg:24px;
  --ba-ease:cubic-bezier(.2,.7,.2,1);
  --ba-gutter:clamp(16px,4vw,32px);
}

/* ---------- BASE MÍNIMA DEL LAYOUT ---------- */
.ba-container,.ba-nav *,.ba-nav *::before,.ba-nav *::after,
.ba-footer *,.ba-footer *::before,.ba-footer *::after{box-sizing:border-box;}
.ba-container{width:100%;max-width:1240px;margin:0 auto;padding:0 var(--ba-gutter);}
.ba-nav a,.ba-footer a{text-decoration:none;}
.ba-nav ul,.ba-footer ul{list-style:none;margin:0;padding:0;}
.ba-nav p,.ba-footer p{margin:0;}
html{scroll-padding-top:calc(var(--ba-nav-h) + 16px);}
html.ba-lock{overflow:hidden;}

/* Enlace «saltar al contenido» (visible solo con teclado) */
.ba-skip{position:absolute;left:12px;top:-60px;z-index:2;padding:10px 16px;border-radius:10px;
  background:var(--ba-indigo-hover);color:#fff;font:600 14px/1 var(--ba-font-body);transition:top .2s var(--ba-ease);}
.ba-skip:focus{top:10px;outline:2px solid #fff;outline-offset:2px;}

/* ---------- BOTÓN MINI (cabecera) ---------- */
.ba-btn-mini{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font:600 14px/1 var(--ba-font-body);padding:11px 18px;border-radius:10px;white-space:nowrap;border:0;cursor:pointer;
  background:var(--ba-indigo-hover);color:#fff!important;box-shadow:0 6px 16px rgba(79,70,229,.30);
  transition:background .18s ease,transform .18s var(--ba-ease),box-shadow .18s ease;}
.ba-btn-mini:hover{background:var(--ba-indigo-active);box-shadow:0 8px 22px rgba(67,56,202,.36);}
.ba-btn-mini:active{transform:translateY(1px);}
.ba-btn-mini:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:3px;}

/* ============================================================================
   CABECERA
   Tema por defecto = OSCURO (sobre el hero de portada).
   body.nav-light = CLARO (todas las demás páginas y al bajar del hero).
   ========================================================================== */
.ba-nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--ba-nav-h);
  background:rgba(5,7,16,.72);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid var(--ba-dark-line);font-family:var(--ba-font-body);
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;}
.ba-nav__inner{height:100%;display:flex;align-items:center;gap:20px;}
.ba-nav__brand{display:flex;align-items:center;gap:10px;flex:none;border-radius:10px;}
.ba-nav__brand:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:4px;}
.ba-nav__logo{width:36px;height:36px;border-radius:9px;object-fit:cover;display:block;}
.ba-nav__wordmark{font:700 19px/1 var(--ba-font-display);letter-spacing:-.015em;color:var(--ba-text-dark);}
.ba-nav__wordmark span{color:var(--ba-cyan);}
.ba-nav__actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none;}

/* Lista principal (escritorio) */
.ba-nav__links{display:flex;align-items:center;margin-left:auto;}
.ba-nav__list{display:flex;align-items:center;gap:2px;}
.ba-nav__list > li{position:relative;}
.ba-nav__link,.ba-nav__groupbtn{position:relative;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;
  border-radius:10px;border:0;background:none;cursor:pointer;white-space:nowrap;
  font:500 14.5px/1 var(--ba-font-body);color:var(--ba-text-dark-muted);transition:color .15s ease,background .15s ease;}
.ba-nav__link:hover,.ba-nav__groupbtn:hover,.ba-nav__groupbtn[aria-expanded="true"]{color:var(--ba-text-dark);background:rgba(255,255,255,.06);}
.ba-nav__link:focus-visible,.ba-nav__groupbtn:focus-visible{outline:2px solid var(--ba-cyan);outline-offset:1px;}
.ba-nav__chev{transition:transform .2s var(--ba-ease);opacity:.75;}
.ba-nav__groupbtn[aria-expanded="true"] .ba-nav__chev{transform:rotate(180deg);}
/* página actual */
.ba-nav__link[aria-current="page"],.ba-nav__groupbtn[data-current]{color:var(--ba-text-dark);}
.ba-nav__link[aria-current="page"]::after,.ba-nav__groupbtn[data-current]::after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:2px;background:var(--ba-cyan);}

/* Desplegable (escritorio): tarjeta clara siempre */
.ba-nav__menu{position:absolute;top:calc(100% + 10px);left:50%;width:320px;padding:8px;
  background:#fff;border:1px solid var(--ba-line);border-radius:16px;box-shadow:var(--ba-shadow-pop);
  opacity:0;visibility:hidden;transform:translate(-50%,-6px);
  transition:opacity .18s ease,transform .18s var(--ba-ease),visibility 0s linear .18s;}
.ba-nav__menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px;} /* puente de hover */
.ba-nav__groupbtn[aria-expanded="true"] + .ba-nav__menu{opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:0s;}
.ba-nav__menu a{display:flex;flex-direction:column;gap:3px;padding:10px 12px 10px 14px;border-radius:10px;position:relative;
  transition:background .15s ease;}
.ba-nav__menu a:hover{background:var(--ba-bg-alt);}
.ba-nav__menu a:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:-2px;background:var(--ba-bg-alt);}
.ba-nav__mt{font:600 14.5px/1.3 var(--ba-font-body);color:var(--ba-ink);}
.ba-nav__md{font:400 13px/1.4 var(--ba-font-body);color:var(--ba-ink-faint);}
.ba-nav__menu a:hover .ba-nav__mt{color:var(--ba-indigo-hover);}
.ba-nav__menu a[aria-current="page"]{background:var(--ba-tint);}
.ba-nav__menu a[aria-current="page"]::before{content:"";position:absolute;left:4px;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--ba-indigo);}
.ba-nav__menu a[aria-current="page"] .ba-nav__mt{color:var(--ba-indigo-hover);}

.ba-nav__panelcta{display:none!important;}

/* «Acceder» (área de clientes): enlace discreto junto al CTA en escritorio,
   fila propia encima del CTA dentro del panel móvil. */
.ba-nav__login{display:none;}
.ba-nav__panellogin{display:none!important;}
@media (min-width:1180px){
  .ba-nav__login{display:inline-flex;align-items:center;height:40px;padding:0 10px;border-radius:10px;white-space:nowrap;
    font:500 14.5px/1 var(--ba-font-body);color:var(--ba-text-dark-muted);text-decoration:none;transition:color .15s ease,background .15s ease;}
  .ba-nav__login:hover{color:var(--ba-text-dark);background:rgba(255,255,255,.06);}
  .ba-nav__login:focus-visible{outline:2px solid var(--ba-cyan);outline-offset:1px;}
  body.nav-light .ba-nav__login{color:var(--ba-ink-muted);}
  body.nav-light .ba-nav__login:hover{color:var(--ba-ink);background:var(--ba-bg-alt);}
  body.nav-light .ba-nav__login:focus-visible{outline-color:var(--ba-indigo);}
}
@media (max-width:1179px){
  .ba-nav__panellogin{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:52px;margin:0 0 10px;
    border:1px solid var(--ba-line);border-radius:12px;font:600 16px/1 var(--ba-font-body);color:var(--ba-ink);text-decoration:none;}
  .ba-nav__panellogin:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:2px;}
}

/* Burger */
.ba-nav__burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 11px;
  border:0;border-radius:10px;background:none;cursor:pointer;}
.ba-nav__burger:focus-visible{outline:2px solid var(--ba-cyan);outline-offset:1px;}
.ba-nav__burger span{display:block;width:22px;height:2px;border-radius:2px;background:var(--ba-text-dark);transition:transform .22s var(--ba-ease),opacity .2s ease;}
.ba-nav.is-open .ba-nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ba-nav.is-open .ba-nav__burger span:nth-child(2){opacity:0;}
.ba-nav.is-open .ba-nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* Selector de idioma (lo monta js/i18n.js en [data-lang-slot]) */
.ba-nav__lang{position:relative;display:flex;}
.ba-nav__lang:empty{display:none;}
.ba-nav__lang .lang-selector-float{position:relative!important;inset:auto!important;z-index:auto!important;}
.ba-nav__lang .lang-float-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 10px;border-radius:10px;
  border:1px solid var(--ba-dark-line);background:transparent;cursor:pointer;
  font:600 13px/1 var(--ba-font-body);letter-spacing:.04em;color:var(--ba-text-dark-muted);transition:color .15s ease,border-color .15s ease,background .15s ease;}
.ba-nav__lang .lang-float-btn:hover{color:var(--ba-text-dark);border-color:rgba(255,255,255,.3);}
.ba-nav__lang .lang-float-btn:focus-visible{outline:2px solid var(--ba-cyan);outline-offset:1px;}
.ba-nav__lang .lang-float-btn svg{width:16px;height:16px;flex:none;}
.ba-nav__lang .lang-float-dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:180px;padding:6px;
  background:#fff;border:1px solid var(--ba-line);border-radius:14px;box-shadow:var(--ba-shadow-pop);
  display:none;flex-direction:column;}
.ba-nav__lang .lang-selector-float.open .lang-float-dropdown{display:flex;}
.ba-nav__lang .lang-float-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:9px;
  background:none;cursor:pointer;text-align:left;font:500 14px/1.2 var(--ba-font-body);color:var(--ba-ink);}
.ba-nav__lang .lang-float-item:hover,.ba-nav__lang .lang-float-item:focus-visible{background:var(--ba-bg-alt);outline:none;}
.ba-nav__lang .lang-float-item.active{color:var(--ba-indigo-hover);background:var(--ba-tint);}
.ba-nav__lang .lang-float-code{font:600 11.5px/1 var(--ba-font-mono);letter-spacing:.06em;color:var(--ba-ink-faint);width:22px;}
.ba-nav__lang .lang-float-item.active .lang-float-code{color:var(--ba-indigo-hover);}

/* ---------- CABECERA CLARA ---------- */
body.nav-light .ba-nav,.ba-nav.is-open{background:rgba(255,255,255,.88);border-bottom-color:var(--ba-line);}
body .ba-nav.is-open{background:#fff!important;}
body.nav-light .ba-nav.is-scrolled{box-shadow:0 1px 0 rgba(23,26,43,.04),0 8px 24px rgba(23,26,43,.06);}
body.nav-light .ba-nav__wordmark,.ba-nav.is-open .ba-nav__wordmark{color:var(--ba-ink);}
body.nav-light .ba-nav__wordmark span,.ba-nav.is-open .ba-nav__wordmark span{color:var(--ba-indigo-hover);}
body.nav-light .ba-nav__link,body.nav-light .ba-nav__groupbtn{color:var(--ba-ink-muted);}
body.nav-light .ba-nav__link:hover,body.nav-light .ba-nav__groupbtn:hover,body.nav-light .ba-nav__groupbtn[aria-expanded="true"]{color:var(--ba-ink);background:var(--ba-bg-alt);}
body.nav-light .ba-nav__link[aria-current="page"],body.nav-light .ba-nav__groupbtn[data-current]{color:var(--ba-indigo-hover);}
body.nav-light .ba-nav__link[aria-current="page"]::after,body.nav-light .ba-nav__groupbtn[data-current]::after{background:var(--ba-indigo);}
body.nav-light .ba-nav__link:focus-visible,body.nav-light .ba-nav__groupbtn:focus-visible,
body.nav-light .ba-nav__burger:focus-visible,body.nav-light .ba-nav__lang .lang-float-btn:focus-visible,
.ba-nav.is-open .ba-nav__burger:focus-visible{outline-color:var(--ba-indigo);}
body.nav-light .ba-nav__burger span,.ba-nav.is-open .ba-nav__burger span{background:var(--ba-ink);}
body.nav-light .ba-nav__lang .lang-float-btn,.ba-nav.is-open .ba-nav__lang .lang-float-btn{border-color:var(--ba-line-strong);color:var(--ba-ink-muted);}
body.nav-light .ba-nav__lang .lang-float-btn:hover,.ba-nav.is-open .ba-nav__lang .lang-float-btn:hover{color:var(--ba-ink);border-color:var(--ba-indigo);}

/* ---------- MÓVIL / TABLET (< 1180 px): burger + panel ---------- */
@media (max-width:1179px){
  .ba-nav__burger{display:flex;}
  /* la cabecera tiene backdrop-filter: es el bloque contenedor del panel fijo → altura explícita */
  .ba-nav__links{position:fixed;top:var(--ba-nav-h);left:0;right:0;bottom:auto;height:calc(100vh - var(--ba-nav-h));height:calc(100dvh - var(--ba-nav-h));margin:0;
    display:flex;flex-direction:column;align-items:stretch;gap:20px;overflow-y:auto;overscroll-behavior:contain;
    padding:12px var(--ba-gutter) 32px;background:#fff;border-top:1px solid var(--ba-line);
    visibility:hidden;opacity:0;transform:translateY(-8px);
    transition:opacity .2s ease,transform .2s var(--ba-ease),visibility 0s linear .2s;}
  .ba-nav.is-open .ba-nav__links{visibility:visible;opacity:1;transform:none;transition-delay:0s;}
  .ba-nav__list{flex-direction:column;align-items:stretch;gap:0;}
  .ba-nav__list > li{border-bottom:1px solid var(--ba-line);}
  .ba-nav__link,.ba-nav__groupbtn{width:100%;height:auto;min-height:52px;padding:14px 4px;justify-content:space-between;
    font-size:17px;font-weight:600;color:var(--ba-ink)!important;background:none!important;border-radius:0;}
  .ba-nav__link:focus-visible,.ba-nav__groupbtn:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:-2px;}
  .ba-nav__link[aria-current="page"],.ba-nav__groupbtn[data-current]{color:var(--ba-indigo-hover)!important;}
  .ba-nav__link[aria-current="page"]::after,.ba-nav__groupbtn[data-current]::after{right:auto;top:14px;bottom:14px;left:-4px;width:3px;height:auto;background:var(--ba-indigo)!important;}
  .ba-nav__chev{width:14px;height:10px;color:var(--ba-ink-faint);}
  /* acordeón */
  .ba-nav__menu{position:static;width:auto;padding:0 0 10px;border:0;border-radius:0;box-shadow:none;background:none;
    transform:none!important;opacity:1;visibility:visible;display:none;}
  .ba-nav__menu::before{display:none;}
  .ba-nav__groupbtn[aria-expanded="true"] + .ba-nav__menu{display:block;}
  .ba-nav__menu a{padding:11px 12px;}
  .ba-nav__md{display:none;}
  .ba-nav__mt{font-size:15.5px;font-weight:500;color:var(--ba-ink-muted);}
  .ba-nav__panelcta{display:inline-flex!important;width:100%;padding:16px 18px;font-size:16px;}
}
@media (max-width:640px){
  .ba-nav__cta{display:none;}
  .ba-nav__wordmark{font-size:18px;}
}

/* ---------- ESCUDO ANTI-COLISIÓN con el CSS legado ----------
   bundle.min.css / styles.css / pro.css / reimagine.css estilan header, nav, footer
   y los widgets con !important. Mientras queden páginas con ese CSS, esto mantiene
   la cabecera y el pie nuevos intactos. Se puede borrar cuando ninguna página lo cargue. */
html body .ba-nav{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;
  min-height:0!important;height:var(--ba-nav-h)!important;z-index:1000!important;margin:0!important;padding:0!important;width:auto!important;
  background:rgba(5,7,16,.72)!important;color:var(--ba-text-dark)!important;border-bottom:1px solid var(--ba-dark-line)!important;
  backdrop-filter:blur(16px) saturate(140%)!important;-webkit-backdrop-filter:blur(16px) saturate(140%)!important;}
html body.nav-light .ba-nav{background:rgba(255,255,255,.88)!important;color:var(--ba-ink)!important;border-bottom-color:var(--ba-line)!important;}
html body .ba-nav.is-open{background:#fff!important;color:var(--ba-ink)!important;}
html body .ba-nav__inner{height:100%!important;max-width:1240px!important;margin:0 auto!important;padding:0 var(--ba-gutter)!important;display:flex!important;flex-direction:row!important;}
html body .ba-nav__actions{margin-left:auto!important;}
html body .ba-nav__lang .lang-selector-float{position:relative!important;inset:auto!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;
  transform:none!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;box-shadow:none!important;}
html body .ba-nav__lang .lang-float-btn{width:auto!important;height:40px!important;min-width:0!important;padding:0 10px!important;background:transparent!important;border-radius:10px!important;box-shadow:none!important;}
@media (min-width:1180px){
  html body .ba-nav__links{position:static!important;display:flex!important;flex-direction:row!important;align-items:center!important;
    width:auto!important;max-width:none!important;height:auto!important;padding:0!important;margin:0 0 0 auto!important;gap:0!important;background:none!important;
    opacity:1!important;visibility:visible!important;transform:none!important;border:0!important;}
  html body .ba-nav__actions{margin-left:20px!important;}
  html body .ba-nav__list{flex-direction:row!important;}
}
@media (max-width:1179px){
  html body .ba-nav__links{position:fixed!important;top:var(--ba-nav-h)!important;left:0!important;right:0!important;bottom:auto!important;
    width:auto!important;max-width:none!important;height:calc(100dvh - var(--ba-nav-h))!important;margin:0!important;
    flex-direction:column!important;align-items:stretch!important;gap:20px!important;padding:12px var(--ba-gutter) 32px!important;background:#fff!important;}
  html body .ba-nav__list{flex-direction:column!important;width:auto!important;}
  html body .ba-nav__link,html body .ba-nav__groupbtn{width:100%!important;}
}
html body .ba-nav__list,html body .ba-nav__menu,html body .ba-footer ul{list-style:none!important;margin:0;padding:0;}
html body .ba-nav__list > li::before,html body .ba-footer li::before{content:none!important;}
html body .ba-footer__col,html body .ba-footer__legalnav{align-items:flex-start!important;text-align:left!important;padding:0!important;margin:0!important;background:none!important;border:0!important;justify-content:flex-start!important;}
html body .ba-footer__col a{padding:6px 0!important;margin:0!important;text-align:left!important;}
html body .ba-footer__legalnav a{padding:2px 0!important;margin:0!important;}
html body .ba-footer{margin:0!important;background:var(--ba-bg-alt)!important;color:var(--ba-ink-muted)!important;}
/* Botón flotante de WhatsApp antiguo de las páginas heredadas: lo sustituye .ba-wa */
.whatsapp-float{display:none!important;}

/* ============================================================================
   PIE
   ========================================================================== */
.ba-footer{background:var(--ba-bg-alt);border-top:1px solid var(--ba-line);padding:clamp(48px,7vw,80px) 0 28px;
  font-family:var(--ba-font-body);color:var(--ba-ink-muted);}
.ba-footer__top{display:grid;grid-template-columns:1fr;gap:36px;}
.ba-footer__home{display:inline-flex;align-items:center;gap:10px;border-radius:10px;}
.ba-footer__home:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:4px;}
.ba-footer__logo{width:40px;height:40px;border-radius:10px;object-fit:cover;display:block;}
.ba-footer__wordmark{font:700 20px/1 var(--ba-font-display);letter-spacing:-.015em;color:var(--ba-ink);}
.ba-footer__wordmark span{color:var(--ba-indigo-hover);}
.ba-footer__tag{margin-top:16px!important;max-width:40ch;font-size:15px;line-height:1.6;color:var(--ba-ink-muted);}
.ba-footer__contact{margin-top:20px!important;display:flex;flex-direction:column;gap:10px;font-size:15px;}
.ba-footer__contact li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ba-footer__contact svg{color:var(--ba-indigo);flex:none;}
.ba-footer__contact a{color:var(--ba-ink);font-weight:500;}
.ba-footer__hint{font-size:13px;color:var(--ba-ink-faint);}
.ba-footer__badges{margin-top:22px!important;display:flex;flex-wrap:wrap;gap:8px;}
.ba-footer__badges li{font:600 11.5px/1 var(--ba-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ba-ink-muted);
  padding:7px 10px;border:1px solid var(--ba-line-strong);border-radius:999px;background:#fff;}
.ba-footer__col{display:flex;flex-direction:column;gap:2px;}
.ba-footer__title{font:600 12px/1 var(--ba-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ba-ink);margin-bottom:10px!important;}
.ba-footer__col a,.ba-footer__legalnav a{color:var(--ba-ink-muted);font-size:15px;padding:6px 0;width:fit-content;
  background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:color .15s ease,background-size .25s var(--ba-ease);}
.ba-footer a:hover{color:var(--ba-indigo-hover);}
.ba-footer__col a:hover,.ba-footer__legalnav a:hover{background-size:100% 1px;}
.ba-footer a:focus-visible{outline:2px solid var(--ba-indigo);outline-offset:3px;border-radius:4px;}
.ba-footer__bottom{margin-top:clamp(40px,6vw,64px);padding-top:22px;border-top:1px solid var(--ba-line);
  display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between;font-size:13.5px;}
.ba-footer__legal{color:var(--ba-ink-faint);}
.ba-footer__aimd{display:flex;}
.ba-footer__aimd:empty{display:none;}
.ba-footer__legalnav{display:flex;flex-wrap:wrap;gap:4px 22px;}
.ba-footer__legalnav a{font-size:13.5px;padding:2px 0;}
@media (min-width:360px){ .ba-footer__top{grid-template-columns:1fr 1fr;column-gap:20px;} .ba-footer__brand{grid-column:1/-1;} }
@media (min-width:640px){ .ba-footer__top{grid-template-columns:repeat(2,1fr);} }
@media (min-width:860px){ .ba-footer__top{grid-template-columns:repeat(4,1fr);} }
@media (min-width:1024px){ .ba-footer__top{grid-template-columns:1.5fr repeat(4,1fr);gap:40px;} .ba-footer__brand{grid-column:auto;} }

/* ---------- BOTÓN FLOTANTE WHATSAPP ---------- */
.ba-wa{position:fixed;right:20px;bottom:20px;z-index:900;width:54px;height:54px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:#128C4A;color:#fff!important;
  box-shadow:0 10px 26px rgba(18,140,74,.35);transition:transform .2s var(--ba-ease),box-shadow .2s ease,opacity .2s ease;}
.ba-wa:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(18,140,74,.42);}
.ba-wa:focus-visible{outline:3px solid var(--ba-indigo);outline-offset:3px;}
@media (max-width:640px){ .ba-wa{right:14px;bottom:14px;width:50px;height:50px;} }
/* con el menú móvil abierto o el aviso de cookies en pantallas estrechas, se aparta */
html.ba-lock .ba-wa{opacity:0;pointer-events:none;}
@media (max-width:1023px){ body.cookie-open .ba-wa{opacity:0;pointer-events:none;} }

@media (prefers-reduced-motion:reduce){
  .ba-nav,.ba-nav *,.ba-footer *,.ba-wa{transition:none!important;}
}
