/* Composición del header/footer. Usa los tokens aprobados; sólo en su plantilla. */
.mc-shell, .mc-shell *, .mc-shell *::before, .mc-shell *::after { box-sizing: border-box; }
.mc-shell { margin:0; min-width:0; }
.mc-shell [hidden] { display:none !important; }
.mc-shell [id] { scroll-margin-top:8rem; }
.mc-header { background:var(--mc-color-white); border-bottom:var(--mc-border-subtle); z-index:100; }
.mc-shell--enhanced .mc-header { position:sticky; top:0; }
.admin-bar.mc-shell--enhanced .mc-header { top:32px; }
.mc-header__inner { display:flex; flex-wrap:wrap; align-items:center; gap:var(--mc-space-5); min-height:80px; padding-block:var(--mc-space-3); }
.mc-brand { flex-shrink:0; max-width:220px; }
.mc-brand .custom-logo-link { display:block; }
.mc-brand .custom-logo { display:block; width:auto; height:auto; max-width:200px; max-height:52px; }
.mc-shell .mc-brand__wordmark { font:700 1.625rem/1 var(--mc-font-display); color:var(--mc-color-action); text-decoration:none; }
.mc-header__navigation { display:flex; flex:1; align-items:center; justify-content:flex-end; gap:var(--mc-space-5); min-width:0; }
.mc-nav-list { display:flex; flex-wrap:wrap; gap:var(--mc-space-4); margin:0; padding:0; list-style:none; }
.mc-nav-list li { margin:0; max-width:none; }
.mc-header .mc-nav-list a { display:flex; align-items:center; min-height:44px; padding-block:var(--mc-space-2); color:var(--mc-color-ink); text-decoration:none; font:600 var(--mc-text-body-sm)/1.4 var(--mc-font-ui); }
.mc-header .mc-nav-list a:hover, .mc-header .mc-nav-list .current-menu-item > a { color:var(--mc-color-action); text-decoration:underline; text-underline-offset:0.4em; }
.mc-header__actions { display:flex; flex-shrink:0; align-items:center; gap:var(--mc-space-3); }
.mc-header__actions .mc-button { font-size:var(--mc-text-body-sm); }
.mc-shell .mc-menu-toggle { display:flex; align-items:center; justify-content:center; gap:var(--mc-space-2); min-height:48px; margin-inline-start:auto; padding:var(--mc-space-3); border:var(--mc-border-subtle); border-radius:var(--mc-radius-md); color:var(--mc-color-ink); background:var(--mc-color-white); font:700 var(--mc-text-body-sm)/1 var(--mc-font-ui); }
.mc-shell .mc-menu-toggle:hover { background:var(--mc-color-blush); color:var(--mc-color-ink); }
.mc-shell-main { min-height:50vh; }
.mc-shell .mc-footer { background:var(--mc-color-wine); color:var(--mc-color-white); padding-block:var(--mc-space-8) var(--mc-space-6); }
.mc-footer__grid { display:grid; grid-template-columns:1.35fr repeat(3,minmax(0,1fr)); gap:var(--mc-space-6); }
.mc-footer__grid--social { grid-template-columns:1.35fr repeat(4,minmax(0,1fr)); }
.mc-footer__brand { min-width:0; }
.mc-shell .mc-footer .mc-brand__wordmark { color:var(--mc-color-white); }
.mc-footer__brand p { margin-top:var(--mc-space-4); font-size:var(--mc-text-body-sm); }
.mc-shell .mc-footer h2 { color:inherit; font:700 1rem/1.4 var(--mc-font-ui); margin:0 0 var(--mc-space-3); }
.mc-footer .mc-nav-list { flex-direction:column; gap:0; }
.mc-shell .mc-footer a { color:inherit; }
.mc-footer .mc-nav-list a, .mc-footer__privacy { display:inline-flex; align-items:center; min-height:44px; padding-block:var(--mc-space-2); text-decoration:none; font-size:var(--mc-text-body-sm); }
.mc-footer .mc-nav-list a:hover, .mc-footer__privacy:hover { text-decoration:underline; }
.mc-footer a:focus-visible { outline-color:var(--mc-color-white); }
.mc-footer__bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--mc-space-4); padding-top:var(--mc-space-5); margin-top:var(--mc-space-6); border-top:1px solid currentColor; font-size:var(--mc-text-body-sm); }
.mc-footer__bottom p { margin:0; }
.mc-footer__bottom a { display:inline-flex; align-items:center; min-height:44px; }
.mc-skip-link { position:absolute; top:-200px; left:20px; z-index:100000; padding:var(--mc-space-4); background:var(--mc-color-white); color:var(--mc-color-action); }
.mc-skip-link:focus { top:48px; }
.mc-shell-preview__intro { background:var(--mc-color-blush); }
.mc-shell-preview__eyebrow { font:700 var(--mc-text-label)/1.3 var(--mc-font-ui); text-transform:uppercase; letter-spacing:0.08em; }
.mc-shell-preview__lead { font-size:var(--mc-text-body-lg); }
.mc-shell-preview__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--mc-space-5); margin-top:var(--mc-space-6); }
/* Evitar que GeneratePress imponga sus colores de hover en estas acciones. */
.mc-shell .mc-button--secondary:hover { background:transparent; border-color:var(--mc-color-action); color:var(--mc-color-action); }
@media (max-width:74.999rem) {
 .mc-header__navigation { flex-basis:100%; align-items:stretch; flex-direction:column; padding-bottom:var(--mc-space-4); }
 .mc-header__navigation .mc-nav-list { flex-direction:column; gap:var(--mc-space-2); }
 .mc-header__actions { flex-wrap:wrap; }
 .mc-shell--enhanced .mc-header__navigation { max-height:calc(100dvh - 160px); overflow-y:auto; padding-inline:4px; }
 .mc-footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mc-shell-preview__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:47.999rem) {
 .mc-brand { max-width:calc(100% - 110px); }
 .mc-brand .custom-logo { max-width:100%; }
 .mc-shell .mc-brand__wordmark { font-size:1.375rem; }
 .mc-header__inner { column-gap:var(--mc-space-3); }
 .mc-header__actions { flex-direction:column; align-items:stretch; }
 .mc-footer__grid, .mc-shell-preview__grid { grid-template-columns:minmax(0,1fr); }
 .mc-shell .mc-footer { padding-top:var(--mc-space-7); }
 .mc-shell-preview__intro h1 { overflow-wrap:anywhere; }
}
@media (max-width:782px) { .admin-bar.mc-shell--enhanced .mc-header { top:46px; } }
@media (max-width:600px) { .admin-bar.mc-shell--enhanced .mc-header { top:0; } }
