/* Scoped course presentation; shared tokens live in pizzakursus-design-system.css. */
.pizzakursus-course-product #primary.content-area { padding-top: 0; padding-bottom: 0; }

.pizzakursus-course-product .site-main > .product {
	display: flex;
	flex-direction: column;
	max-width: var(--pizzakursus-course-width);
	margin: 0 auto;
	color: var(--pizzakursus-copy);
}

.pizzakursus-course-product div.product .summary,
.pizzakursus-course-product div.product .woocommerce-product-gallery {
	float: none;
	width: 100% !important;
}

.pizzakursus-course-product div.product .summary {
	display: grid;
	position: relative;
	grid-template-columns: minmax(0, 1fr) minmax(330px, 0.72fr);
	align-items: center;
	gap: clamp(2rem, 5.2vw, 6rem);
	order: 1;
	box-sizing: border-box;
	margin: 0;
	min-height: clamp(650px, 54vw, 720px);
	padding: clamp(2.5rem, 4.75vw, 4.75rem);
	overflow: hidden;
	background-color: var(--pizzakursus-paper);
	background-image: var(--pizzakursus-course-hero-image);
	background-position: 72% center;
	background-repeat: no-repeat;
	background-size: cover;
}

.pizzakursus-course-product div.product .summary::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background: linear-gradient(90deg, rgb(245 242 236 / 84%) 0%, rgb(245 242 236 / 60%) 36%, rgb(245 242 236 / 0%) 64%);
	content: "";
}

.pizzakursus-course-product .pizzakursus-course-hero-copy {
	position: relative;
	z-index: 1;
	align-self: center;
	max-width: 34rem;
}

.pizzakursus-course-product .summary .pizzakursus-course-title {
	margin: 0 0 1rem;
	color: var(--pizzakursus-ink);
	font-family: var(--pizzakursus-font-serif);
	font-size: clamp(2.35rem, 4.4vw, 4rem);
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1.04;
}

.pizzakursus-course-product .pizzakursus-course-intro {
	margin: 0;
	max-width: 29rem;
	color: var(--pizzakursus-copy);
	font-size: clamp(1rem, 1.35vw, 1.125rem);
	line-height: 1.7;
	text-shadow: 0 1px 1px rgb(245 242 236 / 52%);
}

.pizzakursus-course-product .pizzakursus-course-intro p { margin: 0 0 0.85rem; }
.pizzakursus-course-product .pizzakursus-course-intro p:last-child { margin-bottom: 0; }

.pizzakursus-course-product .pizzakursus-course-trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.15rem 1.75rem;
	margin: 2.25rem 0 2rem;
	padding: 0;
}

.pizzakursus-course-product .pizzakursus-course-trust strong,
.pizzakursus-course-product .pizzakursus-course-trust span { display: block; }

.pizzakursus-course-product .pizzakursus-course-trust strong {
	color: var(--pizzakursus-ink);
	font-family: inherit;
	font-size: clamp(1rem, 1.45vw, 1.2rem);
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.3;
	text-transform: uppercase;
}

.pizzakursus-course-product .pizzakursus-course-trust span {
	margin-top: 0.3rem;
	color: var(--pizzakursus-olive);
	font-size: clamp(0.78rem, 1.05vw, 0.94rem);
	font-weight: 700;
	letter-spacing: 0.07em;
	line-height: 1.45;
	text-transform: uppercase;
}

.pizzakursus-course-product .pizzakursus-course-trust,
.pizzakursus-course-product .summary .price,
.pizzakursus-course-product .pizzakursus-course-price-note { text-shadow: 0 1px 1px rgb(245 242 236 / 46%); }

.pizzakursus-course-product .summary .price {
	margin: 0;
	color: var(--pizzakursus-ink) !important;
	font-family: inherit;
	font-size: clamp(1.7rem, 2.1vw, 1.875rem) !important;
	font-weight: 700 !important;
	line-height: 1.2;
}

.pizzakursus-course-product .summary .price .woocommerce-Price-amount,
.pizzakursus-course-product .summary .price .woocommerce-Price-currencySymbol { color: var(--pizzakursus-ink) !important; }

