/* Lead form — modern glass look + two-step (toggle: Settings > Lead Form) */

.rls-lead-form-card {
	background: rgba(255, 255, 255, 0);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 20px;
	padding: 32px;
	height: auto;
	/* .form-group children use the theme's legacy float:left grid;
	   flow-root contains them so the card's height always matches its
	   actual content instead of collapsing short and letting fields
	   spill out past the panel. */
	display: flow-root;
}

/* select2 sets its own inline width on init; keep it filling the row
   regardless (guards against its width auto-detection collapsing). */
.rls-lead-form .select2-container {
	width: 100% !important;
}

.rls-lead-form .form-control,
.rls-lead-form select,
.rls-lead-form input[type="text"],
.rls-lead-form input[type="email"],
.rls-lead-form input[type="tel"],
.rls-lead-form textarea {
	border-radius: 14px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	background-color: rgba(255, 255, 255, 0.14);
	color: #fff;
	height: 52px;
	padding: 0 18px;
}
.rls-lead-form textarea {
	height: auto;
	padding: 14px 18px;
	resize: none;
}
.rls-lead-form ::placeholder {
	color: rgba(255, 255, 255, 0.65);
	opacity: 1;
}
.rls-lead-form select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 16px;
	padding-right: 42px;
}
.rls-lead-form select option {
	color: #222;
}
.rls-lead-form .form-control:focus,
.rls-lead-form select:focus,
.rls-lead-form textarea:focus,
.rls-lead-form input:focus {
	outline: none;
	border-color: #fc6e51;
	box-shadow: 0 0 0 3px rgba(252, 110, 81, 0.35);
}
.rls-lead-form input[type="checkbox"] {
	accent-color: #fc6e51;
	width: 18px;
	height: 18px;
}
.rls-lead-form .customfrmsubmit {
	border-radius: 14px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}
.rls-lead-form .customfrmsubmit:hover {
	filter: brightness(1.06);
}

/* two-step layout */
.rls-two-step-form .rls-form-step {
	display: none;
}
.rls-two-step-form .rls-form-step.rls-step-active {
	display: block;
}

.rls-step-progress {
	margin-bottom: 20px;
}
.rls-step-bars {
	display: flex;
	gap: 8px;
	margin-bottom: 10px;
}
.rls-step-bar {
	flex: 1;
	height: 5px;
	border-radius: 3px;
	background: rgba(255, 255, 255, 0.2);
}
.rls-step-bar-active {
	background: #fc6e51;
}
.rls-step-eyebrow {
	display: block;
	color: #ffb199;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.2px;
	margin-bottom: 4px;
}
.rls-step-heading {
	display: block;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.rls-step-nav {
	margin-top: 6px;
}
.rls-step-nav .form-group {
	margin-bottom: 0;
}

.rls-step-btn {
	display: block;
	width: 100%;
	padding: 14px;
	font-size: 17px;
	line-height: 1.3;
	text-transform: capitalize;
	border: 0;
	border-radius: 14px;
	cursor: pointer;
}
.rls-step-next {
	background: #fc6e51;
	color: #fff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}
.rls-step-next:hover,
.rls-step-next:focus {
	filter: brightness(1.06);
	color: #fff;
}
.rls-step-back {
	background: transparent;
	color: #fff;
	width: auto;
	padding: 8px 4px;
	font-size: 15px;
	text-decoration: underline;
	opacity: 0.85;
	border-radius: 0;
}
.rls-step-back:hover,
.rls-step-back:focus {
	opacity: 1;
	color: #fff;
}
