#contact {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5rem;
  padding: 2rem 2rem 2rem 8rem;
}

@media (max-width: 750px) {
  #contact {
    flex-direction: column;
    align-items: flex-start;
    padding: 3rem 1.5rem 1.5rem !important;
    gap: 1.75rem;
    overflow-y: auto;
  }

  .contact-element {
    min-width: 0 !important;
    width: 100%;
  }

  .contact-subtitle {
    display: none;
  }

  .contact-intro h1 {
    font-size: 13vw !important;
    margin-top: 0 !important;
  }
}

.contact-intro h1 {
  font-size: 4.5vw;
  line-height: 1.05;
  margin-top: 0;
  margin-bottom: 1.25rem;
}

.contact-accent {
  color: #EB4468;
  font-size: inherit !important;
  font-weight: inherit;
}

.contact-subtitle {
  font-size: .85rem !important;
  color: #555555;
  line-height: 1.7;
}

.contact-section {
  display: flex;
  flex-direction: column;
  gap: .6rem;
}

.contact-element {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: .85rem 1.25rem;
  border-radius: .6rem;
  border: 1px solid #2a2a2a;
  background: #1a1a1a;
  text-decoration: none;
  min-width: 22rem;
  transition: border-color ease-in-out 200ms, background ease-in-out 200ms;
}

.contact-element:hover {
  border-color: #EB4468;
  background: #1e1215;
}

.contact-element > img {
  width: 1.4rem;
  margin-left: 0;
  flex-shrink: 0;
  opacity: .6;
  transition: opacity ease-in-out 200ms;
}

.contact-element:hover > img {
  opacity: 1;
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.contact-label {
  font-size: .65rem !important;
  color: #555555;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 700;
}

.contact-value {
  font-size: .88rem !important;
  color: #cccccc;
}