.pizzakursus-course-product .pizzakursus-course-price-note {
	margin: 0.35rem 0 0.5rem;
	color: var(--pizzakursus-olive);
	font-size: clamp(0.94rem, 1.1vw, 1rem);
	font-weight: 700;
	line-height: 1.45;
}

.pizzakursus-course-product .pizzakursus-course-booking {
	box-sizing: border-box;
	position: relative;
	z-index: 1;
	justify-self: end;
	width: 100%;
	max-width: 390px;
	align-self: center;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border-top: 3px solid var(--pizzakursus-gold);
	background: #fff;
	box-shadow: 0 8px 24px rgb(30 30 28 / 10%);
}

.pizzakursus-course-product .pizzakursus-course-booking-label,
.pizzakursus-course-product .pizzakursus-course-eyebrow {
	margin: 0 0 0.65rem;
	color: var(--pizzakursus-terracotta);
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.3;
	text-transform: uppercase;
}

.pizzakursus-course-product .pizzakursus-course-booking-location { margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid var(--pizzakursus-rule); }
.pizzakursus-course-product .pizzakursus-course-booking-location-label { margin: 0 0 0.25rem; color: var(--pizzakursus-terracotta); font-family: inherit; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.3; text-transform: uppercase; }
.pizzakursus-course-product .pizzakursus-course-booking-location-address { margin: 0; color: var(--pizzakursus-ink); font-family: inherit; font-size: 0.9rem; line-height: 1.55; }

.pizzakursus-course-product .summary form.cart {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.pizzakursus-course-product .summary form.cart .variations { width: 100%; margin: 0 0 1.25rem; }
.pizzakursus-course-product .summary form.cart .variations tr,
.pizzakursus-course-product .summary form.cart .variations td { display: block; padding: 0; }
.pizzakursus-course-product .summary form.cart .variations td.label { padding: 0 0 0.45rem; }

.pizzakursus-course-product .summary form.cart .variations label,
.pizzakursus-course-product .pizzakursus-course-quantity > span {
	color: var(--pizzakursus-ink);
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: normal;
	line-height: 1.25;
	text-transform: none;
}

.pizzakursus-course-product .summary form.cart .variations select,
.pizzakursus-course-product .pizzakursus-course-quantity .quantity .qty {
	box-sizing: border-box;
	min-height: 3rem;
	border: 1px solid var(--pizzakursus-ink);
	border-radius: var(--pizzakursus-radius);
	background: #fff;
	color: var(--pizzakursus-ink);
	font-family: inherit;
}

.pizzakursus-course-product .summary form.cart .variations select { width: 100%; padding: 0.55rem 2.5rem 0.55rem 0.75rem; }

.pizzakursus-course-product .summary form.cart .variations select:focus,
.pizzakursus-course-product .pizzakursus-course-quantity .quantity .qty:focus {
	border-color: var(--pizzakursus-olive);
	outline: 2px solid var(--pizzakursus-gold);
	outline-offset: 2px;
}

.pizzakursus-course-product .summary form.cart .reset_variations {
	display: inline-block;
	margin-top: 0.65rem;
	color: var(--pizzakursus-terracotta);
	font-size: 0.85rem;
	font-weight: 700;
	text-decoration: underline;
	text-transform: none;
}

.pizzakursus-course-product .summary form.cart .woocommerce-variation-description { display: none; }
.pizzakursus-course-product .summary form.cart .woocommerce-variation-availability .stock.out-of-stock { margin: 0.9rem 0 0; color: var(--pizzakursus-terracotta); font-weight: 700; }

.pizzakursus-course-product .summary form.cart .variations_button {
	display: flex;
	align-items: flex-end;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 1.25rem;
}

.pizzakursus-course-product .pizzakursus-course-quantity { display: flex; flex-direction: column; gap: 0.4rem; }
.pizzakursus-course-product .pizzakursus-course-quantity .quantity .qty { width: 5rem; padding: 0.5rem; }

.pizzakursus-course-product .pizzakursus-course-button,
.pizzakursus-course-product .summary form.cart .single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--pizzakursus-button-height);
	padding: 0.75rem 1rem;
	border: 1px solid var(--pizzakursus-terracotta);
	border-radius: var(--pizzakursus-radius);
	background: var(--pizzakursus-terracotta);
	box-shadow: none;
	color: #fff !important;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: normal;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.pizzakursus-course-product .pizzakursus-course-button:hover,
