.site-footer {
  padding:64px 0 28px;
  border-top:1px solid #22334d;
  background:#031127;
  color:#c1cbdb;
  font-size:15px;
  line-height:1.8;
}
.site-footer .footer-layout {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr));
  gap:clamp(28px,4vw,64px);
  align-items:start;
}
.site-footer .footer-company { min-width:0; }
.site-footer .footer-logo {
  display:inline-flex;
  align-items:center;
  width:200px;
  max-width:100%;
  min-height:44px;
  padding:0;
  border-radius:0;
  background:transparent;
}
.site-footer .footer-logo .logo-art { width:100%; }
.site-footer .footer-company-name {
  margin:20px 0 8px;
  color:#f4f7ff;
  font-size:18px;
  font-weight:700;
  line-height:1.6;
}
.site-footer .footer-description {
  margin:0;
  color:#c1cbdb;
  font-size:14px;
  line-height:1.9;
  overflow-wrap:anywhere;
}
.site-footer .footer-description > span { display:block; }
.site-footer .footer-navigation h2 {
  margin:0 0 12px;
  color:#f4f7ff;
  font-size:14px;
  font-weight:700;
  line-height:1.8;
  letter-spacing:.04em;
}
.site-footer ul { margin:0; padding:0; list-style:none; }
.site-footer li { margin:0; padding:0; }
.site-footer .footer-navigation a,
.site-footer .footer-supplementary a {
  display:flex;
  align-items:center;
  gap:8px;
  width:fit-content;
  max-width:100%;
  min-width:44px;
  min-height:44px;
  padding:8px 0;
  color:#c1cbdb;
  line-height:1.75;
  text-decoration:none;
  text-underline-offset:.25em;
  overflow-wrap:anywhere;
}
.site-footer a:hover { color:#fff; text-decoration:underline; }
.site-footer a:focus-visible {
  outline:3px solid #83d4ff;
  outline-offset:5px;
  border-radius:2px;
}
.site-footer .footer-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px 32px;
  margin-top:48px;
  padding-top:20px;
  border-top:1px solid #22334d;
}
.site-footer .footer-copyright {
  display:block;
  margin:0;
  padding:0;
  border:0;
  color:#aab8cd;
  font-size:13px;
  line-height:1.8;
  text-align:left;
}
.site-footer .footer-supplementary ul { display:flex; flex-wrap:wrap; gap:8px 24px; }
.site-footer .footer-supplementary a { color:#aab8cd; font-size:13px; }
.site-footer .footer-supplementary a:hover { color:#fff; }

@media(max-width:980px) {
  .site-footer .footer-layout { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 40px; }
  .site-footer .footer-company { grid-column:1 / -1; }
}
@media(max-width:650px) {
  .site-footer { padding:44px 0 24px; }
  .site-footer .footer-logo { width:180px; }
  .site-footer .footer-company-name { font-size:17px; }
  .site-footer .footer-description > span { display:inline; }
  .site-footer .footer-layout { gap:32px 24px; }
  .site-footer .footer-bottom { margin-top:32px; flex-direction:column; align-items:flex-start; gap:8px; }
}
@media(max-width:560px) {
  .site-footer .footer-layout { grid-template-columns:minmax(0,1fr); }
  .site-footer .footer-company { grid-column:auto; }
}
