/* Shared footer: the existing homepage palette, type and social buttons. */
#site-footer {
  --display: "Space Grotesk", Inter, sans-serif;
  --sans: Inter, system-ui, sans-serif;
  background: #0a0e16 !important;
  color: #94a3b8;
  border: 0 !important;
  border-top: 1px solid #ffffff0f !important;
  padding: 64px 0 32px !important;
  text-align: left !important;
  font: 400 15px/1.6 var(--sans);
}
#site-footer, #site-footer * { box-sizing: border-box; }
#site-footer .footer-wrap { zoom: 1 !important; max-width: 1440px !important; width: 100% !important; margin: 0 auto !important; padding: 0 clamp(24px, 4vw, 64px) !important; }
#site-footer .footer-grid { display: grid !important; grid-template-columns: minmax(220px, 1.35fr) repeat(3, minmax(0, 1fr)) !important; gap: 32px !important; padding-bottom: 40px !important; width: 100% !important; align-items: start !important; }
#site-footer .footer-brand { display: flex !important; flex-direction: column !important; align-items: flex-start !important; width: auto !important; max-width: none !important; min-width: 0 !important; grid-column: auto !important; }
#site-footer .footer-brandmark { display: inline-flex !important; align-items: center !important; gap: 11px !important; margin: 0 0 18px !important; text-decoration: none !important; }
#site-footer .footer-brandmark img { width: 30px !important; height: 30px !important; object-fit: contain !important; border-radius: 0 !important; }
#site-footer .footer-brandmark span { font: 750 1.24rem/1.2 var(--display) !important; color: #fff !important; letter-spacing: -.015em !important; }
#site-footer .footer-social-row { display: flex !important; align-items: center !important; gap: 10px !important; margin: 4px 0 14px !important; }
#site-footer .footer-social-btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 38px !important; height: 38px !important; border: 1px solid #ffffff1f !important; border-radius: 50% !important; color: #94a3b8 !important; text-decoration: none !important; }
#site-footer .footer-social-btn svg { display: block; width: 18px; height: 18px; }
#site-footer .footer-email { padding: 0 !important; margin: 4px 0 0 !important; color: #94a3b8 !important; font: 400 14px/1.6 var(--sans) !important; text-decoration: none !important; }
#site-footer .footer-col { display: flex !important; flex-direction: column !important; gap: 16px !important; min-width: 0 !important; }
#site-footer .footer-heading { margin: 0 !important; font: 700 13px/1.5 var(--display) !important; letter-spacing: .12em !important; text-transform: uppercase !important; color: #fff !important; }
#site-footer .footer-links-list { display: flex !important; flex-direction: column !important; gap: 10px !important; padding: 0 !important; margin: 0 !important; list-style: none !important; }
#site-footer .footer-links-list li { margin: 0; padding: 0; }
#site-footer .footer-link { display: inline-block; color: #94a3b8 !important; font: 400 15px/1.6 var(--sans) !important; white-space: normal !important; text-decoration: none !important; }
#site-footer a:hover { color: #10b981 !important; }
#site-footer a:focus-visible { outline: 2px solid #94a3b8; outline-offset: 4px; border-radius: 2px; }
#site-footer .footer-bottom { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 16px !important; width: 100% !important; border-top: 1px solid #ffffff0f !important; padding-top: 24px !important; color: #94a3b8 !important; font: 400 12px/1.6 var(--sans) !important; }
#site-footer .footer-safety { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 9px !important; }
#site-footer .footer-age { display: inline-flex; align-items: center; padding: 2px 8px; border: 1px solid #ffffff2e; border-radius: 999px; color: #94a3b8; font-size: 12px; }
#site-footer .footer-bottom a, #site-footer .footer-copy { color: #94a3b8 !important; font-size: 12px !important; }
#site-footer .footer-legal-links a { text-decoration: none; }
#site-footer .pp-results-disclaimer { margin: 14px 0 0 !important; max-width: none !important; color: #94a3b8 !important; font: 400 12px/1.65 var(--sans) !important; text-align: left !important; }
@media(max-width: 1100px) {
  #site-footer .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 32px 24px !important; }
  #site-footer .footer-brand { grid-column: 1 / -1 !important; }
}
@media(max-width: 600px) {
  #site-footer { padding: 40px 0 24px !important; }
  #site-footer .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 32px 20px !important; }
  #site-footer .footer-col:last-child { grid-column: 1 / -1; }
  #site-footer .footer-col:last-child .footer-links-list { flex-direction: row !important; flex-wrap: wrap; gap: 8px 24px !important; }
  #site-footer .footer-bottom { align-items: flex-start !important; flex-direction: column !important; }
}
