@keyframes rf-spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

.rf-form {
	--rf-input-text-color: #0f172a;
	--rf-input-border-color: #e5e7eb;
	--rf-input-background-color: #fff;
	--rf-input-focus-ring-color: #3b82f6;
	--rf-input-font-size: 14px;
	--rf-input-radius: 6px;
	--rf-field-error-color: #ef4444;
	--rf-alert-success-text-color: #fff;
	--rf-alert-success-background-color: #22c55e;
	--rf-alert-error-text-color: #fff;
	--rf-alert-error-background-color: #ef4444;
	--rf-loader-text-color: #fff;
	--rf-loader-background-color: rgb(43 44 51 / 75%);

	width: 100%;
	max-width: 328px;
}

@media screen and (max-width: 475px) {
	.rf-form,
	.payment-methods {
		max-width: 80%;
	}
}

.rf-form__content {
	position: relative;
	box-sizing: border-box;
	border-radius: inherit;
}

.rf-form__content > * + * {
	margin-top: 16px;
}

.rf-form__content > :last-child {
	margin-top: 20px;
}

.rf-form__loader {
	position: absolute;
	z-index: 1;
	top: -2px;
	right: -2px;
	bottom: -2px;
	left: -2px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--rf-loader-text-color);
	background: var(--rf-loader-background-color);
	border-radius: 8px;
}

.rf-form__loader::before {
	content: "";
	display: block;
	width: 46px;
	height: 46px;
	margin-bottom: 16px;
	border-radius: 50%;
	border-width: 5px;
	border-style: solid;
	border-color: currentColor transparent currentColor transparent;
	animation: rf-spin 1.2s linear infinite;
}

.rf-form-field {
	width: 100%;
}

.rf-form-field__error {
	line-height: 1.25;
	display: none;
	width: 100%;
	margin-top: 8px;
	color: var(--rf-field-error-color);
}

.rf-form-input {
	font-size: var(--rf-input-font-size);
	line-height: 24px;
	box-sizing: border-box;
	width: 100%;
	padding: 8px 12px;
	color: var(--rf-input-text-color);
	background-color: var(--rf-input-background-color);
	border: 0 solid var(--rf-input-border-color);
	border-radius: var(--rf-input-radius);
	appearance: none;
}

.rf-form-input:focus {
	border-color: var(--rf-input-focus-ring-color);
	box-shadow: 0 0 0 2px var(--rf-input-focus-ring-color);
}

.rf-form-input._error {
	border: 1px solid red;
}

.rf-alert {
	display: flex;
	align-items: flex-start;
	box-sizing: border-box;
	padding: 8px 12px;
	border-radius: 6px;
}

.rf-alert_error {
	color: var(--rf-alert-error-text-color);
	background: var(--rf-alert-error-background-color);
}

.rf-alert_success {
	color: var(--rf-alert-success-text-color);
	background: var(--rf-alert-success-background-color);
}

.rf-alert__icon {
	flex-shrink: 0;
	width: auto;
}

.rf-alert__content {
	font-size: 14px;
	line-height: 1.25;
	padding-left: 12px;
}

.rf-alert__content > * {
	margin: 0;
	padding: 0;
}

.rf-alert__content > * + * {
	margin-top: 0.5em;
}

.rf-alert__content > h1,
.rf-alert__content > h2,
.rf-alert__content > h3,
.rf-alert__content > h4,
.rf-alert__content > h5,
.rf-alert__content > h6 {
	font-size: inherit;
	font-weight: 600;
}

.rf-alert__content > ul,
.rf-alert__content > ol {
	padding-left: 1.5em;
}

.pt-19 {
	padding-top: 5rem;
}

.pb-7 {
	padding-bottom: 1.8rem;
}

#floatingButton {
	position: fixed;
	left: 0px;
	bottom: 0px;
	display: none;
	width: 100%;
	cursor: pointer;
}

.floatingButton {
	--tw-text-opacity: 1;
	font-family: "Encode Sans Expanded", sans-serif;
	font-size: 1.7rem;
	font-weight: 900;
	color: rgb(255 255 255 / var(--tw-text-opacity));
	background-color: rgb(247 158 27 / var(--tw-bg-opacity));
	position: relative;
	z-index: auto;
	display: block;
	width: 100%;
	padding: 5px;
	margin: 0 auto;
	transition: 0.3s;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none !important;
}

.floatingButton:hover {
	--tw-brightness: brightness(1.05);
	filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate)
		var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.form__error-label {
	display: none;
}

/* ----------------- */

