/**
 * Section 4.5: Featured Collections — Deepak Sales.
 *
 * Mobile-first. Depends on tokens.css + base.css. Horizontal premium cards
 * (icon + title/description + arrow in a row), each a single stretched link.
 * Architecture mirrors categories.css; hover/lift pattern matches it exactly
 * for visual consistency between the two card grids.
 */

/* ==========================================================================
   1. Section shell + decorative backdrop
   ========================================================================== */
.ds-fc {
	position: relative;
	overflow: clip;
	padding-block: var(--ds-section-y);
	background-color: var(--ds-paper-2);
	isolation: isolate;
}

.ds-fc__backdrop {
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	overflow: clip;
}

.ds-fc__glow {
	position: absolute;
	bottom: -20%;
	left: -10%;
	width: 34rem;
	height: 34rem;
	border-radius: 50%;
	filter: blur(60px);
	opacity: 0.6;
	background: radial-gradient(circle, color-mix(in srgb, var(--ds-gold) 26%, transparent), transparent 66%);
}

/* ==========================================================================
   2. Section header
   ========================================================================== */
.ds-fc__head {
	max-width: 44rem;
	margin-bottom: clamp(2rem, 1.25rem + 2.5vw, 3.5rem);
}

.ds-fc__eyebrow {
	margin-bottom: var(--ds-space-sm);
	font-family: var(--ds-font-mono);
	font-size: var(--ds-fs-eyebrow);
	font-weight: var(--ds-fw-label);
	letter-spacing: var(--ds-ls-wide);
	text-transform: uppercase;
	color: var(--ds-oxblood);
}

.ds-fc__title {
	margin-bottom: var(--ds-space-md);
	font-family: var(--ds-font-display);
	font-size: var(--ds-fs-h2);
	font-weight: var(--ds-fw-section);
	line-height: var(--ds-lh-snug);
	letter-spacing: -0.02em;
	color: var(--ds-heading);
}

.ds-fc__lead {
	font-size: var(--ds-fs-lead);
	line-height: var(--ds-lh-body);
	color: var(--ds-muted);
}

/* ==========================================================================
   3. Grid
   ========================================================================== */
.ds-fc__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(1rem, 0.6rem + 1.5vw, 1.5rem);
}

/* ==========================================================================
   4. Card (horizontal)
   ========================================================================== */
.ds-fc__card {
	display: flex;
	align-items: center;
	gap: var(--ds-space-lg);
	padding: 1.5rem 1.75rem;
	border: 1px solid var(--ds-border-brand);
	border-radius: var(--ds-radius-lg);
	background-color: var(--ds-surface);
	box-shadow: var(--ds-shadow-sm);
	transition:
		transform var(--ds-dur) var(--ds-ease),
		border-color var(--ds-dur) var(--ds-ease),
		box-shadow var(--ds-dur) var(--ds-ease);
}

.ds-fc__card:hover,
.ds-fc__card:focus-visible {
	transform: translateY(-6px);
	border-color: var(--ds-border-brand-hover);
	box-shadow: var(--ds-shadow-brand);
}

.ds-fc__card:focus-visible {
	outline: 2px solid var(--ds-focus);
	outline-offset: 3px;
}

.ds-fc__icon {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: var(--ds-radius-md);
	background: var(--ds-gold-tint);
	color: var(--ds-oxblood);
	transition:
		background-color var(--ds-dur) var(--ds-ease),
		color var(--ds-dur) var(--ds-ease);
}

.ds-fc__card:hover .ds-fc__icon {
	background: var(--ds-oxblood);
	color: var(--ds-gold-soft);
}

.ds-fc__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.3rem;
	min-width: 0;
}

.ds-fc__title-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.6rem;
}

.ds-fc__name {
	font-family: var(--ds-font-display);
	font-size: var(--ds-fs-h3);
	font-weight: 600;
	line-height: var(--ds-lh-snug);
	color: var(--ds-ink);
}

/* The card itself is the hover target, not the name span — drive the shared
   underline utility (base.css) from the card's hover/focus state. */
.ds-fc__card:hover .ds-link-underline::after,
.ds-fc__card:focus-visible .ds-link-underline::after {
	width: 100%;
}

.ds-fc__count {
	font-family: var(--ds-font-mono);
	font-size: var(--ds-fs-eyebrow);
	font-weight: var(--ds-fw-label);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ds-gold);
	white-space: nowrap;
}

.ds-fc__desc {
	font-size: var(--ds-fs-small);
	line-height: var(--ds-lh-body);
	color: var(--ds-muted);
}

.ds-fc__arrow {
	flex: none;
	color: var(--ds-oxblood);
	transition: transform var(--ds-dur-fast) var(--ds-ease);
}

.ds-fc__card:hover .ds-fc__arrow,
.ds-fc__card:focus-visible .ds-fc__arrow {
	transform: translateX(5px);
}

/* ==========================================================================
   5. Responsive
   ========================================================================== */
@media (min-width: 48em) {
	.ds-fc__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 75em) {
	.ds-fc__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* ==========================================================================
   6. Reduced motion
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
	.ds-fc__card:hover,
	.ds-fc__card:focus-visible,
	.ds-fc__card:hover .ds-fc__arrow,
	.ds-fc__card:focus-visible .ds-fc__arrow {
		transform: none;
	}
}
