/* V7 follow-up: restore the original footer and use the full desktop voice rail.
   Existing legal pages and shared layout are unchanged. */
body:has(.home-ts3-layout) .site-footer .footer-inner {
  grid-template-columns:1fr auto;
  align-items:center;
  min-height:150px;
  padding-top:26px;
  padding-bottom:0;
  gap:18px;
}
body:has(.home-ts3-layout) .site-footer .footer-brand img {
  width:45px;
  height:45px;
  border-radius:10px;
}
body:has(.home-ts3-layout) .site-footer .footer-brand strong { font-size:14px; }
body:has(.home-ts3-layout) .site-footer .footer-brand span { font-size:11px; }
body:has(.home-ts3-layout) .site-footer .footer-navigation {
  display:grid;
  grid-column:auto;
  grid-row:auto;
  justify-items:end;
  align-items:center;
  gap:14px;
}
body:has(.home-ts3-layout) .site-footer .footer-links { flex-wrap:wrap; gap:12px 17px; }
body:has(.home-ts3-layout) .site-footer .footer-links a { font-size:12px; line-height:1.5; }
body:has(.home-ts3-layout) .site-footer .footer-social a {
  width:34px;
  height:34px;
  border-radius:10px;
}
body:has(.home-ts3-layout) .site-footer .footer-social .icon { width:17px; height:17px; }
body:has(.home-ts3-layout) .site-footer .footer-online {
  grid-column:1 / -1;
  grid-row:auto;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  justify-self:stretch;
  border-top:1px solid rgba(255,255,255,.08);
  padding:16px 0 20px;
  gap:10px 22px;
}
body:has(.home-ts3-layout) .site-footer .footer-online>strong,
body:has(.home-ts3-layout) .site-footer .footer-online-users { font-size:11px; }
body:has(.home-ts3-layout) .site-footer a:focus-visible { outline:2px solid #e8c37c; outline-offset:4px; }
@media(max-width:900px) {
  body:has(.home-ts3-layout) .site-footer .footer-inner {
    grid-template-columns:1fr;
    padding:28px 0;
    gap:22px;
  }
  body:has(.home-ts3-layout) .site-footer .footer-navigation { justify-items:start; }
  body:has(.home-ts3-layout) .site-footer .footer-online { grid-template-columns:1fr; padding-bottom:0; }
  body:has(.home-ts3-layout) .site-footer .footer-links a { display:inline-flex; align-items:center; min-height:36px; }
  body:has(.home-ts3-layout) .site-footer .footer-social a { width:40px; height:40px; }
}

/* Match the bottom of the activity card instead of leaving a gap below TS3. */
@media(min-width:901px) {
  .h7-page .h7-voice { height:auto; min-height:clamp(540px,calc(100dvh - 470px),620px); align-self:stretch; }
  .h7-page .h7-activity { align-self:stretch; }
}
