.form-one {
  --width-basic: 17.25rem;
  position: relative;
}

.form-one--theme-one {
  --color-fill: white;
  border-radius: var(--bdrs-l);
  background-color: var(--color-fill);
  box-shadow: var(--shadow-one-s);
}

@media (max-width: 767px) {
  .form-one--theme-one {
    padding: 2rem 1rem;
  }
}

@media (min-width: 768px) {
  .form-one--theme-one {
    padding: 1.5rem 2rem 2rem;
  }
}

.form-one--variant-one {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.form-one--variant-one .form-one_title {
  text-align: center;
}

.form-one_title {
  position: relative;
  top: -0.0625rem;
  margin-top: 0;
  margin-bottom: 0.75rem;
  max-width: 16em;
  font-size: var(--typo-s-fs);
  line-height: var(--typo-s-lh-m);
  font-weight: 600;
  color: var(--color-ui-gray-700);
}

.form-one_title--one {
  text-align: center;
}

.form-one_floor + .form-one_floor {
  margin-top: 0.75rem;
}

.form-one_floor + .form-one_floor--two,
.form-one_floor--two {
  margin-top: 1.25rem;
}

.form-one_text {
  margin: 0;
  font-size: var(--typo-xs-fs);
  line-height: var(--typo-xs-lh-m);
  color: var(--color-ui-gray-700);
}

.form-one_link {
  --color: currentColor;
  --underline-opacity: .4;
  position: relative;
  white-space: nowrap;
  line-height: inherit;
  color: var(--color);
}

.form-one_link:hover {
  color: var(--color);
}

.form-one_link::after {
  position: absolute;
  bottom: -.1em;
  left: 0;
  content: '';
  opacity: var(--underline-opacity);
  border-bottom: 1px solid var(--color);
  height: 0;
  width: 100%;
}

@media (min-width: 768px) {
  .form-one_link:hover {
    --underline-opacity: .7;
  }
}

.form-one_note {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  padding-right: 0.75rem;
}

.form-one_note + .form-one_note {
  margin-top: -0.75rem;
}

.form-one_btn--size-xs {
  min-width: calc(var(--width-basic) / 3);
}

.form-one_btn--size-s {
  min-width: calc(var(--width-basic) / 3 * 2);
}

.form-one_btn--size-full {
  width: var(--width-basic);
}

.form-one_btn.is-spinner .spinner + span,
.form-one_btn:not(.is-spinner) .spinner {
  display: none;
}

.form-one_outro {
  max-width: calc(var(--width-basic) + var(--width-basic) / 3);
  color: var(--color-ui-gray-500);
}

.form-one_note--size-l {
  max-width: calc(var(--width-basic) + var(--width-basic) / 3);
}

.form-one_notice {
  z-index: 3;
  position: absolute;
  background-color: var(--color-fill);
  padding-top: 2rem;
  inset: 0.75rem;
}

@media (min-width: 48em) {
  .form-one_notice {
    padding-left: 1.25rem;
  }
}

.form-one_notice p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: var(--typo-s-fs);
  line-height: var(--typo-s-lh-m);
  font-weight: 400;
  color: var(--color-ui-gray-700);
  text-wrap: pretty;
}

.form-one_notice p:not(:last-child) {
  margin-bottom: 0.75rem;
}

.form-one_notice .spinner {
  margin-top: 0.5rem;
  margin-bottom: 0.75rem;
}

.form-one_notice svg {
  margin-bottom: 0.5rem;
}

.form-one_notice .form-one_btn {
  margin-top: 0.5rem;
}