/* =============================================================
   EstratégicaMente · marco común de las páginas interiores (v442)
   Cabecera única, idéntica a la de la home: mismo logotipo, mismo
   menú, «Observatorio» abreviado en escritorio, botón de la sesión.
   Las clases llevan el prefijo emh- para no chocar con las reglas
   antiguas de .nav, .nav-menu y .nav-inner de style.css.
   ============================================================= */
.emh{
  --emh-campo:#FFFFFF;--emh-porcelana:#F4F6F8;--emh-linea:#E2E8EE;--emh-ink:#0A2540;--emh-mute:#5B6573;
  --emh-brasa:#FF8300;--emh-brasa-txt:#CC6900;--emh-oro:#C9A961;
  --emh-disp:'Sora','Segoe UI',system-ui,sans-serif;--emh-text:'Barlow',-apple-system,'Segoe UI',system-ui,sans-serif;--emh-mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
  --emh-gut:clamp(20px,5vw,48px);--emh-hdr:76px;
  position:sticky;top:env(safe-area-inset-top,0px);left:auto;right:auto;z-index:1000;
  display:block;width:auto;height:auto;margin:0;padding:0;box-shadow:none;
  background:var(--emh-campo);border:0;border-bottom:1px solid var(--emh-linea);
  -webkit-backdrop-filter:none;backdrop-filter:none;
  font-family:var(--emh-text);font-size:1.0625rem;line-height:1.6;color:var(--emh-ink);text-align:left;text-transform:none;letter-spacing:normal;
  -webkit-font-smoothing:antialiased
}
.emh.emh-fija{position:fixed;top:0;left:0;right:0}
.emh *,.emh *::before,.emh *::after{box-sizing:border-box}
.emh ul,.emh li{margin:0;padding:0;list-style:none}
.emh ul::before,.emh li::before,.emh li::marker{content:none}
.emh p{margin:0}
.emh a{text-decoration:none}
.emh a::after{content:none}
.emh button{font:inherit;letter-spacing:normal;text-transform:none;box-shadow:none;border-radius:0}
.emh :focus-visible{outline:3px solid var(--emh-brasa);outline-offset:3px}

.emh .emh-bar{max-width:calc(1200px + 2*var(--emh-gut));margin:0 auto;padding:0 var(--emh-gut);height:var(--emh-hdr);display:flex;align-items:center;gap:24px}
.emh .emh-lockup{display:flex;align-items:center;gap:12px;color:var(--emh-ink);flex:none}
.emh .emh-iso{width:34px;height:32px;flex:none}
.emh .emh-lk{display:flex;flex-direction:column;line-height:1}
.emh .emh-lk-name{font-family:var(--emh-disp);font-weight:500;font-size:1.3rem;letter-spacing:-.01em;color:var(--emh-ink)}
.emh .emh-m{color:var(--emh-oro)}
.emh .emh-lk-ap{font-family:var(--emh-disp);font-weight:500;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--emh-mute);margin-top:6px}

.emh .emh-nav{margin-left:auto;display:flex;align-items:center;gap:22px;position:static;background:none;padding:0;border:0}
.emh .emh-menu{display:flex;align-items:center;gap:4px}
.emh .emh-menu>li{position:relative}
.emh .emh-menu>li>a,.emh .emh-dd-b{display:flex;align-items:center;gap:8px;height:44px;padding:0 10px;white-space:nowrap;background:none;border:0;cursor:pointer;font-family:var(--emh-text);font-weight:500;font-size:.98rem;line-height:1.2;color:var(--emh-ink)}
.emh .emh-dd-b::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.emh .emh-dd-b[aria-expanded="true"]::after{transform:translateY(1px) rotate(-135deg)}
.emh .emh-menu>li>a:hover,.emh .emh-dd-b:hover,.emh .emh-menu a[aria-current="page"],.emh .emh-dd-b.emh-act{color:var(--emh-brasa-txt)}
.emh .emh-dd{position:absolute;top:calc(100% + 10px);left:0;min-width:390px;background:var(--emh-campo);border:1px solid var(--emh-linea);border-top:3px solid var(--emh-brasa);padding:16px 8px 10px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:2}
.emh .emh-dd.open{opacity:1;visibility:visible;transform:none}
.emh .emh-dd .emh-dd-t{padding:0 14px 8px;font-family:var(--emh-mono);font-size:.74rem;line-height:1.4;color:var(--emh-mute)}
.emh .emh-dd a{display:block;padding:9px 14px;color:var(--emh-ink);font-family:var(--emh-text);font-size:.97rem;line-height:1.35;font-weight:400}
.emh .emh-dd a b{font-weight:600}.emh .emh-dd a span{color:var(--emh-mute)}
.emh .emh-dd a:hover,.emh .emh-dd a[aria-current="page"]{background:var(--emh-porcelana)}
.emh .emh-lang{display:flex;gap:10px;font-family:var(--emh-mono);font-size:.8rem;line-height:1.2}
.emh .emh-lang span{color:var(--emh-ink);font-weight:500}.emh .emh-lang a{color:var(--emh-mute)}
.emh .emh-lang a:hover{color:var(--emh-ink)}

