/* Shared full-width footer: editorial message, clear directory, separate legal band. */
body>footer{max-width:none;margin:0;padding:0;border:0;border-radius:0;background:#173b70;color:#d3e1f4;font-family:Inter,Arial,sans-serif}
body>footer>.footer-content{display:block;max-width:1180px;margin:auto;padding:60px 0 48px}
footer .footer-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:70px;margin-bottom:45px}
footer .footer-message h2{font-family:Manrope,Inter,sans-serif;font-size:35px;line-height:1.25;font-weight:600;letter-spacing:-.04em;color:#fff;margin:0 0 18px}
footer .footer-message p{max-width:470px;font-size:13px;line-height:1.9;color:#c2d3ed;margin:0}
footer .footer-brand{display:block;margin-top:6px;flex-shrink:0}
footer .footer-brand img{display:block;background:none;padding:0;border:0;border-radius:0;width:170px;height:auto;object-fit:contain;margin:0}
footer .footer-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;max-width:none;margin:0;padding:0}
footer .footer-link-group h3{font-family:Inter,sans-serif;font-size:11px;font-weight:500;color:#9bb8e4;letter-spacing:.05em;margin:0 0 18px;line-height:1.7}
footer .footer-link-group ul{display:flex;flex-direction:column;gap:9px;list-style:none;padding:0;margin:0}
footer .footer-link-group li{margin:0;padding:0;line-height:1.7}
footer .footer-link-group a{display:inline-block;font-size:13px;font-weight:400;line-height:1.8;color:#edf4ff;text-decoration:none;text-underline-offset:5px}
footer .footer-link-group a:hover{text-decoration:underline;color:#fff}
body>footer>.footer-bottom{display:block;border:0;background:#12315f;margin:0;padding:24px 0}
footer .footer-bottom-inner{display:block;max-width:1180px;margin:auto;padding:0}
footer .footer-bottom-inner>.footer-legal{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:23px;overflow-x:auto;max-width:100%;padding:2px 0 12px;margin:0;scrollbar-width:thin;scrollbar-color:#6d90be transparent}
footer .footer-bottom-inner>.footer-legal a{flex:0 0 auto;white-space:nowrap;font-size:11px;line-height:1.7;font-weight:400;letter-spacing:0;color:#d2def0;text-decoration:none}
footer .footer-bottom-inner>.footer-legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
footer .footer-bottom-inner>.footer-copyright{font-size:10px;line-height:1.8;color:#91acd3;margin:5px 0 0}
footer :is(a,nav):focus-visible{outline:2px solid #b9d4fc;outline-offset:5px}
@media(max-width:1250px){body>footer>.footer-content{padding-inline:35px}footer .footer-bottom-inner{padding-inline:35px}}
@media(max-width:760px){footer .footer-heading{gap:35px}footer .footer-message h2{font-size:30px}footer .footer-brand img{width:145px}footer .footer-directory{gap:25px}}
@media(max-width:640px){body>footer>.footer-content{padding:40px 25px 36px}footer .footer-heading{flex-direction:column-reverse;gap:28px;margin-bottom:35px}footer .footer-brand{margin:0}footer .footer-brand img{width:145px}footer .footer-message h2{font-size:29px;margin-bottom:16px}footer .footer-message p{font-size:13px}footer .footer-directory{grid-template-columns:1fr 1fr;gap:30px 24px}footer .footer-link-group h3{margin-bottom:14px;font-size:11px}footer .footer-link-group a{font-size:13px}body>footer>.footer-bottom{padding:22px 0}footer .footer-bottom-inner{padding-inline:25px}footer .footer-bottom-inner>.footer-legal{gap:22px}footer .footer-bottom-inner>.footer-legal a{font-size:11px}footer .footer-bottom-inner>.footer-copyright{font-size:10px;margin-top:10px}}
/* Compact footer: no promotional headline or service directory. */
body>footer>.footer-compact{display:flex;align-items:center;justify-content:space-between;gap:60px;padding-top:38px;padding-bottom:34px}
footer .footer-compact .footer-heading{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin:0;max-width:425px}
footer .footer-compact .footer-brand{margin:0}
footer .footer-compact .footer-brand img{width:145px;height:auto}
footer .footer-description{max-width:425px;font-size:12px;line-height:1.85;margin:0;color:#c2d3ed}
footer .footer-compact-links{display:flex;flex-direction:column;gap:22px;align-items:flex-end}
footer .footer-compact-links nav{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end;margin:0;padding:0}
footer .footer-compact-links a{font-size:12px;color:#e4edfc;text-decoration:none;line-height:1.8}
footer .footer-compact-links a:hover{text-decoration:underline;text-underline-offset:4px}
footer .footer-compact-links .footer-social{gap:18px}
footer .footer-social a{font-size:10px;color:#a9c0e1}
body>footer>.footer-bottom{padding-top:18px;padding-bottom:18px}
@media(max-width:760px){body>footer>.footer-compact{gap:35px}.footer-compact-links{min-width:250px}footer .footer-compact-links nav{gap:14px}}
@media(max-width:640px){body>footer>.footer-compact{display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding-top:32px;padding-bottom:30px}footer .footer-compact .footer-heading{gap:17px}footer .footer-description{font-size:12px}footer .footer-compact-links{align-items:flex-start;gap:18px;min-width:0}footer .footer-compact-links nav{justify-content:flex-start;gap:18px}footer .footer-compact-links .footer-social{gap:18px}footer .footer-social a{font-size:11px}}
/* One continuous background across the entire footer. */
body>footer>.footer-bottom{background:transparent}

/* Enlaces legales: saltan de línea en lugar de desplazarse de lado, para que se vean todos en móvil */
footer .footer-bottom-inner>.footer-legal{flex-wrap:wrap;overflow-x:visible;gap:6px 22px;padding-bottom:8px}
@media (max-width:600px){footer .footer-bottom-inner>.footer-legal{gap:4px 18px}footer .footer-bottom-inner>.footer-legal a{font-size:12px;line-height:2}}
