/* Navegación compartida por todas las páginas. */
@import url('https://fonts.googleapis.com/css2?family=Maven+Pro:wght@400;700&display=swap');
body { padding-top: 80px; }
.site-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; font: 400 16px/1.4 'Maven Pro', sans-serif; }
.site-header * { box-sizing: border-box; }
.site-header .navbar { display: flex; justify-content: space-between; align-items: center; background: #000c1a; padding: 15px clamp(20px, 4vw, 60px); position: relative; height: 80px; gap: 24px; }
.site-header .logo img { display: block; height: 50px; width: auto; max-width: 100%; }
.site-header .nav-links { list-style: none; display: flex; align-items: center; gap: 20px; margin: 0; padding: 0; }
.site-header .nav-links a { text-decoration: none; color: white; font-size: 16px; white-space: nowrap; }
.site-header .nav-links a[aria-current="page"] { text-decoration: underline; text-underline-offset: 5px; }
.site-header .contacto-btn { display: inline-block; background: #00d1ff; padding: 8px 15px; border-radius: 5px; color: black; }
.site-header .hamburger { display: none; font: inherit; font-size: 2rem; background: none; border: none; color: white; cursor: pointer; padding: 0 4px; }
.site-header a:focus-visible, .site-header button:focus-visible { outline: 2px solid #00d1ff; outline-offset: 4px; }
@media(max-width:1400px) {
 .site-header .hamburger { display: block; }
 .site-header .nav-links { position: absolute; top: 100%; left: 0; right: 0; background: #000c1a; flex-direction: column; align-items: center; display: none; gap: 10px; padding: 20px; max-height: calc(100dvh - 80px); overflow-y: auto; }
 .site-header .nav-links.active { display: flex; }
 .site-header .nav-links a { display: block; padding: 8px 15px; }
}
