/**
 * Glendale Designs Custom Programming
 * Promotion Block Set Flex Component
 *
 * Glendale Designs -- GDMZ
 *
 * Copyright Glendale Designs - Our optimizations are not freeware.
 * Do not use, copy or distribute without written permission.
 * Ask us, we're nice! support@glendaledesigns.com
 */
.gd-promotion-block-set {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
	margin: 0 auto calc(var(--margin-bottom, 0) * 1px);
	padding-top: calc(var(--padding-top, 0) * 1px);
	position: relative;
	width: 100%;
}

.gd-promotion-block {
	aspect-ratio: var(--aspect-ratio, unset);
	background: var(--background-image, none) no-repeat;
	background-position: center;
	background-size: contain;
}

.gd-promotion-block__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: end;
	padding-top: 100%;
}

.gd-promotion-block__link:is(:focus-visible, :hover) {
	.gd-promotion-block__heading,
	.gd-promotion-block__content {
		color: #fff;
		text-decoration: underline;
		text-underline-offset: 0.25em
	}

	.gd-promotion-block__link_text-icon {
		background-color: #333;
		transition: all ease 0.2s;
	}
}

.gd-promotion-block__text {
	background-color: var(--background-color, transparent);
	color: #fff;
	display: grid;
	gap: 0.5rem 1.5rem;
}

.gd-promotion-block__heading {
	line-height: normal;
	padding: 0.25rem 1rem 0;
}

.gd-promotion-block__content {
	line-height: normal;
	margin-bottom: 0.5rem;
	max-width: 50ch;
	padding-inline: 1rem;
}

.gd-promotion-block__link_text-icon {
	align-self: end;
	background-color: #c5252f;
	display: flex;
	gap: 0.25rem;
	justify-self: end;
	padding: 0.5rem 1rem;
}

.gd-promotion-block__link:has(.gd-promotion-block__heading + .gd-promotion-block__link_text-icon) {
	padding-top: unset;
}

.gd-promotion-block__heading:has(+ .gd-promotion-block__link_text-icon) {
	align-self: center;
	padding-top: unset;
}

.gd-promotion-block__heading + .gd-promotion-block__link_text-icon {
	grid-column-start: 2;
	grid-row: unset;
	grid-row-start: unset;
}

.gd-promotion-block[style] .gd-promotion-block__heading + .gd-promotion-block__link_text-icon {
	/*grid-column-start: unset;*/
}

.gd-promotion-block__link_text {}

.gd-promotion-block__link_icon {}

@media screen and (min-width: 60em) {
	.gd-promotion-block__link {
		padding-top: unset;
	}

	.gd-promotion-block[style] .gd-promotion-block__heading + .gd-promotion-block__link_text-icon {
		grid-column-start: 2;
	}

	/*.gd-promotion-block[style] .gd-promotion-block__heading + .gd-promotion-block__link_text-icon,*/
	.gd-promotion-block__link_text-icon {
		grid-column-start: 2;
		grid-row: span 2 / span 2;
		grid-row-start: 1;
	}
}


/* This styles our custom flex components debug section.
    =========================================== */
.gd-mmx-debug {
	background-color: #21252b;
	box-shadow: 0 0 8px 4px #21252b;
	color: #abb2bf;
	margin: 1rem;
	outline: 4px dotted #ff9800;
	overflow: auto;
	padding: 0 1rem;
	white-space: break-spaces;
}
