/* ============================================
   FTL Advisers — Footer
   footer.css
   
   Ширина 1400px — выровнена с плашкой
   "Опыт в цифрах" (4 × 350 = 1400).
   
   Сетка 2 строки × 3 колонки:
   
   ┌──────────────┬──────────────┬──────────────┐
   │ Логотип      │ О нас        │ Услуги       │  ← row 1
   │              │ + ссылки     │ + ссылки     │
   ├──────────────┼──────────────┼──────────────┤
   │ Подписаться  │ Контакты СМИ │ Соцсети      │  ← row 2 (top: 112)
   │ + инпут      │ + контакты   │ + иконки     │
   └──────────────┴──────────────┴──────────────┘
   
   Зависит от: variables.css, typography.css, components.css
   ============================================ */


.footer {
  margin-top: 60px;
  padding-bottom: 60px;
}

.footer__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--edge);
}

/* --- Главная сетка футера: 3 колонки × 2 строки --- */
.footer__top {
  display: grid;
  grid-template-columns: 700px 350px 350px;
  grid-template-rows: auto auto;
  row-gap: 112px;          /* отступ между двумя рядами */
  align-items: start;
}


/* ══════════════════════════════════════════
   ЭЛЕМЕНТЫ СЕТКИ — РЯД 1
   ══════════════════════════════════════════ */

.footer__logo {
  grid-row: 1;
  grid-column: 1;
}

.footer__logo img {
  height: 32px;
  width: auto;
}

.footer__nav {
  grid-row: 1;
}

.footer__nav--about {
  grid-column: 2;
}

.footer__nav--services {
  grid-column: 3;
}


/* ══════════════════════════════════════════
   ЭЛЕМЕНТЫ СЕТКИ — РЯД 2
   ══════════════════════════════════════════ */

.footer__subscribe {
  grid-row: 2;
  grid-column: 1;
}

.footer__media {
  grid-row: 2;
  grid-column: 2;
  width: 196px;
  max-width: 100%;
}

.footer__social-block {
  grid-row: 2;
  grid-column: 3;
}


/* ══════════════════════════════════════════
   ОБЩИЕ ЭЛЕМЕНТЫ
   ══════════════════════════════════════════ */

/* Подзаголовок (H3 uppercase) */
.footer__heading {
  margin-bottom: 32px;
}

/* Список ссылок */
.footer__links {
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.footer__links a {
  color: var(--text-primary);
}

.footer__links a:hover {
  color: var(--link-hover);
}

/* --- Инпут подписки --- */
.footer .input-arrow {
  width: 320px;
  max-width: 100%;
}

/* Текст-согласие под инпутом */
.footer__consent {
  margin-top: var(--gap-elements);
  width: 320px;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.4;
  color: var(--link-hover);
}

.footer__consent a {
  color: var(--link-hover);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.footer__consent a:hover {
  color: var(--text-primary);
}

/* Контакты для СМИ */
.footer__contacts {
  display: flex;
  flex-direction: column;
  gap: 11px;
}

/* Соцсети */
.footer__socials {
  display: flex;
  align-items: center;
  gap: var(--gap-elements);
  flex-wrap: wrap;
}

.footer__social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: var(--text-primary);
  transition: opacity var(--duration) var(--ease);
}

.footer__social:hover {
  opacity: 0.6;
}

.footer__social img,
.footer__social svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}


/* ══════════════════════════════════════════
   FOOTER BOTTOM (правовая строка)
   ══════════════════════════════════════════ */

.footer__bottom {
  margin-top: var(--gap-blocks);
  padding-top: var(--gap-elements);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  color: var(--link-hover);
  font-size: 14px;
}

.footer__bottom > *,
.footer__bottom a {
  white-space: nowrap;
}

.footer__bottom a {
  color: var(--link-hover);
}

.footer__bottom a:hover {
  color: var(--text-primary);
}

.footer__bottom-right {
  display: flex;
  align-items: center;
  gap: 32px;
}

.footer__made {
  display: flex;
  align-items: center;
  gap: 6px;
}

.footer__made img {
  height: 16px;
  width: auto;
}


/* ══════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════ */

@media (max-width: 1440px) {
  .footer__top {
    grid-template-columns: 1.5fr 1fr 1fr;
  }
}

@media (max-width: 1024px) {
  .footer__top {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto;
    row-gap: var(--gap-groups);
  }

  .footer__logo       { grid-row: 1; grid-column: 1 / -1; }
  .footer__nav--about { grid-row: 2; grid-column: 1; }
  .footer__nav--services { grid-row: 2; grid-column: 2; }
  .footer__subscribe  { grid-row: 3; grid-column: 1 / -1; }
  .footer__media      { grid-row: 4; grid-column: 1; }
  .footer__social-block { grid-row: 4; grid-column: 2; }

  .footer__bottom {
    flex-wrap: wrap;
  }
}

@media (max-width: 768px) {
  .footer__top {
    grid-template-columns: 1fr 1fr;
    row-gap: var(--gap-groups);
  }

  .footer__logo          { grid-row: 1; grid-column: 1 / -1; }
  .footer__nav--about    { grid-row: 2; grid-column: 1; }
  .footer__nav--services { grid-row: 2; grid-column: 2; }
  .footer__media         { grid-row: 3; grid-column: 1 / -1; }
  .footer__social-block  { grid-row: 4; grid-column: 1 / -1; }
  .footer__subscribe     { grid-row: 5; grid-column: 1 / -1; }

  .footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-cards);
  }

  .footer__bottom-right {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-cards);
  }

  .footer .input-arrow,
  .footer__consent {
    width: 100%;
  }
}
