/* Affelion — unified main-site footer. Scoped to footer.aff-site-footer only. */
footer.aff-site-footer{
  --aff-ft-bg:#1f1e1c;--aff-ft-ink:#f3f2f2;--aff-ft-muted:#a8a5a1;--aff-ft-hover:#FFD60A;
  --aff-ft-px:max(clamp(20px,5vw,64px),env(safe-area-inset-left,0px));
  --aff-ft-pr:max(clamp(20px,5vw,64px),env(safe-area-inset-right,0px));
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"intro intro" "signoff signoff" "copy links"!important;
  align-items:center!important;justify-items:stretch!important;justify-content:stretch!important;
  column-gap:24px!important;row-gap:8px!important;
  box-sizing:border-box!important;width:100%!important;min-height:0!important;margin:0!important;
  background:var(--aff-ft-bg)!important;color:var(--aff-ft-ink)!important;
  padding:clamp(28px,4vw,48px) var(--aff-ft-pr) calc(20px + env(safe-area-inset-bottom,0px)) var(--aff-ft-px)!important;
  border:0!important;box-shadow:none!important;
  font-family:"Archivo",system-ui,sans-serif;
}
footer.aff-site-footer>*{min-width:0;margin:0!important}
footer.aff-site-footer .aff-footer-meta-wrap{display:contents!important}

/* Intro: existing CTA / artwork, untouched structurally */
footer.aff-site-footer .aff-footer-intro{
  grid-area:intro!important;align-self:stretch!important;justify-self:stretch!important;
  margin:0 0 clamp(32px,5vw,64px)!important;color:var(--aff-ft-ink);
}
footer.aff-site-footer .aff-footer-intro-faq{display:none!important}

/* Light-page CTAs (About/FAQ) readable on dark */
footer.aff-site-footer .aff-footer-intro a{color:var(--aff-ft-ink)!important}
footer.aff-site-footer .aff-footer-intro a:hover{color:var(--aff-ft-hover)!important}
footer.aff-site-footer .aff-footer-intro :is(span:not([aria-hidden="true"]),figcaption,p):not([data-aff-art], [data-aff-art] *){color:var(--aff-ft-muted)!important}

/* Shared utility text */
footer.aff-site-footer .aff-footer-signoff,
footer.aff-site-footer .aff-footer-copyright,
footer.aff-site-footer .aff-footer-links,
footer.aff-site-footer .aff-footer-links a{
  font-family:"JetBrains Mono",ui-monospace,monospace!important;
  font-size:16px!important;line-height:1.6!important;letter-spacing:0.02em!important;
  font-weight:400!important;color:var(--aff-ft-muted)!important;
}
footer.aff-site-footer .aff-footer-signoff{
  grid-area:signoff!important;justify-self:start!important;max-width:60ch;margin-bottom:8px!important;
}
footer.aff-site-footer .aff-footer-copyright{grid-area:copy!important;justify-self:start!important;align-self:center!important}
footer.aff-site-footer nav.aff-footer-links{
  grid-area:links!important;justify-self:end!important;align-self:center!important;
  display:flex!important;flex-wrap:wrap!important;gap:0 24px!important;
  margin:0!important;padding:0!important;background:none!important;border:0!important;
}
footer.aff-site-footer nav.aff-footer-links a{
  display:inline-flex!important;align-items:center!important;min-height:44px!important;
  padding:0!important;text-decoration:underline!important;text-underline-offset:4px!important;
  text-decoration-thickness:1px!important;
}
footer.aff-site-footer nav.aff-footer-links a:hover{color:var(--aff-ft-ink)!important}
footer.aff-site-footer a:focus-visible{outline:2px solid var(--aff-ft-hover)!important;outline-offset:2px}
/* Utility text stays readable during the site's section-reveal animations. */
footer.aff-site-footer :is(.aff-footer-signoff,.aff-footer-copyright,.aff-footer-links),
footer.aff-site-footer :is(.aff-footer-signoff,.aff-footer-copyright,.aff-footer-links) *{
  opacity:1!important;filter:none!important;transform:none!important;animation:none!important;
}

@media (max-width:767px){
  footer.aff-site-footer{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"intro" "signoff" "copy" "links"!important;
    row-gap:4px!important;
  }
  footer.aff-site-footer nav.aff-footer-links{justify-self:start!important;gap:0 20px!important}
}
@media (max-width:360px){
  footer.aff-site-footer .aff-footer-signoff{overflow-wrap:anywhere}
}
