/* Quick Card V14 — lookbook vertical panel rail */

.quick-card-v14-section {
	--qc-v14-inset: clamp(16px, 3vw, 32px);
	--qc-v14-panel-width: clamp(148px, 18vw, 210px);
	--qc-v14-panel-height: clamp(340px, 48vw, 520px);
	--qc-v14-stagger-shift: clamp(18px, 3vw, 32px);
	position: relative;
	padding: clamp(52px, 7vw, 92px) 0;
	background: var(--sc-quick-card-v14-section-bg, var(--primary-background-color));
	overflow: hidden;
}

.quick-card-v14-section .qc-v14-accent {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--sc-quick-card-v14-accent-a, var(--primary-brand-color)) 6%, transparent), transparent 35%),
		radial-gradient(circle at 92% 12%, color-mix(in srgb, var(--sc-quick-card-v14-accent-b, var(--secondary-brand-color)) 10%, transparent), transparent 34%);
}

.quick-card-v14-section .qc-v14-wrap {
	position: relative;
	z-index: 1;
	padding-inline: var(--qc-v14-inset);
}

/* Header */
.quick-card-v14-section .qc-v14-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: clamp(28px, 4vw, 40px);
	flex-wrap: wrap;
}

.quick-card-v14-section .qc-v14-header-copy {
	flex: 1;
	min-width: min(100%, 260px);
}

.quick-card-v14-section .qc-v14-label {
	display: inline-block;
	margin-bottom: 10px;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--sc-quick-card-v14-label-text, var(--primary-brand-color));
}

.quick-card-v14-section .qc-v14-title {
	margin: 0 0 8px;
	font-size: clamp(1.875rem, 3.5vw, 2.625rem);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.035em;
	color: var(--sc-quick-card-v14-section-title-heading-text, var(--primary-title-color));
}

.quick-card-v14-section .qc-v14-subtitle {
	margin: 0;
	max-width: 48ch;
	font-size: clamp(0.9375rem, 1.3vw, 1.0625rem);
	line-height: 1.6;
	color: var(--sc-quick-card-v14-section-title-paragraph-text, var(--primary-text-color));
	opacity: 0.68;
}

.quick-card-v14-section .view-all-desktop {
	display: inline-flex;
	flex-shrink: 0;
}

.quick-card-v14-section .view-all-mobile {
	display: none !important;
}

.quick-card-v14-section .qc-v14-view-all {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 11px 20px;
	text-decoration: none;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--sc-quick-card-v14-view-all-btn-text, var(--primary-button-text-color));
	background: var(--sc-quick-card-v14-view-all-btn-bg, var(--primary-brand-color));
	border-radius: 999px;
	box-shadow: 0 8px 24px color-mix(in srgb, var(--primary-brand-color) 26%, transparent);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* Rail */
.quick-card-v14-section .qc-v14-rail-shell {
	position: relative;
	z-index: 1;
}

.quick-card-v14-section .qc-v14-rail-fade {
	position: absolute;
	top: 0;
	bottom: 0;
	width: clamp(28px, 5vw, 56px);
	z-index: 2;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.25s ease;
}

.quick-card-v14-section .qc-v14-rail-fade--start {
	inset-inline-start: 0;
	background: linear-gradient(to right, var(--sc-quick-card-v14-section-bg, var(--primary-background-color)), transparent);
}

.quick-card-v14-section .qc-v14-rail-fade--end {
	inset-inline-end: 0;
	background: linear-gradient(to left, var(--sc-quick-card-v14-section-bg, var(--primary-background-color)), transparent);
}

