.footer-contact-section {
  padding: 78px 0 72px;
}

.footer-contact-copy > p:not(.kicker):not(.contact-location) {
  max-width: 540px;
  color: #f2e5e6;
}

.contact-location {
  margin: 26px 0 0;
  color: #e6bdc1;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.contact-location span {
  margin: 0 7px;
  color: #fff;
}

.footer-contact-section .contact-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.footer-contact-section .contact-card {
  min-height: 86px;
  padding: 17px 20px;
}

.footer-main.footer-main-simple {
  grid-template-columns: minmax(270px, 1.5fr) 1fr 1fr;
  gap: clamp(44px, 8vw, 110px);
  align-items: start;
}

.footer-main-simple .footer-brand {
  grid-column: auto;
}

.footer-main-simple .footer-brand p {
  max-width: 280px;
}

@media (max-width: 960px) {
  .footer-main.footer-main-simple {
    grid-template-columns: 1.15fr 1fr 1fr;
    gap: 35px;
  }

  .footer-main-simple .footer-brand {
    grid-column: auto;
  }
}

@media (max-width: 700px) {
  .footer-contact-section {
    padding: 64px 0 76px;
  }

  .footer-contact-section .contact-actions {
    grid-template-columns: 1fr;
  }

  .footer-contact-section .contact-card {
    min-height: 76px;
  }

  .contact-location {
    line-height: 1.8;
  }

  .footer-main.footer-main-simple {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }

  .footer-main-simple .footer-brand {
    grid-column: 1 / -1;
  }

  .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}
