.contact-hero {
  padding-top: var(--space-80);
}

.contact-hero__grid {
  align-items: center;
  gap: var(--space-40);
}

.contact-hero__card {
  align-self: stretch;
}

.contact-hero__actions {
  margin-top: var(--space-24);
}

.contact-hero__contact-list .contact-line + .contact-line {
  margin-top: var(--space-16);
}

.contact-details__grid,
.contact-form__grid,
.contact-map__grid,
.contact-meeting__grid,
.contact-data__grid,
.contact-faq__grid {
  gap: var(--space-32);
}

.contact-details__cards {
  margin-top: var(--space-24);
}

.contact-opening .opening-hours {
  margin-top: var(--space-16);
}

.opening-hours__row {
  display: flex;
  justify-content: space-between;
  gap: var(--space-16);
  font-size: var(--font-size-sm);
  padding-block: var(--space-4);
}

.opening-hours__row dt {
  color: var(--gray-200);
}

.opening-hours__row dd {
  margin: 0;
  color: var(--color-text-muted);
}

.contact-form {
  margin-top: var(--space-16);
}

.contact-form__consent label {
  margin-bottom: 0;
}

.contact-form__actions {
  margin-top: var(--space-8);
}

.contact-alt__list,
.contact-directions,
.contact-meeting__options,
.contact-data__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.contact-alt__list li + li,
.contact-directions li + li,
.contact-meeting__options li + li,
.contact-data__list li + li {
  margin-top: var(--space-12);
}

.contact-map__frame {
  min-height: 280px;
}

.contact-meeting__cta {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.contact-data__quote {
  align-self: center;
}

.contact-faq__item {
  height: 100%;
}

.form-success {
  font-size: var(--font-size-sm);
  color: var(--color-success);
}

@media (max-width: 768px) {
  .contact-hero {
    padding-top: var(--space-64);
  }

  .opening-hours__row {
    flex-direction: column;
    align-items: flex-start;
  }

  .contact-map__frame {
    min-height: 220px;
  }
}
