/* Scene v2.2 — magazine-raster: links uitgelijnd met rest van jazz.nl (geen centered well). */

.jazz-scene,
.jazz-fiche {
	max-width: 42.75rem;
	margin: 0;
	padding: 0.35rem 0 3rem;
	box-sizing: border-box;
}

.jazz-scene__kicker,
.jazz-fiche__kicker {
	margin: 0 0 0.75rem;
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-weight: 400;
	font-size: 0.6875rem;
	line-height: 1.35;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--jazz-gold, #B08D57);
}
.jazz-fiche__crumb {
	margin: 0 0 1.1rem;
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 0.6875rem;
	line-height: 1.35;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--jazz-muted, rgba(22, 17, 15, 0.62));
}
.jazz-fiche__crumb a {
	color: var(--jazz-petrol, #2A534E);
	text-decoration: none;
	border-bottom: 1px solid transparent;
}
.jazz-fiche__crumb a:hover { border-bottom-color: var(--jazz-petrol, #2A534E); }

.jazz-scene__title,
.jazz-fiche__name {
	margin: 0;
	font-family: var(--jazz-font-display, "Cormorant Garamond", Georgia, serif);
	font-weight: 500;
	font-style: italic;
	letter-spacing: -0.032em;
	line-height: 1.04;
	color: var(--jazz-ink, #16110F);
}
.jazz-scene__title { font-size: clamp(2.4rem, 5vw, 3.4rem); margin-bottom: 0.55rem; }
.jazz-fiche__name { font-size: clamp(2.5rem, 5.8vw, 3.75rem); max-width: 12ch; margin-bottom: 0.7rem; }

.jazz-scene__dek,
.jazz-fiche__role {
	margin: 0 0 1.85rem;
	max-width: var(--jazz-measure, 66ch);
	font-family: var(--jazz-font-body, "Newsreader", Georgia, serif);
	font-size: 1.0625rem;
	line-height: 1.42;
	color: var(--jazz-muted, rgba(22, 17, 15, 0.62));
}
.jazz-fiche__role { max-width: 36ch; margin-bottom: 1.75rem; }

.jazz-scene-index {
	margin: 0; padding: 0; list-style: none;
	border-top: 1px solid var(--jazz-hairline, rgba(176, 141, 87, 0.45));
}
.jazz-scene-index__row {
	display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
	gap: 0.2rem 1.25rem; padding: 0.85rem 0;
	border-bottom: 1px solid var(--jazz-hairline-ink, rgba(22, 17, 15, 0.1));
}
.jazz-scene-index__name {
	font-family: var(--jazz-font-display, "Cormorant Garamond", Georgia, serif);
	font-weight: 500; font-style: italic;
	font-size: clamp(1.15rem, 2.2vw, 1.35rem); line-height: 1.25;
	letter-spacing: -0.015em; color: var(--jazz-ink, #16110F);
	text-decoration: none; flex: 1 1 auto; min-width: 12rem;
}
.jazz-scene-index__name:hover { color: var(--jazz-gold, #B08D57); }
.jazz-scene-index__where {
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 0.625rem; line-height: 1.35; letter-spacing: 0.14em;
	text-transform: uppercase; color: var(--jazz-muted, rgba(22, 17, 15, 0.55));
	flex: 0 0 auto; margin-left: auto;
}

.jazz-fiche__facts {
	margin: 0; padding: 0; list-style: none;
	border-top: 1px solid var(--jazz-hairline, rgba(176, 141, 87, 0.45));
}
.jazz-fiche__facts li {
	display: grid; grid-template-columns: 6.75rem minmax(0, 1fr);
	gap: 0.5rem 1.15rem; align-items: baseline; padding: 0.78rem 0;
	border-bottom: 1px solid var(--jazz-hairline-ink, rgba(22, 17, 15, 0.1));
}
.jazz-fiche__facts li:last-child { border-bottom: 0; }
.jazz-fiche__label {
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 0.625rem; line-height: 1.35; letter-spacing: 0.14em;
	text-transform: uppercase; color: var(--jazz-muted, rgba(22, 17, 15, 0.55));
}
.jazz-fiche__value {
	margin: 0; font-family: var(--jazz-font-body, "Newsreader", Georgia, serif);
	font-size: 1.05rem; line-height: 1.4; color: var(--jazz-ink, #16110F);
}
.jazz-fiche__value a {
	color: var(--jazz-ink, #16110F); text-decoration: underline;
	text-decoration-color: rgba(176, 141, 87, 0.5); text-underline-offset: 0.15em; text-decoration-thickness: 1px;
}
.jazz-fiche__value a:hover { color: var(--jazz-gold, #B08D57); text-decoration-color: var(--jazz-gold, #B08D57); }
.jazz-fiche__sub { display: inline-block; margin-top: 0.15rem; font-size: 0.92em; font-style: italic; color: var(--jazz-muted, rgba(22, 17, 15, 0.62)); }

.jazz-fiche__links {
	margin: 1.35rem 0 0; padding: 1.15rem 0 0;
	border-top: 1px solid var(--jazz-hairline, rgba(176, 141, 87, 0.45));
}
.jazz-fiche__links-head {
	margin: 0 0 0.55rem;
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-weight: 400; font-size: 0.625rem; line-height: 1.35; letter-spacing: 0.18em;
	text-transform: uppercase; color: var(--jazz-gold, #B08D57);
}
.jazz-fiche__links ul { margin: 0; padding: 0; list-style: none; }
.jazz-fiche__links li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.35rem 0.65rem; padding: 0.22rem 0; }
.jazz-fiche__plat {
	flex: 0 0 5.5rem;
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 0.625rem; line-height: 1.35; letter-spacing: 0.1em;
	text-transform: uppercase; color: var(--jazz-muted, rgba(22, 17, 15, 0.5));
}
.jazz-fiche__links a {
	font-family: var(--jazz-font-body, "Newsreader", Georgia, serif);
	font-size: 0.98rem; line-height: 1.4; color: var(--jazz-petrol, #2A534E);
	text-decoration: none; border-bottom: 1px solid rgba(42, 83, 78, 0.22);
}
.jazz-fiche__links a:hover { color: var(--jazz-petrol-hover, #1E3F3B); border-bottom-color: var(--jazz-petrol-hover, #1E3F3B); }

.jazz-fiche__media { margin: 1.65rem 0 0; padding: 0; max-width: 42.75rem; }
.jazz-fiche__media img,
.jazz-fiche__img {
	display: block; width: 100%; height: auto; max-height: none;
	aspect-ratio: 16 / 10; object-fit: cover; object-position: 72% 28%; background: #16110F;
}
.jazz-fiche__media figcaption {
	margin: 0.5rem 0 0;
	font-family: var(--jazz-font-ui, "Outfit", "Helvetica Neue", Helvetica, Arial, sans-serif);
	font-size: 0.625rem; line-height: 1.4; letter-spacing: 0.04em;
	color: var(--jazz-muted, rgba(22, 17, 15, 0.55));
}

@media (max-width: 768px) {
	.jazz-scene,
	.jazz-fiche {
		max-width: 100%;
		padding-bottom: 2.5rem;
	}
	.jazz-scene-index__row { padding: 0.78rem 0; }
	.jazz-scene-index__name { min-width: 0; flex: 1 1 100%; }
	.jazz-scene-index__where { margin-left: 0; margin-top: 0.1rem; }
	.jazz-fiche__facts li { grid-template-columns: 1fr; gap: 0.12rem; padding: 0.75rem 0; }
	.jazz-fiche__plat { flex-basis: 4.75rem; }
	.jazz-fiche__media img, .jazz-fiche__img { aspect-ratio: 4 / 3; }
}
