@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800&display=swap');

/* =========================================================
   Main site footer — modern (preserves existing link behavior)
   ========================================================= */
.footer-container.site-footer{
  --sf-navy:#000040;
  --sf-navy-mid:#000038;
  --sf-navy-deep:#000022;
  --sf-yellow:#ffcc00;
  --sf-text:rgba(255,255,255,0.92);
  --sf-muted:rgba(255,255,255,0.68);
  --sf-line:rgba(255,255,255,0.12);
  --sf-font:"Outfit",system-ui,sans-serif;
  background:
    radial-gradient(900px 280px at 0% 0%, rgba(255,204,0,0.12), transparent 55%),
    radial-gradient(700px 240px at 100% 20%, rgba(255,255,255,0.06), transparent 50%),
    linear-gradient(180deg, var(--sf-navy-mid) 0%, var(--sf-navy) 45%, var(--sf-navy-deep) 100%);
  border-top:2px solid var(--sf-yellow);
  font-family:var(--sf-font);
  color:var(--sf-text);
  clear:both;
}

.footer-container.site-footer *{
  color:inherit;
  box-sizing:border-box;
}

.footer-container.site-footer .footer.site-footer__inner{
  max-width:1200px;
  margin:0 auto;
  padding:36px 20px 20px;
  border-top:0;
  position:relative;
}

.footer-container.site-footer .site-footer__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:28px 36px;
  align-items:start;
}

.footer-container.site-footer .site-footer__col{
  width:auto !important;
  float:none !important;
  padding:0 !important;
  margin:0;
}

.footer-container.site-footer .nav-link h4,
.footer-container.site-footer .site-footer__heading{
  margin:0 0 14px;
  padding:0 0 10px;
  color:var(--sf-yellow) !important;
  font-family:var(--sf-font);
  font-size:0.95rem;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
  border-bottom:1px solid var(--sf-line);
}

.footer-container.site-footer ul{
  list-style:none;
  margin:0;
  padding:0;
}

.footer-container.site-footer ul li{
  margin:0;
  padding:0;
  position:relative;
}

.footer-container.site-footer ul li::before{
  content:none !important;
  display:none !important;
}

.footer-container.site-footer .nav-link a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:auto;
  max-width:100%;
  padding:7px 0;
  text-align:left;
  color:var(--sf-text) !important;
  font-size:0.92rem;
  font-weight:600;
  line-height:1.35;
  text-decoration:none !important;
  transition:color 0.15s ease, transform 0.15s ease;
}

.footer-container.site-footer .nav-link.other-links a{
  padding:6px 0;
}

.footer-container.site-footer .nav-link:not(.social-links) a:hover,
.footer-container.site-footer a.current,
.footer-container.site-footer a.current2{
  color:var(--sf-yellow) !important;
  text-decoration:none !important;
  transform:translateX(2px);
}

.footer-container.site-footer .nav-link.contact-link li{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:4px 8px;
  padding:6px 0;
  font-size:0.9rem;
  color:var(--sf-muted);
}

.footer-container.site-footer .nav-link.contact-link li b{
  color:rgba(255,255,255,0.88) !important;
  font-weight:700;
  min-width:5.5em;
}

.footer-container.site-footer .nav-link.contact-link a{
  width:auto;
  padding:0;
  color:var(--sf-text) !important;
  font-weight:600;
}

.footer-container.site-footer .nav-link.contact-link a:hover{
  color:var(--sf-yellow) !important;
}

.footer-container.site-footer .home-link-loader,
.footer-container.site-footer .gen-spinner.home-link-loader{
  display:none;
  font-size:12px !important;
  width:auto !important;
  height:auto !important;
  margin:0;
  color:var(--sf-yellow) !important;
}

.footer-container.site-footer .accepted-payment-means{
  margin:28px 0 8px;
  padding:16px 12px 8px !important;
  text-align:center;
  border-top:1px solid var(--sf-line);
}

.footer-container.site-footer .accepted-payment-means img{
  max-width:min(100%, 560px);
  height:auto;
  display:inline-block;
  vertical-align:middle;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,0.25));
}

.footer-container.site-footer .special-footer{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 14px;
  padding:8px 4px 4px !important;
  text-align:center;
}

.footer-container.site-footer .special-footer a{
  padding:6px 10px !important;
  color:var(--sf-muted) !important;
  font-size:0.82rem;
  font-weight:600;
  text-decoration:none !important;
  border-radius:999px;
  border:1px solid transparent;
  transition:color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.footer-container.site-footer .special-footer a:hover{
  color:var(--sf-yellow) !important;
  border-color:rgba(255,204,0,0.35);
  background:rgba(255,204,0,0.08);
}

.footer-container.site-footer .page-nav.site-footer__top,
.footer-container.site-footer a.nav_top.page-nav{
  position:absolute;
  left:auto;
  right:16px;
  bottom:auto;
  top:16px;
  z-index:5;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(255,255,255,0.1);
  border:1px solid var(--sf-line);
  transition:background 0.15s ease, transform 0.15s ease;
}

.footer-container.site-footer .page-nav.site-footer__top:hover,
.footer-container.site-footer a.nav_top.page-nav:hover{
  background:rgba(255,204,0,0.2);
  transform:translateY(-2px);
}

.footer-container.site-footer .page-nav img{
  height:22px;
  width:auto;
  display:block;
}

.footer-container.site-footer .copyright.site-footer__copyright,
.footer-container.site-footer > .copyright{
  background:rgba(0,0,0,0.35);
  color:var(--sf-muted) !important;
  text-align:center;
  font-size:0.82rem;
  font-weight:500;
  line-height:1.55;
  padding:16px 16px 18px;
  border-top:1px solid var(--sf-line);
}

.footer-container.site-footer .copyright b,
.footer-container.site-footer .copyright strong{
  color:var(--sf-yellow) !important;
  font-weight:800;
}

.footer-container.site-footer .copyright a{
  color:var(--sf-text) !important;
  font-size:inherit;
  font-weight:700;
}

@media (max-width:992px){
  .footer-container.site-footer .footer.site-footer__inner{
    padding:28px 16px 16px;
  }
  .footer-container.site-footer .site-footer__grid{
    grid-template-columns:1fr;
    gap:22px;
  }
  .footer-container.site-footer .page-nav.site-footer__top,
  .footer-container.site-footer a.nav_top.page-nav{
    right:12px;
    top:12px;
  }
  .footer-container.site-footer .nav-link a{
    padding:8px 0;
    min-height:40px;
  }
  .footer-container.site-footer .nav-link:not(.social-links) a:hover{
    transform:none;
  }
}

@media (prefers-reduced-motion:reduce){
  .footer-container.site-footer .nav-link a,
  .footer-container.site-footer .page-nav.site-footer__top,
  .footer-container.site-footer .special-footer a{
    transition:none;
  }
}
