/*
 * Footer layout (INTС bottom).
 * Loaded LAST in header — must beat .flex / index.css / news.archive.css.
 */
.footer .container { max-width: 1340px; margin: 0 auto; padding: 0 1rem; }
.footer { position: sticky; padding: 36px 0 46px; width: 100%; color: #fff; background-color: #0f2233; }
.footer__top__desc img { width: 286px; max-width: 100%; }
.footer__wrapper { padding: 0 5px; }
.footer__top { align-items: center; }
.footer__search { display: none; margin-right: auto; padding: 16px 24px; align-items: center; justify-content: space-between; background-color: #fff; width: 100%; max-width: 560px; border: 1px solid #8697c1; }
.footer__search-input { line-height: 100%; border: 0; }
.footer__search-input::placeholder { font-size: 18px; }
.footer__top .footer__logo {
  display: block;
  margin-right: 14px;
  margin-left: auto;
  width: 200px;
  max-width: 100%;
  height: auto;
  flex: none;
  align-self: center;
}
.footer__ttl { display: flex; flex-direction: column; font-family: "CanelaDeck"; font-size: 30px; font-weight: 500; line-height: 30px; }
.footer__ttl-big { margin-bottom: 6px; }
.footer__ttl-small { max-width: 140px; font-size: 12px; line-height: 20px; letter-spacing: .07em; text-transform: uppercase; }
.footer__top svg { margin-right: 17px; }

/* Каталог: 3 колонки (класс .flex не должен ломать grid) */
.footer .footer__catalogue.flex,
.footer .footer__catalogue {
  padding-top: 40px;
  border-bottom: 1px solid #fff;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 1rem;
  flex-wrap: unset;
}
.footer__link-control .footer__ttl-link { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.footer .footer__lst-wrap {
  display: flex;
  margin-right: 0;
  padding-bottom: 40px;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  flex-basis: auto;
  width: auto;
  max-width: none;
  flex-wrap: unset;
  justify-content: flex-start;
}
.footer .footer__lst-wrap:first-child,
.footer .footer__lst-wrap:nth-child(2),
.footer .footer__lst-wrap:last-child {
  width: auto;
  max-width: none;
  flex-basis: auto;
  flex-direction: column;
  flex-wrap: unset;
  justify-content: flex-start;
  padding-top: 0;
}
.footer__lst { line-height: 18px; }
.footer__lst-ttl { padding-bottom: 2px; font-family: "CanelaDeck"; font-size: 18px; font-weight: 500; }
.footer__item:not(:last-child) { margin-bottom: 11px; }
.footer__item svg { display: none; flex-shrink: 0; }
.footer__ttl-link { display: inline-block; margin-bottom: 20px; border: none; }
.footer__ttl-link:before { display: none; }
.footer__catalogue-link { display: flex; }
.footer__catalogue-link span { margin-right: 8px; }
.footer__lst--31 { margin-bottom: 31px; }

/*
 * Низ как на intc.sirius.ru:
 * left = согласие+копирайт | mid = контакты | right = поддержка+герб
 * Специфичность выше .flex / .footer__left из index.css
 */
.footer .footer__bottom.flex,
.footer .footer__bottom {
  padding-top: 42px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: start;
  flex-direction: unset;
  flex-wrap: unset;
}
.footer .footer__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-basis: auto;
  font-size: 13px;
  line-height: 18px;
  align-self: start;
  min-width: 0;
  padding-top: 0;
  order: 0;
  width: auto;
  border-top: none;
}
.footer .footer__left .footer__contacts {
  width: 100%;
  margin-right: 0;
}
.footer .footer__mid {
  min-width: 0;
  padding: 0;
  order: 0;
}
.footer .footer__right.flex,
.footer .footer__right {
  display: flex;
  justify-content: flex-start;
  flex-basis: auto;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border-bottom: none;
  border-top: none;
  flex-direction: row;
  order: 0;
}
.footer .footer__bottom__link {
  color: inherit;
  text-decoration: none;
  display: block;
  margin-bottom: 20px;
  line-height: 1.35;
}
.footer .footer__left .footer__bottom__link {
  margin-top: 24px;
}
.footer .footer__bottom__link:hover { text-decoration: underline; }
.footer .footer-gerb {
  width: 279px;
  max-width: 100%;
  height: auto;
  margin-top: 12px;
  display: block;
}
.footer .footer__txt--s {
  width: 100%;
  max-width: none;
  opacity: .62;
  line-height: 1.35;
}
.footer .footer__contacts { display: flex; flex-direction: column; margin-right: 0; }
.footer .footer__contacts-wrap { margin-bottom: auto; }
.footer .footer__contacts-ttl { font-family: "CanelaDeck"; font-size: 18px; font-weight: 500; line-height: 1.25; }
.footer .footer__links-wrap { padding: 16px 0; display: flex; flex-direction: column; width: auto; }
.footer .footer__contacts-link:not(:last-child) { margin-bottom: 8px; }
.footer .footer__social.flex,
.footer .footer__social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  max-width: none;
  justify-content: flex-start;
}
.footer .footer__social-link { display: block; flex-shrink: 0; line-height: 0; }
.footer .footer__social-link img { width: 40px; height: 40px; display: block; object-fit: contain; }

@media (max-width: 1025px) {
  .footer { padding: 28px 0 69px; background-color: #0f2233; }
  .footer .footer__catalogue.flex,
  .footer .footer__catalogue { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer .footer__lst-wrap:last-child {
    padding-top: 0;
    flex-basis: auto;
    flex-direction: column;
  }
  .footer__lst-ttl { font-size: 17px; }
  .footer .footer__bottom.flex,
  .footer .footer__bottom { padding: 40px 0 0; }
  .footer .footer__left { padding-top: 0; align-self: start; }
  .footer .footer__contacts-ttl { font-size: 17px; line-height: 20px; }
}

@media (max-width: 767px) {
  .footer { padding: 24px 0 34px; }
  .footer__ttl { margin-bottom: 0; }
  .footer__ttl-big { margin-bottom: 4px; font-size: 26px; line-height: 28px; }
  .footer__ttl-small { font-size: 11px; line-height: 13px; letter-spacing: .07em; }
  .footer .footer__catalogue.flex,
  .footer .footer__catalogue { padding: 0; grid-template-columns: 1fr; }
  .footer__ttl-link { margin: 0 0 18px; border-bottom: 1px solid #fff; }
  .footer .footer__links-wrap { width: 90%; }
  .footer__lst-wrap { padding: 0; }
  .open .footer__lst-ttl { margin-bottom: 14px; }
  .footer__lst { display: none; }
  .open .footer__lst-open { transform: rotate(180deg); }
  .footer__accordion-content { max-height: 0; opacity: 0; overflow: hidden; will-change: max-height; box-sizing: content-box; transition: all .4s ease-in-out; }
  .open .footer__accordion-content { opacity: 1; }
  .footer__contacts--mob { display: block; }
  /* mobile: contacts → support → privacy (как INTС) */
  .footer .footer__bottom.flex,
  .footer .footer__bottom {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    grid-template-columns: none;
  }
  .footer .footer__left { order: 3; width: 100%; border-top: 1px solid #fff; padding-top: 28px; align-self: start; }
  .footer .footer__mid { order: 1; padding: 28px 0; }
  .footer .footer__right.flex,
  .footer .footer__right { order: 2; min-height: 0; border-top: 1px solid #fff; padding: 28px 0; }
  .footer .footer__bottom__link br { display: none; }
}
