.contact-form__wrapper {
  position: relative;
  line-height: var(--line-height-lg, 1.5);
}

.contact-form__wrapper--padding-top {
  padding-top: var(--padding-top-mobile, 40px);
}

.contact-form__wrapper--padding-bottom {
  padding-bottom: var(--padding-bottom-mobile, 40px);
}

.contact-form__container {
  position: relative;
  z-index: 2;
}

.contact-form__inner--grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 70px;
}

.contact-form__content {
  display: flex;
  flex-direction: column;
  align-items: var(--justify-content, left);
}

.contact-form__heading {
  font-size: 48px;
  line-height: var(--line-height-sm, 1.2);
  margin-bottom: 22px;
  text-align: var(--text-align, left);
}

.contact-form__heading--sm {
  font-size: var(--font-size-h3, 40px);
}

.contact-form__heading--md {
  font-size: var(--font-size-h2, 48px);
}

.contact-form__heading--lg {
  font-size: var(--font-size-h1, 56px);
}

.contact-form__text {
  text-align: var(--text-align, left);
}

.contact-form__button {
  margin-top: 30px;
}

.contact-form__holder.no-image {
  position: relative;
  aspect-ratio: 16 / 9;
}

.contact-form__image-wrapper::after {
  border-radius: var(--border-radius-block-rounded);
}

.contact-form__image {
  border-radius: var(--border-radius-block-rounded);
  width: 100%;
}

.contact-form__background {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.contact-form__background svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  min-width: 100%;
  opacity: 0.1;
}

.contact-form__background::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: var(--overlay-rotate);
}

.contact-form__background::before {
  content: "";
  position: absolute;
  inset: 0 var(--overlay-right) 0 var(--overlay-left);
  width: 9999px;
  z-index: 1;
}

.contact-form__background-floral svg {
  position: absolute;
  left: var(--bg-left, 30px);
  right: var(--bg-right, auto);
  bottom: 0;
  opacity: 0.2;
  max-height: 100%;
}

