@media (max-width: 900px) {
  .contact-hero,
  .contact-methods,
  .contact-form__grid {
    grid-template-columns: 1fr;
  }

  .contact-hero {
    padding-top: 2.8rem;
  }

  .contact-visual {
    min-height: 340px;
  }

}

@media (max-width: 560px) {
  .contact-hero,
  .contact-section__inner {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .contact-hero .cta-row .button,
  .contact-form__button {
    width: 100%;
  }

  .contact-visual {
    min-height: 310px;
  }

  .contact-visual__rail {
    left: 0.9rem;
  }

  .contact-visual__mini {
    width: 3.8rem;
    height: 3.2rem;
  }

  .contact-visual__people {
    right: 0.9rem;
    width: 4.2rem;
    height: 4.2rem;
  }

  .contact-visual__status {
    right: 1rem;
    bottom: 1rem;
    width: 3.2rem;
    height: 3.2rem;
  }
}
