/* Sináptica — CSS compartido: navbar, menú móvil, animaciones reveal, banner de cookies.
   Idéntico en las 7 páginas del sitio (verificado programáticamente). No se ha tocado
   ningún valor — es exactamente el CSS que ya existía, solo movido de 7 sitios a 1. */

#navbar { position: fixed; top: 12px; left: 0; right: 0; z-index: 1000; transition: var(--transition); }
.nav-inner { max-width: 100%; margin: 0 auto; padding: 14px 40px; display: flex; justify-content: space-between; align-items: center; transition: var(--transition); }
.nav-logo img { height: 34px; width: auto; }
.nav-logo span { color: var(--accent); }
.nav-links { display: flex; align-items: center; gap: 28px; }
.nav-links a { color: rgba(250,245,235,0.88); text-decoration: none; font-size: 0.88rem; font-family: var(--font-body); transition: color 0.2s; }
#navbar.nav-scrolled .nav-links a { color: var(--text-secondary); }
#navbar.nav-scrolled .nav-links a:hover { color: var(--text-primary); }
.nav-cta { background: var(--accent) !important; color: #fff !important; padding: 8px 20px; border-radius: 100px; font-weight: 600; font-size: 0.82rem !important; box-shadow: 0 0 16px rgba(var(--accent-rgb),0.28); transition: var(--transition) !important; }
.nav-hamburger { display: none; flex-direction: column; justify-content: center; gap: 5px; background: none; border: none; cursor: pointer; padding: 6px 4px; z-index: 1002; -webkit-tap-highlight-color: transparent; }
#navbar.nav-scrolled .nav-hamburger span { background: var(--text-primary); }
.nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-hamburger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
#mobileMenu { position: fixed; inset: 0; z-index: 1001; background: rgba(20,34,28,0.97); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; opacity: 0; pointer-events: none; transition: opacity 0.3s ease; }
#mobileMenu.open { opacity: 1; pointer-events: all; }
#mobileMenu a:hover, #mobileMenu a:active { color: var(--accent); }
#mobileMenu .mobile-menu-sep { width: 40px; height: 1px; background: rgba(154,180,162,0.2); margin: 8px 0; }
.reveal.revealed { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.1s; }
.reveal-delay-2 { transition-delay: 0.2s; }
.reveal-delay-3 { transition-delay: 0.3s; }
#cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 99999; background: rgba(20,34,28,0.97); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-top: 1px solid rgba(109,170,143,0.2); padding: 20px 32px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; transform: translateY(100%); transition: transform 0.4s cubic-bezier(0.16,1,0.3,1); }
#cookie-banner.visible { transform: translateY(0); }
.cookie-text { font-family: var(--font-body); font-size: 0.85rem; color: rgba(244,250,246,0.75); line-height: 1.55; max-width: 600px; flex: 1; }
.cookie-text a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.cookie-actions { display: flex; gap: 10px; flex-shrink: 0; }
.cookie-btn { font-family: var(--font-body); font-size: 0.82rem; font-weight: 600; padding: 9px 22px; border-radius: 100px; cursor: pointer; border: none; transition: all 0.2s; }
.cookie-btn-accept { background: var(--accent); color: #fff; }
.cookie-btn-accept:hover { background: #6daa8f; }
.cookie-btn-reject { background: transparent; color: rgba(244,250,246,0.6); border: 1px solid rgba(244,250,246,0.2); }
.cookie-btn-reject:hover { border-color: rgba(244,250,246,0.4); color: rgba(244,250,246,0.85); }