.emh .emh-cta{border-radius:10px;display:inline-flex;align-items:center;white-space:nowrap;gap:10px;min-height:42px;padding:0 18px;background:var(--emh-brasa);color:#0A2540;font-family:var(--emh-disp);font-weight:600;font-size:.93rem;line-height:1.2;border:0;cursor:pointer;transition:background-color .18s,color .18s}
.emh .emh-cta:hover{background:#0A2540;color:#FFFFFF}
.emh .emh-pt{width:.62em;height:.7em;flex:none;fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}
.emh .emh-cta:hover .emh-pt{transform:translateX(-3px);color:var(--emh-brasa)}
.emh .emh-burger{display:none;margin-left:auto;background:none;border:1px solid var(--emh-ink);color:var(--emh-ink);font:600 .9rem var(--emh-disp);height:42px;padding:0 14px;cursor:pointer}

@media (min-width:1261px){
  .emh .emh-bar{gap:18px}.emh .emh-nav{gap:16px}.emh .emh-menu{gap:14px}
  .emh .emh-bar>.emh-cta{font-size:.82rem;padding:0 14px;gap:8px}
  .emh .emh-nav .emh-cta{display:none}
  .emh .emh-informe span{font-size:0}
  .emh .emh-informe span::after{content:"Observatorio";font-size:.95rem}
  html[lang="en"] .emh .emh-informe span::after{content:"Observatory"}
}
@media (max-width:1260px){
  .emh .emh-burger{display:inline-flex;align-items:center}
  .emh .emh-bar>.emh-cta{display:none}
  .emh .emh-nav{position:fixed;inset:calc(var(--emh-hdr) + env(safe-area-inset-top,0px)) 0 0 0;background:var(--emh-campo);flex-direction:column;align-items:stretch;gap:0;padding:8px var(--emh-gut) calc(24px + env(safe-area-inset-bottom,0px));overflow:auto;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
  .emh .emh-nav.open{opacity:1;visibility:visible}
  .emh .emh-menu{flex-direction:column;align-items:stretch;gap:0}
  .emh .emh-menu>li{border-bottom:1px solid var(--emh-linea)}
  .emh .emh-menu>li>a,.emh .emh-dd-b{width:100%;height:auto;padding:18px 0;justify-content:space-between;font-family:var(--emh-disp);font-weight:700;font-size:1.3rem;letter-spacing:-.01em}
  .emh .emh-dd{position:static;min-width:0;border:0;padding:0 0 12px;display:none;opacity:1;visibility:visible;transform:none}
  .emh .emh-dd.open{display:block}.emh .emh-dd a{padding:9px 0}
  .emh .emh-lang{margin:20px 0}.emh .emh-nav .emh-cta{justify-content:center}
}
@media (max-width:420px){.emh .emh-lk-name{font-size:1.15rem}.emh .emh-lk-ap{letter-spacing:.2em}}

/* Páginas cuyo body tiene relleno lateral (verificar): la cabecera ocupa todo el ancho */
body.emh-relleno{padding-top:0!important}
body.emh-relleno .emh{align-self:stretch;margin:0 -30px 26px}

/* Cabecera en flujo (sticky): accesibilidad.css pone overflow-x:hidden en html y body, y eso
   anula position:sticky. clip recorta igual sin crear contenedor de desplazamiento. */
html:has(.emh:not(.emh-fija)),html:has(.emh:not(.emh-fija)) body{overflow-x:clip!important}

/* Barra de accesibilidad abierta: la cabecera baja con ella */
body.a11y-bar-visible .emh{top:var(--a11y-bar-h,56px)}
@media (max-width:1260px){body.a11y-bar-visible .emh .emh-nav{top:calc(var(--emh-hdr) + var(--a11y-bar-h,56px))}}
html{scroll-padding-top:calc(76px + var(--a11y-bar-h,0px) + 12px)}

/* =============================================================
   Anchos: una sola medida para todo el sitio.
   Columnas de página a 1200 px (las de la home y la cabecera);
   artículos del blog y textos legales a 1040 px (antes 720-760 px).
   ============================================================= */
html body .article-page .container-narrow,
html body .article-page .breadcrumb,
html body .article-page .article-meta,
html body .article-page h1,
html body .article-page .article-image,
html body .article-page .art-portada,
html body .article-page .article-body,
html body .art-toc,
html body .art-cta div,
html body:has(.article-page) .ia-aviso{max-width:1040px!important}
html body .article-page .article-body{width:100%}
html body .legal-content,
html body .resumen-claro,
html body .pillar-content,
html body .pillar-sidebar{max-width:1040px!important}
