.eso-field {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}

.eso-phone-row,
.eso-otp-row {
	display: flex;
	gap: 8px;
	align-items: stretch;
	width: 100%;
}

.eso-otp-row[hidden] {
	display: none !important;
}

.elementor-form .eso-phone-row .eso-phone,
.elementor-form .eso-otp-row .eso-otp {
	width: auto;
	flex: 1 1 auto;
	min-width: 0;
}

.eso-phone,
.eso-otp {
	direction: ltr;
	text-align: left;
}

.eso-send.elementor-button {
	flex: 0 0 auto;
	width: auto;
	margin: 0;
	white-space: nowrap;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.eso-send:disabled {
	cursor: not-allowed;
	opacity: 0.65;
}

.eso-otp-label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.eso-otp-row {
	position: relative;
}

.eso-message:empty {
	display: none;
}

.eso-message {
	margin: 0;
	font-size: 13px;
	line-height: 1.6;
}

.eso-message.is-error {
	color: #b32d2e;
}

.eso-message.is-ok {
	color: #1d6f42;
}

@media (max-width: 480px) {
	.eso-phone-row {
		flex-direction: column;
	}
}
