/* offers */
.offers {
	--gap: 1.5rem;
	--gap-bottom: 1.5rem;
}
@media screen and (min-width:800px){
	.offers {
		--gap: 4rem;
		--gap-bottom: 3rem;
	}
}

.offers .inner {
	padding: var(--gap) 6vw var(--gap-bottom);
}
.offers .section-heading {
	margin-block-start: 0;
}
.offers .grid {
	display: grid;
	gap: var(--gap);
	grid-template-columns: repeat(3,1fr);
}

.offer {
	--color: var(--color-primary);
	position: relative;
	transition: all ease-in-out .3s;
}
.offer .badge {
	/* reserviert etc */
	position: absolute;
	background-color: var(--color-white);
	color: var(--color-primary);
	top: 1rem;
	right: 1rem;
	margin: 0;
	padding: 0.4rem 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.09em;
	font-weight: 300;
}
.offers .offer img {
	/*aspect-ratio: 4/3;*/
	aspect-ratio: 16/9;
	object-fit: cover;
}

.offer:has(a):hover,
.offer:has(a):focus,
.offer:has(a):focus-within {
	--color: var(--color-blue);
}
.offer a {
	text-decoration: none;
	color: inherit;
}
.offer a:after {
	content: '';
	position: absolute;
	left: 0; top: 0; right: 0; bottom: 0;
	width: 100%;
}
.offer-caption {
	padding: 1rem 0;
}
.offer-caption > * {
	margin: 0; padding: 0;
}
.offer-caption > * + * {
	margin-top: 0.5rem;
}
.offer-heading {
	color: var(--color);
}
.offer-subheading {
	font-size: 0.9em;
	letter-spacing: 0.09em;
	font-weight: bold;
}
.layout-pagets__LandingPage .offers .grid {
	max-width: 70rem;
	margin-left: auto;
	margin-right: auto;
	grid-template-columns:1fr;
}
@media screen and (min-width: 800px) {
	.layout-pagets__LandingPage .offers .grid {
		grid-template-columns: repeat(2,1fr);
	}
}