.pizzakursus-course-product .pizzakursus-course-button:focus,
.pizzakursus-course-product .summary form.cart .single_add_to_cart_button:hover,
.pizzakursus-course-product .summary form.cart .single_add_to_cart_button:focus {
	border-color: var(--pizzakursus-terracotta-hover);
	background: var(--pizzakursus-terracotta-hover);
	color: #fff !important;
}

.pizzakursus-course-product .pizzakursus-course-button--secondary { border-color: var(--pizzakursus-olive); background: var(--pizzakursus-olive); }
.pizzakursus-course-product .pizzakursus-course-button--secondary:hover,
.pizzakursus-course-product .pizzakursus-course-button--secondary:focus { border-color: var(--pizzakursus-olive-hover); background: var(--pizzakursus-olive-hover); }

.pizzakursus-course-product .pizzakursus-course-button--neutral { border-color: var(--pizzakursus-rule); background: transparent; color: var(--pizzakursus-ink) !important; }
.pizzakursus-course-product .pizzakursus-course-button--neutral:hover,
.pizzakursus-course-product .pizzakursus-course-button--neutral:focus { border-color: var(--pizzakursus-ink); background: #fff; color: var(--pizzakursus-ink) !important; }

.pizzakursus-course-product .pizzakursus-course-button:focus-visible,
.pizzakursus-course-product .summary form.cart .single_add_to_cart_button:focus-visible { outline: 3px solid var(--pizzakursus-gold); outline-offset: 3px; }

.pizzakursus-course-product .summary form.cart .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
.pizzakursus-course-product .summary form.cart .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button:hover,
.pizzakursus-course-product .summary form.cart .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button:focus { border-color: #aaa49a; background: #aaa49a; color: #fff; cursor: not-allowed; }

.pizzakursus-course-product .pizzakursus-course-description { order: 3; max-width: none; margin: 0; color: var(--pizzakursus-copy); }

.pizzakursus-course-product .pizzakursus-course-section { box-sizing: border-box; margin: 0; padding: clamp(4rem, 5.5vw, 5rem) 0; }
.pizzakursus-course-product .pizzakursus-course-section-heading { max-width: 620px; }

.pizzakursus-course-product .pizzakursus-course-section h2 {
	margin: 0 0 1rem;
	color: var(--pizzakursus-ink);
	font-family: var(--pizzakursus-font-serif);
	font-size: clamp(2rem, 3.3vw, 3rem);
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.08;
}

.pizzakursus-course-product .pizzakursus-course-section h3 {
	margin: 0 0 0.65rem;
	color: var(--pizzakursus-ink);
	font-family: var(--pizzakursus-font-serif);
	font-size: clamp(1.2rem, 1.8vw, 1.45rem);
	font-weight: 400;
	line-height: 1.2;
}

.pizzakursus-course-product .pizzakursus-course-section p,
.pizzakursus-course-product .pizzakursus-course-section li { line-height: 1.75; }

.pizzakursus-course-product .pizzakursus-course-learning {
	display: block;
	padding-top: clamp(2rem, 2.5vw, 2.5rem);
	padding-bottom: clamp(3.5rem, 4.5vw, 4.5rem);
}

.pizzakursus-course-product .pizzakursus-course-learning .pizzakursus-course-section-heading { max-width: 680px; }
.pizzakursus-course-product .pizzakursus-course-learning-content { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 4rem); margin-top: clamp(2rem, 2.8vw, 2.5rem); }
.pizzakursus-course-product .pizzakursus-course-learning-column { padding-top: 1rem; border-top: 2px solid var(--pizzakursus-terracotta); }
.pizzakursus-course-product .pizzakursus-course-learning-column h3 { margin-bottom: 1rem; }
.pizzakursus-course-product .pizzakursus-course-learning-list { margin: 0; padding: 0; list-style: none; }
.pizzakursus-course-product .pizzakursus-course-learning-list li { position: relative; margin: 0 0 0.85rem; padding-left: 1.25rem; }
.pizzakursus-course-product .pizzakursus-course-learning-list li::before { position: absolute; left: 0; color: var(--pizzakursus-terracotta); content: "•"; font-size: 1.3rem; line-height: 1.25; }

.pizzakursus-course-product .pizzakursus-course-included,
.pizzakursus-course-product .pizzakursus-course-testimonials {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	padding-right: max(1.5rem, calc((100vw - var(--pizzakursus-course-width)) / 2));
	padding-left: max(1.5rem, calc((100vw - var(--pizzakursus-course-width)) / 2));
}

.pizzakursus-course-product .pizzakursus-course-experience {
	display: grid;
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
	align-items: stretch;
	margin: 0;
	padding: 0;
	background: var(--pizzakursus-paper);
}

.pizzakursus-course-product .pizzakursus-course-experience-image { width: 100%; min-height: 320px; overflow: hidden; aspect-ratio: 1 / 1; }
@media (min-width: 768px) {
	.pizzakursus-course-product .pizzakursus-course-experience-image { position: relative; aspect-ratio: auto; }
	.pizzakursus-course-product .pizzakursus-course-experience-image img { position: absolute; inset: 0; }
}
.pizzakursus-course-product .pizzakursus-course-experience-image img,
.pizzakursus-course-product .pizzakursus-course-process-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pizzakursus-course-product .pizzakursus-course-experience-image img { object-position: center 80%; }
.pizzakursus-course-product .pizzakursus-course-experience-copy { box-sizing: border-box; align-self: center; max-width: 560px; padding: clamp(2rem, 3vw, 2.75rem); }
.pizzakursus-course-product .pizzakursus-course-experience-copy p:not(.pizzakursus-course-eyebrow) { margin: 0 0 0.85rem; }
.pizzakursus-course-product .pizzakursus-course-experience-copy .pizzakursus-course-button { margin-top: 1rem; }

.pizzakursus-course-product .pizzakursus-course-process { padding-bottom: clamp(2rem, 2.25vw, 2.5rem); }
.pizzakursus-course-product .pizzakursus-course-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.75rem clamp(1.5rem, 4vw, 4rem); margin: clamp(2rem, 2.8vw, 2.5rem) 0 clamp(2.25rem, 3vw, 2.75rem); padding: 0; list-style: none; }
.pizzakursus-course-product .pizzakursus-course-steps li { padding-top: 1rem; border-top: 1px solid var(--pizzakursus-rule); }
.pizzakursus-course-product .pizzakursus-course-steps span { display: block; margin-bottom: 0.65rem; color: var(--pizzakursus-terracotta); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.1em; }
.pizzakursus-course-product .pizzakursus-course-steps p { margin: 0; font-size: 0.94rem; }
.pizzakursus-course-product .pizzakursus-course-process-image { overflow: hidden; aspect-ratio: 116 / 44; }
.pizzakursus-course-product .pizzakursus-course-process-image img { object-position: center; }

