/* Footer component styles */
.site-footer {
  background: linear-gradient(180deg, var(--color-navy) 0%, var(--color-navy-light) 100%);
  border-top: 1px solid var(--color-gray-800);
  color: var(--color-gray-100);
}
.footer-inner { padding-top: var(--space-12); padding-bottom: var(--space-12); }

.footer-top { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-12); align-items: start; }
@media (max-width: 992px) { .footer-top { grid-template-columns: 1fr; gap: var(--space-8); } }

.footer-brand .brand { font-family: var(--font-accent); color: var(--color-gold); font-weight: var(--font-weight-extrabold); letter-spacing: 0.06em; text-transform: uppercase; }
.footer-brand .brand:hover { color: var(--color-gold-light); }
.footer-brand .tagline { margin-top: var(--space-4); color: var(--color-gray-300); }

.footer-social { margin-top: var(--space-6); display: inline-flex; gap: var(--space-4); }
.social-link { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border: 1px solid var(--color-gray-700); border-radius: var(--radius-full); color: var(--color-gold); transition: all var(--transition-base) var(--ease-out); }
.social-link:hover, .social-link:focus-visible { color: var(--color-navy); background: var(--color-gold); border-color: var(--color-gold); }

.footer-links .links-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3) var(--space-8); list-style: none; padding: 0; margin: 0; }
@media (min-width: 640px) { .footer-links .links-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .footer-links .links-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.footer-links a { color: var(--color-gray-100); }
.footer-links a:hover, .footer-links a:focus-visible { color: var(--color-white); text-decoration: none; }

.footer-bottom { border-top: 1px solid var(--color-gray-800); margin-top: var(--space-12); padding-top: var(--space-6); display: flex; flex-direction: column; gap: var(--space-2); }
.disclaimer { color: var(--color-text-muted); }
.copyright { color: var(--color-gray-300); }

/* Cookie banner */
.cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  background: linear-gradient(180deg, var(--color-navy-light) 0%, var(--color-navy) 100%);
  border-top: 2px solid var(--color-gold);
  box-shadow: var(--shadow-xl);
  z-index: var(--z-modal);
  transform: translateY(100%);
  transition: transform var(--transition-slower) var(--ease-out), opacity var(--transition-base) var(--ease-out);
  opacity: 0.98;
}
.cookie-banner.is-visible { transform: translateY(0); opacity: 1; }
.cookie-inner { display: grid; grid-template-columns: 1fr auto; gap: var(--space-6); padding-top: var(--space-4); padding-bottom: var(--space-4); align-items: center; }
@media (max-width: 768px) { .cookie-inner { grid-template-columns: 1fr; } }
.cookie-text h2 { font-size: var(--font-size-xl); margin-bottom: var(--space-2); color: var(--color-gold); }
.cookie-text p { margin: 0; color: var(--color-gray-100); }
.cookie-text a { text-decoration: underline; }
.cookie-actions { display: inline-flex; gap: var(--space-3); }
.cookie-actions .btn { min-width: 140px; }
