.wx-case {
	color: var(--wx-text);
}

.wx-case__head,
.wx-case__split,
.wx-case__gallery,
.wx-case__nexttop {
	width: min(1920px, calc(100% - (var(--wx-pad) * 2)));
	margin-inline: auto;
}

.wx-case__head {
	padding: 8.5rem 0 4.5rem;
}

.wx-case__crumb {
	margin: 0 0 7rem;
	font-family: var(--wx-mono);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--wx-muted);
}

.wx-case__crumb a {
	color: inherit;
	margin-right: 1.2rem;
}

.wx-case__title {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 2rem 3rem;
	align-items: end;
}

.wx-case h1 {
	margin: 0;
	max-width: 16ch;
	font-size: clamp(64px, 8vw, 150px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.033em;
}

.wx-case__deck {
	margin: 0.35rem 0 0;
	max-width: 36ch;
	font-size: clamp(28px, 2.4vw, 44px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.023em;
}

.wx-case__tags {
	display: flex;
	flex-direction: column;
	gap: 0.05rem;
	margin: 1.5rem 0 0;
}

.wx-case__tag,
.wx-case__scroll,
.wx-case__kicker {
	font-family: var(--wx-mono);
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
}

.wx-case__tag,
.wx-case__kicker {
	color: var(--wx-muted);
}

.wx-case__tag { letter-spacing: 0.5px; }

.wx-case__scroll {
	letter-spacing: -0.5px;
	color: var(--wx-text);
	white-space: nowrap;
}

.wx-case__kicker {
	margin: 0 0 36px;
	letter-spacing: -0.5px;
}

.wx-case__bleed {
	height: min(72vh, 820px);
	overflow: hidden;
}

.wx-case__frame {
	height: 100%;
	overflow: hidden;
}

.wx-case__frame img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center center;
	display: block;
}

/* Mild parallax oversize — heavy 120–140% was cropping product shots badly. */
.wx-case__frame[data-wx-parallax] img {
	height: 108%;
}

.wx-case__frame--s[data-wx-parallax] img {
	height: 106%;
}

.wx-case__split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 4rem 6rem;
	padding: clamp(72px, 10vw, 194px) 0 clamp(80px, 10vw, 200px);
}

.wx-case__manifest {
	margin: 0;
	max-width: 760px;
	font-size: clamp(28px, 2.6vw, 44px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.023em;
}

.wx-case__live {
	margin: 0 0 2.4rem;
}

.wx-case__live a {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -0.02em;
	text-transform: uppercase;
	color: var(--wx-accent);
}

html[data-theme="dark"] .wx-case__live a { color: var(--wx-highlight); }

.wx-case__row,
.wx-case__stack {
	margin: -1px 0 0;
	border-top: 1px solid var(--wx-muted);
}

.wx-case__row:last-child,
.wx-case__stack:last-child {
	border-bottom: 1px solid var(--wx-muted);
}

.wx-case__row {
	padding: 52px 2px 55px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.4px;
}

.wx-case__row span {
	color: var(--wx-muted);
	font-weight: 500;
}

.wx-case__stack {
	padding: 47px 2px 55px;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -1px;
}

.wx-case__gallery { padding-bottom: 1rem; }

.wx-case__rowimg--pair {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.wx-case__shot {
	padding: 0 30px;
}

/* Gallery shots keep the file's own aspect — no forced landscape crop. */
.wx-case__shot .wx-case__frame {
	height: auto;
	aspect-ratio: auto;
}

.wx-case__shot .wx-case__frame img {
	width: 100%;
	height: auto;
	object-fit: contain;
	object-position: center center;
}

.wx-case__next { padding-top: clamp(72px, 8vw, 140px); }

.wx-case__nextlink { display: block; color: inherit; }

.wx-case__nexttop {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	margin-bottom: 5rem;
}

.wx-case__nextcap {
	margin: 0 0 2rem;
	font-size: clamp(48px, 6vw, 95px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.032em;
}

.wx-case__nextname {
	margin: 0;
	max-width: 18em;
	font-size: clamp(28px, 2.6vw, 44px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.023em;
}

.wx-case__nextname span {
	color: var(--wx-muted);
	font-weight: 500;
}

.wx-case__nextarrow svg {
	display: block;
	width: 120px;
	height: 120px;
	fill: color-mix(in srgb, var(--wx-text) 32%, transparent);
}

.wx-case__nextmedia {
	height: 70vh;
	min-height: 420px;
	overflow: hidden;
}

@media (min-width: 768px) {
	.wx-case__bleed { height: min(78vh, 880px); }
	.wx-case__nextarrow svg { width: 150px; height: 150px; }
}

@media (min-width: 1200px) {
	.wx-case__nextmedia { height: min(85vh, 920px); }
}

@media (max-width: 980px) {
	.wx-case__crumb { margin-bottom: 3rem; }
	.wx-case__title,
	.wx-case__split,
	.wx-case__rowimg--pair,
	.wx-case__nexttop {
		grid-template-columns: 1fr;
		display: grid;
	}
	.wx-case__scroll { justify-self: start; }
	.wx-case__shot { padding: 0 0 16px; }
	.wx-case__row { padding: 28px 0; font-size: 20px; }
	.wx-case__stack { padding: 28px 0; font-size: 26px; }
	.wx-case__nextarrow svg { width: 96px; height: 96px; }
}

@media (prefers-reduced-motion: reduce) {
	.wx-case__frame img {
		height: 100%;
		transform: none;
	}
}
