/* ==========================================================================
   Lead Capture Popup (scroll-depth + exit-intent)
   ========================================================================== */
.bct-popup {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.bct-popup.is-open { display: flex; }

.bct-popup__overlay {
	position: absolute;
	inset: 0;
	background: rgba(11, 24, 59, 0.6);
	backdrop-filter: blur(3px);
	animation: bct-popup-fade 0.25s ease;
}

.bct-popup__panel {
	position: relative;
	background: #fff;
	border-radius: var(--bct-radius);
	box-shadow: 0 40px 80px -20px rgba(11, 24, 59, 0.45);
	padding: 40px;
	width: 100%;
	max-width: 460px;
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	animation: bct-popup-pop 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.bct-popup__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: none;
	background: var(--bct-peach-tint);
	color: var(--bct-navy);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}
.bct-popup__close:hover { background: var(--bct-orange); color: #fff; transform: rotate(90deg); }

.bct-popup__icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--bct-navy), var(--bct-navy-light));
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
}

.bct-popup__heading { font-size: 21px; font-weight: 800; color: var(--bct-navy); margin: 0 0 8px; line-height: 1.3; }
.bct-popup__desc { font-size: 14px; color: var(--bct-muted); margin: 0 0 22px; line-height: 1.6; }

.bct-popup .bct-form-row { margin-bottom: 14px; }

.bct-popup__whatsapp { margin: 16px 0 0; font-size: 13.5px; color: var(--bct-muted); text-align: center; }
.bct-popup__whatsapp a { color: #0EA35A; font-weight: 700; }
.bct-popup__whatsapp a:hover { text-decoration: underline; }

body.bct-popup-open { overflow: hidden; }

@keyframes bct-popup-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes bct-popup-pop {
	from { opacity: 0; transform: translateY(16px) scale(0.97); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
	.bct-popup__overlay, .bct-popup__panel { animation: none; }
}

@media (max-width: 560px) {
	.bct-popup__panel { padding: 28px 22px; }
}
