/* Shared categorized footer for landing, legal, Creator Hub and public creator resources. */
.site-footer {
  --collective-footer-text: #f4f2f3;
  --collective-footer-muted: #a8a3ac;
  width: min(1440px, calc(100% - 40px));
  margin: 0 auto;
  display: block !important;
  padding: 62px 0 34px;
  border-top: 1px solid rgba(255,255,255,.13);
  color: var(--collective-footer-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.site-footer .footer-top { display: grid; grid-template-columns: minmax(200px,1fr) minmax(0, 2.7fr); gap: clamp(32px,6vw,90px); align-items: start; }
.site-footer .footer-brand { display:flex; flex-direction:column; gap:9px; justify-self:start; min-width:0; }
.site-footer .footer-brand-row { display:inline-flex; align-items:center; gap:10px; color:#f8f7f8; text-decoration:none; }
.site-footer .footer-brand-row:hover { color:#fff; }
.site-footer .footer-brand > span { margin:0; max-width:250px; font-size:12px; line-height:1.7; color:var(--collective-footer-muted); }
.site-footer .footer-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(18px,2.5vw,38px); width:100%; align-items:start; }
.site-footer .footer-category { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.site-footer .footer-category-title { font-size:13px; line-height:1.3; font-weight:750; letter-spacing:.01em; color:var(--collective-footer-text); margin:0; padding:0; text-transform:none; }
.site-footer .footer-category-links { display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; }
.site-footer .footer-category-links a,
.site-footer .footer-category-links .collective-footer-cookie-button { display:inline-flex; align-items:center; justify-content:flex-start; width:auto; max-width:100%; min-height:36px; padding:6px 0; color:var(--collective-footer-muted); text-decoration:none; background:transparent; border:0; font:inherit; font-size:12px; font-weight:450; line-height:1.5; white-space:normal; text-align:left; cursor:pointer; transition:color .2s ease,transform .2s ease; }
.site-footer .footer-category-links a:hover,
.site-footer .footer-category-links a:focus-visible,
.site-footer .footer-category-links .collective-footer-cookie-button:hover,
.site-footer .footer-category-links .collective-footer-cookie-button:focus-visible { color:#ff747c; transform:translateX(3px); text-decoration:none; }
.site-footer .footer-bottom-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:clamp(18px,3vw,48px); width:100%; margin-top:50px; padding-top:24px; border-top:1px solid rgba(255,255,255,.09); }
.site-footer .footer-small { margin:0; padding:0; color:#a8a3ac; font-size:10px; line-height:1.7; }
.site-footer .alto-powered { justify-self:center; display:inline-flex; align-items:center; gap:7px; }
.site-footer .footer-created-by-row { justify-content:flex-end; width:auto; }
/* Center the visible Anthony Aguilera lettering, which sits high within its transparent PNG. */
.site-footer .created-by-logo { transform:translateY(4px); }
.site-footer a:focus-visible,.site-footer button:focus-visible { outline:2px solid #ff737b; outline-offset:4px; border-radius:3px; }
@media (max-width:1050px) {
  .site-footer .footer-top { grid-template-columns:1fr; gap:36px; }
  .site-footer .footer-nav { max-width:800px; }
}
@media (max-width:700px) {
  .site-footer { padding:43px 0 25px; width:calc(100% - 32px); }
  .site-footer .footer-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 22px; }
  .site-footer .footer-category { gap:9px; }
  .site-footer .footer-category-links a,
  .site-footer .footer-category-links .collective-footer-cookie-button { min-height:44px; padding:8px 0; }
  .site-footer .footer-bottom-row { grid-template-columns:1fr; justify-items:start; gap:15px; margin-top:30px; padding-top:21px; }
  .site-footer .alto-powered { justify-self:start; }
  .site-footer .footer-created-by-row { justify-content:flex-start; width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .site-footer .footer-category-links a,
  .site-footer .footer-category-links button { transition:none; }
  .site-footer .footer-category-links a:hover,
  .site-footer .footer-category-links button:hover { transform:none; }
}