.pizzakursus-course-product .pizzakursus-course-included { padding-top: clamp(2.5rem, 2.8vw, 3rem); padding-bottom: clamp(2rem, 2.25vw, 2.5rem); background: var(--pizzakursus-paper); }
.pizzakursus-course-product .pizzakursus-course-included-layout { display: grid; grid-template-columns: minmax(0, 1.04fr) repeat(2, minmax(0, 1fr)); gap: clamp(2rem, 4.5vw, 4.5rem); align-items: start; }
.pizzakursus-course-product .pizzakursus-course-included-intro { max-width: 360px; }
.pizzakursus-course-product .pizzakursus-course-included-intro h2 { margin-bottom: 1rem; }
.pizzakursus-course-product .pizzakursus-course-included-intro > p:last-child { margin: 0; font-size: clamp(1rem, 1.35vw, 1.125rem); line-height: 1.7; }
.pizzakursus-course-product .pizzakursus-course-included-column { padding-top: 1rem; border-top: 0; }
.pizzakursus-course-product .pizzakursus-course-included-column h3 { margin-bottom: 1rem; }
.pizzakursus-course-product .pizzakursus-course-included-list { margin: 0; padding: 0; list-style: none; }
.pizzakursus-course-product .pizzakursus-course-included-list li { position: relative; margin: 0 0 0.85rem; padding-left: 1.15rem; }
.pizzakursus-course-product .pizzakursus-course-included-list li::before { position: absolute; top: 0.72em; left: 0; width: 0.36rem; height: 0.36rem; border-radius: 50%; background: var(--pizzakursus-olive); content: ""; }

