body {
  position: relative;
}

.header {
  position: fixed;
}

.form-main .shading {
  top: 0;
  right: 0;
}

.form-info-col {
  position: relative;
  height: 100%;
  min-height: 100svh;
  padding: 9rem 8rem 7rem 3.75rem;
}

.form-info-col > *:not(svg) {
  position: relative;
}

.form-info-col .card-plan__list {
  margin-top: 3.44rem;
  margin-bottom: 3.75rem;
}

.form-info-col .companies__list {
  flex-wrap: wrap;
  gap: 3rem 4.4rem;
  justify-content: flex-start;
}

.form-info-col .companies svg {
  max-width: 8.5rem;
}

.form-info {
  padding-right: 4.5rem;
  padding-left: calc(4.15rem - var(--bs-gutter-x));
  margin-top: 3.7rem;
}

.form-info__form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 3.75rem;
}

.form-info__row {
  --bs-gutter-x: 1.25rem;
}

.form-label {
  font-size: .875rem;
  font-weight: 700;
}

.form-control {
  padding: .56rem 1.25rem;
  font-size: .875rem;
  font-weight: 400;
  border: none;
}

.form-control::placeholder {
  color: #fff;
  opacity: .6;
}

.form-check-input {
  width: 2.5rem;
  height: 2.5rem;
  padding: .8rem;
  background-size: auto;
  border: none;
}

.form-check-input[type="checkbox"] {
  cursor: pointer;
  background: rgb(var(--bs-dark-rgb));
  background: radial-gradient(circle, rgb(36, 40, 48) 0%, rgb(30, 33, 42) 100%);
  border-radius: .63rem;
}

.form-check-input:checked[type="checkbox"] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='12' viewBox='0 0 15 12' fill='none'%3E%3Cpath d='M14 1L4 11.01L1 8.01' stroke='%23141316' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  accent-color: var(--color-primary-middle);
  background-color: var(--color-primary-middle) !important;
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  border-color: var(--color-primary-middle);
}

.form-check-input:focus,
.form-control:focus {
  border-color: var(--color-primary-middle);
  box-shadow: 0 0 0 .25rem rgba(208, 254, 194, .25);
}

.form-check-label {
  font-size: .875rem;
  font-style: normal;
  font-weight: 700;
  cursor: pointer;
}

.form-checks {
  display: flex;
  gap: 1rem 2.8rem;
}

.form-check {
  display: flex;
  gap: 1.2rem;
  align-items: center;
}

.engagements {
  display: flex;
  gap: 1.25rem;
  align-items: stretch;
}

.engagements > * {
  flex: 1;
}

.engagement-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  padding: 1.825rem 1rem;
  cursor: pointer;
  user-select: none;
  border-radius: 1.25rem;
}

.engagement-card__title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.125rem;
  text-transform: uppercase;
  opacity: .6;
}

.engagement-card__time {
  font-size: 1.5rem;
  line-height: 1.1;
  text-align: center;
  text-transform: uppercase;
  opacity: .9;
}

.engagement-card__time--exaggerated {
  font-size: 1.875rem;
  font-weight: 700;
}

.engagement-card__input {
  display: none;
}

.engagement-card__input:checked + .engagement-card {
  outline: .125rem solid var(--color-primary-middle);
}

.engagement-card__input:checked + .engagement-card .engagements__icon--default {
  display: none;
}

.engagement-card__input:not(:checked) + .engagement-card .engagements__icon--active {
  display: none;
}

.form-info__actions {
  display: flex;
  justify-content: center;
  margin-block: 4rem;
}

.form-footer {
  position: absolute;
  bottom: 3rem;
  left: 4.75rem;
}

.form-footer .rights {
  position: revert;
  text-align: left;
}

.form-footer .companies {
  display: none;
}

.companies__list-2 {
  display: flex;
  gap: 4rem;
  align-items: center;
  justify-content: center;
}

@media (max-width: 1400px) {
  .form-info-col .companies {
    display: none;
  }
}

@media (max-width: 1200px) {
  .form-info-col {
    min-height: revert;
    padding: 7rem 2.25rem 3rem;
  }

  .form-info-col .card-plan__list {
    display: none;
  }

  .form-info-col .companies {
    display: none;
  }

  .form-info-col .separator-horizontal {
    display: none;
  }

  .form-info {
    padding: 1.25rem 2.25rem 6.5rem;
    margin-top: 0;
  }

  .form-footer {
    position: revert;
  }

  .form-footer .rights {
    display: none;
  }

  .form-footer .companies__title {
    text-align: center;
  }

  .form-footer .companies__list {
    flex-direction: column;
    gap: 3rem;
  }

  .form-footer .companies {
    display: revert;
  }

  .form-info__actions {
    margin-bottom: 0;
  }
}

@media (max-width: 992px) {
  .form-checks {
    flex-direction: column;
  }

  .engagements {
    flex-direction: column;
  }

  .form-info__row {
    gap: 1.25rem;
  }

  .form-info__actions {
    margin-top: 2.75rem;
  }
}

@media (max-width: 768px) {
  .form-info__form {
    margin-top: 2.5rem;
  }

  .form-info-col {
    padding-inline: 1.25rem;
    padding-top: 5rem;
  }

  .form-info {
    padding: 2rem 1.25rem 4rem;
  }

  .form-info__actions {
    margin-top: 1.5rem;
  }

  .companies__list-2 {
    flex-direction: column;
    gap: 3rem;
  }
}
