/**
 * Variant CSS: menu--tasting-menu-prix
 *
 * An elegant fixed tasting menu on a full-bleed dark band — five numbered courses
 * (01-05) in one vertical sequence, each with a large number marker, dish name and
 * short description, then one big "za osobę" price and a reservation CTA. Distinct
 * from set-prix-fixe (light single card, 3 labelled courses): this is a darker,
 * editorial degustation sequence. The whole section is always-dark, so per KI-020
 * text uses --text-on-dark and accent elements (kicker, em, number, price) use an
 * accent->on-dark lift so they stay legible on any theme's accent.
 * Stacks/centres cleanly on mobile; 0 horizontal overflow at 375px.
 */

body.aibt-universal .universal-menu--tasting-menu-prix {
	padding-block: calc(clamp(3.4rem, 8vw, 6rem) * var(--density, 1));
	background: var(--background-dark, #141414);
	color: var(--text-on-dark, #fff);
}

/* Accent lift keeps the kicker readable on the dark band regardless of theme. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__kicker {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-widest) !important;
	text-transform: uppercase !important;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #fff)) !important;
	margin: 0 auto var(--space-sm) auto !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__headline {
	font-family: var(--font-display) !important;
	color: var(--text-on-dark, #fff) !important;
	margin: 0 auto var(--space-sm) auto !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__headline em {
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #fff)) !important;
	font-style: italic;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	color: var(--text-on-dark, #fff) !important;
	opacity: 0.78;
	margin: 0 auto clamp(2.4rem, 5.5vw, 3.6rem) auto !important;
	max-width: 52ch;
}

/* Vertical course sequence. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__courses {
	display: flex;
	flex-direction: column;
}

/* Course row — number marker + body, divided by a hairline. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__course {
	gap: clamp(1rem, 3vw, 1.6rem) !important;
	align-items: flex-start !important;
	flex-wrap: nowrap !important;
	padding-block: calc(clamp(1.1rem, 3vw, 1.5rem) * var(--density, 1));
	text-align: left;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__course + .universal-menu__course {
	border-top: 1px solid color-mix(in srgb, var(--on-dark, #fff) 14%, transparent);
}

/* Large degustation number marker. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__num {
	flex: 0 0 auto;
	width: clamp(2.4rem, 6vw, 3.2rem);
	font-family: var(--font-display) !important;
	font-size: clamp(1.4rem, 3.4vw, 2rem) !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #fff)) !important;
	margin: 0 !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__course-body {
	flex: 1 1 auto;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__name {
	font-family: var(--font-display) !important;
	font-size: clamp(1.15rem, 2.6vw, 1.5rem) !important;
	font-weight: 600 !important;
	line-height: 1.22 !important;
	color: var(--text-on-dark, #fff) !important;
	margin: 0 0 0.35rem 0 !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__desc {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-on-dark, #fff) !important;
	opacity: 0.72;
	margin: 0 !important;
	max-width: 50ch;
}

/* Featured per-person price. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__priceblock {
	margin-top: clamp(2rem, 5vw, 3rem);
	padding-top: calc(clamp(1.6rem, 4vw, 2.4rem) * var(--density, 1));
	border-top: 2px solid color-mix(in srgb, var(--accent) 42%, transparent);
	gap: 0.6rem !important;
	align-items: baseline !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__bigprice {
	font-family: var(--font-display) !important;
	font-size: clamp(2.4rem, 6vw, 3.6rem) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	color: color-mix(in srgb, var(--accent) 60%, var(--on-dark, #fff)) !important;
	white-space: nowrap;
	margin: 0 !important;
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__unit {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-wide) !important;
	text-transform: uppercase !important;
	color: var(--text-on-dark, #fff) !important;
	opacity: 0.78;
	margin: 0 !important;
}

/* CTA. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__actions {
	margin-top: clamp(1.6rem, 4vw, 2.4rem);
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__btn .wp-block-button__link {
	background-color: var(--cta-bg-primary) !important;
	color: var(--cta-text-primary) !important;
	font-family: var(--font-body) !important;
	font-weight: 600 !important;
	border-radius: var(--decor-radius-pill) !important;
	padding: 0.85em 2em !important;
	transition: background-color var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__btn .wp-block-button__link:hover {
	background-color: var(--accent-hover) !important;
}

/* Keyboard focus ring for the reservation CTA — accent reads on the dark band. */
body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__btn .wp-block-button__link:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
	border-radius: inherit;
}

/* Mobile — center the price stack, cap tracking, 0 horizontal overflow. */
@media (max-width: 640px) {
	body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__priceblock {
		justify-content: center !important;
		flex-direction: column;
		text-align: center;
		gap: 0.3rem !important;
	}
	body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__kicker,
	body.aibt-universal .universal-menu--tasting-menu-prix .universal-menu__unit {
		letter-spacing: 0 !important;
	}
}