.pizzakursus-course-product .pizzakursus-course-groups {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding: clamp(3rem, 4vw, 4rem) max(1.5rem, calc((100vw - var(--pizzakursus-course-width)) / 2));
	background: var(--pizzakursus-paper);
}
.pizzakursus-course-product .pizzakursus-course-groups-copy { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: clamp(2rem, 5vw, 5rem); align-items: center; max-width: var(--pizzakursus-course-width); margin: 0 auto; }
.pizzakursus-course-product .pizzakursus-course-groups-content { max-width: 760px; }
.pizzakursus-course-product .pizzakursus-course-groups-content > p:not(.pizzakursus-course-eyebrow) { margin: 0; font-size: clamp(1rem, 1.35vw, 1.125rem); line-height: 1.7; }
.pizzakursus-course-product .pizzakursus-course-groups-copy .pizzakursus-course-button { margin-top: 0; }

/* The pizza group section shares the front-page image and copy, with course spacing. */
.pizzakursus-course-product .pizzakursus-course-groups-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 4vw, 3.5rem); align-items: center; max-width: var(--pizzakursus-course-width); margin: 0 auto; }
.pizzakursus-course-product .pizzakursus-course-groups-layout .pizzakursus-course-groups-copy { grid-template-columns: 1fr; gap: 1.5rem; margin: 0; }
.pizzakursus-course-product .pizzakursus-course-groups-layout .pizzakursus-course-groups-content > p + p { margin-top: 1rem; }
.pizzakursus-course-product .pizzakursus-course-groups-image { order: 2; }
.pizzakursus-course-product .pizzakursus-course-groups-image img { display: block; width: 100%; height: auto; }

.pizzakursus-course-product .pizzakursus-course-testimonials { padding-top: clamp(2.5rem, 2.8vw, 3rem); padding-bottom: clamp(2.5rem, 2.8vw, 3rem); background: var(--pizzakursus-olive); }
.pizzakursus-course-product .pizzakursus-course-testimonials h2,
.pizzakursus-course-product .pizzakursus-course-testimonials blockquote,
.pizzakursus-course-product .pizzakursus-course-testimonials figcaption { color: var(--pizzakursus-paper); }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(2rem, 4vw, 4rem); margin-top: 2.5rem; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid figure { margin: 0; padding-top: 1.25rem; border-top: 2px solid var(--pizzakursus-gold); }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid blockquote { margin: 0 0 1.5rem; padding: 0; border: 0; background: transparent; font-family: var(--pizzakursus-font-serif); font-size: clamp(1.2rem, 2vw, 1.55rem); font-style: normal; line-height: 1.38; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid figcaption { font-size: 16px; font-weight: 700; line-height: 1.5; }

@media (max-width: 1023px) {
	.pizzakursus-course-product div.product .summary { grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr); gap: 2rem; min-height: 650px; padding: 3rem; background-position: 75% center; }
	.pizzakursus-course-product .pizzakursus-course-experience-copy { padding-right: 0; }
	.pizzakursus-course-product .pizzakursus-course-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pizzakursus-course-product .pizzakursus-course-included-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pizzakursus-course-product .pizzakursus-course-included-intro { grid-column: 1 / -1; max-width: 600px; }
}

