/* CAM Popup Ads - front end */
html.campa-lock { overflow: hidden; }

.campa {
	position: fixed;
	inset: 0;
	z-index: 999999;
	pointer-events: none;
	font-family: inherit;
}

.campa__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 14, 25, .62);
	opacity: 0;
	transition: opacity .25s ease;
	pointer-events: auto;
}
.campa.is-in .campa__backdrop { opacity: 1; }

.campa__box {
	position: absolute;
	pointer-events: auto;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .35);
	opacity: 0;
	transition: opacity .28s ease, transform .28s ease;
	outline: none;
}
.campa.is-in .campa__box { opacity: 1; }

.campa__body {
	border-radius: inherit;
	overflow: auto;
	max-height: 86vh;
	line-height: 1.5;
}
.campa__body > *:first-child { margin-top: 0; }
.campa-link { display: block; line-height: 0; }
.campa-img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 80vh;
	object-fit: contain;
	border-radius: inherit;
}

.campa__close {
	position: absolute;
	z-index: 2;
	top: -12px;
	right: -12px;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #1d2433;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .35);
}
.campa__close:hover:not(:disabled) { background: #c62828; }
.campa__close:focus-visible { outline: 3px solid #4d90fe; outline-offset: 2px; }
.campa__close:disabled { cursor: default; opacity: .8; font-size: 14px; }

.campa__dismiss {
	display: block;
	width: 100%;
	margin: 0;
	padding: 9px 12px;
	border: 0;
	border-top: 1px solid #e6e8ec;
	border-radius: 0 0 14px 14px;
	background: #f6f7f9;
	color: #555;
	font-size: 12px;
	cursor: pointer;
}
.campa__dismiss:hover { color: #111; text-decoration: underline; }

/* ---- Center ---- */
.campa--center .campa__box {
	top: 50%;
	left: 50%;
	width: min(92vw, 560px);
	transform: translate(-50%, -46%) scale(.96);
}
.campa--center.is-in .campa__box { transform: translate(-50%, -50%) scale(1); }

@media (prefers-reduced-motion: reduce) {
	.campa__backdrop,
	.campa__box { transition: none; }
}
