/* An open, quiet ending. Only the return control uses the existing GlassSurface. */
.site-footer {
  display:block;
  width:calc(100% - 88px);
  max-width:1272px;
  margin:0 auto;
  padding:50px 0 28px;
  background:transparent;
  font-family:Inter,Arial,sans-serif;
}
.site-footer::before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg,#f6fbff18,#a8d7f73d 48%,#ffdda82b 82%,transparent);
}
.footer-main {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:64px;
}
.footer-brand { min-width:0; }
.footer-wordmark {
  display:block;
  position:relative;
  width:clamp(300px,34vw,480px);
  max-width:100%;
  aspect-ratio:1770/640;
  border-radius:4px;
}
.footer-wordmark img { display:block; width:100%; height:100%; }
.site-footer .footer-nav {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 40px;
  width:352px;
  flex-shrink:0;
  color:#d8e0e6;
  font-size:15px;
  line-height:1.4;
}
.footer-nav a {
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 13px;
  border-radius:24px;
  transition:color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.footer-nav a:is(:hover,:focus-visible) {
  color:#fff;
  background:#ffffff09;
  box-shadow:inset 0 1px 0 #ffffff1a,inset 0 -1px 0 #ffffff08;
}
.footer-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:38px;
}
.site-footer .footer-legal{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:24px;color:#b5b5b5;font-size:13px;line-height:1.5}
.footer-legal a,.footer-legal button{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.footer-legal button{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer}
.footer-legal a:hover,.footer-legal button:hover{color:#fff;text-decoration:underline}
.contact-privacy{font-size:12px;line-height:1.6;margin:12px 0 0;color:#bfc7cb}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
.footer-bottom small { font-size:12px; line-height:1.5; color:#98a4ae; white-space:nowrap; }
.footer-top {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:12px 18px;
  border-radius:32px;
  color:#e6edf2;
  font-size:13px;
  line-height:1.4;
  white-space:nowrap;
}
.footer-top > [data-demo-glass] {
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  overflow:hidden;
  pointer-events:none;
}
.footer-top > [data-demo-glass]:empty { background:#ffffff06; border:1px solid #d8e7f23b; }
.footer-top > :not([data-demo-glass]) { position:relative; z-index:1; }
.footer-top svg { transition:transform .25s ease; flex-shrink:0; }
.footer-top:is(:hover,:focus-visible) svg { transform:translateY(-3px); }
@media (max-width:1039px) {
  .site-footer { width:calc(100% - 56px); padding-top:40px; }
  .footer-main { gap:32px; }
  .site-footer .footer-nav { width:304px; gap:8px 16px; }
}
@media (max-width:720px) {
  .site-footer { width:calc(100% - 40px); padding:36px 0 24px; }
  .footer-main { display:grid; gap:26px; }
  .footer-wordmark { width:min(100%,340px); }
  .site-footer .footer-nav { width:100%; gap:6px 16px; font-size:14px; }
  .footer-nav a { padding-left:0; }
  .footer-nav a:is(:hover,:focus-visible) { background:none; box-shadow:none; }
  .footer-bottom { margin-top:26px; gap:12px; }
  .footer-top { padding-inline:14px; gap:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .footer-nav a,.footer-top svg { transition:none; }
  .footer-top:is(:hover,:focus-visible) svg { transform:none; }
}
@media (forced-colors:active) {
  .footer-top { outline:1px solid ButtonText; }
}
