.form {
	width: 100%
}

@media(min-width:768px) {
	.form--sm {
		max-width: 348px
	}
}

@media(min-width:1280px) {
	.form--sm {
		max-width: 380px
	}
}

.form__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 12px;
	width: 100%
}

@media(min-width:768px) {
	.form__inner {
		gap: 16px
	}
}

.form__label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 8px;
	width: 100%
}

.form__input {
	background: none;
	border: 1px solid rgba(161, 167, 179, .3);
	border-radius: 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	outline: none;
	padding: 15px 20px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	font-size: 15px;
	letter-spacing: -.02em;
	line-height: 1.45
}

@media(min-width:360px) {
	.form__input {
		font-size: 16px
	}
}

@media(min-width:768px) {
	.form__input {
		line-height: 1.4
	}
}

@media(min-width:1280px) {
	.form__input {
		font-size: 18px
	}
}

.form__input::-webkit-input-placeholder {
	color: #8a8f99
}

.form__input::-moz-placeholder {
	color: #8a8f99
}

.form__input:-ms-input-placeholder {
	color: #8a8f99
}

.form__input::-ms-input-placeholder {
	color: #8a8f99
}

.form__input::placeholder {
	color: #8a8f99
}

.--error .form__input {
	border-color: #ff3b30;
	color: #ff3b30
}

.form__input [type=date]::-webkit-calendar-picker-indicator {
	display: none
}

.form__input--textarea {
	resize: none
}

.form__error {
	color: #ff3b30;
	font-size: 13px;
	letter-spacing: 0;
	line-height: 1.4;
	width: 100%
}

@media(min-width:1280px) {
	.form__error {
		font-size: 16px;
		letter-spacing: -.01em
	}
}

.form__error>:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important
}

.form__error>:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important
}

.form__button {
	margin-top: 24px
}

.form__confirm {
	color: #8a8f99;
	font-size: 13px;
	letter-spacing: 0;
	line-height: 1.4
}

@media(min-width:1280px) {
	.form__confirm {
		font-size: 16px;
		letter-spacing: -.01em
	}
}

.form__confirm-link {
	color: #202024
}

.form__success {
	display: none
}

.form__success-icon {
	height: 64px;
	margin-bottom: 36px;
	padding: 12px;
	width: 64px;
	fill: #fff;
	background: linear-gradient(118.96deg, #2c9a54 10%, #005d4c);
	border-radius: 50%;
	object-fit: contain
}

.form.--success>* {
	display: none
}

.form.--success .form__success {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start
}

.flatpickr-day.nextMonthDay,
.flatpickr-day.prevMonthDay {
	color: #393939;
	font-weight: 400;
	opacity: 1
}


/* form check */

.form-check {
  font-size: inherit;
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem
}

.form-check .form-check-input {
    float: left;
    margin-left: -1.5em
}

.form-check-reverse {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right
}

.form-check-reverse .form-check-input {
    float: right;
    margin-right: -1.5em;
    margin-left: 0
}

.form-check-input {
    --bs-form-check-bg: var(--bs-body-bg);
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    margin-top: .25em;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-form-check-bg);
    background-image: var(--bs-form-check-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: var(--bs-border-width) solid var(--bs-border-color);
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
    print-color-adjust: exact
}

.form-check-input[type=checkbox] {
    border-radius: .25em
}

.form-check-input[type=radio] {
    border-radius: 50%
}

.form-check-input:active {
    filter: brightness(90%)
}

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13,110,253,.25)
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd
}

.form-check-input:checked[type=checkbox] {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")
}

.form-check-input:checked[type=radio] {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")
}

.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: .5
}

.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label {
    cursor: default;
    opacity: .5
}

.form-switch {
    padding-left: 2.5em
}

.form-switch .form-check-input {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    width: 2em;
    margin-left: -2.5em;
    background-image: var(--bs-form-switch-bg);
    background-position: left center;
    border-radius: 2em;
    transition: background-position .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
    .form-switch .form-check-input {
        transition: none
    }
}

.form-switch .form-check-input:focus {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")
}

.form-switch .form-check-input:checked {
    background-position: right center;
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")
}

.form-switch.form-check-reverse {
    padding-right: 2.5em;
    padding-left: 0
}

.form-switch.form-check-reverse .form-check-input {
    margin-right: -2.5em;
    margin-left: 0
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem
}


.form-check-input.is-valid,.was-validated .form-check-input:valid {
    border-color: var(--bs-form-valid-border-color)
}

.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked {
    background-color: var(--bs-form-valid-color)
}

.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus {
    box-shadow: 0 0 0 .25rem rgba(var(--bs-success-rgb),.25)
}

.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label {
    color: var(--bs-form-valid-color)
}

.form-check-inline .form-check-input~.valid-feedback {
    margin-left: .5em
}


.form-check-input.is-invalid,.was-validated .form-check-input:invalid {
    border-color: var(--bs-form-invalid-border-color)
}

.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked {
    background-color: var(--bs-form-invalid-color)
}

.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus {
    box-shadow: 0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)
}

.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label {
    color: var(--bs-form-invalid-color)
}

.form-check-inline .form-check-input~.invalid-feedback {
    margin-left: .5em
}

/* end form check */

/* from custom */

.form-check-input:checked {
    background-color: #2C9A54;
    border-color: #2C9A54;
}
.form-check-input:focus {
    border-color: #2C9A54;
}
.form__confirm-check {
  color: #8a8f99;
}

.form__inner .form__button {
  margin-top: 0;
}

.form__input {
    background-color: var(--input-bg, #fff);
}

.form__input--select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' fill='none' viewBox='0 0 12 7'%3E%3Cpath fill='%23202024' d='m11.354 1.354-5 5a.5.5 0 0 1-.708 0l-5-5a.5.5 0 0 1 .708-.708L6 5.293 10.646.646a.499.499 0 0 1 .816.162.502.502 0 0 1-.108.546Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}

/* end from custom */

/* new custom */
.re-section-appointment .form__confirm-check {
	color: inherit;
	font-size: 12px;
}
/* end new custom */