.quick-card-v14-section .qc-v14-rail {
	display: flex;
	align-items: flex-end;
	gap: clamp(12px, 2vw, 18px);
	overflow-x: auto;
	overflow-y: hidden;
	padding: 8px var(--qc-v14-inset) clamp(20px, 3vw, 28px);
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.quick-card-v14-section .qc-v14-rail::-webkit-scrollbar {
	display: none;
}

/* Panel */
.quick-card-v14-section .qc-v14-panel {
	position: relative;
	flex: 0 0 var(--qc-v14-panel-width);
	height: var(--qc-v14-panel-height);
	scroll-snap-align: start;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}

.quick-card-v14-section .qc-v14-panel--stagger {
	transform: translateY(var(--qc-v14-stagger-shift));
}

.quick-card-v14-section .qc-v14-panel-link {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: clamp(18px, 2.4vw, 26px);
	overflow: hidden;
	text-decoration: none;
	color: #fff;
	box-shadow:
		0 2px 4px color-mix(in srgb, var(--primary-title-color) 6%, transparent),
		0 16px 40px color-mix(in srgb, var(--primary-title-color) 10%, transparent);
}

.quick-card-v14-section .qc-v14-panel--sold-out {
	opacity: 0.82;
}

.quick-card-v14-section .qc-v14-panel-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.quick-card-v14-section .qc-v14-panel-overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(to top, color-mix(in srgb, #000 78%, transparent) 0%, color-mix(in srgb, #000 28%, transparent) 42%, transparent 68%);
	pointer-events: none;
}

.quick-card-v14-section .qc-v14-panel-badge {
	position: absolute;
	top: 12px;
	inset-inline-start: 12px;
	z-index: 2;
	padding: 6px 10px;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sc-quick-card-v14-panel-badge-text, var(--primary-button-text-color));
	background: var(--sc-quick-card-v14-panel-badge-bg, var(--primary-brand-color));
	border-radius: 999px;
	box-shadow: 0 4px 14px color-mix(in srgb, var(--primary-brand-color) 28%, transparent);
}

.quick-card-v14-section .qc-v14-panel-badge--tag {
	background: color-mix(in srgb, #000 55%, transparent);
}

.quick-card-v14-section .qc-v14-panel-meta {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: clamp(14px, 2.2vw, 20px);
}

.quick-card-v14-section .qc-v14-panel-category {
	display: block;
	margin-bottom: 4px;
	font-size: 0.5625rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: color-mix(in srgb, #fff 75%, var(--primary-brand-color));
	opacity: 0.9;
}

.quick-card-v14-section .qc-v14-panel-name {
	margin: 0 0 6px;
	font-size: clamp(0.875rem, 1.4vw, 1rem);
	font-weight: 800;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.quick-card-v14-section .qc-v14-panel-price {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 800;
}

.quick-card-v14-section .qc-v14-panel-price s {
	margin-inline-start: 6px;
	font-size: 0.6875rem;
	font-weight: 500;
	opacity: 0.7;
	text-decoration: line-through;
}

.quick-card-v14-section .qc-v14-panel-add {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: none;
	border-radius: 50%;
	font-size: 0.75rem;
	cursor: pointer;
	color: var(--sc-quick-card-v14-panel-add-text, var(--primary-button-text-color));
	background: var(--sc-quick-card-v14-panel-add-bg, var(--primary-brand-color));
	box-shadow: 0 6px 18px color-mix(in srgb, var(--primary-brand-color) 30%, transparent);
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.quick-card-v14-section .qc-v14-panel-add:focus-visible {
	opacity: 1;
	transform: translateY(0);
	outline: 2px solid #fff;
	outline-offset: 2px;
}

@media (hover: hover) {
	.quick-card-v14-section .qc-v14-view-all:hover {
		transform: translateY(-2px);
		box-shadow: 0 12px 32px color-mix(in srgb, var(--primary-brand-color) 32%, transparent);
	}

	.quick-card-v14-section .qc-v14-panel:hover {
		transform: translateY(-8px);
	}

	.quick-card-v14-section .qc-v14-panel--stagger:hover {
		transform: translateY(calc(var(--qc-v14-stagger-shift) - 8px));
	}

	.quick-card-v14-section .qc-v14-panel-link:hover .qc-v14-panel-image {
		transform: scale(1.06);
	}

	.quick-card-v14-section .qc-v14-panel:hover .qc-v14-panel-add,
	.quick-card-v14-section .qc-v14-panel:focus-within .qc-v14-panel-add {
		opacity: 1;
		transform: translateY(0);
	}

	.quick-card-v14-section .qc-v14-panel-add:hover {
		transform: scale(1.08);
	}
}

/* Tablet & mobile */
@media (max-width: 992px) {
	.quick-card-v14-section {
		--qc-v14-panel-width: clamp(132px, 38vw, 180px);
		--qc-v14-panel-height: clamp(300px, 72vw, 420px);
		--qc-v14-stagger-shift: 14px;
	}

	.quick-card-v14-section .qc-v14-panel-add {
		opacity: 1;
		transform: translateY(0);
	}

	.quick-card-v14-section .view-all-desktop {
		display: none !important;
	}

	.quick-card-v14-section .view-all-mobile {
		display: flex !important;
		margin-top: 8px;
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 576px) {
	.quick-card-v14-section {
		padding-top: 44px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.quick-card-v14-section .qc-v14-panel,
	.quick-card-v14-section .qc-v14-panel-image,
	.quick-card-v14-section .qc-v14-panel-add,
	.quick-card-v14-section .qc-v14-view-all,
	.quick-card-v14-section .qc-v14-rail-fade {
		transition: none;
	}
}
