.site-footer { background: var(--tan); color: #fff; padding: 60px max(6vw, 25px) 24px; }
.site-footer .footer-content { display: grid; grid-template-columns: 1fr 1.2fr; gap: 70px; max-width: 1100px; align-items: center; }
.site-footer .footer-logo { background: #fff; border-radius: 6px; margin-bottom: 20px; width: 160px; height: 96px; }
.site-footer .footer-content h3 { font-size: 20px; }
.site-footer .footer-content p { color: #fff; }
.site-footer .footer-content small { color: #fff; margin-top: 24px; }
.footer-contact-details { display:grid; gap:6px; margin:16px 0 22px; }
.footer-contact-details a { color:inherit; font-size:14px; line-height:1.45; text-decoration:none; }
.footer-contact-details a:hover { text-decoration:underline; text-underline-offset:3px; }
.site-footer .footer-nagui { background: #fff; width: 100px; height: 58px; border-radius: 3px; }
.site-footer .footer-invitation > p { font: 600 clamp(21px, 2.2vw, 28px)/1.5 var(--font-head); text-align: left; margin: 0 0 26px; }
.footer-socials { display: flex; gap: 12px; }
.footer-socials a, .footer-socials .social-pending { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.6); border-radius: 50%; color: #fff; }
.footer-socials svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.footer-socials a:hover, .footer-socials a:focus-visible { background: #fff; color: var(--green); }
.brand-row { scrollbar-width: none; }
.brand-row::-webkit-scrollbar { display: none; }
.brand-slider { display:block; width:min(920px, calc(100% - 24px)); height:20px; margin:18px auto 0; appearance:none; background:transparent; cursor:grab; }
.brand-slider::-webkit-slider-runnable-track { height:6px; border-radius:999px; background:var(--blue); }
.brand-slider::-webkit-slider-thumb { width:18px; height:18px; margin-top:-6px; appearance:none; border:3px solid #fff; border-radius:50%; background:var(--green); box-shadow:0 1px 6px rgba(0,0,0,.22); }
.brand-slider::-moz-range-track { height:6px; border-radius:999px; background:var(--blue); }
.brand-slider::-moz-range-thumb { width:14px; height:14px; border:3px solid #fff; border-radius:50%; background:var(--green); box-shadow:0 1px 6px rgba(0,0,0,.22); }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.35); max-width: 1100px; margin: 38px auto 0; padding-top: 22px; }
.site-footer .trademark-notice { max-width: 880px; margin: 0 auto 14px; text-align: center; font-size: 12px; line-height: 1.7; }
.site-footer .copyright { border: 0; padding: 0; margin: 0; max-width: none; text-align: center; color: #fff; }
@media (max-width: 700px) {
  .site-footer .footer-content { grid-template-columns: 1fr; gap: 32px; }
  .site-footer .footer-logo { transform: none; }
}
