.site-footer{
  margin-top:var(--space-5);
}

.footer-inner{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
}

.footer-top{
  display:flex;
  gap:var(--space-4);
  flex-wrap:wrap;
}

.footer-brand{max-width:320px;}

.brand-stack{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.footer-logo{height:44px;width:auto;}

.footer-brand-text{
  font-family:var(--font-heading);
  font-size:24px;
}

.footer-nav ul,
.footer-legal ul{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.footer-bottom{
  text-align:center;
}

.consent{
  position:fixed;
  bottom:16px;
  left:50%;
  transform:translateX(-50%);
  z-index:1100;
}

.consent-box{
  background:var(--container-bg);
  border:1px solid var(--border-separator);
  padding:16px 20px;
  border-radius:var(--radius);
  display:flex;
  gap:16px;
  align-items:center;
}

.consent-actions{display:flex;gap:8px;}

[data-consent][hidden]{display:none !important;}

.age-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.7);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1200;
}

.age-dialog{
  background:var(--container-bg);
  border:1px solid var(--border-separator);
  padding:32px;
  border-radius:var(--radius);
  max-width:420px;
  text-align:center;
}

.age-actions{
  margin-top:16px;
  display:flex;
  gap:12px;
  justify-content:center;
}

[data-age-modal][hidden]{display:none !important;}
