.wrapper .site-footer { position: relative; background: #212934; padding: 60px 0 40px; }
.wrapper .site-footer .footer-inner { max-width: 1140px; margin: 0 auto; padding: 0 20px; }
.wrapper .site-footer .footer-columns { display: grid; grid-template-columns: 1fr; gap: 36px; }
.wrapper .site-footer .footer-title { color: #ffffff; font-size: 16px; font-weight: 700; margin-bottom: 16px; letter-spacing: 0.3px; }
.wrapper .site-footer .footer-item { border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.wrapper .site-footer .footer-item a { position: relative; display: block; padding: 10px 0 10px 18px; font-size: 14px; color: #b9c2cd; transition: color 0.2s ease, padding-left 0.2s ease; }
.wrapper .site-footer .footer-item a::before { content: ""; position: absolute; left: 2px; top: 50%; width: 7px; height: 7px; border-top: 2px solid #6f7d8c; border-right: 2px solid #6f7d8c; transform: translateY(-50%) rotate(45deg); }
.wrapper .site-footer .footer-item a:hover { color: #ffffff; padding-left: 24px; }
.wrapper .site-footer .footer-disclaimer { margin-top: 44px; border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: 28px; }
.wrapper .site-footer .disclaimer-text { text-align: center; font-size: 13px; line-height: 1.8; color: #aab4c0; max-width: 860px; margin: 0 auto; }
.wrapper .site-footer .back-to-top { position: fixed; right: 22px; bottom: 22px; z-index: 70; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #15539e; box-shadow: 0 10px 24px rgba(8, 25, 55, 0.3); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease, background 0.2s ease; }
.wrapper .site-footer .back-to-top.is-shown { opacity: 1; visibility: visible; transform: translateY(0); }
.wrapper .site-footer .back-to-top:hover { background: #0f4585; }
.wrapper .site-footer .back-to-top svg { width: 22px; height: 22px; }
@media (min-width: 768px) {
  .wrapper .site-footer .footer-columns { grid-template-columns: repeat(3, 1fr); gap: 40px; }
}
