/* GruVer Werbe-Popup: Bild im Format 2:3, passt samt Rand immer in den Viewport */
.gv-promo {
	position: fixed;
	box-sizing: border-box;
	width: min(500px, calc(100vw - 1rem), calc((100dvh - 2rem) * 2 / 3));
	max-width: none;
	max-height: none;
	padding: 0;
	border: 0;
	border-radius: 0.5rem;
	background: #000;
	overflow: hidden;
}

.gv-promo:focus {
	outline: none;
}

.gv-promo::backdrop {
	background: rgba(0, 0, 0, 0.6);
}

.gv-promo__image {
	display: block;
	width: 100%;
	height: auto;
}

.gv-promo__title {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* Touch-Target 44 × 44 px über dem Bild */
.gv-promo__close {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	font: 400 32px/44px sans-serif;
	text-align: center;
	cursor: pointer;
}

.gv-promo__close:focus-visible {
	outline: 2px solid #fff;
	outline-offset: -4px;
}

.gv-promo__close:hover,
.gv-promo__close:focus {
	background: transparent;
	color: #fff;
}
