

.sf-footer, .sf-footer * { box-sizing: border-box; }
.sf-footer { padding: 40px 0px; }

:root {
  --sf-bg:#333333;
  --sf-fg:#e6e7ea;
  --sf-fwg:#adadad;
  --sf-muted:#a3a7b3;
  --sf-link:#ffffff;
  --sf-border:#333333;
}

.sf-footer {
  background:var(--sf-bg);
  color:var(--sf-fg);
  font:20px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  margin-top: 100px;
  -webkit-box-shadow: -100px 0px 0px 0px var(--sf-bg), 100px 0px 0px 0px var(--sf-bg), 0px 100px 0px -100px var(--sf-bg);
  -moz-box-shadow: -100px 0px 0px 0px var(--sf-bg), 100px 0px 0px 0px var(--sf-bg), 0px 100px 0px -1000px var(--sf-bg);
  box-shadow: -100px 0px 0px 0px var(--sf-bg), 100px 0px 0px 0px var(--sf-bg), 0px 100px 0px -1000px var(--sf-bg);
}

.sf-footer a {
  color:var(--sf-fg);
  text-decoration:none;
}

.sf-footer ul li a {
  color:var(--sf-fwg);
  text-decoration:none;
}

.sf-footer a:hover {
  color:var(--sf-link);
  text-decoration:underline;
}

/* На всю ширину страницы */
.sf-footer .sf-container {
  width:100%;
  max-width:none;
  margin:0;
  padding:50px 25px;
}

@media (min-width:768px) {
  .sf-footer .sf-container {
    padding: 40px 16px;
  }
}

@media (min-width:1280px) {
  .sf-footer .sf-container {
    padding:20px 100px;
  }
}

/* Секция 1 */
.sf-footer__top {
  display:grid;
  gap:24px;
  padding:32px 0;
  border-bottom:1px solid var(--sf-border);
  grid-template-columns:1fr;
}

@media (min-width:640px) {
  .sf-footer__top {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:1024px) {
  .sf-footer__top {
    grid-template-columns:1fr 1fr 1.4fr;
  }
}

.sf-footer__title {
  border-bottom: 1px solid var(--sf-fwg);
  margin:0 30px 12px 0px;
  font-weight:700;
  font-size:25px;
  padding:0px 0px 15px 0px;
}

.sf-footer__list {
  list-style:none;
  padding:0;
  margin:0;
}

.sf-footer__list li+li {
  margin-top:6px;
}

/* ДВЕ ЖЁСТКИЕ КОЛОНКИ ДЛЯ НАПРАВЛЕНИЙ */
.sf-footer__popular-wrap {
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}

@media (min-width:1024px) {
  .sf-footer__popular-wrap {
    grid-template-columns:1fr 1fr;
  }
}

/* Секция 2 */
.sf-footer__middle {
  display:grid;
  gap:0px;
  padding:24px 0;
  border-bottom:1px solid var(--sf-border);
  grid-template-columns:1fr;
  align-items:start;
}

@media (min-width:1024px) {
  .sf-footer__middle {
    display:flex;
  }

  .sf-footer__middle div {
    width: 30%;
  }

  .sf-footer__badges p {
    text-align: right;
  }

  .sf-footer__muted {
    padding:0px 100px 0px 0px;
  }
}

.sf-footer__muted {
  font-size: 18px;
}

@media (max-width:1024px) {
  .sf-footer__badges {
    justify-content: start !important;
  }

  .sf-footer__muted {
    padding:20px 25px 20px 0;
  }
}

@media (min-width:768px) {
  .sf-footer__middle {
    grid-template-columns:1fr 1fr;
  }
}

@media (min-width:1024px) {
  .sf-footer__middle {
    grid-template-columns:1fr 1fr auto;
  }
}

.sf-footer__badges {
  display:flex;
  gap:12px;
  justify-content:flex-end;
  align-items:center;
}

.sf-footer__badges p {
  margin:0;
  color:var(--sf-muted);
}

.sf-footer__middle.sf-container address {
  font-weight: bold;
}

/* Секция 3 */
.sf-footer__bottom {
  display:grid;
  gap:12px;
  padding:16px 0 8px;
  color:var(--sf-muted);
  grid-template-columns:1fr;
  align-items:center;
  border-bottom:1px solid var(--sf-border);
}

/* Секция 4: юридическая информация */
.sf-footer__legal {
  padding:12px 0 28px;
  color:var(--sf-muted);
  font-size:12px;
}

.sf-footer__legal p {
  margin:0 0 12px;
}

.sf-footer__tech {
  margin-top:16px;
  color:var(--sf-muted);
}

.sf-footer__tech-title {
  margin:0 0 8px;
  padding:0;
  color:var(--sf-fg);
  font-size:13px;
  line-height:1.4;
  font-weight:700;
  text-transform:uppercase;
}

.sf-footer__tech-list {
  margin:0;
  padding-left:18px;
}

.sf-footer__tech-list > li + li {
  margin-top:8px;
}

.sf-footer__tech-sublist {
  margin:4px 0 0;
  padding-left:18px;
}

.sf-footer__tech-sublist li + li {
  margin-top:2px;
}

.sf-footer__nowrap {
  white-space:nowrap;
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
}
