/**
 * TechBBQ External Link Cards — background image with external link card row.
 *
 * Figma refs in widget PHP (1440 / 1024).
 * Section vertical spacing lives on .techbbq-external-link-cards (widget root), not the Elementor container,
 * so the background fills the padded area.
 *
 * Breakpoints (mobile-first): 0–767 (base), 768–1023, 1024–1439, 1440+.
 */

.techbbq-external-link-cards {
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	padding: 64px 0 24px;
	overflow: hidden;
	color: var(--techbbq-content-primary);
	background-color: var(--techbbq-bg-main);
}

.techbbq-external-link-cards__background {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
	pointer-events: none;
}

img.techbbq-external-link-cards__background-image,
.techbbq-external-link-cards__background-picture {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
}

.techbbq-external-link-cards__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: var(--techbbq-space-7);
	align-items: center;
	width: 100%;
}

.techbbq-external-link-cards__header {
	display: flex;
	flex-direction: column;
	gap: var(--techbbq-space-3);
	align-items: center;
	width: 100%;
	text-align: center;
}

.techbbq-external-link-cards__intro {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
	width: 100%;
}

.techbbq-external-link-cards__title {
	margin: 0;
}

.techbbq-external-link-cards__description {
	max-width: 660px;
	margin: 0;
	color: var(--techbbq-content-secondary);
}

.techbbq-external-link-cards__grid {
	display: flex;
	flex-direction: column;
	gap: var(--techbbq-space-1);
	width: 100%;
}

.techbbq-external-link-cards__card {
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 160px;
	padding: 20px;
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	background-color: var(--techbbq-bg-main);
	transition: background-color 0.2s ease;
}

.techbbq-external-link-cards__card:hover,
.techbbq-external-link-cards__card:focus-visible {
	background-color: var(--techbbq-bg-surface);
}

.techbbq-external-link-cards__card:focus-visible {
	outline: 2px solid var(--techbbq-content-accent-1);
	outline-offset: 2px;
}

.techbbq-external-link-cards__card-badge {
	position: absolute;
	top: 20px;
	right: 20px;
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background-color: rgba(255, 255, 255, 0.22);
}

.techbbq-external-link-cards__card-badge-icon {
	display: block;
	width: 12px;
	height: 12px;
}

.techbbq-external-link-cards__card-title {
	margin: 0;
}

.techbbq-external-link-cards__card-title-row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--techbbq-space-1);
	align-items: center;
}

.techbbq-external-link-cards__card-title-part {
	white-space: nowrap;
}

/* ── Tablet (768–1023) ──────────────────────────────────────── */
@media (min-width: 768px) {
	.techbbq-external-link-cards__grid {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.techbbq-external-link-cards__card {
		flex: 1 1 calc(50% - 4px);
		min-width: 0;
	}
}

/* ── Desktop (1024–1440) ──────────────────────────────────────── */
@media (min-width: 1024px) {
	.techbbq-external-link-cards {
		padding-bottom: 64px;
	}

	.techbbq-external-link-cards__card {
		flex: 1 1 0;
	}
}
