:root{
  --baron-blue:#083f97;
  --baron-blue-dark:#052e70;
  --baron-green:#4aa52e;
  --baron-whatsapp:#25d366;
  --baron-utility:#26282d;
  --baron-text:#202632;
  --baron-muted:#667085;
  --baron-border:#d9e0e8;
  --baron-bg-soft:#f5f8fb;
  --baron-white:#fff;
  --baron-radius:10px;
  --baron-container:1320px;
  --baron-content:820px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;max-width:100%;overflow-x:clip}
body{width:100%;max-width:100%;overflow-x:clip;margin:0;background:#fff;color:var(--baron-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}
img,svg{max-width:100%;height:auto}
a{color:var(--baron-blue);text-underline-offset:.15em}
button,input,select,textarea{font:inherit}
.baron-container{width:min(100% - 32px,var(--baron-container));margin-inline:auto}
.baron-container--content{width:min(100% - 32px,var(--baron-content))}

/* Header: barra superior discreta */
.baron-header{position:sticky;top:0;z-index:100}
body.admin-bar .baron-header{top:32px}
.utility-bar{min-height:32px;background:var(--baron-utility);color:rgba(255,255,255,.78);font-size:.83rem;line-height:1.25}
.utility-bar__inner{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.utility-navigation{min-width:0}
.utility-menu,.mobile-utility-menu,.primary-menu,.footer-menu{list-style:none;margin:0;padding:0}
.utility-menu{display:flex;align-items:center;gap:20px;white-space:nowrap}
.utility-menu a{color:rgba(255,255,255,.74);text-decoration:none;transition:color .15s ease}
.utility-menu a:hover,.utility-menu a:focus-visible{color:#fff}
.utility-contact{display:flex;align-items:center;gap:14px;white-space:nowrap}
.utility-contact a{color:rgba(255,255,255,.82);text-decoration:none}
.utility-contact__phone{display:flex;gap:5px;align-items:baseline}
.utility-contact__phone strong{color:#fff;font-weight:650}
.utility-contact__wa{display:inline-flex;align-items:center;gap:5px}
.utility-contact__wa svg{width:16px;height:16px;fill:var(--baron-whatsapp)}

/* Header principal */
.site-header{position:relative;background:var(--baron-blue);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.06) inset}
.site-header__inner{min-height:84px;display:flex;align-items:center;gap:clamp(22px,2.2vw,38px)}
.site-brand{display:flex;align-items:center;flex:0 0 auto;min-width:150px}
.site-brand .custom-logo-link{display:inline-flex;align-items:center;text-decoration:none}
.site-brand .custom-logo{display:block;width:auto;max-width:180px;max-height:58px}
.site-brand__fallback{display:flex;flex-direction:column;justify-content:center;color:#fff;text-decoration:none;line-height:1}
.site-brand__name{font-size:2.35rem;font-weight:800;letter-spacing:.01em}
.site-brand__tagline{margin-top:7px;font-size:.55rem;font-weight:700;letter-spacing:.32em;text-transform:uppercase}

.primary-navigation{margin-left:auto;align-self:stretch;display:flex;align-items:center;min-width:0}
.primary-menu{display:flex;align-items:stretch;height:100%;gap:clamp(14px,1.6vw,26px)}
.primary-menu>li{position:relative;display:flex;align-items:center}
.primary-menu a{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;font-size:clamp(.88rem,1vw,1.02rem);font-weight:600;line-height:1.2;white-space:nowrap;transition:opacity .15s ease}
.primary-menu>li>a:hover,.primary-menu>li>a:focus-visible{opacity:.8}
.primary-menu .current-menu-item>a,.primary-menu .current-menu-ancestor>a{font-weight:750}
.submenu-toggle{display:inline-grid;place-items:center;width:26px;height:34px;margin-left:1px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;border-radius:6px}
.submenu-toggle:hover,.submenu-toggle:focus-visible{background:rgba(255,255,255,.1)}
.submenu-toggle span{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s ease}
.menu-item-has-children.submenu-open>.submenu-toggle span{transform:translateY(2px) rotate(225deg)}

.primary-menu>li>.sub-menu{position:absolute;top:100%;left:-14px;z-index:30;width:min(320px,88vw);max-height:min(70vh,620px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;margin:0;padding:8px;list-style:none;background:#fff;border:1px solid rgba(17,35,55,.12);border-radius:9px;box-shadow:0 18px 45px rgba(9,27,54,.17);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(7px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease}
.primary-menu>li:hover>.sub-menu,.primary-menu>li:focus-within>.sub-menu,.primary-menu>li.submenu-open>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.primary-menu .sub-menu li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.primary-menu .sub-menu a{grid-column:1;display:block;min-height:0;padding:9px 11px;border-radius:6px;color:var(--baron-text);font-size:.9rem;font-weight:540;line-height:1.3;white-space:normal}
.primary-menu .sub-menu a:hover,.primary-menu .sub-menu a:focus-visible{background:#f3f6fa;color:var(--baron-blue-dark);opacity:1}
.primary-menu .sub-menu .submenu-toggle{grid-column:2;color:var(--baron-blue-dark);margin-right:4px}
.primary-menu .sub-menu .sub-menu{position:static;grid-column:1/-1;display:none;min-width:0;max-width:none;max-height:none;overflow:visible;margin:1px 4px 7px 10px;padding:4px 0 4px 10px;list-style:none;background:#f8fafc;border:0;border-left:2px solid #dce5ef;border-radius:0;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:none}
.primary-menu .sub-menu li:hover>.sub-menu,.primary-menu .sub-menu li:focus-within>.sub-menu,.primary-menu .sub-menu li.submenu-open>.sub-menu{display:block}
.primary-menu .sub-menu .sub-menu a{padding:8px 9px;font-size:.86rem;color:#4b596b}

.mobile-actions,.nav-toggle,.mobile-nav-utility{display:none}
.nav-toggle{width:38px;height:38px;padding:8px;border:0;border-radius:8px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.nav-toggle__line{display:block;width:21px;height:2px;margin:4px auto;background:currentColor;border-radius:2px;transition:transform .15s ease,opacity .15s ease}
.nav-toggle.is-open .nav-toggle__line:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle.is-open .nav-toggle__line:nth-child(2){opacity:0}
.nav-toggle.is-open .nav-toggle__line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* Contenido */
.baron-main{min-height:50vh;padding-block:clamp(36px,5vw,72px)}
.baron-main--calculator{background:var(--baron-bg-soft)}
.baron-container--calculator{width:min(100% - 24px,980px)}
.baron-entry__title{margin:0 0 24px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.08;color:var(--baron-blue-dark)}
.baron-entry__meta{margin:-8px 0 26px;color:var(--baron-muted);font-size:.9rem}
.baron-content>:first-child{margin-top:0}
.baron-content>:last-child{margin-bottom:0}
.baron-content h2,.baron-content h3{color:var(--baron-blue-dark);line-height:1.2}
.baron-content h2{margin-top:2.25em;font-size:clamp(1.55rem,3vw,2.2rem)}
.baron-content h3{margin-top:1.8em;font-size:clamp(1.25rem,2.5vw,1.6rem)}

/* Contenido legacy responsive: evita que captions/imágenes antiguas de 1200px ensanchen el viewport */
.baron-entry,.baron-content{min-width:0}
.baron-content img{max-width:100%;height:auto}
.baron-content figure,.baron-content .wp-caption{max-width:100%!important}
.baron-content .wp-caption[style]{width:auto!important}
.baron-content figure img,.baron-content .wp-caption img{display:block;max-width:100%;height:auto}
.baron-content .wp-caption-text,.baron-content figcaption{max-width:100%;font-size:.82rem;line-height:1.45;color:var(--baron-muted)}
.baron-content iframe,.baron-content video,.baron-content embed,.baron-content object{max-width:100%}
.baron-content table{max-width:100%}

.baron-button,.wp-element-button,button,input[type="submit"]{border:0;border-radius:8px;background:var(--baron-green);color:#fff;padding:11px 18px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}

/* Footer */
.site-footer{padding:34px 0 18px;background:var(--baron-blue-dark);color:#fff}
.site-footer a{color:rgba(255,255,255,.82)}
.site-footer a:hover,.site-footer a:focus-visible{color:#fff}

.site-footer__main{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(190px,.8fr) minmax(180px,.65fr) minmax(260px,1fr);align-items:start;gap:clamp(24px,3vw,42px)}
.site-footer__brandwrap{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.site-footer__brand{padding-top:1px}
.site-footer__brand .custom-logo-link{display:inline-flex;align-items:center}
.site-footer__brand .custom-logo{display:block;width:auto;max-width:188px;max-height:72px}
.site-footer__brand-fallback{display:inline-flex;flex-direction:column;color:#fff;text-decoration:none;line-height:1}
.site-footer__brand-fallback strong{font-size:2.2rem}
.site-footer__brand-fallback span{margin-top:6px;font-size:.58rem;letter-spacing:.28em;text-transform:uppercase}

.site-footer__brandrow{display:flex;align-items:flex-start;gap:16px}
.footer-quality-seal{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:rgba(255,255,255,.76)!important;text-decoration:none;flex:0 0 auto}
.footer-quality-seal__badge{display:grid;place-items:center;width:58px;min-width:58px;height:58px;padding:6px;background:#fff;border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.footer-quality-seal img{display:block;width:100%;height:auto;filter:none}
.footer-quality-seal__text{font-size:.64rem;line-height:1.25;text-align:center;max-width:92px}
.footer-quality-seal:hover .footer-quality-seal__text,.footer-quality-seal:focus-visible .footer-quality-seal__text{color:#fff;text-decoration:underline;text-underline-offset:.16em}

.footer-block h2{margin:0 0 10px;color:#fff;font-size:.93rem;line-height:1.25}
.footer-block p{margin:0;color:rgba(255,255,255,.7);font-size:.8rem;line-height:1.55}
.footer-app-copy{margin-bottom:9px!important}
.footer-app-cta{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:170px;padding:9px 11px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.045);color:#fff!important;text-decoration:none}
.footer-app-cta:hover,.footer-app-cta:focus-visible{background:rgba(255,255,255,.085)}
.footer-app-cta__eyebrow{font-size:.62rem;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.58)}
.footer-app-cta__titleline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.footer-app-cta strong{font-size:.84rem;line-height:1.25}
.footer-app-storeicons{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.86)}
.footer-app-storeicon{display:grid;place-items:center;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.08)}
.footer-app-storeicon svg{width:12px;height:12px;fill:currentColor}

.footer-contact-list{list-style:none;margin:0;padding:0}
.footer-contact-list li+li{margin-top:8px}
.footer-contact-list a{display:flex;align-items:flex-start;gap:8px;color:rgba(255,255,255,.74);text-decoration:none;font-size:.8rem;line-height:1.4}
.footer-contact-list svg{flex:0 0 auto;width:16px;height:16px;margin-top:1px;fill:rgba(255,255,255,.7)}
.footer-contact-list a:hover svg,.footer-contact-list a:focus-visible svg{fill:#fff}
.footer-contact-list .footer-contact-wa svg{fill:var(--baron-whatsapp)}

.site-footer__bottom{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:18px;margin-top:28px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.58)}
.site-footer__legal{max-width:720px}
.site-footer__legal p{margin:0;color:inherit;font-size:.68rem;line-height:1.45}
.site-footer__legal p+p{margin-top:2px}
.footer-required-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 12px}
.footer-required-links a{color:rgba(255,255,255,.67);text-decoration:none;font-size:.68rem;white-space:nowrap}
.footer-required-links a:hover,.footer-required-links a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:.16em}

.footer-back-top{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#fff;text-decoration:none;font-size:.75rem;font-weight:650;background:rgba(255,255,255,.04);white-space:nowrap}
.footer-back-top:hover,.footer-back-top:focus-visible{background:rgba(255,255,255,.09)}
.footer-back-top svg{width:15px;height:15px;fill:currentColor}

@media(max-width:782px){
  body.admin-bar .baron-header{top:46px}
}

@media(max-width:1020px){
  .utility-bar{display:none}
  .baron-container{width:min(100% - 24px,var(--baron-container))}
  .site-header__inner{min-height:64px;gap:8px;padding:0}
  .site-brand{min-width:0;margin-right:auto}
  .site-brand .custom-logo{max-width:122px;max-height:44px}
  .site-brand__name{font-size:1.8rem}
  .site-brand__tagline{font-size:.44rem;margin-top:5px}
  .mobile-actions{display:flex;align-items:center;gap:6px}
  .header-action{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.08);text-decoration:none}
  .header-action:hover,.header-action:focus-visible{background:rgba(255,255,255,.15)}
  .header-action svg{width:19px;height:19px}
  .header-action--phone svg{fill:#fff}
  .header-action--wa svg{fill:var(--baron-whatsapp)}
  .nav-toggle{display:block;flex:0 0 auto}

  .primary-navigation{position:absolute;top:100%;left:0;right:0;z-index:90;display:block;max-height:0;overflow:hidden;margin:0;background:#fff;color:var(--baron-text);box-shadow:0 18px 35px rgba(6,28,65,.18);visibility:hidden;opacity:0;transition:max-height .22s ease,opacity .16s ease,visibility .16s ease}
  .primary-navigation.is-open{max-height:calc(100vh - 64px);overflow-y:auto;visibility:visible;opacity:1}
  .primary-menu{display:block;height:auto;padding:8px 18px 10px}
  .primary-menu>li{display:grid;grid-template-columns:1fr auto;align-items:center;border-bottom:1px solid #e9edf2}
  .primary-menu>li:last-child{border-bottom:0}
  .primary-menu a{display:block;min-height:0;padding:13px 2px;color:var(--baron-text);font-size:1rem;font-weight:650;white-space:normal}
  .primary-menu>li>a:hover,.primary-menu>li>a:focus-visible{color:var(--baron-blue);opacity:1}
  .submenu-toggle{display:grid;grid-column:2;width:38px;height:38px;margin:0;color:var(--baron-blue-dark);background:#f3f6fa}
  .menu-item-has-children>.sub-menu{grid-column:1/-1}
  .primary-menu .sub-menu{position:static;display:none;min-width:0;max-width:none;max-height:none;overflow:visible;margin:0 0 8px;padding:0 0 5px 14px;background:transparent;border:0;border-left:2px solid #e3e9f1;border-radius:0;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:none}
  .primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu{display:none}
  .primary-menu li.submenu-open>.sub-menu{display:block}
  .primary-menu .sub-menu li{display:grid;grid-template-columns:1fr auto}
  .primary-menu .sub-menu a{padding:9px 8px;color:#465365;font-size:.93rem}
  .primary-menu .sub-menu .sub-menu{margin-left:8px;padding-left:12px}

  .mobile-nav-utility{display:block;padding:14px 20px 20px;background:#f5f7fa;border-top:1px solid #e4e9ef}
  .mobile-utility-menu{display:flex;flex-wrap:wrap;gap:7px 16px;margin-bottom:14px}
  .mobile-utility-menu a{color:#5c6776;text-decoration:none;font-size:.83rem}
  .mobile-nav-contact{display:flex;flex-wrap:wrap;gap:8px}
  .mobile-nav-contact>a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:7px 11px;border:1px solid #d8e0e9;border-radius:8px;background:#fff;color:var(--baron-blue-dark);text-decoration:none;font-size:.88rem;font-weight:650}
  .mobile-nav-contact svg{width:18px;height:18px;fill:var(--baron-blue)}
  .mobile-nav-contact a:last-child svg{fill:var(--baron-whatsapp)}
  .mobile-nav-contact small{display:block;color:var(--baron-muted);font-size:.68rem;font-weight:500;line-height:1.1}
  html.baron-nav-open{overflow:hidden}

  .site-footer{padding-top:28px}
  .site-footer__main{grid-template-columns:1fr 1fr;gap:24px 28px}
  .site-footer__brandrow{gap:14px}
  .site-footer__brand .custom-logo{max-width:164px;max-height:62px}
  .footer-quality-seal__badge{width:54px;min-width:54px;height:54px;padding:6px}
  .footer-quality-seal__text{font-size:.62rem;max-width:80px}
  .site-footer__bottom{grid-template-columns:1fr;align-items:start;gap:12px;margin-top:24px}
  .footer-required-links{justify-content:flex-start}
  .footer-back-top{justify-self:start}

  /* En móvil ningún medio legacy puede imponer un ancho superior al contenido */
  .baron-main{padding-block:28px 44px}
  .baron-container--content{width:min(100% - 24px,var(--baron-content))}
  .baron-content figure,.baron-content .wp-caption{width:auto!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
  .baron-content .alignleft,.baron-content .alignright{float:none!important;margin-left:0!important;margin-right:0!important;max-width:100%!important}
  .baron-content h2:has(> img:only-child){margin:1.4rem 0;font-size:0;line-height:0}
  .baron-content h2>img:only-child{display:block;width:100%;height:auto}
}

@media(max-width:520px){
  .site-footer__main{grid-template-columns:1fr}
  .site-footer__brandrow{align-items:center}
  .footer-quality-seal{gap:5px}
  .footer-quality-seal__badge{width:50px;min-width:50px;height:50px;padding:5px}
  .footer-quality-seal__text{font-size:.6rem;max-width:74px}
}

@media(max-width:390px){
  .baron-container{width:min(100% - 18px,var(--baron-container))}
  .site-brand .custom-logo{max-width:108px}
  .header-action,.nav-toggle{width:34px;height:34px}
  .mobile-actions{gap:4px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* ==========================================================
   0.5.0 · Mega menú de catálogo
   ========================================================== */
.primary-menu{position:relative}
.primary-menu>.baron-mega-item{position:static}

/* CTA discreto: sigue perteneciendo al menú, no compite con los heroes. */
.primary-menu>.baron-life-cta>a{
  min-height:36px;
  padding:0 11px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  font-size:.83rem;
  font-weight:650;
}
.primary-menu>.baron-life-cta>a:hover,
.primary-menu>.baron-life-cta>a:focus-visible{
  background:rgba(255,255,255,.15);
  opacity:1;
}

.baron-mega-panel{
  position:absolute;
  top:100%;
  right:0;
  z-index:45;
  width:min(1100px,calc(100vw - 48px));
  max-height:min(76vh,720px);
  overflow:auto;
  margin-top:0;
  padding:18px 20px 20px;
  background:#fff;
  border:1px solid rgba(17,35,55,.12);
  border-radius:0 0 12px 12px;
  box-shadow:0 22px 48px rgba(9,27,54,.18);
  color:var(--baron-text);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
}
.baron-mega-item:hover>.baron-mega-panel,
.baron-mega-item:focus-within>.baron-mega-panel,
.baron-mega-item.submenu-open>.baron-mega-panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.baron-mega-panel__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 2px 13px;
  margin-bottom:14px;
  border-bottom:1px solid #e7ecf2;
}
.baron-mega-panel__head>div{display:flex;flex-direction:column;gap:2px}
.baron-mega-panel__eyebrow{
  color:#778496;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.baron-mega-panel__head strong{
  color:var(--baron-blue-dark);
  font-size:1.12rem;
  line-height:1.22;
}
.baron-mega-panel__all{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px!important;
  padding:5px 9px!important;
  border-radius:7px;
  background:#f2f6fb;
  color:var(--baron-blue-dark)!important;
  font-size:.78rem!important;
  font-weight:700!important;
  text-decoration:none;
}
.baron-mega-panel__all:hover,
.baron-mega-panel__all:focus-visible{background:#e8f0fa}

.baron-mega-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px 24px;
}
.baron-mega-group{min-width:0}
.baron-mega-group__title{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin-bottom:8px;
  padding:5px 11px;
  border-radius:999px;
  background:#eef4ff;
  color:#345377;
  font-size:.74rem;
  font-weight:780;
  line-height:1.2;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.baron-mega-group__title--link{
  min-height:28px!important;
  color:var(--baron-blue-dark)!important;
  text-decoration:none;
}
.baron-mega-group__title--link:hover,
.baron-mega-group__title--link:focus-visible{
  background:#e3eeff;
  text-decoration:none;
}

.baron-mega-links{list-style:none;margin:0;padding:0}
.baron-mega-links li+li{margin-top:1px}
.primary-menu .baron-mega-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:0;
  padding:6px 7px;
  border-radius:6px;
  color:#26384e;
  font-size:.82rem;
  font-weight:550;
  line-height:1.28;
  white-space:normal;
}
.primary-menu .baron-mega-links a:hover,
.primary-menu .baron-mega-links a:focus-visible{
  background:#f3f7fb;
  color:var(--baron-blue-dark);
  opacity:1;
}
.baron-mega-link-arrow{
  flex:0 0 auto;
  color:#9aa7b7;
  font-size:1rem;
}

/* Buscador de fichas: sin AJAX, sin API, sin petición adicional. */
.baron-menu-search{
  position:relative;
  flex:0 0 auto;
  margin-left:8px;
}
.baron-menu-search__toggle{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:1px solid rgba(255,255,255,.18);
  border-radius:9px;
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
}
.baron-menu-search__toggle:hover,
.baron-menu-search__toggle:focus-visible,
.baron-menu-search__toggle[aria-expanded="true"]{
  background:rgba(255,255,255,.14);
}
.baron-menu-search__toggle svg{width:17px;height:17px;fill:currentColor}
.baron-menu-search__toggle span{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.baron-product-search-panel{
  position:absolute;
  top:calc(100% + 24px);
  right:0;
  z-index:55;
  width:min(520px,calc(100vw - 32px));
  padding:16px;
  border:1px solid #d8e0e9;
  border-radius:11px;
  background:#fff;
  box-shadow:0 22px 48px rgba(9,27,54,.2);
  color:var(--baron-text);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(7px);
  transition:opacity .13s ease,transform .13s ease,visibility .13s ease;
}
.baron-product-search-panel.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
.baron-product-search__label{
  display:block;
  margin-bottom:10px;
  color:var(--baron-blue-dark);
  font-size:.98rem;
  font-weight:780;
  line-height:1.25;
}
.baron-product-search__field{
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 11px;
  border:1px solid #cfd9e5;
  border-radius:8px;
  background:#fff;
}
.baron-product-search__field:focus-within{
  border-color:#7da5d8;
  box-shadow:0 0 0 3px rgba(8,63,151,.08);
}
.baron-product-search__field svg{
  width:17px;
  height:17px;
  flex:0 0 auto;
  fill:#708096;
}
.baron-product-search__field input{
  width:100%;
  min-width:0;
  padding:10px 0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--baron-text);
}
.baron-product-search__status{
  padding:10px 2px 3px;
  color:#7a8798;
  font-size:.75rem;
}
.baron-product-search__results{
  max-height:330px;
  overflow:auto;
  margin-top:5px;
}
.baron-product-search-result{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 8px;
  border-radius:7px;
  color:var(--baron-text);
  text-decoration:none;
}
.baron-product-search-result:hover,
.baron-product-search-result:focus-visible{
  background:#f3f7fb;
  color:var(--baron-blue-dark);
}
.baron-product-search-result__copy{min-width:0}
.baron-product-search-result__title{
  display:block;
  font-size:.86rem;
  font-weight:680;
  line-height:1.25;
}
.baron-product-search-result__meta{
  display:block;
  margin-top:2px;
  color:#758397;
  font-size:.7rem;
  line-height:1.25;
}
.baron-product-search-result__arrow{color:#9aa7b7}
.baron-product-search-empty{
  padding:13px 8px 7px;
  color:#667085;
  font-size:.82rem;
}

@media(max-width:1180px) and (min-width:1021px){
  .primary-menu{gap:10px}
  .primary-menu a{font-size:.86rem}
  .primary-menu>.baron-life-cta>a{font-size:.78rem;padding-inline:9px}
  .baron-mega-panel{width:min(980px,calc(100vw - 32px))}
}

@media(max-width:1020px){
  .primary-menu>.baron-mega-item{position:relative}
  .primary-menu>.baron-life-cta>a{
    display:inline-flex;
    min-height:36px;
    margin:8px 0;
    padding:8px 11px;
    border-color:#d5e0ed;
    background:#f1f6fc;
    color:var(--baron-blue-dark);
  }

  .baron-mega-panel{
    position:static;
    grid-column:1/-1;
    display:none;
    width:auto;
    max-height:none;
    overflow:visible;
    margin:0 0 10px;
    padding:13px 0 4px 14px;
    border:0;
    border-left:2px solid #dce6f1;
    border-radius:0;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    transition:none;
  }
  .baron-mega-item:hover>.baron-mega-panel,
  .baron-mega-item:focus-within>.baron-mega-panel{display:none}
  .baron-mega-item.submenu-open>.baron-mega-panel{display:block}

  .baron-mega-panel__head{
    align-items:flex-start;
    padding:0 8px 10px;
    margin-bottom:9px;
  }
  .baron-mega-panel__head strong{font-size:1rem}
  .baron-mega-panel__all{font-size:.73rem!important}
  .baron-mega-grid{grid-template-columns:1fr;gap:12px}
  .baron-mega-group__title{padding-inline:8px}
  .primary-menu .baron-mega-links a{
    padding:7px 8px;
    font-size:.86rem;
  }

  .baron-menu-search{
    margin:4px 18px 11px;
  }
  .baron-menu-search__toggle{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    height:auto;
    min-height:42px;
    padding:9px 11px;
    border-color:#d8e1eb;
    background:#f4f7fb;
    color:var(--baron-blue-dark);
  }
  .baron-menu-search__toggle span{
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    overflow:visible!important;
    clip:auto!important;
    white-space:normal!important;
    font-size:.88rem;
    font-weight:700;
  }
  .baron-product-search-panel{
    position:static;
    display:none;
    width:100%;
    margin-top:7px;
    padding:12px;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  .baron-product-search-panel.is-open{display:block}
}

@media(max-width:600px){
  .baron-mega-panel__head{gap:10px}
  .baron-mega-panel__all{white-space:nowrap}
}

/* ==========================================================
   0.6.2 · Icono global Barón
   Reutilizable en catálogo, Home y módulos futuros.
   ========================================================== */
.baron-icon-badge{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid #d8e5f3;
  border-radius:14px;
  background:linear-gradient(145deg,#fff 0%,#f6faff 100%);
  color:#0b4fa5;
  box-shadow:0 7px 18px rgba(13,52,98,.075);
}
.baron-icon-badge svg{
  display:block;
  width:52%;
  height:52%;
  fill:currentColor;
}
.baron-icon-badge--sm{width:38px;height:38px;border-radius:11px}
.baron-icon-badge--md{width:46px;height:46px;border-radius:13px}
.baron-icon-badge--lg{width:56px;height:56px;border-radius:15px}

@media(max-width:720px){
  .baron-icon-badge--lg{width:50px;height:50px;border-radius:14px}
}


/* 0.7.0 · Redes sociales discretas en el footer */
.footer-social{display:flex;align-items:center;gap:7px;margin-top:2px}
.footer-social a{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.78);text-decoration:none}
.footer-social a:hover,.footer-social a:focus-visible{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.28)}
.footer-social svg{display:block;width:15px;height:15px;fill:currentColor}

/* 0.7.3 · Acceso App y redes sociales definitivas */
.footer-app-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.footer-app-actions .footer-app-cta{min-width:0}
.footer-app-actions .footer-app-cta--secondary{background:rgba(255,255,255,.035)}
@media(max-width:680px){.footer-app-actions{grid-template-columns:1fr}}

/* --------------------------------------------------------------------------
 * v0.7.13 · Footer centrado exclusivamente en móvil
 * -------------------------------------------------------------------------- */
@media(max-width:680px){
  .site-footer{
    text-align:center;
  }
  .site-footer__main{
    grid-template-columns:1fr;
    justify-items:center;
    gap:28px;
  }
  .site-footer__brandwrap,
  .footer-block{
    width:100%;
    align-items:center;
    text-align:center;
  }
  .site-footer__brandrow{
    justify-content:center;
    align-items:flex-start;
    width:100%;
  }
  .footer-social{
    justify-content:center;
  }
  .footer-app-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    width:100%;
    max-width:430px;
    margin-inline:auto;
  }
  .footer-app-cta{
    width:100%;
    min-width:0;
    align-items:center;
    text-align:center;
  }
  .footer-contact-list{
    width:min(100%,520px);
    margin-inline:auto;
  }
  .footer-contact-list a{
    justify-content:center;
    align-items:flex-start;
    text-align:center;
  }
  .site-footer__bottom{
    justify-items:center;
    text-align:center;
  }
  .site-footer__legal{
    margin-inline:auto;
  }
  .footer-required-links{
    justify-content:center;
  }
  .footer-back-top{
    justify-self:center;
  }
}


/* --------------------------------------------------------------------------
 * v0.7.21 · Hotfix post-producción: viewport, marca y navegación Blog
 * -------------------------------------------------------------------------- */
.site-header,.utility-bar,.baron-main,.site-footer{width:100%;max-width:100%;min-width:0}
.baron-container{max-width:calc(100% - 32px);min-width:0}
.site-header__inner,.primary-navigation,.primary-menu{min-width:0;max-width:100%}
.site-brand__fallback{min-width:0}
.site-brand__name{color:#fff}
.site-brand__tagline{color:rgba(255,255,255,.88)}
.primary-menu>li:not(.menu-item-has-children)>.submenu-toggle{display:none!important}
@media(max-width:1020px){
  .baron-container{max-width:calc(100% - 24px)}
  .site-brand__fallback{padding-top:2px}
}