.palette-one.contact-form__wrapper {
  background: var(--background-primary, #FFF);
  color: var(--color-secondary, #4E5D78);
}

.palette-one .contact-form__heading {
  color: var(--color-primary, #0B1A26);
}

.palette-one .contact-form__holder.no-image {
  background: var(--color-image-placeholder, #0B1A2626);
}

.palette-one .contact-form__button.button--outlined {
  color: var(--color-primary, #0B1A26);
}

.palette-one .contact-form__background g,
.palette-one .contact-form__background path {
  fill: var(--color-primary, #0B1A26);
}

.palette-one .contact-form__background::after {
  background: radial-gradient(63.68% 231.83% at 28.65% 40.5%, var(--background-primary, #FFF) 0%, var(--background-primary-00, #FFF0) 100%);
}

.palette-one .contact-form__background::before {
  background: linear-gradient(to var(--overlay-direction), var(--background-primary-00, #FFF0) 0%, var(--background-primary-10, #FFFFFF1A) 20%, var(--background-primary-45, #FFFFFF73) 40%, var(--background-primary, #FFF) 100%);
}

.palette-two.contact-form__wrapper {
  background: var(--background-primary-2, #0B1A26);
  color: var(--color-secondary-2, #E1E4E8);
}

.palette-two .contact-form__heading {
  color: var(--color-primary-2, #FFF);
}

.palette-two .contact-form__holder.no-image {
  background: var(--color-image-placeholder-2, #FFFFFF47);
}

.palette-two .contact-form__button.button--outlined {
  color: var(--color-primary-2, #FFF);
}

.palette-two .contact-form__background g,
.palette-two .contact-form__background path {
  fill: var(--color-primary-2, #FFF);
}

.palette-two .contact-form__background::after {
  background: radial-gradient(63.68% 231.83% at 28.65% 40.5%, var(--background-primary-2, #0B1A26) 0%, var(--background-primary-2-00, #0B1A2600) 100%);
}

.palette-two .contact-form__background::before {
  background: linear-gradient(to var(--overlay-direction), var(--background-primary-2-00, #0B1A2600) 0%, var(--background-primary-2-10, #0B1A261A) 20%, var(--background-primary-2-45, #0B1A2673) 40%, var(--background-primary-2, #0B1A26) 100%);
}

.palette-three.contact-form__wrapper {
  background: var(--background-primary-3, #F4B841);
  color: var(--color-secondary-3, #FFF);
}

.palette-three .contact-form__heading {
  color: var(--color-primary-3, #0B1A26);
}

.palette-three .contact-form__holder.no-image {
  background: var(--color-image-placeholder-3, #0B1A2626);
}

.palette-three .contact-form__button.button--outlined {
  color: var(--color-primary-3, #0B1A26);
}

.palette-three .contact-form__background g,
.palette-three .contact-form__background path {
  fill: var(--color-primary-3, #0B1A26);
}

.palette-three .contact-form__background::after {
  background: radial-gradient(63.68% 231.83% at 28.65% 40.5%, var(--background-primary-3, #F4B841) 0%, var(--background-primary-3-00, #F4B84100) 100%);
}

.palette-three .contact-form__background::before {
  background: linear-gradient(to var(--overlay-direction), var(--background-primary-3-00, #F4B84100) 0%, var(--background-primary-3-10, #F4B8411A) 20%, var(--background-primary-3-45, #F4B84173) 40%, var(--background-primary-3, #F4B841) 100%);
}

@media (width >= 810px) {
  .contact-form__background svg {
    min-height: 100%;
    height: auto;
  }
}

@media (width >= 992px) {
  .contact-form__wrapper--padding-top {
    padding-top: var(--padding-top, 70px);
  }

  .contact-form__wrapper--padding-bottom {
    padding-bottom: var(--padding-bottom, 70px);
  }

  .contact-form__inner--grid {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 24px;
  }

  .contact-form__content {
    justify-content: var(--align-items, flex-start);
    padding: 0 0 var(--padding-bottom, 0);
    order : var(--order, 1);
  }

  .contact-form__holder {
    display: flex;
    flex-direction: column;
    justify-content: var(--image-align, flex-start);
    order : var(--order, 1);
  }

  .contact-form__image-wrapper {
    position: relative;
  }

  .contact-form__holder.no-image::after,
  .contact-form__image-wrapper::after {
    content: "";
    position: absolute;
    top: 30px;
    left: var(--left, 0);
    right: var(--right, 0);
    width: 100%;
    height: 100%;
    border: 2px solid transparent;
    z-index: -1;
  }

  .contact-form__wrapper--bg-reverse .contact-form__background-floral svg {
    left: var(--bg-right, auto);
    right: var(--bg-left, 30px);
  }

  .palette-one .contact-form__holder.no-image::after,
  .palette-one .contact-form__image-wrapper::after {
    border-color: var(--background-accent, #F4B841);
  }

  .palette-two .contact-form__holder.no-image::after,
  .palette-two .contact-form__image-wrapper::after {
    border-color: var(--background-accent-2, #F4B841);
  }

  .palette-three .contact-form__holder.no-image::after,
  .palette-three .contact-form__image-wrapper::after {
    border-color: var(--background-accent-3, #0B1A26);
  }

  .classic-design .contact-form__holder.no-image::after,
  .classic-design .contact-form__image-wrapper::after {
    display: none;
  }

  .classic-design .contact-form__image {
    padding: 8px;
    border: 1px solid transparent;
  }

  .classic-design .palette-one .contact-form__image {
    border-color: var(--background-accent, #F4B841);
  }

  .classic-design .palette-two .contact-form__image {
    border-color: var(--background-accent-2, #F4B841);
  }

  .classic-design .palette-three .contact-form__image {
    border-color: var(--background-accent-3, #0B1A26);
  }
}

@media (width >= 1200px) {
  .contact-form__inner--grid {
    gap: 76px;
  }
}
