.site-footer {
  border-top: 1px solid var(--color-hairline-blue);
  background: linear-gradient(145deg, var(--color-deep-current), var(--color-ocean-black));
  padding: var(--space-16) 0 var(--space-6);
}
.site-footer__inner { display: grid; gap: var(--space-12); grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); }
.site-footer__intro { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.site-footer__intro h2,.site-footer__intro p,.site-footer__nav h3 { margin: 0; }
.site-footer__intro p { max-width: 32rem; }
.site-footer__brand { display: inline-flex; align-items: center; gap: var(--space-3); color: var(--color-frost-text); font-family: var(--font-heading); font-size: 1.125rem; font-weight: 600; line-height: 1; text-decoration: none; }
.site-footer__brand img { width: 3rem; height: 3rem; object-fit: contain; }
.site-footer__nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); }
.site-footer__nav-group { display: flex; flex-direction: column; gap: var(--space-4); }
.site-footer__nav h3 { color: var(--color-indigo-neon); font-size: var(--text-label); letter-spacing: var(--tracking-label); text-transform: uppercase; }
.site-footer__nav ul { display: flex; flex-direction: column; gap: var(--space-3); margin: 0; padding: 0; }
.site-footer__nav li,.site-footer__nav li + li { margin: 0; padding: 0; }
.site-footer__nav a { overflow-wrap: anywhere; }
.site-footer__bottom { display: flex; justify-content: space-between; gap: var(--space-4); margin-top: var(--space-12); padding-top: var(--space-6); border-top: 1px solid var(--color-hairline-blue); font-size: var(--text-meta); }
.site-footer__bottom p { margin: 0; }
.site-consent { position: fixed; z-index: 900; right: var(--gutter); bottom: var(--gutter); width: min(100% - (var(--gutter) * 2), 43rem); border: var(--border-subtle); border-radius: var(--radius-panel); background: var(--surface-feature); box-shadow: var(--shadow-panel); }
.site-consent[hidden] { display: none !important; }
.site-consent__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); padding: var(--space-6); }
.site-consent__copy { display: flex; flex-direction: column; gap: var(--space-2); }
.site-consent__copy h2,.site-consent__copy p { margin: 0; }
.site-consent__copy h2 { font-size: 1rem; }
.site-consent__copy p { font-size: var(--text-meta); }
.site-consent__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: var(--space-2); }
.site-consent .button { min-height: 2.75rem; }
.site-age-modal { position: fixed; z-index: 1200; inset: 0; display: grid; place-items: center; overflow-y: auto; padding: var(--gutter); background: rgba(3, 7, 18, .9); }
[data-age-modal][hidden] { display: none !important; }
.site-age-modal__panel { width: min(100%, 34rem); border: var(--border-subtle); border-radius: var(--radius-feature); background: var(--surface-feature); box-shadow: var(--shadow-panel), var(--shadow-active); padding: clamp(1.5rem, 5vw, 2.5rem); }
.site-age-modal__panel > :last-child { margin-bottom: 0; }
.site-age-modal__panel h2 { margin-bottom: var(--space-4); }
.site-age-modal__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-6); }
.site-age-modal__actions .button { flex: 1 1 12rem; }
@media (max-width: 44.9375rem) { .site-footer__inner,.site-footer__nav { grid-template-columns: 1fr; gap: var(--space-8); } .site-footer__bottom,.site-consent__inner { flex-direction: column; align-items: flex-start; } .site-consent__actions { width: 100%; } .site-consent__actions .button { flex: 1 1 8rem; } .site-age-modal__actions .button { width: 100%; } }
ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }
