/* Mega menú (docs/mega_menu.md): cabecera en tres zonas (logo | menú centrado | acciones), paneles de «papel» con vista previa, paleta de búsqueda y hoja móvil.
   Mismos tokens que el sistema de diseño (papel y tinta de la v7). Sin JS: los paneles se abren con :hover/:focus-within y los padres son enlaces. Con «reducir movimiento» no hay transiciones ni animaciones. */

:root{--v7-paper:#FBFAF6;--v7-ink:#0E1A33;--v7-rule:#D9D4C7;--v7-hard:#0E1A33}   /* mismos valores que v7.css: la portada v6 no carga v7.css y el menú no puede depender de ella */
@media (prefers-color-scheme:dark){:root{--v7-paper:#111B33;--v7-ink:#E6EBF7;--v7-rule:#2A3858;--v7-hard:#050A16}}
/* ---- Cabecera: el menú queda en el centro REAL de la ventana (columnas laterales iguales) ---- */
.top .bar{position:relative;display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;gap:16px}
.top .bar>.brand{justify-self:start}.top .bar>nav.main.mm{justify-self:center;flex-grow:0}.top .bar>.right{justify-self:end;gap:12px}
nav.main.mm{display:flex;align-items:center;gap:0}
.mm-item{display:flex;align-items:center}
nav.main .mm-link{padding:8px 3px 8px 12px;border-radius:var(--r-sm);white-space:nowrap}
nav.main .mm-item:not(:has(.mm-btn)) .mm-link{padding-right:12px}
nav.main.mm>.mm-item>.mm-link[aria-current]{background:transparent;color:var(--accent);border-bottom-color:transparent;font-weight:600}
.home4 .top nav.main.mm>.mm-item>.mm-link[aria-current]{color:#fff;background:transparent;border-bottom-color:transparent}
.mm-btn{width:26px;height:36px;margin-left:-2px;border:0;border-radius:8px;background:transparent;color:inherit;cursor:pointer;display:grid;place-items:center;opacity:.75}
.home4 .top .mm-btn{color:#fff}.mm-btn:hover{opacity:1}.mm-btn:focus-visible{outline:3px solid var(--accent);outline-offset:1px;opacity:1}.home4 .top .mm-btn:focus-visible{outline-color:#fff}
.mm-btn svg{transition:transform .2s}.mm-item.open .mm-btn svg{transform:rotate(180deg)}
html:not(.js) .mm-btn{display:none}
/* indicador de ruta: una línea que se desliza bajo la sección actual (o bajo la que tocas) */
.mm-ink{position:absolute;left:0;top:calc(50% + 15px);height:3px;width:var(--w,0);border-radius:3px;background:var(--accent);opacity:0;transform:translateX(var(--x,0));pointer-events:none}
.mm-ink.on{opacity:1}.home4 .top .mm-ink{background:#fff}
@media (prefers-reduced-motion:no-preference){.mm-ink.go{transition:transform .28s var(--ease),width .28s var(--ease),opacity .2s}}

/* ---- Paneles ---- */
.mm-panel{position:absolute;left:50%;top:calc(100% + 6px);width:min(980px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow:auto;overscroll-behavior:contain;padding:16px;border:1.5px solid var(--v7-ink);border-radius:var(--r-lg);background:var(--v7-paper);color:var(--ink);box-shadow:6px 6px 0 var(--v7-hard);z-index:60;visibility:hidden;opacity:0;transform:translate(-50%,6px);text-align:left}
.mm-panel::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.mm-item.open>.mm-panel,html:not(.js) .mm-item:hover>.mm-panel,html:not(.js) .mm-item:focus-within>.mm-panel{visibility:visible;opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:no-preference){.mm-panel{transition:opacity .18s ease,transform .22s var(--ease),visibility 0s linear .22s}.mm-item.open>.mm-panel{transition-delay:0s}}
.mm-para{width:min(860px,calc(100vw - 32px))}.mm-blogp{width:min(960px,calc(100vw - 32px))}
.mm-mods,.mm-sits,.mm-tools,.mm-links,.mm-cats,.mm-recent,.mm-route{list-style:none;margin:0;padding:0}
.top nav.main .mm-panel a{display:flex;align-items:center;gap:12px;padding:10px;border:0;border-radius:var(--r-md);background:transparent;color:var(--ink);font-size:14.5px;font-weight:500;text-decoration:none}
.top nav.main .mm-panel a:hover,.top nav.main .mm-panel a:focus-visible,.top nav.main .mm-panel a[aria-current]{background:var(--soft);color:var(--ink);border:0}
.top nav.main .mm-panel a[aria-current="page"]{box-shadow:inset 3px 0 0 var(--accent)}
.top nav.main .mm-panel a:focus-visible{outline:3px solid var(--accent);outline-offset:-2px}
.mm-panel b{display:block;font:600 15px/1.25 var(--head)}
.mm-panel small{display:block;font-size:12.5px;line-height:1.4;color:var(--muted);margin-top:2px}
.mm-tx{min-width:0;display:block}
.mm-ic{flex:none;width:40px;height:40px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--mc-soft,var(--accent-soft));color:var(--mc-ink,var(--accent))}.mm-ic.sm{width:34px;height:34px;border-radius:10px}
.top nav.main .mm-panel a.mm-foot{margin-top:10px;padding:12px 10px 4px;border-top:1px solid var(--line);border-radius:0;font-weight:600;color:var(--accent);justify-content:flex-start}
.top nav.main .mm-panel a.mm-foot:hover{background:transparent;text-decoration:underline}
.mm-lead{margin:2px 0 12px;font-size:14px;color:var(--muted)}
.mm-h{display:flex;flex-direction:column;gap:1px;margin:2px 0 8px;font:700 12px var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.mm-h span{font:400 12.5px var(--body);letter-spacing:0;text-transform:none}

/* «Empieza por tu situación» */
.mm-sit{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;padding-bottom:12px;border-bottom:1px dashed var(--v7-rule)}
.mm-sit-l{margin-right:4px;font:700 12px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mm-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1.5px solid var(--v7-ink);border-radius:var(--r-pill);background:transparent;color:var(--ink);font:600 13px/1 var(--body);cursor:pointer}
.mm-chip:hover{background:var(--accent-soft)}.mm-chip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.mm-chip[aria-pressed="true"]{background:var(--v7-ink);color:var(--v7-paper)}
html:not(.js) .mm-sit{display:none}
/* el resalte es CSS puro: html[data-mm-sit] lo pone menu.js y cada elemento declara a quién sirve (data-mm-for) */

/* ---- Producto: lista de módulos + vista previa que cambia ---- */
.mm-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:20px;align-items:start}
.mm-mods{display:grid;gap:2px}
.top nav.main .mm-panel a.mm-mod{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:9px 10px}
.top nav.main .mm-panel a.mm-mod:hover,.top nav.main .mm-panel a.mm-mod:focus-visible,.top nav.main .mm-panel a.mm-mod.on{background:var(--mc-soft)}
.top nav.main .mm-panel a.mm-mod.on{box-shadow:inset 3px 0 0 var(--mc)}
.mm-mod small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mm-o{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:50%;border:1.5px solid var(--v7-ink);font:700 12px var(--head);color:var(--v7-ink);background:var(--v7-paper);transform:rotate(-8deg)}.mm-o:empty{display:none}
.mm-pv{position:relative;min-height:420px}
.mm-pvi{position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;visibility:hidden;opacity:0;pointer-events:none}
.mm-pvi[data-on]{visibility:inherit;opacity:1;pointer-events:auto}      /* inherit: con el panel cerrado (visibility:hidden) la vista previa activa no debe interceptar clics */
.mm-pvh{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.mm-pvh b{font:700 20px var(--head);letter-spacing:-.02em}
.mm-price{font:700 18px var(--head);color:var(--mc-ink)}
.mm-note{margin:-2px 0 0;font-size:13px;color:var(--muted)}
.mm-screen{position:relative;flex:1;min-height:0;border-radius:var(--r-md);background:var(--mc-soft);padding:14px 14px 0;overflow:hidden}
.mm-screen::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(transparent,var(--mc-soft));pointer-events:none}
.mm-win{font-size:12px;box-shadow:var(--shadow);border-radius:10px 10px 0 0;border:1px solid var(--line)}
.mm-win .bar2{padding:8px 12px}.mm-win .bar2 span{padding:2px 10px;font-size:11px}
.mm-b{display:flex;flex-direction:column;gap:9px;padding:14px;min-height:220px}
.mm-b.mm-two{flex-direction:row}.mm-two>.paper{flex:0 0 38%;position:relative;overflow:hidden}.mm-col{flex:1;display:flex;flex-direction:column;gap:9px;min-width:0}
.mm-b .row{display:flex;justify-content:space-between;align-items:center;gap:8px}.mm-b .mh{font:700 14px var(--head)}
.mm-b .stat b{font-size:17px}.mm-b .deadline{padding:10px}.mm-b .date{width:44px;font-size:15px}.mm-b .calc{padding:10px 12px}.mm-b .calc b{font-size:18px}.mm-b .list>div{padding:9px 10px}
.mm-b .chip{height:22px;font-size:11px}.mm-b .kv{padding-bottom:7px}
.mm-qr{flex:none;width:44px;height:44px;border-radius:5px;background:conic-gradient(#0E1A33 25%,#fff 0 50%,#0E1A33 0 75%,#fff 0) 0 0/11px 11px;border:3px solid #fff;box-shadow:0 0 0 1px #D5DCEB}
.mm-bars{display:flex;height:14px;border-radius:99px;overflow:hidden;background:#EEF1F8}.mm-bars i{display:block;width:var(--w);background:#2447E6}.mm-bars i.b{background:#6ACB8B}
.mm-scan,.mm-scan2{position:absolute;left:0;right:0;height:2px;background:var(--mc);opacity:0;box-shadow:0 0 10px var(--mc)}
.mm-scan2{display:none}
.mm-sample{margin:0;font-size:11.5px;color:var(--muted)}.mm-sample::before{content:"● ";color:var(--ok)}
.mm-pva{display:flex;gap:8px;flex-wrap:wrap}
.top nav.main .mm-panel a.btn{justify-content:center;padding:0 14px;min-height:36px;border:1px solid var(--line2);background:var(--bg);color:var(--ink);font:600 14px/1 var(--body)}
.top nav.main .mm-panel a.btn:hover{background:var(--soft);color:var(--ink)}
.top nav.main .mm-panel a.btn.primary,.top nav.main .mm-panel a.btn.primary:hover,.top nav.main .mm-panel a.btn.primary:focus-visible{background:var(--btn);border-color:var(--btn);color:#fff}
.top nav.main .mm-panel a.btn.primary:hover{background:var(--btn-d)}

/* ---- Para quién ---- */
.mm-sits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.top nav.main .mm-panel a.mm-sitcard{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"i b" "i s" "r r";gap:2px 12px;padding:14px;border:1.5px solid var(--v7-rule);border-radius:var(--r-lg);background:var(--bg);align-items:start}
.top nav.main .mm-panel a.mm-sitcard:hover,.top nav.main .mm-panel a.mm-sitcard:focus-visible{border-color:var(--v7-ink);background:var(--bg);box-shadow:3px 3px 0 var(--v7-hard);transform:translate(-1px,-1px)}
.mm-sitcard .mm-ic{grid-area:i}.mm-sitcard b{grid-area:b}.mm-sitcard small{grid-area:s}
.mm-route{grid-area:r;display:flex;flex-wrap:wrap;gap:4px 0;margin-top:10px;padding-top:10px;border-top:1px dashed var(--v7-rule);counter-reset:r}
.mm-route li{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:var(--ink);counter-increment:r}
.mm-route li::before{content:counter(r);display:grid;place-items:center;width:18px;height:18px;margin-right:5px;border-radius:50%;background:var(--v7-ink);color:var(--v7-paper);font:700 10px var(--head)}
.mm-route li+li::after{content:none}.mm-route li:not(:last-child){margin-right:8px}
.mm-route li:not(:last-child)::after{content:"";order:3;width:14px;height:0;margin-left:8px;border-top:1.5px dotted var(--muted)}

/* ---- Recursos ---- */
.mm-cols2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:22px;align-items:start}
.mm-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
.top nav.main .mm-panel a.mm-tool{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:9px 8px}
.mm-glyph{display:grid;place-items:center;min-width:48px;height:38px;padding:0 6px;border:1.5px solid var(--v7-ink);border-radius:9px;background:var(--v7-paper);box-shadow:2px 2px 0 var(--v7-hard);font:700 13px var(--head);color:var(--v7-ink);white-space:nowrap}.mm-glyph.sm{min-width:40px;height:30px;font-size:11.5px;box-shadow:none}
.mm-tool b{font-size:13.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.mm-links{display:grid;gap:2px}.mm-links b{font-size:14px}

/* ---- Blog ---- */
.mm-bl{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr)}
.mm-cats{display:grid;gap:2px}
.mm-cats a span{flex:1;font-weight:600}.mm-cats a em{font-style:normal;min-width:26px;padding:2px 8px;border-radius:99px;background:var(--mc-soft);color:var(--mc-ink);font:700 12px var(--body);text-align:center}
.mm-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--mc)}
.top nav.main .mm-panel a.mm-feat{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;padding:10px;border:1.5px solid var(--v7-rule);background:var(--bg);align-items:stretch}
.top nav.main .mm-panel a.mm-feat:hover,.top nav.main .mm-panel a.mm-feat:focus-visible{background:var(--bg);border-color:var(--v7-ink);box-shadow:3px 3px 0 var(--v7-hard)}
.mm-feat .cv{width:150px;height:110px;border-radius:10px;overflow:hidden}
.mm-ft{display:flex;flex-direction:column;gap:5px;justify-content:center}.mm-ft b{font-size:16px;line-height:1.3}.mm-cat{font:700 11px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--mc-ink)}
.mm-recent{display:grid;gap:0;margin-top:6px}
.top nav.main .mm-panel .mm-recent a{justify-content:space-between;gap:12px;padding:8px 10px;font-size:13.5px;font-weight:600}
.mm-recent a small{flex:none;margin:0}

/* ---- Acceso al buscador ---- */
.mm-sbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;width:40px;padding:0;border:1px solid var(--line2);border-radius:var(--r-pill);background:transparent;color:var(--ink);text-decoration:none}
.right a.mm-sbtn{font-size:13px}
.mm-sbtn:hover{background:var(--soft)}.mm-sbtn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.mm-sbtn kbd{display:none}
.mm-pal kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:1px solid var(--line2);border-bottom-width:2px;border-radius:5px;background:var(--bg);font:600 11px ui-monospace,Menlo,monospace;color:var(--muted)}
.home4 .top .mm-sbtn{color:#fff;border-color:rgba(255,255,255,.5)}.home4 .top .right a.mm-sbtn{color:#fff}.home4 .top .mm-sbtn:hover{background:rgba(255,255,255,.14)}.home4 .top .mm-sbtn:focus-visible{outline-color:#fff}
.home4 .top .mm-sbtn kbd{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}

/* ---- Paleta de búsqueda ---- */
.mm-pal{width:min(640px,calc(100vw - 24px));max-height:min(620px,calc(100vh - 80px));margin:max(40px,9vh) auto auto;padding:0;border:1.5px solid var(--v7-ink);border-radius:var(--r-lg);background:var(--v7-paper);color:var(--ink);box-shadow:8px 8px 0 var(--v7-hard);overflow:hidden}
.mm-pal::backdrop{background:rgba(10,20,41,.55)}
.mm-pal-box{display:flex;flex-direction:column;max-height:inherit}
.mm-pal-in{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--v7-rule);color:var(--muted)}
.mm-pal-in input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:500 18px var(--body);padding:6px 0;outline:0}
.mm-pal-in input::placeholder{color:var(--muted)}.mm-pal-in input::-webkit-search-cancel-button{display:none}
.mm-pal-in:focus-within{box-shadow:inset 0 -3px 0 var(--accent)}
.mm-pal-x{border:0;background:transparent;cursor:pointer;padding:6px}.mm-pal-x:focus-visible{outline:3px solid var(--accent);border-radius:6px}
.mm-pal-list{overflow:auto;padding:6px 8px 10px;min-height:120px}
.mm-pg{padding:4px 0}.mm-pg-h{margin:8px 10px 4px;font:700 11.5px var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.mm-po{display:flex;align-items:baseline;gap:10px;padding:9px 10px;border-radius:var(--r-md);color:var(--ink);text-decoration:none;line-height:1.35}
.mm-po b{font:600 15px var(--body);flex:none;max-width:60%}.mm-po span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--muted)}
.mm-po.on,.mm-po:hover{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.mm-po mark{background:linear-gradient(transparent 58%,rgba(242,169,59,.55) 58%);color:inherit}
.mm-pal-msg{margin:18px 12px;color:var(--muted);font-size:14.5px}
.mm-pal-kb{display:flex;gap:18px;margin:0;padding:9px 16px;border-top:1px solid var(--v7-rule);font-size:12.5px;color:var(--muted)}.mm-pal-kb span{display:inline-flex;align-items:center;gap:5px}
.mm-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:no-preference){.mm-pal[open]{animation:mm-pop .2s var(--ease)}@keyframes mm-pop{from{opacity:0;transform:translateY(-8px) scale(.985)}}}
@media (hover:none){.mm-pal-kb,.mm-sbtn kbd{display:none}}

/* ---- Movimiento con intención (solo sin «reducir movimiento») ---- */
@media (prefers-reduced-motion:no-preference){
  .mm-pvi[data-on]{animation:mm-slide .4s var(--ease) both}
  @keyframes mm-slide{from{opacity:0;transform:translateY(calc(var(--dir,1)*24px))}}
  @keyframes mm-rise{from{opacity:0;transform:translateY(8px)}}
  .mm-pvi[data-on] :is(.a1,.a2,.a3,.a4){animation:mm-rise .45s var(--ease) both}
  .mm-pvi[data-on] .a1{animation-delay:.12s}.mm-pvi[data-on] .a2{animation-delay:.24s}.mm-pvi[data-on] .a3{animation-delay:.36s}.mm-pvi[data-on] .a4{animation-delay:.48s}
  .mm-item.open .mm-pvi[data-on] .mm-scan{animation:mm-sweep 2.6s ease-in-out .5s infinite}
  @keyframes mm-sweep{0%{top:0;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:100%;opacity:0}}
  .mm-item.open .mm-panel :is(.mm-sit,.mm-lead,.mm-h,.mm-mods li,.mm-sits li,.mm-tools li,.mm-links li,.mm-cats li,.mm-feat,.mm-recent li,.mm-foot){animation:mm-rise .4s var(--ease) both;animation-delay:calc(var(--i,0)*38ms)}
  .mm-mods li:nth-child(2),.mm-sits li:nth-child(2),.mm-tools li:nth-child(2),.mm-links li:nth-child(2),.mm-cats li:nth-child(2){--i:1}
  .mm-mods li:nth-child(3),.mm-sits li:nth-child(3),.mm-tools li:nth-child(3),.mm-links li:nth-child(3),.mm-cats li:nth-child(3){--i:2}
  .mm-mods li:nth-child(4),.mm-sits li:nth-child(4),.mm-tools li:nth-child(4),.mm-links li:nth-child(4),.mm-cats li:nth-child(4){--i:3}
  .mm-mods li:nth-child(5),.mm-sits li:nth-child(5),.mm-tools li:nth-child(5),.mm-links li:nth-child(5){--i:4}
  .mm-mods li:nth-child(6),.mm-tools li:nth-child(6),.mm-links li:nth-child(6){--i:5}
  .mm-tools li:nth-child(n+7){--i:6}.mm-feat{--i:2}.mm-recent li{--i:4}.mm-foot{--i:6}
  .mm-sitcard,.mm-feat{transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s}
  .mm-o{transition:transform .25s var(--ease)}html[data-mm-sit] .mm-o:not(:empty){animation:mm-stamp .35s var(--ease) both}
  @keyframes mm-stamp{from{opacity:0;transform:scale(1.8) rotate(-20deg)}}
}

/* ---- «Empieza por tu situación»: el resalte es CSS puro (menu.js solo pone html[data-mm-sit]) ---- */
html[data-mm-sit="autonomo"] [data-mm-for]:not([data-mm-for~="autonomo"]){opacity:.55;filter:saturate(.4)}
html[data-mm-sit="autonomo"] .top a[data-mm-for~="autonomo"]:not(:hover){background:var(--accent-soft)}
html[data-mm-sit="pyme"] [data-mm-for]:not([data-mm-for~="pyme"]){opacity:.55;filter:saturate(.4)}
html[data-mm-sit="pyme"] .top a[data-mm-for~="pyme"]:not(:hover){background:var(--accent-soft)}
html[data-mm-sit="casa"] [data-mm-for]:not([data-mm-for~="casa"]){opacity:.55;filter:saturate(.4)}
html[data-mm-sit="casa"] .top a[data-mm-for~="casa"]:not(:hover){background:var(--accent-soft)}
html[data-mm-sit="extranjero"] [data-mm-for]:not([data-mm-for~="extranjero"]){opacity:.55;filter:saturate(.4)}
html[data-mm-sit="extranjero"] .top a[data-mm-for~="extranjero"]:not(:hover){background:var(--accent-soft)}
html[data-mm-sit="gestoria"] [data-mm-for]:not([data-mm-for~="gestoria"]){opacity:.55;filter:saturate(.4)}
html[data-mm-sit="gestoria"] .top a[data-mm-for~="gestoria"]:not(:hover){background:var(--accent-soft)}

.home4 .top nav.main .mm-link:hover{background:rgba(255,255,255,.14)}
.home4 .top .right .sheet a:not(.btn),.home4 .top .right .sheet summary{color:var(--ink)}

/* ---- Hoja móvil: pantalla completa bajo la cabecera, buscador arriba, acordeones y accesos siempre visibles ---- */
.menu summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.home4 .top .menu summary:focus-visible{outline-color:#fff}
.top .right .menu .sheet a:not(.btn):not(.lang){display:flex;align-items:center;gap:12px;padding:11px 8px;border-radius:12px;color:var(--ink);font-size:15.5px;font-weight:500;text-decoration:none}
.top .right .menu .sheet a:not(.btn):not(.lang):hover{background:var(--soft)}
.top .right .menu .sheet a:not(.btn):not(.lang):focus-visible{outline:3px solid var(--accent);outline-offset:-2px}
.top .right .menu .sheet a[aria-current]:not(.btn):not(.lang){box-shadow:inset 3px 0 0 var(--accent)}
.mm-sh-body{flex:1;overflow:auto;overscroll-behavior:contain;padding:12px 16px 20px}
.top .right .menu .sheet a.mm-sh-search:not(.btn):not(.lang){min-height:50px;margin-bottom:12px;padding:0 16px;border:1.5px solid var(--v7-ink);border-radius:var(--r-pill);background:var(--v7-paper);color:var(--muted);font-size:16px}
.menu .mm-acc{border-bottom:1px solid var(--line);border-radius:0}
.menu .mm-acc summary{display:flex;place-items:initial;align-items:center;gap:12px;min-width:0;min-height:56px;padding:6px 4px;border:0;border-radius:10px;font:600 17px var(--head);color:var(--ink);cursor:pointer;list-style:none}
.menu .mm-acc summary::-webkit-details-marker{display:none}
.menu .mm-acc summary em{margin-left:auto;font:600 12.5px var(--body);font-style:normal;color:var(--muted)}
.menu .mm-acc summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 4px 4px 4px;transition:transform .2s}
.menu .mm-acc[open] summary::after{transform:rotate(-135deg);margin-bottom:-4px}
.menu .mm-acc summary:hover{background:var(--soft)}.menu .mm-acc summary:focus-visible{outline:3px solid var(--accent);outline-offset:-2px}
.mm-acc[open]{padding-bottom:8px}
.top .right .menu .sheet .mm-acc a:not(.btn):not(.lang){padding:9px 8px 9px 12px}
.menu .mm-acc a .mm-tx b{font:600 15px/1.25 var(--body)}.menu .mm-acc a small{display:block;font-size:12.5px;color:var(--muted)}
.menu .mm-acc a em{margin-left:auto;font-style:normal;font:700 12px var(--body);padding:2px 8px;border-radius:99px;background:var(--mc-soft);color:var(--mc-ink)}
.top .right .menu .sheet a.mm-sh-all:not(.btn):not(.lang){color:var(--accent);font-weight:600}
.top .right .menu .sheet a.mm-sh-row:not(.btn):not(.lang){min-height:56px;border-bottom:1px solid var(--line);border-radius:0;font:600 17px var(--head)}
.mm-sit.mm-sit-m{margin:4px 0 8px;border-bottom:0;padding-bottom:6px}
.mm-sh-cta{flex:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}
.top .right .menu .sheet .mm-sh-cta a.btn{display:inline-flex;padding:0 16px;min-height:48px;border:1px solid var(--line2);background:var(--bg);color:var(--ink);font:600 15px/1 var(--body)}
.top .right .menu .sheet .mm-sh-cta a.btn.primary{background:var(--btn);border-color:var(--btn);color:#fff}
html.mm-lock{overflow:hidden}

/* ---- Anchos: el menú sigue en el centro real; por debajo de 1250 px se pasa a la hoja móvil en vez de descentrarlo ---- */
@media (max-width:1380px){nav.main .mm-link{padding:8px 2px 8px 8px;font-size:14.5px}.top .bar{gap:10px}.top .bar>.right{gap:8px}.top .right .lsel-btn{padding:0 8px}.top .right .btn{padding:0 14px}}
@media (max-width:1250px){
  nav.main.mm{display:none}.mm-ink{display:none}.menu{display:block}.top .bar{grid-template-columns:1fr auto}.top .bar>.right{grid-column:2}
  .top .right .mm-sbtn:not(.btn):not(.lang){display:inline-flex}
  .top:has(.menu[open]){-webkit-backdrop-filter:none;backdrop-filter:none;z-index:90}
  .top .right .menu[open] .sheet{position:fixed;left:0;right:0;bottom:0;top:var(--mm-top,72px);width:auto;max-height:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:var(--bg);display:flex;flex-direction:column;z-index:100}
}
@media (max-width:640px){.mm-sits{grid-template-columns:1fr}.mm-cols,.mm-cols2{grid-template-columns:1fr}}
@media (max-width:400px){.top .right .lsel-btn{padding:0 8px}.top .bar{gap:8px}}
.top{z-index:50}.home4 .top{z-index:80}
/* portada: enlaces de la barra en blanco sobre el degradado; todo lo que hay dentro de los paneles y del selector de idioma conserva texto oscuro sobre fondo claro */
.home4 .top nav.main .mm-panel a,.home4 .top nav.main .mm-panel a:visited{color:var(--ink)}.home4 .top nav.main .mm-panel a.mm-foot,.home4 .top nav.main .mm-panel a.mm-foot:visited{color:var(--accent)}.home4 .top nav.main .mm-panel a.btn.primary{color:#fff}
.top .right .menu .sheet .mm-lang a:not(.btn):not(.lang),.top .right .menu .sheet .mm-lang span{display:inline-flex;min-height:40px;padding:0 14px;border:1px solid var(--line2);border-radius:99px;font:600 14px var(--body)}