@media (max-width: 900px) {
	.pizzakursus-course-product div.product .summary { grid-template-columns: 1fr; gap: 2rem; min-height: 0; background-color: var(--pizzakursus-paper); background-image: none; }
	.pizzakursus-course-product div.product .summary::before { display: none; }
	.pizzakursus-course-product div.product .summary::after { display: block; grid-column: 1; content: ""; min-height: 300px; background-color: var(--pizzakursus-paper); background-image: var(--pizzakursus-course-hero-image); background-position: 72% center; background-repeat: no-repeat; background-size: cover; }
	.pizzakursus-course-product .pizzakursus-course-booking { justify-self: stretch; max-width: none; }
	.pizzakursus-course-product .pizzakursus-course-learning-content { grid-template-columns: 1fr; gap: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-groups { padding-top: 2.5rem; padding-bottom: 2.5rem; }
	.pizzakursus-course-product .pizzakursus-course-groups-copy { grid-template-columns: 1fr; gap: 1.5rem; }
	.pizzakursus-course-product .pizzakursus-course-groups-layout { grid-template-columns: 1fr; gap: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-groups-image { order: initial; }
}

@media (max-width: 767px) {
	.pizzakursus-course-product .site-main > .product { width: 100%; }
	.pizzakursus-course-product div.product .summary { grid-template-columns: 1fr; gap: 2rem; padding: 3rem 1.5rem; }
	.pizzakursus-course-product div.product .summary::after { min-height: 230px; background-position: 70% center; }
	.pizzakursus-course-product .summary .pizzakursus-course-title { font-size: clamp(2.25rem, 11vw, 3rem); }
	.pizzakursus-course-product .pizzakursus-course-trust { gap: 1rem 1.25rem; margin: 1.9rem 0 1.75rem; }
	.pizzakursus-course-product .pizzakursus-course-trust strong { font-size: 16px !important; }
	.pizzakursus-course-product .pizzakursus-course-trust span { font-size: 0.76rem; }
	.pizzakursus-course-product .summary .price { font-size: 1.65rem !important; }
	.pizzakursus-course-product .pizzakursus-course-price-note { font-size: 0.9rem; }
	.pizzakursus-course-product .pizzakursus-course-booking { padding: 1.5rem; }
	.pizzakursus-course-product .summary form.cart .variations_button { align-items: stretch; flex-direction: column; }
	.pizzakursus-course-product .summary form.cart .single_add_to_cart_button { width: 100%; }
	.pizzakursus-course-product .pizzakursus-course-section { padding-top: clamp(3rem, 12vw, 4rem); padding-bottom: clamp(3rem, 12vw, 4rem); }
	.pizzakursus-course-product .pizzakursus-course-learning { grid-template-columns: 1fr; gap: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-learning { padding-top: 2.25rem; padding-bottom: 3rem; }
	.pizzakursus-course-product .pizzakursus-course-learning-content { grid-template-columns: 1fr; gap: 2rem; margin-top: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-experience { grid-template-columns: 1fr; padding-top: 1rem; padding-bottom: 1rem; }
	.pizzakursus-course-product .pizzakursus-course-experience-image { min-height: 0; aspect-ratio: 11 / 10; }
	.pizzakursus-course-product .pizzakursus-course-experience-image img { object-position: center 60%; }
	.pizzakursus-course-product .pizzakursus-course-experience-copy { max-width: none; padding: 2.5rem 1.5rem; }
	.pizzakursus-course-product .pizzakursus-course-steps { grid-template-columns: 1fr; gap: 2rem; margin: 2rem 0 2.25rem; }
	.pizzakursus-course-product .pizzakursus-course-process { padding-top: 2.5rem; padding-bottom: 1.5rem; }
	.pizzakursus-course-product .pizzakursus-course-process-image { aspect-ratio: 16 / 10; }
	.pizzakursus-course-product .pizzakursus-course-included-layout,
	.pizzakursus-course-product .pizzakursus-course-testimonial-grid { grid-template-columns: 1fr; gap: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-included { padding-top: 2.5rem; padding-bottom: 2rem; }
	.pizzakursus-course-product .pizzakursus-course-booking-location { margin-top: 1rem; padding-top: 0.85rem; }
	.pizzakursus-course-product .pizzakursus-course-booking-location-address { font-size: 0.86rem; }
	.pizzakursus-course-product .pizzakursus-course-groups { margin-top: 0; padding: 2rem 1.5rem; }
	.pizzakursus-course-product .pizzakursus-course-testimonials { padding-top: 2rem; padding-bottom: 2rem; }
}

/* Shared full-bleed course hero, enabled only by the explicit body class.
 * Course-specific imagery and accents remain in their own stylesheets.
 * Only the hero breaks out; the lower product container remains unchanged. */
.pizzakursus-course-fullbleed-hero div.product .summary {
	display: block;
	width: 100vw !important;
	max-width: none;
	min-height: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 0;
	background-position: 72% center;
}

.pizzakursus-course-fullbleed-hero div.product .summary::before {
	background: linear-gradient(90deg, #f5f2ec 0%, rgb(245 242 236 / 96%) 25%, rgb(245 242 236 / 82%) 43%, rgb(245 242 236 / 0%) 65%);
}

.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: center;
	gap: 80px;
	box-sizing: border-box;
	width: calc(100% - 30px);
	max-width: 1110px;
	min-height: 650px;
	margin: 0 auto;
	padding: 48px 0;
}

.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-copy {
	max-width: none;
	min-width: 0;
}

.pizzakursus-course-fullbleed-hero .summary .pizzakursus-course-title {
	font-size: clamp(44px, 4.2vw, 60px);
	margin-bottom: 20px;
	text-wrap: balance;
}

.pizzakursus-course-fullbleed-hero .pizzakursus-course-intro {
	max-width: 540px;
	font-size: 17px;
	line-height: 1.6;
	text-shadow: none;
}

.pizzakursus-course-fullbleed-hero .pizzakursus-course-trust {
	max-width: 550px;
	margin: 26px 0 24px;
	gap: 16px 24px;
}

.pizzakursus-course-fullbleed-hero .pizzakursus-course-trust strong { font-size: 16px; }
.pizzakursus-course-fullbleed-hero .pizzakursus-course-trust span { font-size: 12px; }
.pizzakursus-course-fullbleed-hero .pizzakursus-course-booking { max-width: 390px; }

/* Same text edges and usable half-column width as the front-page hero. */
@media (max-width: 1199px) and (min-width: 992px) {
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner { max-width: 930px; gap: 64px; }
}

@media (max-width: 991px) and (min-width: 901px) {
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner { max-width: 690px; }
}

@media (max-width: 1100px) and (min-width: 901px) {
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner {
		padding: 40px 0;
	}
	.pizzakursus-course-fullbleed-hero .summary .pizzakursus-course-title { font-size: 46px; }
}

@media (max-width: 900px) {
	.pizzakursus-course-fullbleed-hero div.product .summary {
		display: flex;
		flex-direction: column;
		gap: 0;
		background-image: none;
	}
	.pizzakursus-course-fullbleed-hero div.product .summary::before { display: none; }
	.pizzakursus-course-fullbleed-hero div.product .summary::after {
		order: -1;
		flex: none;
		width: 100%;
		min-height: 0;
		height: clamp(180px, 32vw, 260px);
		background-position: 72% center;
	}
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner {
		grid-template-columns: 1fr;
		gap: 28px;
		width: calc(100% - 30px);
		max-width: 690px;
		min-height: 0;
		padding: 32px 0 40px;
	}
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-copy,
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-trust,
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-booking { max-width: none; }
}

@media (max-width: 767px) {
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-hero-inner {
		width: calc(100% - 30px);
		max-width: 510px;
		padding: 28px 0 36px;
		gap: 24px;
	}
	.pizzakursus-course-fullbleed-hero .summary .pizzakursus-course-title {
		font-size: clamp(34px, 9vw, 44px);
		line-height: 1.08;
		margin-bottom: 18px;
	}
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-intro { font-size: 16px; }
	.pizzakursus-course-fullbleed-hero .pizzakursus-course-trust { margin: 22px 0; gap: 16px; }
}

/* Lower-page metadata and contact only; keep course hero geometry intact. */
.pizzakursus-course-product .pizzakursus-course-description .pizzakursus-course-eyebrow,
.pizzakursus-course-product .pizzakursus-course-steps span { font-size: 14px; line-height: 1.5; }
.pizzakursus-course-product .pizzakursus-group-contact { display: grid; justify-items: start; gap: 8px; min-width: 0; }
.pizzakursus-course-product .pizzakursus-group-contact .pizzakursus-group-contact-mail { margin: 0; color: var(--pizzakursus-ink); font-size: 16px; line-height: 1.5; }
.pizzakursus-course-product .pizzakursus-group-contact-mail a { display: inline-flex; align-items: center; min-height: 44px; color: var(--pizzakursus-ink); text-decoration: underline; text-underline-offset: 4px; }
.pizzakursus-course-product .pizzakursus-group-contact-mail a:hover { text-decoration-thickness: 2px; }
.pizzakursus-course-product .pizzakursus-group-contact-mail a:focus-visible { outline: 3px solid var(--pizzakursus-gold); outline-offset: 3px; }
@media (max-width: 767px) {
 .pizzakursus-course-product .pizzakursus-group-contact,
 .pizzakursus-course-product .pizzakursus-group-contact .pizzakursus-course-button { width: 100%; }
}

/* Shared, modest minimum for small course facts and practical metadata. */
.pizzakursus-course-product .summary .pizzakursus-course-trust span { font-size: 14px; line-height: 1.5; color: var(--pizzakursus-olive-hover); }
.pizzakursus-course-product .pizzakursus-course-booking .pizzakursus-course-booking-label,
.pizzakursus-course-product .pizzakursus-course-booking .pizzakursus-course-booking-location-label,
.pizzakursus-course-product .pizzakursus-course-booking .bagekursus-booking-practical,
.pizzakursus-course-product .pizzakursus-course-booking .bagekursus-date-option,
.pizzakursus-course-product .pizzakursus-course-booking .bagekursus-date-option-time,
.pizzakursus-course-product .pizzakursus-course-booking .bagekursus-date-time,
.pizzakursus-course-product .pizzakursus-course-booking .bagekursus-no-dates { font-size: 14px; line-height: 1.5; }
.pizzakursus-course-product .pizzakursus-course-booking .pizzakursus-course-booking-location-address { font-size: 16px; line-height: 1.5; }

/* Pizza-only finishing touches; the shared baking presentation stays intact. */
.pizzakursus-course-product:not(.bagekursus-course-product) .pizzakursus-course-button > span[aria-hidden="true"] { margin-inline-start: .3em; }


/* Pizza quotes use the front-page carousel script and its responsive behavior. */
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel { position: relative; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid { --quote-columns: 3; --quote-gap: 32px; grid-template-columns: repeat(var(--quote-columns), minmax(0, 1fr)); gap: var(--quote-gap); }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid.is-carousel { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--quote-columns) - 1) * var(--quote-gap)) / var(--quote-columns)); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid.is-carousel::-webkit-scrollbar { display: none; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid figure { display: flex; flex-direction: column; min-width: 0; scroll-snap-align: start; }
.pizzakursus-course-product .pizzakursus-course-testimonial-grid figcaption { margin-top: auto; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls { position: absolute; inset: 0; pointer-events: none; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls[hidden] { display: none; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button { position: absolute; top: 50%; transform: translateY(-50%); pointer-events: auto; width: 44px; height: 44px; padding: 0; border: 0; border-radius: var(--pizzakursus-radius); background: transparent; color: var(--pizzakursus-paper); opacity: .65; font-family: inherit; font-size: 32px; font-weight: 400; line-height: 1; cursor: pointer; }
.pizzakursus-course-product .pizzakursus-course-testimonials [data-front-prev] { left: max(-44px, calc((100% - 100vw) / 2)); }
.pizzakursus-course-product .pizzakursus-course-testimonials [data-front-next] { right: max(-44px, calc((100% - 100vw) / 2)); }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button:hover:not(:disabled),
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button:focus-visible { color: #fff; background: transparent; opacity: 1; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button:disabled { opacity: .25; cursor: default; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button:focus-visible,
.pizzakursus-course-product .pizzakursus-course-testimonial-grid:focus-visible { outline: 2px solid var(--pizzakursus-gold); outline-offset: 3px; }
.pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 1023px) { .pizzakursus-course-product .pizzakursus-course-testimonial-grid { --quote-columns: 2; } }
@media (max-width: 767px) {
 .pizzakursus-course-product .pizzakursus-course-testimonial-grid { --quote-columns: 1; }
 .pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls { position: static; display: flex; justify-content: flex-end; gap: 12px; margin-top: 20px; }
 .pizzakursus-course-product .pizzakursus-course-testimonials .pizzakursus-front-carousel-controls button { position: static; transform: none; }
}