.form-message._error::before,
.password__eye::before,
.iti__arrow::before,
[class^="_icon-"]:before,
[class*=" _icon-"]:before,
[class^="_system-icon"]:before,
[class*=" _system-icon"]:before {
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.form-message {
	border-radius: 0.5rem;
	padding: 0.75rem 1rem;
	margin-bottom: 10px;
	gap: 0.75rem;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	display: none;
}
.form-message::before {
	-webkit-transform: translateY(0.125rem);
	-ms-transform: translateY(0.125rem);
	transform: translateY(0.125rem);
}
.form-message._success {
	position: fixed;
	z-index: 999;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #fff;
	border-radius: 0.625rem;
	padding: 2.25rem 1.5rem;
	max-width: 38.75rem;
	-webkit-box-shadow: 0px 0px 0px 9999px rgba(0, 0, 0, 0.7);
	box-shadow: 0px 0px 0px 9999px rgba(0, 0, 0, 0.7);
}
@media (max-width: 47.9375em) {
	.form-message._success {
		padding: 1.125rem 0.75rem;
	}
}
.form-message._success h5 {
	font-weight: 700;
	font-size: 32px;
	line-height: 120%;
	color: var(--color-titles);
	margin: 0px 0px 0.9375rem 0px;
}
@media (max-width: 1278px) {
	.form-message._success h5 {
		font-size: calc(20px + 12 * (100vw - 320px) / 958);
	}
}
.form-message._success span {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.625rem;
	border: 0.0625rem solid var(--color-main-dark);
	background: #fff;
}
.form-message._error {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	color: #b91c1c;
	background: #fee2e2;
	border: 0.0625rem solid #f5c6cb;
}
/* .form-message._error::before {
	content: "\e903";
	font-family: "icons-system";
} */
.form-message p {
	line-height: 150%;
}
.form-message ul li {
	line-height: 1;
}

/* ------------------------- */

.error-404 {
	text-align: center;
	padding: 2rem 0;
}

.error-code {
	font-size: 8rem;
	font-weight: 900;
	color: #f79e1b;
	line-height: 1;
	margin-bottom: 1rem;
}

.error-message {
	font-size: 2rem;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 2rem;
}

.error-description {
	font-size: 1.2rem;
	color: #666;
	margin-bottom: 3rem;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.back-home-btn {
	display: inline-block;
	background-color: #f79e1b;
	color: white;
	padding: 1rem 2rem;
	text-decoration: none;
	border-radius: 0.5rem;
	font-weight: 700;
	text-transform: uppercase;
	transition: all 0.3s ease;
}

.back-home-btn:hover {
	background-color: #e88a0a;
	transform: translateY(-2px);
}

@media (min-resolution: 2x) {
	.iti__flag {
		background-image: var(--iti-path-flags-2x);
	}
	.iti__globe {
		background-image: var(--iti-path-globe-2x);
	}
}
.iti.iti--allow-dropdown {
	width: 100%;
}

.iti .iti__selected-dial-code {
	color: #000;
}

.leadform {
	position: relative;
}

.form-preloader {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background: #fff;
	z-index: 4;
	display: flex;
	align-items: center;
	justify-content: center;
}

.error-msg {
	padding-bottom: 10px;
	color: red;
	font-size: 14px;
	text-align: right;
}

.spinner {
	animation: rotate 2s linear infinite;
	z-index: 2;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -25px;
	width: 50px;
	height: 50px;
}

.spinner .path {
	stroke: #0077db;
	stroke-linecap: round;
	animation: dash 1.5s ease-in-out infinite;
}

.hide,
.hidden {
	display: none !important;
}

@keyframes rotate {
	100% {
		transform: rotate(360deg);
	}
}

@keyframes dash {
	0% {
		stroke-dasharray: 1, 150;
		stroke-dashoffset: 0;
	}

	50% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -35;
	}

	100% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -124;
	}
}

.form-preloader-orange {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.7);
	z-index: 10;
}

.form-preloader-orange .spinner {
	animation: spinner-rotate 1s linear infinite;
}

.form-preloader-orange .path {
	stroke: #ff9800;
	stroke-linecap: round;
}

@keyframes spinner-rotate {
	100% {
		transform: rotate(360deg);
	}
}

.form-preloader-orange .dot-spinner {
	display: flex;
	gap: 8px;
}
.form-preloader-orange .dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #ff9800;
	animation: dot-bounce 0.8s infinite alternate;
}
.form-preloader-orange .dot:nth-child(2) {
	animation-delay: 0.2s;
}
.form-preloader-orange .dot:nth-child(3) {
	animation-delay: 0.4s;
}
@keyframes dot-bounce {
	to {
		transform: translateY(-12px);
		opacity: 0.5;
	}
}
