.contact-form {
  background-color: rgb(var(--color-background));
}

.contact-form .contact-form__form {
  width: 45.14vw;
}

.contact-form .contact-form__image {
  width: 30.28vw;
  /* max-width: 436px; */
}

.contact-form .field {
  margin-block-end: 0;
}

.contact-form__inner {
  /* margin-inline: auto; */
}

.contact-form__group {
  gap: 20px;
}

.contact-form__content {
  opacity: 0.5;
  margin-bottom: 40px;
}

.contact-form a:not(.button) {
  text-decoration: underline;
}

.contact-form .field::after {
  box-shadow: inset 0 0 0 0.4px rgb(var(--color-entry-line));
}

.contact-form .field:hover::after,
.contact-form .field:focus::after {
  border-color: rgba(var(--color-entry-line), 1);
  border-width: 1px;
  border-style: solid;
}

.contact-form .field:focus::after, 
.contact-form .field:focus-within::after {
  border-color: rgba(var(--color-entry-line), 1);
  border-width: 1px;
  border-style: solid;
}

.contact-form .page-width {
  max-width: 1100px;
}

.contact-form__title {
  margin-block-end: 20px;
  text-align: center;
}

.contact-form .textarea {
  height: 150px;
}

.contact-form__button {
  margin-block-start: 10px;
  text-align: center;
}

.contact-form__agreement {
  margin-block-start: 10px;
  text-align: left;
}

.contact-form__image picture {
  display: flex;
}

.contact-form__button .button {
  width: 100%;
}

@media (max-width: 1024px) {
  .contact-form .page-width {
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .contact-form .page-width {
    flex-direction: column;
    flex-direction: column-reverse;
  }

  .contact-form__group {
    display: block;
  }

  .contact-form__title {
    margin-block-end: 20px;
  }

  .contact-form .textarea {
    height: 100px;
  }

  .contact-form__content {
    margin-bottom: 60px;
  }

  .contact-form__button {
    margin-block-start: 2.67vw;
  }

  .contact-form__button .button {
    padding-inline: 36px;
  }

  .contact-form .contact-form__form {
    width: auto;
  }
  
  .contact-form .contact-form__image {
    width: 100%;
    height: auto;
    max-width: unset;
  }
}
