.o-contact-form__form {
  order: 2;
}
.o-contact-form__info {
  order: 1;
}
.o-contact-form__inner {
  position: relative;
  z-index: 1;
}
.o-contact-form__wrapper {
  margin-top: 4rem;
  padding: var(--internal_padding_mobile) 1rem;
  border-radius: var(--border-radius-24);
}
@media screen and (min-width: 990px) {
  .o-contact-form__wrapper {
    padding: var(--internal_padding_desktop) 6.5rem;
  }
}
.o-contact-form__wrapper--has-image {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
@media screen and (min-width: 990px) {
  .o-contact-form__wrapper--has-image {
    padding: 2rem;
  }
}
.o-contact-form__wrapper--has-image .o-contact-form__form,
.o-contact-form__wrapper--has-image .o-contact-form__image {
  flex-basis: 100%;
}
@media screen and (min-width: 990px) {
  .o-contact-form__wrapper--has-image .o-contact-form__form,
  .o-contact-form__wrapper--has-image .o-contact-form__image {
    flex-basis: calc(50% - 1rem);
  }
}
.o-contact-form__wrapper--success {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  max-width: 35rem;
}
.o-contact-form__content h1 {
  margin-bottom: var(--spacing-sm);
}
.o-contact-form__image {
  position: relative;
  min-height: 30rem;
}
@media screen and (min-width: 990px) {
  .o-contact-form__image {
    min-height: unset;
  }
}
.o-contact-form__image img {
  max-width: 100%;
  height: auto;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.o-contact-form__image-position--left {
  order: 1;
}
.o-contact-form__image-position--right {
  order: 1;
}
@media screen and (min-width: 990px) {
  .o-contact-form__image-position--right {
    order: 3;
  }
}
.o-contact-form__form {
  order: 2;
}
.o-contact-form__fields {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.o-contact-form__field {
  width: 100%;
  flex-basis: 100%;
}
@media screen and (min-width: 990px) {
  .o-contact-form__field--half {
    flex-basis: calc(50% - 0.75rem);
  }
}
@media screen and (min-width: 990px) {
  .o-contact-form__form:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__form--left, .o-contact-form__form:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__info--left, .o-contact-form__info:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__form--left, .o-contact-form__info:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__info--left {
    order: 1;
    padding-right: 2rem;
  }
  .o-contact-form__form:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__form--right, .o-contact-form__form:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__info--right, .o-contact-form__info:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__form--right, .o-contact-form__info:not(.o-contact-form__grid-item--desktop_fw).o-contact-form__info--right {
    order: 2;
    padding-left: 2rem;
  }
}
.o-contact-form__grid--centered {
  flex-direction: column;
}
.o-contact-form__success {
  width: fit-content;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem 0;
}
@media screen and (min-width: 990px) {
  .o-contact-form__success {
    padding: 2rem;
  }
}
.o-contact-form__success .icon {
  --icon-size: 4.4rem;
  width: var(--icon-size);
  height: var(--icon-size);
}
.o-contact-form__success-heading {
  margin-top: 1rem;
}
.o-contact-form__success-text {
  margin-bottom: 1rem;
}
.o-contact-form__error {
  display: block;
  color: rgb(var(--color-error));
  flex-basis: 100%;
}
.o-contact-form__error a {
  text-decoration: none;
}
