/* ============================================================
   Footer
   ============================================================ */
.footer {
  background: var(--c-footer);
  color: var(--c-white);
  padding: var(--space-xl) 0;
}
.footer__inner {
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: var(--pad-inline);
  display: flex;
  flex-direction: column;
  gap: var(--space-2xl);
}

/* верхняя часть */
.footer__top { display: flex; flex-direction: column; gap: var(--space-2xl); }
@media (min-width: 900px) { .footer__top { flex-direction: row; justify-content: space-between; } }

.footer__contacts { display: flex; flex-direction: column; gap: var(--space-xl); max-width: 325px; }
.footer__intro { display: flex; flex-direction: column; gap: var(--space-md); align-items: flex-start; }
.footer__cta {
  display: inline-flex; align-items: center; justify-content: center;
  height: 60px; padding-inline: 50px;
  background: var(--c-accent); color: var(--c-white);
  font-size: var(--fs-md); font-weight: 500;
  transition: opacity .2s ease;
}
.footer__cta:hover { opacity: .92; }
.footer__small { font-size: var(--fs-sm); line-height: 1.4; color: var(--c-on-teal); max-width: 210px; }

.footer__address { font-size: var(--fs-base); line-height: 1.4; color: var(--c-white); text-decoration: underline; }
.footer__contact-item { display: flex; flex-direction: column; gap: var(--space-3xs); }
.footer__contact-value { font-size: 1.5rem; font-weight: 600; line-height: 1.4; color: var(--c-white); text-decoration: underline; }
.footer__contact-label { font-size: var(--fs-sm); line-height: 1.4; color: var(--c-on-teal); }

.footer__socials { display: flex; gap: var(--space-2xs); }
.footer__social {
  display: grid; place-items: center;
  width: 42px; height: 42px;
  background: var(--c-accent); color: var(--c-white);
  transition: opacity .2s ease;
}
.footer__social:hover { opacity: .85; }
.footer__social svg { width: 20px; height: 20px; }

/* навигация */
.footer__nav { display: flex; flex-wrap: wrap; gap: var(--space-xl); }
.footer__col { display: flex; flex-direction: column; gap: var(--space-md); min-width: 150px; }
.footer__col-title { font-family: var(--ff-base); font-weight: 600; font-size: var(--fs-md); color: var(--c-white); }
.footer__col ul { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--space-3xs); }
.footer__col a { font-size: var(--fs-base); font-weight: 500; color: var(--c-on-teal); }
.footer__col a:hover { color: var(--c-white); }
.footer__col--main a { font-weight: 600; font-size: var(--fs-md); color: var(--c-white); }

/* нижняя часть */
.footer__bottom {
  display: flex;
  flex-direction: column;
  gap: var(--space-xl);
}
@media (min-width: 900px) { .footer__bottom { flex-direction: row; align-items: flex-end; justify-content: space-between; } }
.footer__legal { display: flex; flex-direction: column; gap: var(--space-md); max-width: 325px; font-size: var(--fs-sm); line-height: 1.4; color: var(--c-on-teal); }
.footer__brand { display: flex; flex-direction: column; gap: var(--space-md); align-items: center; max-width: 363px; }
.footer__brand-logo img { height: 60px; width: auto; }
.footer__brand-text { font-size: var(--fs-sm); line-height: 1.4; color: var(--c-on-teal); text-align: center; }
.footer__links { display: flex; gap: var(--space-xl); flex-wrap: wrap; }
.footer__links a { font-size: var(--fs-sm); color: var(--c-on-teal); text-decoration: underline; }
.footer__links a:hover { color: var(--c-white); }
