.main-content {
  max-width: 640px;
}

.page-title {
  font-size: 48px;
  margin-bottom: 0.5em;
}

.contact-form-section,
.influencer-form-section {
  margin-top: 50px;

  .contact-form-fields {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    transition: all 0.5s ease;

    &.success {
      opacity: 0;
      height: 0;
      pointer-events: none;
    }
  }

  label {
    display: block;
    width: 100%;
    margin-bottom: 5px;
    font-family: var(--fonts-header);
    -webkit-font-smoothing: antialiased;
    font-size: 24px;

    span {
      color: var(--brand-primary);
    }
  }

  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="url"],
  textarea {
    -webkit-appearance: none;
    display: block;
    width: 100%;
    padding: 5px 10px;
    line-height: 1.5;
    font-family: var(--fonts-body);
    outline: none;
    border: 2px solid var(--black);
    color: var(--black);
    background-color: rgba(255, 255, 255, 0.5);

    &:active,
    &:focus {
      border-color: var(--brand-primary);
      outline: 2px solid var(--brand-primary);
    }
  }

  .form-button {
    margin-left: auto;
    align-self: flex-end;
  }

  .form-success {
    p:first-of-type {
      font-weight: bold;
      font-family: var(--fonts-header);
      -webkit-font-smoothing: antialiased;
      font-size: 24px;
      margin-bottom: 0.5em;
      color: var(--brand-primary);
    }
  }

  .form-errors {
    color: var(--brand-primary);
  }
}