/* Overlay capture e-mail démo — isolé du thème WP */

.tl-demo-lead-gate {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	box-sizing: border-box;
}

.tl-demo-lead-gate *,
.tl-demo-lead-gate *::before,
.tl-demo-lead-gate *::after {
	box-sizing: border-box;
}

.tl-demo-lead-gate[hidden] {
	display: none !important;
}

.tl-demo-lead-gate__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.55);
}

.tl-demo-lead-gate__panel {
	position: relative;
	z-index: 1;
	width: min(420px, 100%);
	max-width: 100%;
	background: #fff;
	border-radius: 14px;
	padding: 28px 24px;
	box-shadow: 0 20px 50px rgba(15, 23, 42, 0.25);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: #0f172a;
	line-height: 1.45;
}

.tl-demo-lead-gate__panel h2 {
	margin: 0 0 8px;
	padding: 0;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.25;
	color: #0f172a;
}

.tl-demo-lead-gate__text {
	margin: 0 0 18px;
	padding: 0;
	color: #475569;
	font-size: 0.95rem;
	line-height: 1.45;
}

.tl-demo-lead-gate__form {
	display: grid;
	gap: 14px;
	margin: 0;
}

.tl-demo-lead-gate__field {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%;
}

.tl-demo-lead-gate__field input[type="email"] {
	display: block;
	width: 100%;
	max-width: 100%;
	height: 44px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	background: #fff;
	color: #0f172a;
	font: inherit;
	font-size: 1rem;
	line-height: 1.2;
	appearance: none;
	box-shadow: none;
}

.tl-demo-lead-gate__field input[type="email"]:focus {
	outline: 2px solid #e85d04;
	outline-offset: 1px;
	border-color: #e85d04;
}

.tl-demo-lead-gate__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 44px;
	margin: 4px 0 0;
	padding: 0 16px;
	border: 0;
	border-radius: 8px;
	background: #e85d04;
	color: #fff;
	font: inherit;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
	appearance: none;
	box-shadow: none;
}

.tl-demo-lead-gate__submit:hover,
.tl-demo-lead-gate__submit:focus {
	background: #d00000;
	color: #fff;
}

.tl-demo-lead-gate__submit:disabled {
	opacity: 0.65;
	cursor: wait;
}

.tl-demo-lead-gate__error {
	margin: 0;
	padding: 0;
	color: #b91c1c;
	font-size: 0.875rem;
	line-height: 1.35;
}

.tl-demo-lead-gate__error[hidden] {
	display: none !important;
}

.tl-demo-lead-gate__hint {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 5px;
	margin: 2px 0 0;
	padding: 0;
	color: #94a3b8;
	font-size: 0.6875rem;
	line-height: 1.35;
	text-align: left;
	font-weight: 400;
	max-width: 100%;
}

.tl-demo-lead-gate__hint-icon {
	flex-shrink: 0;
	width: 12px;
	height: 12px;
	margin-top: 1px;
	color: #94a3b8;
}

.tl-demo-lead-gate__hint-text {
	min-width: 0;
	overflow-wrap: anywhere;
}
