/* Lead Capture — CTA pop-up. Override via Settings → Custom CSS.
   Class names keep the historical fstd-lc- prefix so existing site CSS keeps working. */

.fstd-lc-btn {
	display: inline-block;
	padding: 12px 22px;
	border: 0;
	border-radius: 6px;
	background: #2563eb;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
}

.fstd-lc-btn:hover {
	background: #1d4ed8;
}

.fstd-lc-intro {
	margin: -4px 0 14px;
	color: #5b6472;
}

.fstd-lc-noscroll {
	overflow: hidden;
}

.fstd-lc-overlay {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba( 10, 15, 25, 0.65 );
}

.fstd-lc-dialog {
	position: relative;
	width: 100%;
	max-width: 560px;
	max-height: 90vh;
	overflow-y: auto;
	padding: 28px;
	border-radius: 10px;
	background: #fff;
	color: #1a2233;
	font-size: 15px;
	line-height: 1.45;
	box-shadow: 0 20px 60px rgba( 0, 0, 0, 0.35 );
}

.fstd-lc-dialog h2 {
	margin: 0 0 14px;
	font-size: 22px;
}

.fstd-lc-close {
	position: absolute;
	top: 10px;
	right: 12px;
	border: 0;
	background: none;
	font-size: 26px;
	line-height: 1;
	color: #6b7280;
	cursor: pointer;
}

.fstd-lc-close:hover {
	color: #111;
}

.fstd-lc-dialog label {
	display: block;
	flex: 1;
	margin: 0 0 12px;
	font-weight: 600;
	font-size: 13px;
}

.fstd-lc-dialog input,
.fstd-lc-dialog select,
.fstd-lc-dialog textarea {
	display: block;
	width: 100%;
	margin-top: 4px;
	padding: 9px 10px;
	border: 1px solid #cbd2dc;
	border-radius: 6px;
	background: #fff;
	color: inherit;
	font: inherit;
	font-weight: 400;
}

.fstd-lc-dialog input:focus,
.fstd-lc-dialog select:focus,
.fstd-lc-dialog textarea:focus {
	outline: 2px solid #2563eb;
	outline-offset: 1px;
}

.fstd-lc-row {
	display: flex;
	gap: 10px;
}

.fstd-lc-w25 {
	flex: 0 0 90px;
}

@media ( max-width: 520px ) {
	.fstd-lc-row {
		display: block;
	}
}

.fstd-lc-hint {
	margin: 2px 0 12px;
	font-size: 12.5px;
	color: #5b6472;
}

.fstd-lc-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
}

/* ---- GDPR consent block ---- */

.fstd-lc-consent {
	margin: 4px 0 10px;
	padding-top: 10px;
	border-top: 1px solid #e4e8ee;
}

/* Layered notice below the submit button. */
.fstd-lc-privacy-note {
	margin-top: 14px;
}

.fstd-lc-notice {
	margin: 0 0 6px;
	font-size: 12.5px;
	font-style: italic;
	color: #5b6472;
}

/* The "How we use your data ▸" expander: a <button> for accessibility, but
   rendered as a normal inline link. High specificity + !important so theme /
   Elementor-kit button globals cannot repaint it. */
.fstd-lc-overlay .fstd-lc-dialog button.fstd-lc-more {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: #2563eb !important;
	font: inherit !important;
	font-size: 12.5px !important;
	font-style: italic !important;
	font-weight: 400 !important;
	line-height: inherit !important;
	text-decoration: none !important;
	cursor: pointer;
}

.fstd-lc-overlay .fstd-lc-dialog button.fstd-lc-more:hover {
	text-decoration: underline !important;
}

.fstd-lc-details {
	margin: 0 0 10px;
	padding: 10px 12px;
	border-radius: 6px;
	background: #f4f6f9;
	font-size: 12.5px;
	font-style: italic;
	color: #414b5a;
}

.fstd-lc-dialog .fstd-lc-check {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0 0 8px;
	font-weight: 400;
	font-size: 12.5px;
	color: #414b5a;
}

.fstd-lc-dialog .fstd-lc-check input[type="checkbox"] {
	display: inline-block;
	flex: 0 0 auto;
	width: auto;
	margin: 2px 0 0;
	padding: 0;
}

.fstd-lc-check a {
	color: #2563eb;
}

.fstd-lc-submit {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 12px;
	border: 0;
	border-radius: 6px;
	background: #2563eb;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
}

.fstd-lc-submit:hover {
	background: #1d4ed8;
}

.fstd-lc-submit:disabled,
.fstd-lc-busy {
	opacity: 0.6;
	cursor: wait;
}

.fstd-lc-back {
	display: block;
	margin: 10px auto 0;
	border: 0;
	background: none;
	color: #2563eb;
	font-size: 13px;
	cursor: pointer;
}

.fstd-lc-error {
	margin: 0 0 12px;
	padding: 10px 12px;
	border-radius: 6px;
	background: #fdecec;
	border: 1px solid #f3b6b6;
	color: #8a1f1f;
	font-size: 13.5px;
}

.fstd-lc-sent {
	font-weight: 600;
}

.fstd-lc-otp-label {
	display: block;
	margin: 0 0 6px;
	font-weight: 600;
	font-size: 13px;
}

.fstd-lc-otp {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin: 0 0 16px;
}

.fstd-lc-dialog .fstd-lc-otp-box {
	flex: 0 0 48px;
	width: 48px;
	height: 58px;
	margin-top: 0;
	padding: 0;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
}

.fstd-lc-actions {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 26px;
}

.fstd-lc-actions .fstd-lc-submit {
	flex: 1;
	width: auto;
	margin-top: 0;
	padding: 14px 28px;
}

.fstd-lc-actions .fstd-lc-back {
	flex: 0 0 auto;
	margin: 0;
}

@media ( max-width: 380px ) {
	.fstd-lc-otp {
		gap: 6px;
	}

	.fstd-lc-dialog .fstd-lc-otp-box {
		flex-basis: 40px;
		width: 40px;
		height: 50px;
		font-size: 20px;
	}
}
