/* Encabezado uniforme */
.vj-logo{box-sizing:border-box;display:flex;justify-content:center;width:100%;padding:24px 20px;margin:0;}
.vj-logo a{display:block;width:380px;max-width:100%;margin:0;}
.vj-logo img{display:block;width:100%;height:auto;max-height:none;margin:0;}
.vj-menu-horizontal{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:12px 16px 0;margin:0;}
.vj-menu-horizontal a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex:0 0 130px;width:130px;height:44px;padding:10px;background:#fff;color:#365c87;border:1px solid #e4e9ef;border-radius:12px;font:14px Arial,sans-serif;text-decoration:none;box-shadow:0 3px 5px rgba(30,45,40,.08),0 6px 12px rgba(30,45,40,.10);}
.container{padding-top:0;display:flex;flex-direction:column;}
.header:not(header){display:flow-root;width:100%;margin:70px auto 30px;padding:0;background:transparent;}
.header h1,.hero h1{font:600 32px/1.15 Arial,sans-serif;text-align:center;margin:0;}
.header:after{display:none;}
.hero{margin:70px auto 30px;padding:0;background:transparent;}
.menu,.gallery,.capitulos{margin-top:0;}
.menu a,.button a,.boton,button,.btn-volver,.vj-menu-horizontal a{transition:transform 180ms ease,box-shadow 180ms ease;box-shadow:0 3px 5px rgba(30,45,40,.08),0 6px 12px rgba(30,45,40,.10);}
@media(hover:hover){.menu a:hover,.button a:hover,.boton:hover,button:hover,.btn-volver:hover,.vj-menu-horizontal a:hover{transform:translateY(-2px);box-shadow:0 5px 8px rgba(30,45,40,.10),0 10px 18px rgba(30,45,40,.14);}}
.vj-menu-horizontal a:focus-visible{outline:2px solid #365c87;outline-offset:4px;}
@media(max-width:520px){.header:not(header),.hero{margin-top:58px;}.header h1,.hero h1{font-size:28px;}}
@media(prefers-reduced-motion:reduce){.menu a,.button a,.boton,button,.btn-volver,.vj-menu-horizontal a{transition:none;transform:none!important;}}

/* Subtítulos centrados y footer con ancho completo */
.header .subtitle,.header .intro{text-align:center;}
.footer{box-sizing:border-box;width:100%;max-width:760px;align-self:center;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:40px auto 0;padding:26px 0;}
.footer>div{min-width:0;}
.footer .footer-marca{flex:0 0 115px;}
@media(max-width:520px){.footer{gap:16px;}.footer .footer-marca{flex-basis:85px;}}
