/* ==========================================================================
   FOOTER (prototipo: style.css righe 476-490, 864, 888, 892)
   ========================================================================== */

.sb-footer { background: var(--sb-abyss-0); padding-top: 88px; padding-bottom: 36px; border-top: 1px solid var(--sb-line); font-size: .95rem; }
.sb-footer__grid { display: grid; grid-template-columns: 4fr 2fr 2fr 3fr; gap: 40px; }
.sb-footer__brand img { width: 170px; margin-bottom: 20px; }
.sb-footer__brand p { color: var(--sb-muted); max-width: 30ch; }
.sb-footer h2 { font-size: .95rem; font-weight: 600; color: var(--sb-gold-lt); margin-bottom: 14px; font-variation-settings: "wdth" 100; }
.sb-footer__menu a, .sb-footer__contacts > a { display: block; text-decoration: none; color: var(--sb-muted); padding-block: 4px; }
.sb-footer a:hover { color: var(--sb-text); }
.sb-footer__bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 72px; padding-top: 24px; background: linear-gradient(var(--sb-line), var(--sb-line)) var(--sb-gutter) 0 / calc(100% - 2 * var(--sb-gutter)) 1px no-repeat; color: var(--sb-muted); font-size: .88rem; }
.sb-footer__bottom p { margin: 0; }
.sb-footer__publisher { display: flex; align-items: center; gap: 20px; }
.sb-footer__publisher img { width: 92px; height: auto; }
.sb-footer__bottom .sb-footer__ai { flex-basis: 100%; font-size: .82rem; opacity: .8; }
.sb-footer__bottom a { text-decoration: none; margin-left: 24px; }

@media (max-width: 1080px) {
  .sb-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .sb-footer__grid { grid-template-columns: 1fr; }
  .sb-footer__bottom a { margin-left: 0; margin-right: 20px; }
}
