body :is(.site-footer, .download-footer, .free-footer, .payment-footer) {
  background: #10252d;
  color: #c1d0d4;
  border-top: 3px solid #08a9c9;
  box-shadow: inset 0 2px 0 #42616b, inset 0 -6px 0 #06171e, 0 -9px 20px -15px rgba(16,37,45,.7);
}
body :is(.free-footer, .payment-footer) { padding: 24px; }
body .site-footer { gap: 24px; grid-template-columns: 240px minmax(0,1fr) minmax(0,1fr); }
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 8px;
  min-width: 0;
  align-items: center;
}
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 10px;
  color: #e6f2f4;
  font-size: 12px;
  border: 1px solid #3c5862;
  border-top-color: #71858d;
  border-radius: 5px;
  background: #1c343e;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 3px 0 #07171e, 0 7px 10px -6px rgba(0,0,0,.65);
  transition: transform .18s, background .18s, box-shadow .18s;
}
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a:nth-child(3n + 2) { border-top-color: #71b5a3; }
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a:nth-child(3n) { border-top-color: #c3b17c; }
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a:hover { color: #fff; background: #284651; transform: translateY(-1px); }
body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a:active { transform: translateY(2px); box-shadow: inset 0 2px 4px rgba(0,0,0,.25), 0 1px 0 #07171e; }
body .site-footer .footer-brand,
body .download-footer > div,
body :is(.free-footer, .payment-footer) > span {
  align-self: start;
  max-width: 100%;
  min-width: 0;
  padding: 10px;
  border: 1px solid #3c5862;
  border-top-color: #71858d;
  border-radius: 6px;
  background: #1c343e;
  color: #e6f2f4;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 5px 0 #07171e, 0 12px 18px -10px rgba(0,0,0,.6);
}
body .download-footer > div a { color: #fff; }
body .footer-brand img { flex-shrink: 0; filter: drop-shadow(0 3px 2px rgba(0,0,0,.45)); }
@media (max-width: 850px) {
  body .site-footer { grid-template-columns: minmax(0,1fr); }
  body .site-footer .footer-brand { width: fit-content; }
  body :is(.download-footer, .free-footer, .payment-footer) { flex-direction: column; align-items: flex-start; gap: 24px; }
  body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a { transition: none; }
  body :is(.site-footer, .download-footer, .free-footer, .payment-footer) nav a:hover { transform: none; }
}
@media print { body footer, body footer nav a { box-shadow: none; } }
