/* Shared footer, independent of legacy page footer styles. */
.fitlab-footer { background: #0b2545; color: #d7e2ec; padding: 48px 28px 0; font-size: 14px; line-height: 1.7; }
.fitlab-footer__main { max-width: 1184px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); gap: 64px; padding-bottom: 32px; align-items: start; }
.fitlab-footer__brand, .fitlab-footer__nav { min-width: 0; }
.fitlab-footer__logo { display: inline-flex; padding: 10px 14px; border-radius: 10px; background: #fff; margin-bottom: 16px; }
.fitlab-footer__logo img { display: block; width: 144px; max-width: 100%; height: auto; }
.fitlab-footer__brand p { max-width: 38ch; margin: 0; color: #bdcddd; font-size: 14px; line-height: 1.8; }
.fitlab-footer__nav h2 { margin: 0 0 14px; padding: 0; font-size: 14px; font-weight: 600; line-height: 1.5; letter-spacing: .04em; color: #93d2c8; }
.fitlab-footer__nav h2::before, .fitlab-footer__nav h2::after { content: none; }
.fitlab-footer__nav ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 5px; }
.fitlab-footer__nav li { margin: 0; padding: 0; }
.fitlab-footer__nav a { display: inline-block; padding: 5px 0; color: #e4edf5; text-decoration: none; font-size: 14px; line-height: 1.5; }
.fitlab-footer__nav a:hover { color: #93d2c8; text-decoration: underline; text-underline-offset: 4px; }
.fitlab-footer a:focus-visible { outline: 2px solid #93d2c8; outline-offset: 5px; border-radius: 2px; }
.fitlab-footer__disclaimer { max-width: 1184px; margin: 0 auto; border-top: 1px solid #ffffff24; padding: 22px 0; }
.fitlab-footer__disclaimer p { margin: 0; color: #afc2d3; font-size: 12px; line-height: 1.8; }
.fitlab-footer__disclaimer strong { color: #d7e2ec; font-weight: 600; }
.fitlab-footer__bottom { max-width: 1184px; margin: 0 auto; border-top: 1px solid #ffffff18; padding: 18px 0; color: #afc2d3; font-size: 12px; text-align: center; }
@media (max-width: 800px) {
  .fitlab-footer__main { gap: 32px; grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .fitlab-footer { padding: 32px 22px 0; }
  .fitlab-footer__main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; padding-bottom: 26px; }
  .fitlab-footer__brand { grid-column: 1 / -1; }
  .fitlab-footer__brand p { max-width: 48ch; }
  .fitlab-footer__nav a { padding: 8px 0; }
  .fitlab-footer__disclaimer { padding: 18px 0; }
}

.fitlab-footer__social { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.fitlab-footer__social a { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 7px 10px; border: 1px solid #ffffff30; border-radius: 6px; color: #e4edf5; font-size: 12px; line-height: 1.5; text-decoration: none; transition: background-color .2s ease, border-color .2s ease; }
.fitlab-footer__social a:hover { background: #ffffff0d; border-color: #93d2c8; color: #93d2c8; }
.fitlab-footer__social span { color: #93d2c8; }
