/*
Theme Name:   Featherstep (Kadence child)
Theme URI:    https://www.dansschool-featherstep.nl/
Description:  Child theme van Kadence voor Dansschool Featherstep.
Author:       Dansschool Featherstep
Template:     kadence
Version: 0.9.54
Text Domain:  featherstep-kadence
*/

/* ==========================================================
   Basis — kleuren en fonts komen uit Kadence (palet 1–9).
   1 Aubergine · 2 Koraal · 3 Aubergine diep · 4 Inkt · 5 Mauve
   6 Koraal donker · 7 Champagne · 8 Zand · 9 Ivoor
   ========================================================== */
:root {
	--fs-line: var(--global-palette7);
	--fs-section-y: clamp(72px, 9vw, 128px);
	--fs-gutter: clamp(20px, 5vw, 64px);
	--fs-serif: 'Bodoni Moda', Didot, Georgia, serif;
}

h1 em, h2 em, h3 em, h4 em { font-style: italic; }

/* Kopjes met een kort koraal lijntje eronder */
.fs-rule::after {
	content: "";
	display: block;
	width: 48px;
	height: 2px;
	margin: 20px auto 0;
	background: var(--global-palette2);
}
.fs-rule.has-text-align-left::after { margin-left: 0; }

/* Label boven een kop (h2/h6 als eyebrow) */
.fs-eyebrow {
	font-family: 'Albert Sans', Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: var(--global-palette1) !important;
	line-height: 1.4 !important;
}

/* Header (desktop): hoofdmenu met meer lucht, Gratis Proefles als knop met ruimte eromheen.
   Kadence' eigen menuregel is specifieker dan ".header-navigation .menu", dus we gebruiken dezelfde selector.
   De marge staat op het menu-item (li), anders schuift de knop over zijn buurman heen. */
@media (min-width: 1025px) {
	.site-main-header-wrap .site-container { max-width: 1320px; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a { padding: .6em .85em; }
	.main-navigation .primary-menu-container > ul > li.menu-item:has(> a[href*="gratis-proefles"]) { margin: 0 .8em; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a[href*="gratis-proefles"] {
		font-family: 'Albert Sans', Arial, sans-serif;
		font-size: 15px;
		font-weight: 600;
		letter-spacing: .04em;
		line-height: 1.2;
		color: var(--global-palette9) !important;
		background: var(--global-palette1);
		padding: .8em 1.45em;
		margin: 0;
		border-radius: 2px;
	}
	.main-navigation .primary-menu-container > ul > li.menu-item > a[href*="gratis-proefles"]:hover { background: var(--global-palette3); }
}
@media (min-width: 1025px) and (max-width: 1365px) {
	.main-navigation .primary-menu-container > ul > li.menu-item > a { padding: .6em .6em; }
	.main-navigation .primary-menu-container > ul > li.menu-item:has(> a[href*="gratis-proefles"]) { margin: 0 .5em; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a[href*="gratis-proefles"] { padding: .75em 1.15em; }
}
@media (min-width: 1025px) and (max-width: 1199px) {
	.main-navigation .primary-menu-container > ul > li.menu-item > a { font-size: 15px; padding: .6em .45em; }
	.main-navigation .primary-menu-container > ul > li.menu-item:has(> a[href*="gratis-proefles"]) { margin: 0 .35em; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a[href*="gratis-proefles"] { font-size: 14px; padding: .7em .95em; }
}
/* Smalle laptops: kleiner logo en compactere letter, zodat het menu op één regel blijft. */
@media (min-width: 1025px) and (max-width: 1149px) {
	.site-header .site-branding img.custom-logo { max-width: 190px; width: 190px; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a { font-size: 14.5px; padding: .6em .4em; }
	.main-navigation .primary-menu-container > ul > li.menu-item:has(> a[href*="gratis-proefles"]) { margin: 0 .3em; }
	.main-navigation .primary-menu-container > ul > li.menu-item > a[href*="gratis-proefles"] { font-size: 13.5px; padding: .7em .85em; }
}

/* Knoppen */
.wp-block-button__link { border-radius: 2px; }
.fs-link-btn .wp-block-button__link,
.wp-block-button.is-style-outline.fs-link-btn .wp-block-button__link {
	background: transparent !important;
	color: var(--global-palette1) !important;
	border: 0 !important;
	border-bottom: 2px solid var(--global-palette2) !important;
	border-radius: 0;
	padding: 12px 2px !important;
}

/* Secties */
.fs-section { padding: var(--fs-section-y) var(--fs-gutter) !important; margin: 0 !important; }
.fs-section-top { padding-bottom: 0 !important; }
.fs-bg-zand { background: var(--global-palette8); }
.fs-bg-aub { background: var(--global-palette1); color: var(--global-palette8); }
.fs-bg-dark { background: var(--global-palette3); color: var(--global-palette7); }
.fs-bg-aub h2, .fs-bg-aub h3, .fs-bg-aub h4,
.fs-bg-dark h2, .fs-bg-dark h3, .fs-bg-dark h4 { color: var(--global-palette9); }
.fs-bg-aub h2 em { color: var(--global-palette2); }
.fs-narrow { max-width: 760px; margin-left: auto !important; margin-right: auto !important; }

/* Pagina zonder titelbalk en zonder extra ruimte rond de inhoud */
.fs-home .content-area { margin-top: 0; margin-bottom: 0; }
.fs-home .entry-content > * { margin-top: 0; margin-bottom: 0; }

/* Hero */
.fs-hero { margin: 0 !important; gap: 0 !important; }
.fs-hero > .wp-block-column:first-child {
	background: var(--global-palette8);
	padding: clamp(56px, 8vw, 112px) clamp(20px, 6vw, 96px);
	display: flex; flex-direction: column; justify-content: center;
}
.fs-hero > .wp-block-column:last-child {
	background: var(--global-palette1);
	padding: clamp(20px, 3vw, 40px);
}
.fs-hero h1 { margin: 16px 0 24px; }
.fs-hero p { font-size: 20px; max-width: 520px; }
.fs-hero .wp-block-image { margin: 0; height: 100%; outline: 1px solid #A0476F; outline-offset: -1px; }
.fs-hero .wp-block-image img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; display: block; }

/* Kaarten (openingsdans / stijldansen) */
.fs-cards { gap: 32px !important; margin-top: 56px !important; }
.fs-card { background: #fff; border: 1px solid var(--fs-line); display: flex; flex-direction: column; }
.fs-card .wp-block-image { margin: 0; }
.fs-card .wp-block-image img { aspect-ratio: 3 / 2; object-fit: cover; width: 100%; display: block; }
.fs-card-body { padding: 36px 40px 40px !important; display: flex; flex-direction: column; gap: 16px; flex: 1; }
.fs-card-body > * { margin: 0 !important; }
.fs-card-body p { flex: 1; }
.fs-card h4 { font-size: 34px; line-height: 1.15; }

/* Raster met fijne lijnen (9 voordelen, partners) */
.fs-lines { gap: 0 !important; border-top: 1px solid var(--fs-line); border-left: 1px solid var(--fs-line); }
.fs-lines > * { border-right: 1px solid var(--fs-line); border-bottom: 1px solid var(--fs-line); margin: 0 !important; }
.fs-usp { padding: 40px 36px; }
.fs-usp h4::before {
	content: ""; display: block; width: 28px; height: 2px; margin-bottom: 16px; background: var(--global-palette2);
}
.fs-usp h4 { margin: 0 0 14px; }
.fs-usp p { font-size: 17px; line-height: 1.7; margin: 0; }
.fs-logos > * { height: 140px; display: flex !important; align-items: center; justify-content: center; padding: 20px; }
.fs-logos img { max-height: 90px; width: auto !important; object-fit: contain; filter: grayscale(1); opacity: .8; transition: .2s; }
.fs-logos img:hover { filter: none; opacity: 1; }

/* Over Featherstep */
.fs-split { gap: 40px 80px !important; }

/* Video */
.fs-video { max-width: 1100px; margin: 0 auto !important; border: 1px solid #6B2A49; padding: clamp(12px, 2vw, 24px); }
.fs-video .wp-block-embed { margin: 0; }

/* Reviews */
.fs-quotes { gap: 24px !important; margin-top: 56px !important; }
.fs-quote { background: var(--global-palette9); padding: 40px 36px; display: flex; flex-direction: column; gap: 18px; }
.fs-quote > * { margin: 0 !important; }
.fs-quote h3 { font-style: italic; font-size: 28px; line-height: 1.2; color: var(--global-palette1); }
.fs-quote .fs-stars { color: var(--global-palette2); letter-spacing: 4px; font-size: 18px; line-height: 1; }
.fs-quote .fs-quote-text { font-size: 17px; line-height: 1.7; flex: 1; }
.fs-quote .fs-who { border-top: 1px solid var(--fs-line); padding-top: 16px; font-size: 15px; line-height: 1.5; }
.fs-who strong { display: block; color: var(--global-palette3); font-size: 17px; }
.fs-who span { display: block; letter-spacing: 0.08em; text-transform: uppercase; color: var(--global-palette5); font-size: 14px; }
.fs-quote-dark { background: var(--global-palette1); color: var(--global-palette8); padding: 48px 44px; }
.fs-quote-dark h3 { color: var(--global-palette9); font-size: 34px; }
.fs-quote-dark .fs-who { border-color: #A0476F; }
.fs-quote-dark .fs-who strong { color: var(--global-palette9); }
.fs-quote-dark .fs-who span { color: var(--global-palette7); }

/* Team */
.fs-team { gap: 40px 24px !important; margin-top: 56px !important; }
.fs-person > * { margin: 0 !important; }
.fs-person .wp-block-image img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; display: block; outline: 1px solid #A0476F; outline-offset: -1px; }
.fs-person h4 { font-size: 22px; margin-top: 14px !important; color: var(--global-palette9); }
.fs-person p { font-size: 15px; line-height: 1.6; color: var(--global-palette7); margin-top: 6px !important; }

/* Afsluitende oproep */
.fs-cta { min-height: 640px !important; padding: clamp(96px, 12vw, 176px) var(--fs-gutter) !important; margin: 0 !important; }
.fs-cta-card { background: var(--global-palette9); max-width: 720px; margin: 0 auto !important; padding: clamp(40px, 5vw, 64px) !important; text-align: center; color: var(--global-palette4); }
.fs-cta-card > * { margin-top: 0 !important; }
.fs-cta-card h3 { color: var(--global-palette1); }

@media (max-width: 781px) {
	.fs-hero .wp-block-image img { min-height: 340px; }
	.fs-card-body { padding: 28px 24px 32px !important; }
	.fs-usp { padding: 32px 24px; }
}

/* ==========================================================
   Footer (Kadence footer builder + widgets)
   ========================================================== */
.site-footer { background: var(--global-palette4); color: var(--global-palette7); font-size: 15px; line-height: 1.7; }
.site-footer .site-middle-footer-wrap .site-footer-row-container-inner,
.site-footer .site-bottom-footer-wrap .site-footer-row-container-inner { background: var(--global-palette4); }
.site-footer .site-middle-footer-inner-wrap { padding-top: clamp(64px, 7vw, 96px); padding-bottom: 48px; column-gap: 40px; }
.site-footer .site-bottom-footer-wrap .site-footer-row-container-inner { border-top: 1px solid #4A3640; }
.site-footer .site-bottom-footer-inner-wrap { padding-top: 22px; padding-bottom: 22px; min-height: 0; }
.site-footer p { margin: 0 0 12px; }
/* Specifieker dan Kadence content.min.css (.widget-area a), dat op sommige pagina's na deze stylesheet laadt */
.site-footer .site-footer-wrap a { color: var(--global-palette7); text-decoration: none; transition: color .15s; }
.site-footer .site-footer-wrap a:hover { color: var(--global-palette2); }
.site-footer .site-footer-wrap a[href^="mailto:"] { color: var(--global-palette2); }
.site-footer .fs-footer-title {
	font-family: 'Bodoni Moda', Didot, Georgia, serif; font-weight: 500;
	font-size: 22px; line-height: 1.2; color: var(--global-palette9); margin: 0 0 18px;
}
.site-footer .fs-footer-links { list-style: none; margin: 0; padding: 0; }
.site-footer .fs-footer-links li { margin: 0 0 8px; }
.site-footer .fs-footer-intro .wp-block-image { margin: 0 0 20px; }
.site-footer .fs-footer-intro .wp-block-image img { width: 200px; height: auto; }
.site-footer .fs-footer-col > .wp-block-list + .wp-block-list,
.site-footer .fs-footer-col p + .fs-footer-links { border-top: 1px solid #4A3640; padding-top: 14px; margin-top: 4px; }
.site-footer .footer-social-wrap { margin-top: 8px; }
.site-footer .footer-social-wrap .social-button {
	width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--global-palette5) !important; background: transparent !important;
	color: var(--global-palette2) !important; border-radius: 0 !important; margin-right: 8px;
}
.site-footer .footer-social-wrap .social-button:hover { border-color: var(--global-palette2) !important; }
.site-footer .footer-html, .site-footer .fs-made-with { font-size: 14px; color: #B8A3AD; margin: 0; }
.site-footer .footer-html p { margin: 0; }
.site-footer .fs-heart { color: var(--global-palette2); }
.site-footer .site-bottom-footer-inner-wrap .site-footer-section:last-child { justify-content: flex-end; text-align: right; }
@media (max-width: 1024px) {
	.site-footer .site-bottom-footer-inner-wrap .site-footer-section:last-child { justify-content: flex-start; text-align: left; }
}

.site-footer .site-middle-footer-inner-wrap .site-footer-section { flex-direction: column; align-items: flex-start; justify-content: flex-start; }
.site-footer .site-middle-footer-inner-wrap .site-footer-section > * { width: 100%; margin: 0; }
@media (min-width: 1025px) {
	.site-footer .site-middle-footer-inner-wrap.site-footer-row-columns-5 { grid-template-columns: 1.35fr 1fr 1fr 1.05fr 1fr; }
}

/* YouTube: klik om te laden */
.fs-yt { margin: 0; }
.fs-yt__btn {
	position: relative; width: 100%; aspect-ratio: 16 / 9; border: 0; cursor: pointer;
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
	background: radial-gradient(120% 120% at 50% 40%, var(--global-palette1) 0%, var(--global-palette3) 100%);
	color: var(--global-palette9); font-family: inherit; padding: 24px; border-radius: 0;
}
.fs-yt__btn:hover .fs-yt__play, .fs-yt__btn:focus-visible .fs-yt__play { color: var(--global-palette2); transform: scale(1.05); }
.fs-yt__btn:focus-visible { outline: 2px solid var(--global-palette2); outline-offset: 3px; }
.fs-yt__play { color: var(--global-palette9); transition: transform .2s, color .2s; line-height: 0; }
.fs-yt__label { font-family: 'Bodoni Moda', Didot, Georgia, serif; font-size: clamp(20px, 2.4vw, 28px); line-height: 1.2; text-align: center; max-width: 80%; }
.fs-yt__note { font-size: 13px; color: var(--global-palette7); letter-spacing: .02em; }
.fs-yt__frame { width: 100%; aspect-ratio: 16 / 9; border: 0; display: block; }


/* ==========================================================
   Gratis proefles (en herbruikbare onderdelen)
   ========================================================== */
.fs-grid-top { margin-top: 56px !important; }
.fs-usp h3 { font-size: 26px; line-height: 1.2; margin: 0 0 14px; }
.fs-usp h3::before { content: ""; display: block; width: 28px; height: 2px; margin-bottom: 16px; background: var(--global-palette2); }

/* Vinkjeslijst */
.fs-check { list-style: none; margin: 0; padding: 0; }
.fs-check li { position: relative; padding: 6px 0 6px 30px; font-size: 17px; line-height: 1.5; border-bottom: 1px solid var(--fs-line); }
.fs-check li:last-child { border-bottom: 0; }
.fs-check li::before {
	content: ""; position: absolute; left: 2px; top: 13px; width: 12px; height: 7px;
	border-left: 2px solid var(--global-palette2); border-bottom: 2px solid var(--global-palette2); transform: rotate(-45deg);
}

/* Genummerde kaarten */
.fs-numbered { gap: 24px !important; margin-top: 56px !important; }
.fs-num-card { background: var(--global-palette9); padding: 36px 32px; margin: 0 !important; }
.fs-num-card > * { margin: 0 0 12px !important; }
.fs-num-card p:last-child { margin-bottom: 0 !important; font-size: 17px; line-height: 1.7; }
.fs-num { font-family: 'Bodoni Moda', Didot, Georgia, serif; font-style: italic; font-size: 22px; color: var(--global-palette6); line-height: 1; }
.fs-num-card h3 { font-size: 24px; line-height: 1.2; }

/* Cijferband */
.fs-eyebrow-light { color: var(--global-palette2) !important; }
.fs-stats-sub { font-family: 'Bodoni Moda', Didot, Georgia, serif; font-style: italic; font-size: clamp(26px, 3vw, 36px); color: var(--global-palette9); margin: 8px 0 0 !important; }
.fs-stats { gap: 0 !important; margin-top: 48px !important; border-top: 1px solid #A0476F; }
.fs-stat { text-align: center; padding: 32px 16px 0; margin: 0 !important; }
.fs-stat + .fs-stat { border-left: 1px solid #A0476F; }
.fs-stat-num { font-family: 'Bodoni Moda', Didot, Georgia, serif; font-size: clamp(44px, 5vw, 64px); line-height: 1; color: var(--global-palette9); margin: 0 0 10px !important; }
.fs-stat-label { font-size: 13px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--global-palette7); margin: 0 !important; }
@media (max-width: 781px) {
	.fs-stat + .fs-stat { border-left: 0; }
	.fs-stat { padding: 24px 8px 8px; }
}

/* Aanmelden */
#aanmelden { scroll-margin-top: 24px; }
.fs-signup { gap: 56px !important; align-items: flex-start !important; }
.fs-learn { list-style: none; margin: 24px 0 0; padding: 0; counter-reset: fsl; }
.fs-learn li { counter-increment: fsl; position: relative; padding: 0 0 18px 44px; margin: 0 0 18px; border-bottom: 1px solid var(--fs-line); font-size: 17px; line-height: 1.65; }
.fs-learn li::before {
	content: counter(fsl, decimal-leading-zero); position: absolute; left: 0; top: 0;
	font-family: 'Bodoni Moda', Didot, Georgia, serif; font-style: italic; font-size: 20px; color: var(--global-palette6);
}
.fs-form-card { background: var(--global-palette9); border: 1px solid var(--fs-line); padding: clamp(28px, 4vw, 48px); box-shadow: 0 24px 60px -40px rgba(58, 10, 34, .45); }
.fs-form-title { margin: 0 0 8px !important; }
@media (min-width: 782px) {
	.fs-signup-form { position: sticky; top: 24px; }
}
@media (max-width: 781px) {
	.fs-signup { display: flex; flex-direction: column; }
	.fs-signup-form { order: -1; }
	.fs-signup > .wp-block-column { align-self: stretch; width: 100%; } /* 0.9.52: kolommen niet krimpen tot inhoudsbreedte (intakeformulier) */
}

/* Jetpack-formulier in huisstijl */
.fs-form-card .wp-block-jetpack-contact-form { gap: 18px 16px; }
.fs-form-card .grunion-field-label, .fs-form-card .contact-form label, .fs-form-card legend {
	font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette5); margin-bottom: 6px;
}
.fs-form-card input[type=text], .fs-form-card input[type=email], .fs-form-card input[type=tel], .fs-form-card textarea, .fs-form-card select {
	width: 100%; background: var(--global-palette9); border: 1px solid var(--global-palette7); border-radius: 2px;
	padding: 13px 14px; font-size: 16px; color: var(--global-palette4); transition: border-color .15s, box-shadow .15s;
}
.fs-form-card input:focus, .fs-form-card textarea:focus, .fs-form-card select:focus {
	border-color: var(--global-palette1); box-shadow: 0 0 0 3px rgba(98, 0, 49, .12); outline: none;
}
.fs-form-card .contact-form__radio-option, .fs-form-card .grunion-radio-label { display: flex; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--fs-line); font-size: 16px; text-transform: none; letter-spacing: 0; font-weight: 400; color: var(--global-palette4); }
.fs-form-card input[type=radio] { accent-color: var(--global-palette1); width: 18px; height: 18px; }
.fs-form-card .wp-block-jetpack-contact-form p { font-size: 15px; color: var(--global-palette5); margin: 4px 0; }
.fs-form-card .wp-block-button__link { width: 100%; padding: 18px 30px; font-size: 17px; }

/* Video-FAQ */
.fs-faq-videos { gap: 40px 28px !important; margin-top: 56px !important; }
.fs-faq-item { margin: 0 !important; display: flex; flex-direction: column; }
.fs-faq-item h3 { font-size: 22px; line-height: 1.25; margin: 0 0 16px !important; min-height: 2.5em; }
.fs-faq-item .wp-element-caption { display: none; }
.fs-faq-item .fs-yt__label { font-size: 18px; }

/* Mobiele aanmeldknop */
.fs-sticky-cta { display: none; }
@media (max-width: 781px) {
	.fs-sticky-cta {
		display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; margin: 0 !important;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: rgba(251, 247, 242, .96);
		border-top: 1px solid var(--fs-line); backdrop-filter: blur(6px);
	}
	.fs-sticky-cta .wp-block-buttons { margin: 0; }
	.fs-sticky-cta .wp-block-button, .fs-sticky-cta .wp-block-button__link { width: 100%; text-align: center; }
	body:has(.fs-sticky-cta) .site-footer { padding-bottom: 72px; }
}

/* ==========================================================
   Openingsdans (en herbruikbare onderdelen)
   ========================================================== */
.fs-split-media { gap: clamp(32px, 6vw, 80px) !important; align-items: center !important; }
.fs-split-media .wp-block-image { margin: 0; }
.fs-split-media .wp-block-image img { width: 100%; height: auto; display: block; }
.fs-img-pair { gap: 16px !important; }
.fs-img-pair .wp-block-image { margin: 0; }
.fs-img-pair .wp-block-image img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; display: block; }
.fs-img-pair > *:nth-child(2) { margin-top: 48px !important; }
.fs-frame img { outline: 1px solid var(--fs-line); outline-offset: 10px; }
.fs-stack > h2 { margin-top: 0; }
.fs-stack > h2 + p { margin-bottom: 40px; }

/* Vraag en antwoord (details) */
.fs-faq { max-width: 860px; margin: 48px auto 0 !important; border-top: 1px solid var(--fs-line); }
.fs-faq .wp-block-details { border-bottom: 1px solid var(--fs-line); padding: 0; margin: 0 !important; }
.fs-faq summary {
	list-style: none; cursor: pointer; padding: 24px 48px 24px 0; position: relative;
	font-family: 'Bodoni Moda', Didot, Georgia, serif; font-size: clamp(20px, 2vw, 24px); line-height: 1.3; color: var(--global-palette3);
}
.fs-faq summary::-webkit-details-marker { display: none; }
.fs-faq summary::after {
	content: ""; position: absolute; right: 8px; top: 50%; width: 12px; height: 12px; margin-top: -8px;
	border-right: 2px solid var(--global-palette2); border-bottom: 2px solid var(--global-palette2); transform: rotate(45deg); transition: transform .2s;
}
.fs-faq details[open] summary::after { transform: rotate(-135deg); margin-top: -2px; }
.fs-faq details > p { margin: 0 0 24px !important; font-size: 17px; line-height: 1.75; }
.fs-faq summary:focus-visible { outline: 2px solid var(--global-palette2); outline-offset: 4px; }

/* Tips per mail (Jetpack Mailchimp) */
.fs-form-card .wp-block-jetpack-mailchimp form { display: flex; flex-wrap: wrap; gap: 12px; }
.fs-form-card .wp-block-jetpack-mailchimp form > p:first-child { flex: 1 1 220px; margin: 0; }
.fs-form-card .wp-block-jetpack-mailchimp input[type=email] { width: 100%; }
.fs-form-card .wp-block-jetpack-mailchimp .wp-block-jetpack-button { width: auto !important; flex: 0 0 auto; }
.fs-form-card .wp-block-jetpack-mailchimp .wp-block-button__link {
	background: var(--global-palette1) !important; color: var(--global-palette9) !important; width: auto; padding: 14px 24px; font-size: 15px;
}
.fs-form-card .wp-block-jetpack-mailchimp #wp-block-jetpack-mailchimp_consent-text:empty { display: none; }

/* Galerij */
.fs-gallery { margin-top: 48px !important; gap: 12px !important; }
.fs-gallery .wp-block-image img { aspect-ratio: 1 / 1; object-fit: cover; width: 100%; height: 100% !important; filter: saturate(.92); transition: filter .2s; }
.fs-gallery .wp-block-image:hover img { filter: none; }

/* Reviews: kaarten in kolommen (masonry-achtig) */
.fs-quote-cols { columns: 3 300px; column-gap: 24px; margin-top: 56px !important; }
.fs-quote-cols > .fs-quote { break-inside: avoid; margin: 0 0 24px !important; }
.fs-stars-line { color: var(--global-palette2); letter-spacing: 6px; font-size: 20px; margin: 16px 0 0 !important; text-align: center; }

/* Mobiel: tweede afbeelding niet verspringen */
@media (max-width: 781px) {
	.fs-img-pair > *:nth-child(2) { margin-top: 0 !important; }
}

/* Kopjes met koraal lijntje: standaard gecentreerd */
h1.fs-rule, h2.fs-rule, h3.fs-rule { text-align: center; }
.fs-form-card h2.fs-rule, .fs-rule.has-text-align-left { text-align: left; }
.fs-faq-item .fs-yt__label { display: none; }

.fs-gallery .wp-block-image { margin: 0 !important; }

/* ==========================================================
   Contact, bedankpagina's (en herbruikbare onderdelen)
   ========================================================== */
/* Hero-kop als h2 (h1 is dan het label) */
.fs-hero .fs-hero-title { font-weight: 500; font-size: 76px; line-height: 1.04; color: var(--global-palette1); margin: 16px 0 24px; }
@media (max-width: 1024px) { .fs-hero .fs-hero-title { font-size: 56px; } }
@media (max-width: 767px) { .fs-hero .fs-hero-title { font-size: 44px; } }
.fs-hero .fs-contact-quick { font-family: var(--fs-serif); font-size: 24px; line-height: 1.5; margin-top: 8px; }
.fs-contact-quick a, .fs-info a { color: var(--global-palette1); text-decoration: none; border-bottom: 1px solid var(--global-palette2); }
.fs-contact-quick a:hover, .fs-info a:hover { color: var(--global-palette6); }

.fs-lead { font-size: 20px; line-height: 1.6; margin: 12px 0 40px !important; }
.fs-info { border-top: 1px solid var(--fs-line); padding: 28px 0 8px; margin: 0 !important; }
.fs-info > * { margin: 0 0 14px !important; }
.fs-info h3 { font-size: 26px; line-height: 1.2; margin-bottom: 16px !important; }
.fs-info p { font-size: 17px; line-height: 1.7; }
.fs-note { color: var(--global-palette1); }
.fs-small { font-size: 14px !important; color: var(--global-palette5); }
.fs-link-arrow a { color: var(--global-palette1); font-weight: 600; text-decoration: none; border-bottom: 2px solid var(--global-palette2); padding-bottom: 2px; }
.fs-link-arrow a::after { content: " →"; }
.fs-link-arrow a:hover { color: var(--global-palette6); }
.fs-secure { font-size: 14px !important; line-height: 1.6; color: var(--global-palette5) !important; margin: 20px 0 0 !important; padding-left: 26px; position: relative; }
.fs-secure::before {
	content: ""; position: absolute; left: 0; top: 3px; width: 14px; height: 10px; margin-top: 6px;
	border: 2px solid var(--global-palette5); border-radius: 2px;
}
.fs-secure::after {
	content: ""; position: absolute; left: 3px; top: 1px; width: 8px; height: 8px;
	border: 2px solid var(--global-palette5); border-bottom: 0; border-radius: 6px 6px 0 0;
}
.fs-contact-media { align-items: flex-start !important; }
.fs-contact-media h2 { margin: 0 0 24px; }
.fs-contact-media .fs-channel-img { max-width: 360px; }
.fs-usp .fs-link-arrow { margin-top: 18px; }

/* Bedankpagina's */
.fs-thanks { text-align: center; }
.fs-thanks .fs-eyebrow { margin: 0 0 12px; }
.fs-thanks h1 { margin: 0 auto 20px; max-width: 900px; }
.fs-thanks p { font-size: 20px; }
.fs-step { display: grid; grid-template-columns: minmax(120px, 1fr) 3fr; gap: 24px clamp(32px, 6vw, 96px); align-items: start; }
.fs-step > .fs-step-head { margin: 0 !important; }
.fs-step-head .fs-num { font-size: 44px; margin: 0 0 6px !important; }
.fs-step-head h2 { font-family: 'Albert Sans', Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .26em; text-transform: uppercase; color: var(--global-palette1); margin: 0; }
.fs-bg-aub .fs-step-head h2 { color: var(--global-palette2); }
.fs-bg-aub .fs-num { color: var(--global-palette7); }
.fs-step-body { margin: 0 !important; }
.fs-step-body > *:first-child { margin-top: 0; }
.fs-step-body p { font-size: 18px; line-height: 1.75; }
.fs-step .fs-team { margin-top: 8px !important; }
@media (max-width: 781px) { .fs-step { grid-template-columns: 1fr; } }

/* Balkjes 'Wat kun je verwachten?' — één alinea per balk: <p class="fs-bar fs-w-90">Label <span>toelichting</span> <strong>90%</strong></p> */
.fs-bars { max-width: 760px; margin: 0 !important; }
.fs-bar {
	position: relative; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 14px;
	margin: 0 0 24px !important; padding-bottom: 18px; font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette4);
}
.fs-bar span { font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--global-palette5); }
.fs-bar strong { margin-left: auto; font-family: var(--fs-serif); font-style: italic; font-size: 20px; letter-spacing: 0; color: var(--global-palette1); }
.fs-bar::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6px;
	background: linear-gradient(90deg, var(--global-palette1), var(--global-palette2)) 0 0 / var(--fs-w, 100%) 100% no-repeat, var(--global-palette7);
}
.fs-w-90 { --fs-w: 90%; }
.fs-w-0 { --fs-w: 0%; }

/* Recente blogs */
.fs-posts { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 32px 24px; padding: 0 !important; margin: 32px 0 0 !important; }
.fs-posts li { margin: 0 !important; list-style: none; }
.fs-posts .wp-block-latest-posts__featured-image { margin: 0 0 14px; }
.fs-posts .wp-block-latest-posts__featured-image img { aspect-ratio: 3 / 2; width: 100%; height: auto; object-fit: cover; display: block; }
.fs-posts .wp-block-latest-posts__post-title { font-family: var(--fs-serif); font-size: 22px; line-height: 1.25; color: var(--global-palette3); text-decoration: none; }
.fs-posts .wp-block-latest-posts__post-title:hover { color: var(--global-palette1); }
.fs-posts .wp-block-latest-posts__post-excerpt { font-size: 16px; line-height: 1.65; margin-top: 8px; }

/* --- Aanvullingen 0.7 --- */
.fs-w-10 { --fs-w: 10%; }
.fs-form-card .fs-form-title { font-size: clamp(30px, 3vw, 40px); line-height: 1.15; margin-bottom: 20px !important; }
.fs-step-body h3 a { color: inherit; text-decoration: none; border-bottom: 2px solid var(--global-palette2); }

/* ==========================================================
   Productpagina (WooCommerce, Kadence)
   ========================================================== */
.single-product .content-area { margin-top: clamp(32px, 5vw, 64px); }
.single-product .woocommerce-breadcrumb, .single-product .product-title .kadence-breadcrumbs { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette5); }
.single-product .woocommerce-breadcrumb a, .single-product .kadence-breadcrumbs a { color: var(--global-palette5); text-decoration: none; }
.single-product div.product .product_title { font-size: clamp(36px, 4.4vw, 56px); line-height: 1.08; color: var(--global-palette1); margin: 8px 0 16px; }
.single-product div.product p.price, .single-product div.product span.price { font-family: var(--fs-serif); font-size: 30px; color: var(--global-palette3); }
.single-product div.product .woocommerce-product-details__short-description { font-size: 18px; line-height: 1.75; border-top: 1px solid var(--fs-line); padding-top: 20px; margin-top: 8px; }
.single-product div.product .woocommerce-product-details__short-description a { color: var(--global-palette1); }
.single-product div.product .woocommerce-product-gallery img { outline: 1px solid var(--fs-line); outline-offset: -1px; }
.single-product div.product form.cart { background: var(--global-palette8); padding: 24px; margin: 24px 0; border: 1px solid var(--fs-line); }
.single-product div.product form.cart .single_add_to_cart_button {
	background: var(--global-palette1); color: var(--global-palette9); border-radius: 2px; font-weight: 600; letter-spacing: .03em; padding: 16px 32px; font-size: 17px;
}
.single-product div.product form.cart .single_add_to_cart_button:hover { background: var(--global-palette3); }
.single-product div.product form.cart .quantity input.qty { border: 1px solid var(--global-palette7); border-radius: 2px; min-height: 52px; }
.single-product div.product form.cart table.variations select { border: 1px solid var(--global-palette7); border-radius: 2px; padding: 10px 12px; background-color: var(--global-palette9); }
.single-product div.product form.cart table.variations th, .single-product div.product form.cart table.variations td.label label {
	font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette5);
}
.single-product div.product form.cart input[type=radio] { accent-color: var(--global-palette1); }
.single-product div.product .stock { font-size: 14px; color: var(--global-palette6); font-weight: 600; }
.single-product div.product .product_meta { font-size: 14px; color: var(--global-palette5); border-top: 1px solid var(--fs-line); padding-top: 16px; }
.single-product div.product .product_meta a { color: var(--global-palette5); }
.single-product .woocommerce-tabs { display: none; }

/* Secties onder het product: achtergrond over de volle breedte zonder horizontale scroll */
.fsp-section { position: relative; padding: clamp(56px, 7vw, 104px) 0; clear: both; }
.fsp-section.fsp-reviews, .fsp-section.fsp-faq { background: var(--global-palette8); box-shadow: 0 0 0 100vmax var(--global-palette8); clip-path: inset(0 -100vmax); }
.fsp-section + .fsp-section { border-top: 0; }
.fsp-narrow { max-width: 860px; margin: 0 auto; }
.fsp-title { font-size: clamp(32px, 3.6vw, 48px); line-height: 1.12; color: var(--global-palette1); text-align: center; margin: 0; }
.fsp-desc .fsp-title { text-align: left; }
.fsp-sub { text-align: center; font-family: var(--fs-serif); font-style: italic; font-size: 22px; color: var(--global-palette5); margin: 16px 0 0; }
.fsp-desc-content { margin-top: 28px; font-size: 18px; line-height: 1.8; }
.fsp-desc-content h2, .fsp-desc-content h3 { color: var(--global-palette1); margin-top: 1.6em; }
.fsp-desc-content a { color: var(--global-palette1); }

/* Reviews: horizontaal scrollen met snap, zonder JavaScript */
.fsp-review-row {
	display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 360px); gap: 20px;
	overflow-x: auto; scroll-snap-type: x mandatory; padding: 8px 2px 20px; margin-top: 48px;
	scrollbar-width: thin; scrollbar-color: var(--global-palette2) transparent;
}
.fsp-review-row:focus-visible { outline: 2px solid var(--global-palette2); outline-offset: 4px; }
.fsp-review { scroll-snap-align: start; background: var(--global-palette9); border: 1px solid var(--fs-line); padding: 28px 26px; margin: 0; display: flex; flex-direction: column; }
.fsp-stars { color: var(--global-palette2); letter-spacing: 4px; margin: 0 0 14px; font-size: 16px; }
.fsp-review blockquote { margin: 0; padding: 0; border: 0; font-size: 16px; line-height: 1.7; color: var(--global-palette4); font-style: normal; flex: 1; }
.fsp-review figcaption { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--fs-line); font-size: 14px; display: flex; flex-direction: column; }
.fsp-review figcaption strong { color: var(--global-palette1); }
.fsp-review figcaption span { color: var(--global-palette5); }

/* Meer producten */
.fsp-more .woocommerce { margin-top: 48px; }
.fsp-more ul.products li.product .woocommerce-loop-product__title { font-family: var(--fs-serif); font-size: 20px; color: var(--global-palette3); }
.fsp-more ul.products li.product .price { color: var(--global-palette1); font-weight: 600; }
.fsp-more ul.products li.product .button { background: transparent; color: var(--global-palette1); border: 0; border-bottom: 2px solid var(--global-palette2); border-radius: 0; padding: 8px 2px; }

/* Vragen */
.fsp-faq .fs-faq { margin-top: 40px !important; }
.fsp-faq .fs-faq details > p { margin: 0 0 16px !important; }

/* --- Aanvullingen product --- */
.single-product div.product form.cart .single_add_to_cart_button { height: auto; min-height: 54px; line-height: 1.3; }
.fsp-review-row { align-items: start; }

/* ==========================================================
   Workshop: tarieven, rekenhulp
   ========================================================== */
.fs-ws-types { margin-top: 0 !important; }
.fs-ws-types + .fs-gallery { margin-top: 24px !important; }
.fs-ws-quote { max-width: 900px; margin: 56px auto 0 !important; }
.fs-prices { gap: 24px !important; }
.fs-price { background: var(--global-palette9); border: 1px solid var(--fs-line); padding: clamp(24px, 3vw, 36px); height: 100%; }
.fs-price h3 { font-size: 26px; margin: 0 0 16px; }
.fs-price table { width: 100%; border-collapse: collapse; font-size: 16px; }
.fs-price th, .fs-price td { padding: 12px 8px 12px 0; border-bottom: 1px solid var(--fs-line); text-align: left; vertical-align: baseline; font-weight: 400; }
.fs-price tr:last-child th, .fs-price tr:last-child td { border-bottom: 0; }
.fs-price th { font-weight: 600; color: var(--global-palette3); }
.fs-price td { color: var(--global-palette5); font-size: 14px; }
.fs-price td:last-child { text-align: right; font-family: var(--fs-serif); font-size: 20px; color: var(--global-palette1); white-space: nowrap; padding-right: 0; }
.fs-prices .fs-small { margin-top: 12px !important; }
.fs-calc { max-width: 1200px; margin: 32px auto 0; background: var(--global-palette1); color: var(--global-palette8); padding: clamp(24px, 3vw, 36px); display: grid; grid-template-columns: 1fr auto; gap: 24px 40px; align-items: end; }
.fs-calc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 16px; }
.fs-calc label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette7); }
.fs-calc label[hidden] { display: none; }
.fs-calc input, .fs-calc select { font-size: 16px; padding: 12px; border: 1px solid #A0476F; border-radius: 2px; background: var(--global-palette9); color: var(--global-palette4); letter-spacing: 0; text-transform: none; font-weight: 400; }
.fs-calc-out { margin: 0; text-align: right; display: flex; flex-direction: column; }
.fs-calc-out span { font-size: 13px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--global-palette2); }
.fs-calc-out strong { font-family: var(--fs-serif); font-weight: 500; font-size: clamp(36px, 4vw, 52px); line-height: 1.1; color: var(--global-palette9); }
@media (max-width: 781px) { .fs-calc { grid-template-columns: 1fr; } .fs-calc-out { text-align: left; } }

/* --- Aanvullingen 0.7.5 --- */
.site-footer .site-middle-footer-inner-wrap .site-footer-section > .footer-social { margin-left: 0 !important; }
#aanvragen .fs-signup-form { order: 0; }

/* ==========================================================
   Workshop: aanvraagformulier in stappen + catering
   ========================================================== */
#aanvragen { scroll-margin-top: 24px; }
.fsw-lay { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 32px; align-items: start; margin-top: 48px; }
.fsw-form { display: flex; flex-direction: column; gap: 20px; }
.fsw-blok { background: var(--global-palette9); border: 1px solid var(--fs-line); padding: clamp(22px, 3vw, 36px); margin: 0; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.fsw-stap { display: flex; align-items: center; gap: 14px; padding: 0; margin: 0 0 4px; font-family: var(--fs-serif); font-size: clamp(22px, 2.4vw, 28px); line-height: 1.2; color: var(--global-palette1); }
.fsw-nr { flex: 0 0 auto; width: 38px; height: 38px; border: 1px solid var(--global-palette2); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-style: italic; font-size: 18px; color: var(--global-palette6); }
.fsw-veld { display: flex; flex-direction: column; gap: 6px; }
.fsw-veld[hidden], .fsw-twee[hidden] { display: none !important; }
.fsw-twee { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.fsw-veld > label, .fsw-vraag { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--global-palette5); }
.fsw-hint { font-size: 13px; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--global-palette5); }
.fsw-form input:not([type=radio]):not([type=checkbox]), .fsw-form select, .fsw-form textarea {
	width: 100%; background: var(--global-palette9); border: 1px solid var(--global-palette7); border-radius: 2px;
	padding: 13px 14px; font-size: 16px; color: var(--global-palette4); font-family: inherit;
}
.fsw-form input:focus, .fsw-form select:focus, .fsw-form textarea:focus { border-color: var(--global-palette1); box-shadow: 0 0 0 3px rgba(98, 0, 49, .12); outline: none; }
.fsw-keuzes { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.fsw-keuze { position: relative; cursor: pointer; }
.fsw-keuze input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.fsw-keuze span { display: flex; flex-direction: column; gap: 2px; height: 100%; padding: 14px 16px 14px 44px; border: 1px solid var(--global-palette7); border-radius: 2px; background: var(--global-palette9); position: relative; transition: border-color .15s, background .15s; }
.fsw-keuze span::before { content: ""; position: absolute; left: 16px; top: 17px; width: 16px; height: 16px; border: 1px solid var(--global-palette5); border-radius: 50%; background: var(--global-palette9); }
.fsw-keuze strong { font-weight: 600; color: var(--global-palette3); font-size: 16px; }
.fsw-keuze small { font-size: 14px; color: var(--global-palette5); }
.fsw-keuze input:checked + span { border-color: var(--global-palette1); background: var(--global-palette8); }
.fsw-keuze input:checked + span::before { border-color: var(--global-palette1); box-shadow: inset 0 0 0 4px var(--global-palette9); background: var(--global-palette1); }
.fsw-keuze input:focus-visible + span { outline: 2px solid var(--global-palette2); outline-offset: 2px; }
.fsw-akkoord { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.5; }
.fsw-akkoord input { accent-color: var(--global-palette1); width: 18px; height: 18px; margin-top: 2px; flex: 0 0 auto; }
.fsw-akkoord a, .fsw-klein a, .fsw-fout a { color: var(--global-palette1); }
.fsw-knop { align-self: flex-start; background: var(--global-palette1); color: var(--global-palette9); border: 0; border-radius: 2px; padding: 18px 34px; font-size: 17px; font-weight: 600; letter-spacing: .03em; cursor: pointer; font-family: inherit; }
.fsw-knop:hover { background: var(--global-palette3); }
.fsw-klein { font-size: 14px; color: var(--global-palette5); margin: 0; }
.fsw-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.fsw-fout { margin-top: 32px; padding: 16px 20px; border-left: 3px solid var(--global-palette6); background: var(--global-palette9); color: var(--global-palette4); }
.fsw-indicatie { position: sticky; top: 24px; background: var(--global-palette1); color: var(--global-palette8); padding: 32px 28px; }
.fsw-indicatie h3 { margin: 0 0 8px; font-family: 'Albert Sans', Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--global-palette2); }
.fsw-ind-basis { font-size: 15px; line-height: 1.5; margin: 0 0 14px; color: var(--global-palette7); }
.fsw-bedrag { display: block; font-family: var(--fs-serif); font-weight: 500; font-size: clamp(40px, 4vw, 52px); line-height: 1.05; color: var(--global-palette9); }
.fsw-eenheid { display: block; margin-top: 6px; font-size: 14px; color: var(--global-palette7); min-height: 1.4em; }
.fsw-indicatie ul { margin: 20px 0; padding: 16px 0 0; border-top: 1px solid #A0476F; list-style: none; font-size: 14px; }
.fsw-indicatie li { margin: 0 0 6px; }
.fsw-indicatie li[hidden] { display: none; }
.fsw-indicatie a { color: var(--global-palette9); border-bottom: 1px solid var(--global-palette2); text-decoration: none; font-size: 14px; }
@media (max-width: 960px) {
	.fsw-lay { grid-template-columns: 1fr; }
	.fsw-indicatie { position: static; order: -1; }
}
@media (max-width: 600px) {
	.fsw-twee, .fsw-keuzes { grid-template-columns: 1fr; }
	.fsw-knop { width: 100%; }
}
#tarieven { scroll-margin-top: 24px; }

/* Catering */
.fs-catering { gap: clamp(32px, 6vw, 80px) !important; align-items: center !important; }
.fs-catering .fs-check { margin: 24px 0 !important; }
.fs-catering .fs-check li { font-size: 18px; }

/* --- Aanvullingen 0.8.1 --- */
.fsw-blok { padding-top: clamp(22px, 3vw, 36px); }
.fsw-stap { float: left; width: 100%; }
.fsw-form ::placeholder { color: var(--global-palette5); opacity: .8; }

/* ==========================================================
   Tarievenlijst: prijskaarten
   ========================================================== */
.fs-menus { gap: 24px !important; }
.fs-menus > .wp-block-column { display: flex; flex-direction: column; gap: 20px; }
.fs-menu { background: var(--global-palette9); border: 1px solid var(--fs-line); padding: clamp(24px, 3vw, 40px); margin: 0 !important; flex: 1; }
.fs-menu h3 { font-size: 28px; margin: 0 0 12px !important; }
.fs-menu-item { display: flex; justify-content: space-between; align-items: baseline; gap: 20px; padding: 16px 0; border-bottom: 1px solid var(--fs-line); margin: 0 !important; }
/* Groepsblokken met een binnenlaag: de binnenlaag moet de volle breedte nemen, anders springen de bedragen heen en weer. */
.fs-menu-item > .wp-block-group__inner-container { flex: 1 1 100%; width: 100%; display: flex; justify-content: space-between; align-items: baseline; gap: 20px; }
.fs-menu-item > .wp-block-group__inner-container > p { margin: 0 !important; }
.fs-menu-name { flex: 1 1 auto; min-width: 0; }
.fs-menu-item:last-child { border-bottom: 0; padding-bottom: 0; }
.fs-menu-item > p { margin: 0 !important; }
.fs-menu-name strong { display: block; font-weight: 600; color: var(--global-palette3); font-size: 17px; }
.fs-menu-name span { display: block; font-size: 14px; line-height: 1.5; color: var(--global-palette5); margin-top: 2px; }
.fs-menu-price { flex: 0 0 auto; font-family: var(--fs-serif); font-size: 24px; color: var(--global-palette1); white-space: nowrap; text-align: right; }
.fs-menus .wp-block-buttons { margin: 0; }

/* ==========================================================
   Rooster: kop zonder foto, weekoverzicht
   ========================================================== */
.fs-page-head { padding-top: clamp(64px, 8vw, 112px) !important; padding-bottom: clamp(56px, 7vw, 96px) !important; }
.fs-page-head h1 { margin: 12px 0 16px; }
.fs-page-head .fs-lead { margin-bottom: 28px !important; }
.fs-page-head .wp-block-buttons { gap: 20px; align-items: center; }
.fs-week { gap: 16px !important; }
.fs-day { background: var(--global-palette9); border: 1px solid var(--fs-line); border-top: 3px solid var(--global-palette1); padding: 24px 22px; margin: 0 !important; }
.fs-day h3 { font-size: 26px; margin: 0 0 8px !important; }
.fs-slot { display: grid; grid-template-columns: 1fr; gap: 2px; padding: 12px 0; margin: 0 !important; border-bottom: 1px solid var(--fs-line); font-size: 16px; line-height: 1.4; }
.fs-slot:last-child { border-bottom: 0; padding-bottom: 0; }
.fs-slot-tijd { font-family: var(--fs-serif); font-style: italic; color: var(--global-palette6); white-space: nowrap; }
.fs-slot-les { color: var(--global-palette3); font-weight: 600; }
.fs-slot-link { justify-self: start; margin-top: 4px; font-size: 14px; font-weight: 600; color: var(--global-palette1); text-decoration: none; border-bottom: 2px solid var(--global-palette2); }
.fs-slot-link:hover { color: var(--global-palette6); }
.fs-slot-vol .fs-slot-link { border-bottom-color: var(--global-palette7); color: var(--global-palette5); }
.fs-dates { margin-top: 12px !important; }
.fs-info-card p { font-size: 17px; line-height: 1.75; }
.fs-info-card .wp-block-buttons { margin-top: 20px; }

/* ==========================================================
   Over ons
   ========================================================== */
.fs-sub-italic { font-family: var(--fs-serif); font-style: italic; font-size: 22px; color: var(--global-palette5); margin-top: 16px !important; }
.fs-over-video { max-width: 960px; margin: clamp(56px, 7vw, 96px) auto 0 !important; }
.fs-longread p { font-size: 18px; line-height: 1.8; margin: 0 0 1.2em; }
.fs-longread a { color: var(--global-palette1); }
.fs-split-media h2 { margin-top: 0; }
.fs-bg-dark.fs-stats-band .fs-stats { margin-top: 0 !important; }

/* ==========================================================================
   Agenda, activiteit en datumkeuze product
   ========================================================================== */
.fsa-wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,64px);box-sizing:content-box}
.fsa-kop,.fsa-lijst-sectie,.fsa-hoofd,.fsa-ook{padding:clamp(56px,7vw,96px) 0}
.fsa-kop{background:var(--fs-zand,#F1E7DC)}
.fsa-agenda-kop .fsa-wrap{display:flex;flex-direction:column;gap:40px}
.fsa-kop-intro{display:flex;flex-direction:column;gap:16px;max-width:760px}
.fsa-label{margin:0;font-size:13px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:#620031}
.fsa h1,.fsa-kop h1{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(44px,5.6vw,76px);line-height:1.04;color:#620031}
.fsa-kop h1 em,.fsa h2 em,.fsa-kop h2 em{font-style:italic}
.fsa-kop .fsa-intro{margin:0;font-size:20px;color:#24151C}

/* Eerstvolgende */
.fsa-uitgelicht{display:flex;flex-wrap:wrap;background:#620031;color:#F1E7DC}
.fsa-uitgelicht-tekst{flex:1 1 460px;min-width:0;padding:clamp(32px,4vw,56px);display:flex;flex-direction:column;gap:18px;box-sizing:border-box}
.fsa-chips{margin:0;display:flex;flex-wrap:wrap;gap:8px}
.fsa-chip{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;border:1px solid #A0476F;color:#E4D3C2;padding:5px 12px}
.fsa-chip-koraal{background:#E66E4B;border-color:#E66E4B;color:#24151C}
.fsa-uitgelicht h2{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(36px,4vw,52px);line-height:1.08}
.fsa-uitgelicht h2 a{color:#FBF7F2;text-decoration:none}
.fsa-uitgelicht h2 a:hover{color:#E66E4B}
.fsa-uitgelicht .fsa-wanneer{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-style:italic;font-size:22px;color:#E66E4B}
.fsa-uitgelicht .fsa-intro{margin:0;color:#E4D3C2;font-size:18px}
.fsa-uitgelicht-onder{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px;padding-top:20px;margin-top:8px;border-top:1px solid #A0476F}
.fsa-uitgelicht .fsa-bedrag strong{color:#FBF7F2;font-size:36px;line-height:1}
.fsa-uitgelicht .fsa-bedrag span{color:#E4D3C2}
.fsa-meer{color:#FBF7F2!important;text-decoration:none!important;font-size:16px;font-weight:600;border-bottom:2px solid #E66E4B;padding-bottom:2px}
.fsa-meer:hover{color:#E66E4B!important}
.fsa-uitgelicht-foto{flex:1 1 420px;min-width:0;padding:clamp(20px,3vw,32px);box-sizing:border-box;display:flex}
.fsa-uitgelicht-foto:empty{display:none}
.fsa-uitgelicht-foto img{width:100%;height:100%;min-height:300px;max-height:460px;object-fit:cover;display:block}

/* Knoppen */
.fsa-knop{display:inline-block;background:#620031;color:#FBF7F2!important;text-decoration:none!important;font-size:15px;font-weight:600;letter-spacing:.04em;padding:14px 24px;border-radius:2px;white-space:nowrap;text-align:center;border:1px solid #620031;transition:background .2s,color .2s}
.fsa-knop:hover,.fsa-knop:focus-visible{background:#3A0A22;border-color:#3A0A22;color:#FBF7F2!important}
.fsa-knop-koraal{background:#E66E4B;border-color:#E66E4B;color:#24151C!important;font-size:16px;font-weight:700;padding:16px 30px}
.fsa-knop-koraal:hover,.fsa-knop-koraal:focus-visible{background:#FBF7F2;border-color:#FBF7F2;color:#3A0A22!important}
.fsa-knop-licht{background:transparent;color:#620031!important;border-color:#E4D3C2}
.fsa-knop-licht:hover,.fsa-knop-licht:focus-visible{background:#F1E7DC;border-color:#620031;color:#620031!important}

/* Bedrag */
.fsa-bedrag{margin:0;display:flex;flex-direction:column;line-height:1.3}
.fsa-bedrag strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;color:#620031}
.fsa-bedrag span{font-size:13px;color:#6B5862}

/* Filters */
.fsa-lijst-sectie .fsa-wrap{display:flex;flex-direction:column;gap:48px}
.fsa-balk{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-bottom:24px;border-bottom:1px solid #E4D3C2}
.fsa-filters{display:flex;flex-wrap:wrap;gap:10px;font-size:15px;font-weight:600}
.fsa-filters a{border:1px solid #E4D3C2;color:#3A0A22;text-decoration:none;padding:9px 18px;border-radius:2px;background:#fff}
.fsa-filters a:hover{border-color:#620031;color:#620031}
.fsa-filters a[aria-current]{background:#620031;border-color:#620031;color:#FBF7F2}
.fsa-ical{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#620031;text-decoration:none}
.fsa-ical:hover{color:#B84A2B}
.fsa-leeg{margin:0;font-size:18px}

/* Maanden en rijen */
.fsa-maand{display:flex;flex-direction:column;gap:16px}
.fsa-maand-kop{margin:0 0 8px!important;font-family:'Albert Sans',Arial,sans-serif!important;font-size:13px!important;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:#6B5862!important}
.fsa-rij{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:16px 32px;align-items:center;background:#fff;border:1px solid #E4D3C2;padding:24px 28px;transition:border-color .2s,box-shadow .2s}
.fsa-rij:hover{border-color:#C9B3A6;box-shadow:0 18px 40px -32px rgba(58,10,34,.5)}
.fsa-datum{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #E4D3C2;border-top:3px solid #620031;padding:10px 0;text-align:center;line-height:1.1;background:#fff}
.fsa-datum>span{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#6B5862}
.fsa-datum strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:40px;color:#620031}
.fsa-rij-tekst{display:flex;flex-direction:column;gap:4px;min-width:0}
.fsa-soort{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#B84A2B}
.fsa-rij h3{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:28px;line-height:1.15;color:#3A0A22}
.fsa-rij h3 a{color:#3A0A22;text-decoration:none}
.fsa-rij h3 a:hover{color:#B84A2B}
.fsa-rij-tekst p{margin:0;font-size:16px;color:#6B5862}
.fsa-rij-boek{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 24px}
.fsa-rij-boek .fsa-bedrag{text-align:right}
.fsa-rij-vakantie{grid-template-columns:96px minmax(0,1fr);background:#F1E7DC;border:1px dashed #B39AA6;padding:20px 28px}
.fsa-rij-vakantie .fsa-datum{background:transparent;border:0;color:#6B5862}
.fsa-rij-vakantie .fsa-datum strong{font-size:32px;color:#6B5862}
.fsa-rij-vakantie h3{font-size:24px}
.fsa-rij-vakantie:hover{box-shadow:none;border-color:#B39AA6}
.fsa-lijst-sectie .fsa-later{display:none}
.fsa-lijst-sectie .fsa-alles .fsa-later{display:grid}
.fsa-lijst-sectie .fsa-alles .fsa-maand.fsa-later{display:flex}
.fsa-toon-meer{align-self:center;background:none;border:0;border-bottom:2px solid #E66E4B;padding:0 0 2px;font:inherit;font-weight:600;color:#620031;cursor:pointer;border-radius:0}
.fsa-toon-meer:hover{color:#B84A2B;background:none}

/* Activiteit: kop */
.fsa .fsa-kop{padding:clamp(40px,5vw,64px) 0 clamp(56px,7vw,88px)}
.fsa .fsa-kop .fsa-wrap{display:flex;flex-direction:column;gap:28px}
.fsa-kruimel{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862;display:flex;flex-wrap:wrap;gap:10px}
.fsa-kruimel a{color:#6B5862;text-decoration:none}
.fsa-kruimel a:hover{color:#620031}
.fsa-kop-rij{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.fsa-kop-tekst{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:16px}
.fsa h1{font-size:clamp(44px,5.6vw,72px)}
.fsa-kop-tekst .fsa-wanneer{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-style:italic;font-size:24px;color:#B84A2B}
.fsa-ws-label{margin:0;display:inline-flex;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#3A0A22;background:#FBF7F2;border:1px solid #E4D3C2;padding:8px 14px}
.fsa-ws-label span{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;background:#E66E4B;color:#24151C;padding:3px 8px}
.fsa-kop-tekst .fsa-intro{max-width:560px}
.fsa-kop-foto{flex:1 1 420px;min-width:0;background:#620031;padding:20px;box-sizing:border-box}
.fsa-kop-foto img{width:100%;height:auto;max-height:440px;object-fit:cover;display:block}

/* Activiteit: inhoud */
.fsa-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:48px 64px;align-items:start}
.fsa-links{display:flex;flex-direction:column;gap:48px;min-width:0}
.fsa-blok{display:flex;flex-direction:column;gap:16px}
.fsa-blok h2{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:36px;line-height:1.15;color:#620031}
.fsa-blok h2.fsa-h2-klein{font-family:'Albert Sans',Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:#6B5862}
.fsa-tekst>*{margin:0 0 1em}
.fsa-tekst>*:last-child{margin-bottom:0}
.fsa-prak{margin:0;display:flex;flex-direction:column;border-top:1px solid #E4D3C2}
.fsa-prak>div{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid #E4D3C2}
.fsa-prak svg{color:#B84A2B}
.fsa-prak dt{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862}
.fsa-prak dd{margin:2px 0 0}
.fsa-data{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.fsa-data>a:not(.fsa-alle){text-decoration:none}
.fsa-datum-klein{min-width:72px;padding:8px 0}
.fsa-datum-klein>span{font-size:11px;letter-spacing:.16em}
.fsa-datum-klein strong{font-size:28px}
.fsa-data>a:hover .fsa-datum{border-color:#620031}
.fsa-alle,.fsa-kopregel a{color:#620031;text-decoration:none;font-weight:600;border-bottom:2px solid #E66E4B;margin-left:8px}
.fsa-alle:hover,.fsa-kopregel a:hover{color:#B84A2B}

/* Aanmeldkaart */
.fsa-kaart{position:sticky;top:120px;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:32px;display:flex;flex-direction:column;gap:20px;box-shadow:0 24px 60px -40px rgba(58,10,34,.45)}
.fsa-kaart-datum{display:flex;gap:18px;align-items:center}
.fsa-kaart-datum>div{display:flex;flex-direction:column;line-height:1.4}
.fsa-kaart-datum>div strong{font-size:18px;color:#3A0A22}
.fsa-kaart-datum>div span{font-size:16px;color:#6B5862}
.fsa-datum-vol{min-width:76px;background:#620031;border:0;padding:10px 0}
.fsa-datum-vol>span{color:#E4D3C2}
.fsa-datum-vol strong{color:#FBF7F2;font-size:38px}
.fsa-keuze{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:10px;min-width:0}
.fsa-keuze legend{padding:0;margin-bottom:10px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862;float:left;width:100%}
.fsa-keuze label{display:grid;grid-template-columns:22px 1fr auto;gap:12px;align-items:center;border:1px solid #E4D3C2;background:#fff;padding:14px 16px;cursor:pointer;margin:0;transition:border-color .2s,background .2s}
.fsa-keuze label:has(input:checked){border-color:#620031;background:#F1E7DC}
.fsa-keuze input{accent-color:#620031;width:18px;height:18px;margin:0}
.fsa-keuze label>span{display:flex;flex-direction:column;line-height:1.35}
.fsa-keuze label>span strong{font-size:16px;color:#3A0A22}
.fsa-keuze small{font-size:13px;color:#6B5862}
.fsa-keuze b,.fsa-kaart-prijs strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;color:#620031}
.fsa-kaart-prijs{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid #E4D3C2;padding-top:16px}
.fsa-kaart-prijs span{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862}
.fsa-kaart .fsa-knop{display:block;font-size:17px;padding:18px 24px;white-space:normal}
.fsa-klein,.fsa-voorbij{margin:0;font-size:14px;color:#6B5862;text-align:center}
.fsa-voorbij{font-size:16px;text-align:left}
.fsa-acties{display:flex;flex-direction:column;gap:4px;border-top:1px solid #E4D3C2;padding-top:12px}
.fsa-acties a,.fsa-acties button{display:flex;align-items:center;gap:10px;min-height:44px;background:none;border:0;padding:0;font:inherit;color:#3A0A22;font-size:15px;font-weight:600;cursor:pointer;text-align:left;text-decoration:none;border-radius:0}
.fsa-acties a:hover,.fsa-acties button:hover{color:#620031;background:none}
.fsa-acties svg{color:#B84A2B;flex:none}

/* Ook in de agenda */
.fsa-ook{background:#F1E7DC}
.fsa-ook .fsa-wrap{display:flex;flex-direction:column;gap:32px}
.fsa-kopregel{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px}
.fsa-kopregel h2{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(32px,3.6vw,44px);color:#620031}
.fsa-kopregel a{margin-left:0}
.fsa-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.fsa-ander{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid #E4D3C2;padding:20px;text-decoration:none;transition:border-color .2s}
.fsa-ander:hover{border-color:#620031}
.fsa-ander .fsa-datum{border:0;border-top:3px solid #620031;min-width:64px;padding:6px 0 0}
.fsa-ander>span:last-child{display:flex;flex-direction:column;line-height:1.35;min-width:0}
.fsa-ander strong:not(.fsa-datum strong){font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:22px;color:#3A0A22}
.fsa-ander .fsa-tijd{font-size:14px;color:#6B5862}

/* Mobiele balk */
.fsa-balk-mobiel{display:none}

/* CTA onder de agenda */
.fs-agenda-cta .wp-block-button__link,.fs-btn-koraal .wp-block-button__link{background:#E66E4B;color:#24151C;font-weight:700}
.fs-agenda-cta .wp-block-button__link:hover,.fs-btn-koraal .wp-block-button__link:hover{background:#FBF7F2;color:#3A0A22}

/* Product: datumkeuze */
.fsr-actief table.variations tr:has(select[name="attribute_pa_datum"]),
.fsr-actief table.variations tr:has(select[name="attribute_pa_mini-workshop"]){position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.fsr-actief .reset_variations{display:none!important}
.fsr-datums,.fsr-ws{margin:0 0 24px}
.fsr-kop{margin:0 0 12px!important;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862}
.fsr-lijst{display:flex;flex-wrap:wrap;gap:10px}
.fsr-maand{flex:0 0 100%;margin:6px 0 0!important;font-size:13px;font-weight:600;color:#3A0A22}
.fsr-maand:first-child{margin-top:0!important}
.fsr-knop{position:relative;display:flex;flex-direction:column;align-items:center;min-width:72px;padding:8px 6px 10px;background:#fff;border:1px solid #E4D3C2;border-top:3px solid #620031;border-radius:0;color:#3A0A22;font:inherit;line-height:1.15;cursor:pointer;transition:border-color .2s,background .2s}
.fsr-knop:hover{border-color:#620031;background:#FBF7F2}
.fsr-knop[aria-checked="true"]{background:#620031;border-color:#620031;color:#FBF7F2}
.fsr-dag,.fsr-mnd{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#6B5862}
.fsr-nr{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:28px;color:#620031}
.fsr-knop[aria-checked="true"] .fsr-dag,.fsr-knop[aria-checked="true"] .fsr-mnd{color:#E4D3C2}
.fsr-knop[aria-checked="true"] .fsr-nr{color:#FBF7F2}
.fsr-ws-stip{margin-top:6px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#E66E4B;color:#24151C;padding:2px 6px}
.fsr-meer{margin-top:12px;background:none;border:0;border-bottom:2px solid #E66E4B;padding:0 0 2px;font:inherit;font-weight:600;color:#620031;cursor:pointer;border-radius:0}
.fsr-meer:hover{background:none;color:#B84A2B}
.fsr-ws-lijst{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.fsr-ws-knop{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:#fff;border:1px solid #E4D3C2;border-radius:0;font:inherit;color:#3A0A22;text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.fsr-ws-knop strong{font-size:16px}
.fsr-ws-knop span{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:22px;color:#620031}
.fsr-ws-knop:hover{border-color:#620031;background:#FBF7F2}
.fsr-ws-knop[aria-checked="true"]{border-color:#620031;background:#F1E7DC;box-shadow:inset 0 0 0 1px #620031}

@media (max-width:900px){
	.fsa-grid{grid-template-columns:minmax(0,1fr)}
	.fsa-kaart{position:static}
}
@media (max-width:720px){
	.fsa-rij{grid-template-columns:72px minmax(0,1fr);padding:18px;gap:12px 18px;align-items:start}
	.fsa-rij-boek{grid-column:1/-1;justify-content:space-between;border-top:1px solid #E4D3C2;padding-top:14px}
	.fsa-rij-boek .fsa-bedrag{text-align:left}
	.fsa-rij h3{font-size:24px}
	.fsa-datum strong{font-size:32px}
	.fsa-datum-klein strong{font-size:26px}
	.fsa-datum-vol strong{font-size:34px}
	.fsa-rij-vakantie{grid-template-columns:72px minmax(0,1fr)}
	.fsa-balk{flex-direction:column;align-items:flex-start}
	.fsa-filters{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
	.fsa-filters a{flex:none}
	.fsa-kaart{padding:24px}
	body.fsa-pagina{padding-bottom:84px}
	.fsa-balk-mobiel{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:16px;background:#FBF7F2;border-top:1px solid #E4D3C2;padding:12px 20px;box-shadow:0 -12px 30px -20px rgba(58,10,34,.5)}
	.fsa-balk-mobiel>div{display:flex;flex-direction:column;line-height:1.3;min-width:0}
	.fsa-balk-mobiel strong{font-size:15px;color:#3A0A22}
	.fsa-balk-mobiel span{font-size:13px;color:#6B5862}
	.fsa-balk-mobiel .fsa-knop{padding:12px 20px}
}
@media (prefers-reduced-motion:reduce){.fsa-rij,.fsa-knop,.fsr-knop,.fsr-ws-knop{transition:none}}

/* --- Aanvullingen agenda 0.8.9 --- */
:is(.fsa-kop,.fsa-lijst-sectie,.fsa-hoofd,.fsa-ook) :is(p,h1,h2,h3,dl){margin-top:0!important;margin-bottom:0!important}
.fsa-maand .fsa-maand-kop{margin-bottom:8px!important}

/* --- Aanvullingen agenda 0.9.0 --- */
.fsa-pagina #primary.content-area{margin-top:0;margin-bottom:0}

/* --- Aanvullingen agenda 0.9.1 --- */
.fsr-lijst [hidden],.fsr-meer[hidden],.fsr-ws[hidden]{display:none!important}
.fsr-knop{width:96px;min-width:0}

/* ==========================================================================
   Mijn account en online cursus
   ========================================================================== */
.woocommerce-account #primary.content-area,.fsc-pagina #primary.content-area{margin-top:0;margin-bottom:0}
.woocommerce-account .entry-content-wrap,.woocommerce-account .entry-content{padding:0!important;margin:0!important;max-width:none!important}
:is(.fsm,.fsc) :is(p,h1,h2,h3,ul,ol,dl){margin-top:0;margin-bottom:0}
.fsm-kop{background:#F1E7DC;padding:clamp(48px,6vw,80px) 0}
.fsm-kop .fsa-wrap{display:flex;flex-direction:column;gap:14px}
.fsm-kop-rij{flex-direction:row!important;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px!important}
.fsm-kop-tekst{display:flex;flex-direction:column;gap:14px;max-width:720px}
.fsm h1{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(40px,5vw,68px);line-height:1.05;color:#620031}
.fsm h1 em,.fsm h2 em,.fsc h1 em,.fsc h2 em{font-style:italic}
.fsm-intro{font-size:19px;color:#24151C}
.fsm-kar{display:inline-flex;align-items:center;gap:10px;background:#FBF7F2;border:1px solid #E4D3C2;padding:12px 18px;text-decoration:none;color:#3A0A22;font-size:15px;font-weight:600}
.fsm-kar svg{color:#B84A2B}
.fsm-kar span{color:#B84A2B;border-bottom:2px solid #E66E4B;margin-left:6px}
.fsm-kar:hover{border-color:#620031;color:#620031}
.fsm-hoofd{padding:clamp(48px,6vw,80px) 0}
.fsm-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;align-items:start}

/* Menu */
.fsm-nav{display:flex;flex-direction:column;border-top:1px solid #E4D3C2;position:sticky;top:120px}
.fsm-nav a{display:flex;justify-content:space-between;align-items:center;padding:13px 4px 13px 0;border-bottom:1px solid #E4D3C2;text-decoration:none;font-size:16px;font-weight:500;color:#3A0A22;transition:padding .2s,color .2s}
.fsm-nav a span{color:#B39AA6}
.fsm-nav a:hover{color:#620031;padding-left:6px}
.fsm-nav a[aria-current]{background:#fff;border-left:3px solid #E66E4B;padding-left:16px;font-weight:600;color:#620031}
.fsm-nav a.fsm-uit{justify-content:flex-start;gap:8px;border:0;padding:18px 0 0;font-size:15px;font-weight:600;color:#6B5862}
.fsm-nav a.fsm-uit:hover{padding-left:0;color:#620031}
.fsm-inhoud{display:flex;flex-direction:column;gap:48px;min-width:0}

/* Eerstvolgende */
.fsm-eerst{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center;background:#620031;color:#F1E7DC;padding:32px 36px}
.fsm-datum-licht{min-width:80px;background:#FBF7F2!important}
.fsm-eerst-tekst{display:flex;flex-direction:column;gap:6px;min-width:0}
.fsm-oog{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#E66E4B}
.fsm-eerst-tekst strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:34px;line-height:1.1}
.fsm-eerst-tekst strong a{color:#FBF7F2;text-decoration:none}
.fsm-eerst-tekst strong a:hover{color:#E66E4B}
.fsm-eerst-tekst>span:last-child{font-size:16px;color:#E4D3C2}
.fsm-eerst-knoppen{display:flex;flex-direction:column;gap:12px;align-items:stretch;text-align:center}
.fsm-licht{color:#FBF7F2!important;text-decoration:none;font-size:15px;font-weight:600}
.fsm-licht:hover{color:#E66E4B!important}
.fsm-ook{display:flex;flex-direction:column;gap:14px}
.fsm-ook h2{font-family:'Albert Sans',Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#6B5862}
.fsm-ook-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.fsm-ook .fsa-ander strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:21px;color:#3A0A22}
.fsm-ook .fsa-ander>span:last-child{display:flex;flex-direction:column;line-height:1.35;min-width:0}

/* Tegels */
.fsm-tegels{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.fsm-tegel{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid #E4D3C2;padding:28px;text-decoration:none;color:#24151C;min-height:190px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,transform .2s}
.fsm-tegel svg{color:#B84A2B}
.fsm-tegel strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;line-height:1.15;color:#3A0A22;margin-top:6px;hyphens:none;overflow-wrap:normal}
.fsm-tegel>span{font-size:15px;line-height:1.5;color:#6B5862}
.fsm-tegel:hover{border-color:#620031;box-shadow:0 22px 50px -36px rgba(58,10,34,.5);transform:translateY(-2px)}
.fsm-tegel:hover strong{color:#620031}
.fsm-voortgang{display:block;height:4px;background:#E4D3C2;margin-top:4px}
.fsm-voortgang>span{display:block;height:100%;background:#E66E4B}
.fsm-voortgang-dik{height:6px}
.fsm-voortgang-dik>span{background:#620031}
.fsm-tegel .fsm-tegel-klein{font-size:13px}

/* Producten */
.fsm-producten{background:#F1E7DC;padding:clamp(56px,7vw,96px) 0}
.fsm-producten .fsa-wrap{display:flex;flex-direction:column;gap:36px}
.fsm-producten-kop{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.fsm-producten-kop h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(32px,3.6vw,44px);color:#620031}
.fsm-producten-kop>span{width:48px;height:2px;background:#E66E4B}
.fsm-producten-raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,260px));justify-content:center;gap:24px}
.fsm-product{display:flex;flex-direction:column;gap:12px;text-decoration:none}
.fsm-product-foto{display:block;aspect-ratio:1/1;overflow:hidden;background:#fff}
.fsm-product-foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.fsm-product:hover img{transform:scale(1.03)}
.fsm-product strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:20px;color:#3A0A22}
.fsm-product-prijs{font-size:15px;color:#6B5862}

/* Inloggen */
.fsm-meldingen:empty{display:none}
.fsm-meldingen{margin-bottom:24px}
.fsm-login{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);box-shadow:0 30px 70px -50px rgba(58,10,34,.5)}
.fsm-login-kaart{background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;gap:22px}
.fsm-login-kaart h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:36px;color:#620031}
.fsm-form{display:flex;flex-direction:column;gap:18px;margin:0!important;padding:0!important;border:0!important}
.fsm-veld{display:flex;flex-direction:column;gap:8px}
.fsm-veld label{font-size:14px;font-weight:600;color:#3A0A22}
.fsm-veld input,.fsm .woocommerce-MyAccount-content input.input-text,.fsm .woocommerce-MyAccount-content select,.fsm .woocommerce-MyAccount-content textarea,.fsm-los input.input-text{width:100%;height:52px;background:#FBF7F2;border:1px solid #D9C6B6;border-radius:0;padding:0 16px;font:inherit;font-size:16px;color:#24151C;box-sizing:border-box;box-shadow:none}
.fsm .woocommerce-MyAccount-content textarea{height:auto;padding:12px 16px}
.fsm-veld input:focus,.fsm .woocommerce-MyAccount-content :is(input,select,textarea):focus,.fsm-los input:focus{outline:2px solid #620031;outline-offset:1px;border-color:#620031;background:#fff}
.fsm-rij{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:15px}
.fsm-rij a{color:#B84A2B;font-weight:600}
.fsm-check{display:inline-flex;align-items:center;gap:10px;color:#3A0A22;margin:0}
.fsm-check input{accent-color:#620031;width:18px;height:18px;margin:0}
.fsm-knop-vol{display:block;width:100%;font-size:17px;padding:18px 24px;cursor:pointer;font-family:inherit}
.fsm-letop{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#6B5862;border-top:1px solid #E4D3C2;padding-top:18px}
.fsm-letop svg{color:#B84A2B;flex:none;margin-top:2px}
.fsm-login-paneel{background:#620031;color:#E4D3C2;padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;gap:20px;justify-content:center}
.fsm-login-paneel h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:40px;line-height:1.1;color:#FBF7F2}
.fsm-login-paneel p{font-size:17px}
.fsm-voordelen{list-style:none;padding:0!important;display:flex;flex-direction:column;gap:10px;font-size:16px}
.fsm-voordelen li{display:flex;gap:12px;align-items:center;margin:0}
.fsm-voordelen svg{color:#E66E4B;flex:none}
.fsm-registreer{border-top:1px solid #A0476F;border-bottom:1px solid #A0476F;padding:14px 0}
.fsm-registreer summary{cursor:pointer;font-weight:600;color:#FBF7F2;list-style:none;display:flex;justify-content:space-between;align-items:center}
.fsm-registreer summary::-webkit-details-marker{display:none}
.fsm-registreer summary::after{content:"+";font-size:22px;color:#E66E4B;line-height:1}
.fsm-registreer[open] summary::after{content:"–"}
.fsm-registreer form{margin-top:18px!important}
.fsm-registreer .fsm-veld label,.fsm-registreer .woocommerce-privacy-policy-text,.fsm-registreer p{color:#E4D3C2;font-size:14px}
.fsm-registreer a{color:#FBF7F2}
.fsm-registreer .fsm-veld input{background:#FBF7F2}
.fsm-paneel-knoppen{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;padding-top:8px}
.fsm-los{max-width:620px;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(28px,4vw,48px)}
.fsm-los form{border:0!important;padding:0!important;margin:0!important}
.fsm-los p{margin-bottom:16px}
.fsm-los .woocommerce-form-row{width:100%!important;float:none!important}

/* WooCommerce-onderdelen in het account */
.fsm .woocommerce-MyAccount-content{width:auto!important;float:none!important;font-size:16px}
.fsm .woocommerce-MyAccount-content>p:first-child{margin-bottom:18px}
.fsm .woocommerce-MyAccount-content h2,.fsm .woocommerce-MyAccount-content h3,.fsm .woocommerce-MyAccount-content legend{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:28px;color:#620031;margin:0 0 16px}
.fsm .woocommerce-MyAccount-content table.shop_table{width:100%;border-collapse:collapse;border:1px solid #E4D3C2;background:#fff;border-radius:0;margin:0 0 24px}
.fsm .woocommerce-MyAccount-content table.shop_table th{background:#F1E7DC;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862;text-align:left;padding:14px 18px;border:0}
.fsm .woocommerce-MyAccount-content table.shop_table td{padding:16px 18px;border-top:1px solid #E4D3C2;vertical-align:middle;font-size:15px}
.fsm .woocommerce-MyAccount-content table.shop_table td a:not(.button){color:#620031;font-weight:600}
.fsm .woocommerce-MyAccount-content mark{background:none;color:#620031;font-weight:600}
.fsm .woocommerce-MyAccount-content .button,.fsm .woocommerce-MyAccount-content button.button,.fsm-los .button{display:inline-block;background:#620031;color:#FBF7F2!important;border:1px solid #620031;border-radius:2px;padding:11px 18px;font-size:14px;font-weight:600;letter-spacing:.04em;text-decoration:none;margin:2px 6px 2px 0;cursor:pointer;font-family:inherit;line-height:1.3}
.fsm .woocommerce-MyAccount-content .button:hover,.fsm-los .button:hover{background:#3A0A22;border-color:#3A0A22}
.fsm .woocommerce-MyAccount-content .woocommerce-button--next,.fsm .woocommerce-MyAccount-content .woocommerce-button--previous{margin-top:8px}
.fsm .woocommerce-MyAccount-content fieldset{border:1px solid #E4D3C2;padding:24px;margin:24px 0;background:#fff}
.fsm .woocommerce-MyAccount-content .form-row{margin:0 0 18px;padding:0}
.fsm .woocommerce-MyAccount-content .form-row label{font-size:14px;font-weight:600;color:#3A0A22;margin-bottom:6px;display:block}
.fsm .woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.fsm .woocommerce-MyAccount-content .woocommerce-Address{width:auto!important;float:none!important;background:#fff;border:1px solid #E4D3C2;padding:24px}
.fsm .woocommerce-MyAccount-content .woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.fsm .woocommerce-MyAccount-content .woocommerce-Address-title h2{font-size:24px;margin:0}
.fsm .woocommerce-MyAccount-content .woocommerce-Address-title a{color:#B84A2B;font-weight:600}
.fsm .woocommerce-MyAccount-content address{font-style:normal;line-height:1.7}
.fsm .woocommerce-MyAccount-content .woocommerce-info,.fsm .woocommerce-MyAccount-content .woocommerce-message,.fsm-meldingen :is(.woocommerce-info,.woocommerce-message,.woocommerce-error){background:#fff;border:1px solid #E4D3C2;border-left:3px solid #E66E4B;color:#24151C;padding:18px 20px;margin:0 0 20px;list-style:none;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.fsm-meldingen .woocommerce-error{border-left-color:#B84A2B}
.fsm .woocommerce-MyAccount-content :is(.woocommerce-info,.woocommerce-message)::before,.fsm-meldingen :is(.woocommerce-info,.woocommerce-message,.woocommerce-error)::before{display:none}
.fsm .woocommerce-MyAccount-content .woocommerce-info .button{order:2;margin:0}
.fsm .woocommerce-order-details,.fsm .woocommerce-customer-details{margin-top:32px}

/* Online cursus */
.fsc-kop-rij{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center}
.fsc-kop-tekst{display:flex;flex-direction:column;gap:18px;min-width:0}
.fsc h1{margin:0;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(40px,5vw,66px);line-height:1.05;color:#620031}
.fsc .fsa-intro{font-size:19px;max-width:560px}
.fsc-voortgang{display:flex;flex-direction:column;gap:10px;max-width:520px;padding-top:6px}
.fsc-voortgang>div{display:flex;justify-content:space-between;font-size:15px}
.fsc-voortgang strong{color:#3A0A22}
.fsc-voortgang span{color:#6B5862}
.fsc-knoppen{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;padding-top:10px}
.fsc-knoppen .fsa-knop{font-size:16px;padding:16px 28px;white-space:normal}
.fsc-meta{font-size:15px;color:#6B5862}
.fsc-beeld{background:#620031;padding:18px}
.fsc-beeld>a,.fsc-beeld>div{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;aspect-ratio:16/9;border:1px solid #A0476F;text-decoration:none;overflow:hidden}
.fsc-beeld img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.fsc-play{position:relative;width:72px;height:72px;border-radius:50%;background:#E66E4B;color:#24151C;display:flex;align-items:center;justify-content:center;transition:transform .2s}
.fsc-beeld a:hover .fsc-play{transform:scale(1.08)}
.fsc-beeld-titel{position:relative;font-family:'Bodoni Moda',Didot,Georgia,serif;font-style:italic;font-size:22px;color:#FBF7F2;text-align:center;padding:0 24px}
.fsc-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}
.fsc-delen{display:flex;flex-direction:column;gap:48px;min-width:0}
.fsc-deel{display:flex;flex-direction:column;gap:16px}
.fsc-deel-kop{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:2px solid #620031;padding-bottom:12px}
.fsc-deel-kop h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:32px;color:#620031}
.fsc-deel-kop h2 span{font-family:'Albert Sans',Arial,sans-serif;font-size:14px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#B84A2B;margin-right:14px}
.fsc-deel-kop>span{font-size:14px;color:#6B5862;white-space:nowrap}
.fsc-lessen{list-style:none;padding:0!important;border:1px solid #E4D3C2;border-bottom:0}
.fsc-lessen li{margin:0}
.fsc-les{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:20px;align-items:center;padding:18px 22px;background:#fff;border-bottom:1px solid #E4D3C2;text-decoration:none;color:#3A0A22;transition:background .2s}
a.fsc-les:hover{background:#FBF7F2}
.fsc-nr{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:24px;color:#620031}
.fsc-les-titel{font-size:17px;font-weight:500}
.fsc-duur{font-size:14px;color:#6B5862;white-space:nowrap}
.fsc-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#6B5862;white-space:nowrap}
.fsc-status svg{color:#B84A2B}
.fsc-status-link{font-size:14px;color:#620031}
.fsc-status-knop{background:#620031;color:#FBF7F2;font-size:14px;padding:10px 18px;border-radius:2px}
.fsc-gedaan .fsc-nr{color:#B39AA6}
.fsc-gedaan .fsc-les-titel{color:#6B5862}
.fsc-volgende{background:#F1E7DC;border-left:3px solid #E66E4B}
.fsc-volgende .fsc-les-titel{font-weight:600}
a.fsc-volgende:hover{background:#EADBCB}
.fsc-dicht{color:#6B5862}
.fsc-tips{gap:20px}
.fsc-tips h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;color:#620031}
.fsc-tips ul{list-style:none;padding:0!important;display:flex;flex-direction:column;gap:14px;font-size:15px;line-height:1.5}
.fsc-tips li{display:flex;gap:12px;margin:0}
.fsc-tips li svg{color:#B84A2B;flex:none}
.fsc-tips-onder{border-top:1px solid #E4D3C2;padding-top:18px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.fsc-tips-onder strong{font-size:16px;color:#3A0A22}
.fsc-tips-onder span{font-size:15px;color:#6B5862}
.fsc-tips-onder .fsa-alle{margin-left:0}

@media (max-width:900px){
	.fsm-grid,.fsc-grid,.fsc-kop-rij,.fsm-login{grid-template-columns:minmax(0,1fr)}
	.fsm-grid{gap:32px}
	.fsm-nav{position:static;flex-direction:row;overflow-x:auto;gap:8px;border:0;padding-bottom:6px;scrollbar-width:none;margin:0 calc(-1 * clamp(20px,5vw,64px));padding-left:clamp(20px,5vw,64px);padding-right:clamp(20px,5vw,64px)}
	.fsm-nav a,.fsm-nav a[aria-current]{flex:none;border:1px solid #E4D3C2;padding:9px 16px;font-size:15px;background:#fff}
	.fsm-nav a span{display:none}
	.fsm-nav a:hover{padding-left:16px}
	.fsm-nav a[aria-current]{background:#620031;border-color:#620031;color:#FBF7F2}
	.fsm-nav a.fsm-uit{border:1px solid #E4D3C2;padding:9px 16px}
	.fsm-eerst{grid-template-columns:auto minmax(0,1fr);padding:24px}
	.fsm-eerst-knoppen{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 24px}
	.fsc-tips{position:static}
}
@media (max-width:600px){
	.fsm-eerst-tekst strong{font-size:26px}
	.fsc-les{grid-template-columns:36px minmax(0,1fr) auto;gap:12px;padding:16px}
	.fsc-duur{display:none}
	.fsc-nr{font-size:20px}
	.fsc-status-knop{padding:8px 12px;font-size:13px}
	.fsc-deel-kop{flex-direction:column;gap:4px}
	.fsm .woocommerce-MyAccount-content table.shop_table_responsive tr{display:block;border-top:1px solid #E4D3C2;padding:8px 0}
	.fsm .woocommerce-MyAccount-content table.shop_table_responsive td{display:flex;justify-content:space-between;gap:12px;border:0;padding:8px 16px;text-align:right!important}
	.fsm .woocommerce-MyAccount-content table.shop_table_responsive td::before{content:attr(data-title);font-weight:600;color:#6B5862;text-align:left}
	.fsm .woocommerce-MyAccount-content table.shop_table_responsive thead{display:none}
}
@media (prefers-reduced-motion:reduce){.fsm-tegel,.fsm-nav a,.fsc-play,.fsm-product img{transition:none}}

/* --- Aanvullingen account 0.9.4 --- */
:is(.fsm,.fsc) :is(p,h1,h2,h3,ul,ol,dl):not(.woocommerce-MyAccount-content *):not(.fsm-los *):not(.fsm-registreer form *){margin-top:0!important;margin-bottom:0!important}

/* --- Aanvullingen account 0.9.5 --- */
.fsc .fsa-kop{padding:clamp(40px,5vw,64px) 0 clamp(56px,7vw,88px)}
.fsc .fsa-kop .fsa-wrap{display:flex;flex-direction:column;gap:28px}
.fsc-tips{position:sticky;top:120px}
.fsm-registreer form p{margin:0!important}
.fsm-registreer form label input[type=checkbox]{accent-color:#E66E4B;margin-right:8px}

/* --- Productpagina: bundel mini-workshop, omschrijving, agenda-foto 0.9.7 --- */
.single-product div.product form.cart:has(.bundle_sells_form){background:none;border:0;padding:0}
.single-product div.product form.cart .bundle_sells_title{background:#fff;border:1px solid var(--fs-line);border-left:3px solid #E66E4B;border-bottom:0;padding:22px 24px 4px;margin:0}
.single-product div.product form.cart .bundle_sells_title h3{font-family:var(--fs-serif);font-weight:500;font-size:24px;line-height:1.2;color:var(--global-palette1);margin:0}
.single-product div.product form.cart .bundle_sells_form{background:#fff;border:1px solid var(--fs-line);border-left:3px solid #E66E4B;border-top:0;padding:14px 24px 24px;margin:0 0 20px}
.single-product .bundle_sells_form .bundled_product{display:grid!important;grid-template-columns:88px minmax(0,1fr);gap:4px 18px;align-items:start;margin:0!important;padding:0!important;border:0!important}
.single-product .bundle_sells_form .bundled_product_images{grid-row:1/3;width:88px!important;margin:0!important;float:none!important}
.single-product .bundle_sells_form .bundled_product_images img{width:88px;height:88px;object-fit:cover;display:block}
.single-product .bundle_sells_form .details{width:auto!important;float:none!important;padding:0!important;margin:0!important}
.single-product .bundle_sells_form .bundled_product_title{font-family:var(--fs-sans,'Albert Sans'),Arial,sans-serif!important;font-size:17px!important;font-weight:700;letter-spacing:0;color:var(--global-palette3);margin:0 0 4px!important;line-height:1.3}
.single-product .bundle_sells_form .bundled_product_title a{display:none}
.single-product .bundle_sells_form .bundled_product_excerpt{font-size:15px;line-height:1.55;color:var(--global-palette5);margin:0 0 14px}
.single-product .bundle_sells_form .bundled_product_excerpt p{margin:0}
.single-product .bundle_sells_form .bundled_product_optional_checkbox{grid-column:1/-1;display:flex!important;align-items:center;gap:12px;margin:14px 0 0!important;padding:14px 16px;border:1px solid var(--global-palette1);background:#FBF7F2;font-size:16px;font-weight:600;color:var(--global-palette3);cursor:pointer;transition:background .2s,color .2s}
.single-product .bundle_sells_form .bundled_product_optional_checkbox input{width:22px;height:22px;margin:0!important;accent-color:var(--global-palette1);flex:none}
.single-product .bundle_sells_form .bundled_product_optional_checkbox .price{font-family:var(--fs-serif);font-size:22px!important;color:var(--global-palette1)!important;margin-left:auto}
.single-product .bundle_sells_form .bundled_product_optional_checkbox:has(input:checked){background:var(--global-palette1);color:#FBF7F2}
.single-product .bundle_sells_form .bundled_product_optional_checkbox:has(input:checked) .price{color:#FBF7F2!important}
.single-product .bundle_sells_form .bundle_price,.single-product .bundle_sells_form .bundle_availability{display:none}
.single-product div.product form.cart:has(.bundle_sells_form) .quantity{margin:0 12px 0 0}
.fsp-desc .fsp-narrow{max-width:1100px}
.fsa-uitgelicht-foto{flex:1.25 1 520px;align-items:center}
.fsa-uitgelicht-foto img{height:auto;min-height:0;max-height:none;aspect-ratio:16/9;object-fit:cover}

/* --- Aanvullingen product 0.9.8 --- */
.single-product .bundle_sells_form .bundled_product_title_link{display:none!important}
.single-product .bundle_sells_form .bundled_product_optional_checkbox{width:100%;box-sizing:border-box}

/* --- Online dansles (salespagina) 0.9.9 --- */
.fso-stappen{margin-top:40px!important}
.fso-inhoud{gap:clamp(32px,6vw,96px)!important;align-items:center}
.fso-inhoud h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px}
.fso-delen{background:#fff;border:1px solid var(--fs-line);border-top:4px solid var(--global-palette1);padding:32px}
.fso-label{font-size:12px!important;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--global-palette6,#B84A2B);margin:0 0 12px!important}
.fso-delen-lijst{list-style:none;margin:0!important;padding:0!important;border-top:1px solid var(--fs-line)}
.fso-delen-lijst li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--fs-line);margin:0}
.fso-delen-lijst strong{font-family:var(--fs-serif);font-weight:500;font-size:22px;color:var(--global-palette3)}
.fso-delen-lijst span{font-size:15px;color:var(--global-palette5)}
.fso-klein{font-size:14px!important;color:var(--global-palette5);margin:14px 0 0!important}
.fso-docent h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px}
.fso-plan{max-width:460px;margin:40px auto 0!important;background:#fff;border:1px solid var(--fs-line);border-top:4px solid var(--global-palette1);padding:clamp(28px,4vw,44px);text-align:center;box-shadow:0 30px 70px -50px rgba(58,10,34,.5)}
.fso-plan h3{font-size:30px;color:var(--global-palette3);margin:0 0 8px}
.fso-prijs{display:flex;flex-direction:column;align-items:center;margin:8px 0 20px!important;line-height:1}
.fso-prijs strong{font-family:var(--fs-serif);font-weight:500;font-size:64px;color:var(--global-palette1)}
.fso-prijs span{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--global-palette5);margin-top:10px}
.fso-plan .fs-check{text-align:left;margin:0 0 24px!important}
.fso-plan .wp-block-buttons{justify-content:center}
.fso-plan .fso-knop .wp-block-button__link{display:block;width:100%;font-size:17px;padding:18px 24px}
.fso-plan .fso-knop{width:100%}
.fso-proef{font-size:15px!important;font-weight:600;color:var(--global-palette6,#B84A2B);margin:14px 0 0!important}
.fso-slot h2{font-size:clamp(32px,3.6vw,48px)}

/* --- Aanvullingen online 0.9.10 --- */
.page-id-4234 .fs-hero .wp-block-image img{aspect-ratio:912/655;object-fit:cover;object-position:center top;width:100%;height:auto}
.fs-section > .fso-plan{max-width:460px!important;margin-left:auto!important;margin-right:auto!important}

/* ==========================================================================
   Blog, 404 en winkelmand
   ========================================================================== */
:is(.fsb,.fs4,.fs4-links,.fsk) :is(p,h1,h2,h3):not(.fsb-tekst *):not(.woocommerce *){margin-top:0!important;margin-bottom:0!important}
.fsb-pagina #primary.content-area,.fs4-pagina #primary.content-area,.page-id-27857 #primary.content-area,.page-id-5523 #primary.content-area{margin-top:0;margin-bottom:0}
.fsb h1,.fs4 h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(40px,5vw,68px);line-height:1.05;color:#620031}
.fsb h1 em,.fsb h2 em,.fs4 h1 em,.fs4-links h2 em,.fsk h1 em{font-style:italic}

/* Blog: kop en filters */
.fsb-kop{background:#F1E7DC;padding:clamp(48px,6vw,80px) 0}
.fsb-kop .fsa-wrap{display:flex;flex-direction:column;gap:16px}
.fsb-intro{font-size:19px;max-width:640px}
.fsb-filters{margin-top:12px}
.fsb-lijst{padding:clamp(48px,6vw,80px) 0}
.fsb-lijst .fsa-wrap{display:flex;flex-direction:column;gap:48px}

/* Kaarten */
.fsb-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:32px 28px}
.fsb-kaart{display:flex;flex-direction:column;background:#fff;border:1px solid #E4D3C2;transition:border-color .2s,box-shadow .2s,transform .2s}
.fsb-kaart:hover{border-color:#C9B3A6;box-shadow:0 22px 50px -36px rgba(58,10,34,.5);transform:translateY(-2px)}
.fsb-foto{display:block;aspect-ratio:16/10;overflow:hidden;background:#620031}
.fsb-foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.fsb-kaart:hover .fsb-foto img{transform:scale(1.03)}
.fsb-geenfoto{display:block;width:100%;height:100%;background:linear-gradient(135deg,#620031,#3A0A22)}
.fsb-kaart-tekst{display:flex;flex-direction:column;gap:10px;padding:24px 26px 26px;flex:1}
.fsb-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:#6B5862}
.fsb-meta span{font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:#B84A2B}
.fsb-kaart h3{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:24px;line-height:1.2}
.fsb-kaart h3 a{color:#3A0A22;text-decoration:none}
.fsb-kaart h3 a:hover{color:#B84A2B}
.fsb-ex{font-size:15px;line-height:1.6;color:#6B5862;flex:1}
.fsb-lees{align-self:flex-start;color:#620031;font-weight:600;font-size:15px;text-decoration:none;border-bottom:2px solid #E66E4B;padding-bottom:2px;margin-top:4px}
.fsb-uitgelicht{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);border-top:4px solid #620031}
.fsb-uitgelicht .fsb-foto{aspect-ratio:auto;min-height:340px}
.fsb-uitgelicht .fsb-kaart-tekst{padding:clamp(28px,4vw,48px);justify-content:center;gap:14px}
.fsb-uitgelicht h3{font-size:clamp(28px,3vw,40px)}
.fsb-uitgelicht .fsb-ex{flex:0;font-size:17px}
.fsb-paginas{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.fsb-paginas a{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid #E4D3C2;background:#fff;color:#3A0A22;text-decoration:none;font-weight:600}
.fsb-paginas a:hover{border-color:#620031;color:#620031}
.fsb-paginas a[aria-current]{background:#620031;border-color:#620031;color:#FBF7F2}

/* CTA */
.fsb-cta{background:#3A0A22;color:#E4D3C2;padding:clamp(64px,8vw,104px) 0;text-align:center}
.fsb-cta .fsa-wrap{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:860px}
.fsb-cta h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(32px,3.6vw,48px);line-height:1.1;color:#FBF7F2}
.fsb-cta h2 em{color:#E66E4B}
.fsb-cta>.fsa-wrap>span{width:48px;height:2px;background:#E66E4B}

/* Artikel */
.fsb-kop-artikel{padding-bottom:clamp(40px,5vw,64px)}
.fsb-kop-artikel .fsa-wrap{max-width:880px;gap:20px}
.fsb-kop-artikel h1{font-size:clamp(36px,4.6vw,60px)}
.fsb-kop-artikel .fsb-meta{font-size:15px}
.fsb-kop-artikel .fsb-meta span{font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;color:#6B5862}
.fsb-kop-artikel .fsb-meta span::before{content:"·";margin-right:14px}
.fsb-beeld{background:linear-gradient(#F1E7DC 50%,#FBF7F2 50%)}
.fsb-beeld .fsa-wrap{max-width:1100px}
.fsb-beeld img{width:100%;height:auto;max-height:620px;object-fit:cover;display:block}
.fsb-body{padding:clamp(40px,5vw,72px) 0 clamp(56px,7vw,96px)}
.fsb-body .fsa-wrap{max-width:720px}
.fsb-tekst{font-size:19px;line-height:1.8;color:#24151C}
.fsb-tekst>*{margin-top:0;margin-bottom:1.1em}
.fsb-tekst h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(28px,3vw,36px);line-height:1.2;color:#620031;margin-top:1.6em}
.fsb-tekst h3{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;color:#3A0A22;margin-top:1.4em}
.fsb-tekst a{color:#B84A2B;text-decoration-thickness:1px;text-underline-offset:3px}
.fsb-tekst a:hover{color:#620031}
.fsb-tekst img{height:auto;max-width:100%}
.fsb-tekst figure{margin:1.6em 0}
.fsb-tekst figcaption{font-size:14px;color:#6B5862;text-align:center;margin-top:8px}
.fsb-tekst blockquote{border-left:3px solid #E66E4B;margin:1.6em 0;padding:4px 0 4px 24px;font-family:'Bodoni Moda',Didot,Georgia,serif;font-style:italic;font-size:24px;line-height:1.5;color:#3A0A22}
.fsb-tekst ul,.fsb-tekst ol{padding-left:1.3em}
.fsb-tekst li{margin-bottom:.4em}
.fsb-deel{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;border-top:1px solid #E4D3C2;margin-top:48px;padding-top:20px;font-size:15px}
.fsb-deel span{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#6B5862;margin-right:6px}
.fsb-deel a{color:#620031;font-weight:600;text-decoration:none;border-bottom:1px solid #E66E4B}
.fsb-meer{background:#F1E7DC;padding:clamp(56px,7vw,96px) 0}
.fsb-meer .fsa-wrap{display:flex;flex-direction:column;gap:32px}

/* 404 */
.fs4{background:#F1E7DC;padding:clamp(56px,8vw,120px) 0;overflow:hidden}
.fs4-rij{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:center}
.fs4-tekst{display:flex;flex-direction:column;gap:20px}
.fs4-intro{font-size:19px;max-width:560px}
.fs4-zoek{display:flex;gap:0;max-width:520px;margin:8px 0 0}
.fs4-zoek input{flex:1;min-width:0;height:56px;border:1px solid #D9C6B6;border-right:0;background:#FBF7F2;padding:0 18px;font:inherit;font-size:16px;border-radius:0}
.fs4-zoek input:focus{outline:2px solid #620031;outline-offset:-2px;background:#fff}
.fs4-zoek .fsa-knop{height:56px;border-radius:0 2px 2px 0;cursor:pointer;font-family:inherit}
.fs4-terug{font-size:15px;color:#6B5862}
.fs4-terug a{color:#620031;font-weight:600}
.fs4-cijfer{display:flex;justify-content:center;align-items:baseline;font-family:'Bodoni Moda',Didot,Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(120px,18vw,260px);line-height:.9;color:#620031;user-select:none}
.fs4-cijfer span:nth-child(2){color:transparent;-webkit-text-stroke:2px #E66E4B;transform:translateY(-.08em) rotate(-8deg);display:inline-block;animation:fs4-draai 6s ease-in-out infinite}
@keyframes fs4-draai{0%,100%{transform:translateY(-.08em) rotate(-8deg)}50%{transform:translateY(-.14em) rotate(8deg)}}
.fs4-links{padding:clamp(56px,7vw,96px) 0}
.fs4-links .fsa-wrap{display:flex;flex-direction:column;gap:32px}
.fs4-links h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(30px,3.4vw,44px);color:#620031}
.fs4-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.fs4-raster a{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #E4D3C2;border-top:3px solid #620031;padding:24px;text-decoration:none;transition:border-color .2s,transform .2s}
.fs4-raster a:hover{border-color:#620031;transform:translateY(-2px)}
.fs4-raster strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:24px;color:#3A0A22}
.fs4-raster span{font-size:15px;color:#6B5862}

/* Winkelmand */
.fsk-hoofd{padding:clamp(48px,6vw,80px) 0}
.fsk .woocommerce-notices-wrapper:empty{display:none}
.fsk :is(.woocommerce-info,.woocommerce-message,.woocommerce-error){background:#fff;border:1px solid #E4D3C2;border-left:3px solid #E66E4B;color:#24151C;padding:18px 20px;margin:0 0 24px;list-style:none}
.fsk :is(.woocommerce-info,.woocommerce-message,.woocommerce-error)::before{display:none}
.fsk table.shop_table{width:100%;border-collapse:collapse;border:1px solid #E4D3C2;background:#fff;border-radius:0;margin:0}
.fsk table.shop_table th{background:#F1E7DC;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862;text-align:left;padding:14px 18px;border:0}
.fsk table.shop_table td{padding:20px 18px;border-top:1px solid #E4D3C2;vertical-align:middle;font-size:15px}
.fsk td.product-name a{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:20px;color:#3A0A22;text-decoration:none}
.fsk td.product-name dl.variation,.fsk td.product-name .subscription-details{font-size:13px;color:#6B5862}
.fsk td.product-thumbnail img{width:72px;height:72px;object-fit:cover}
.fsk td.product-remove a.remove{color:#B84A2B!important;font-size:22px;background:none!important;border:1px solid #E4D3C2;border-radius:50%;width:32px;height:32px;line-height:30px;text-align:center;display:inline-block}
.fsk td.product-remove a.remove:hover{background:#620031!important;color:#FBF7F2!important;border-color:#620031}
.fsk .quantity input.qty{border:1px solid #D9C6B6;border-radius:0;min-height:44px;width:72px;text-align:center;background:#FBF7F2}
.fsk td.actions{background:#FBF7F2}
.fsk .coupon input.input-text{border:1px solid #D9C6B6;border-radius:0;min-height:44px;background:#fff;padding:0 14px}
.fsk .button{background:transparent;color:#620031!important;border:1px solid #620031;border-radius:2px;padding:11px 18px;font-weight:600;font-size:14px}
.fsk .button:hover{background:#620031;color:#FBF7F2!important}
.fsk .cart-collaterals .cart_totals{background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:28px;box-shadow:0 24px 60px -40px rgba(58,10,34,.45)}
.fsk .cart_totals h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:28px;color:#620031;margin:0 0 16px}
.fsk .cart_totals table.shop_table{border:0}
.fsk .cart_totals table.shop_table th{background:none;padding:12px 0}
.fsk .cart_totals table.shop_table td{padding:12px 0;text-align:right}
.fsk .cart_totals .order-total td{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:26px;color:#620031}
.fsk .wc-proceed-to-checkout a.checkout-button{display:block;background:#620031!important;color:#FBF7F2!important;border:0;border-radius:2px;text-align:center;font-size:17px;font-weight:600;letter-spacing:.04em;padding:18px 24px;margin:20px 0 0}
.fsk .wc-proceed-to-checkout a.checkout-button:hover{background:#3A0A22!important}
.fsk .cart-empty{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:28px;color:#3A0A22;background:none!important;border:0!important;padding:0!important;text-align:center}
.fsk .return-to-shop{text-align:center;margin-top:20px}
.fsk .return-to-shop .button{background:#620031;color:#FBF7F2!important;padding:16px 28px;font-size:16px}

@media (max-width:900px){
	.fsb-uitgelicht,.fs4-rij{grid-template-columns:minmax(0,1fr)}
	.fsb-uitgelicht .fsb-foto{min-height:0;aspect-ratio:16/10}
	.fs4-cijfer{order:-1;justify-content:flex-start;font-size:120px}
}
@media (max-width:600px){
	.fsb-tekst{font-size:17px}
	.fs4-zoek{flex-direction:column;gap:10px}
	.fs4-zoek input{border-right:1px solid #D9C6B6}
	.fs4-zoek .fsa-knop{border-radius:2px}
}
@media (prefers-reduced-motion:reduce){.fs4-cijfer span:nth-child(2){animation:none}.fsb-kaart,.fsb-foto img,.fs4-raster a{transition:none}}

/* --- Aanvullingen blog 0.9.13 --- */
.fs4-zoek input[type=search]{height:56px!important;min-height:56px;box-sizing:border-box;border-radius:0!important}
.fsk .kadence-woo-cart-form-wrap{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:40px;align-items:start}
.fsk .kadence-woo-cart-form-wrap>*{float:none!important;width:auto!important;margin:0!important}
.fsk .kadence-woo-cart-form-wrap>.woocommerce-error,.fsk .kadence-woo-cart-form-wrap>.woocommerce-message,.fsk .kadence-woo-cart-form-wrap>.woocommerce-info{grid-column:1/-1}
.fsk .cart-summary{display:none}
.fsk .cart-collaterals .cart_totals{width:auto!important;float:none!important;position:sticky;top:120px}
@media (max-width:900px){.fsk .kadence-woo-cart-form-wrap{grid-template-columns:minmax(0,1fr)}.fsk .cart-collaterals .cart_totals{position:static}}

/* --- Aanvullingen winkelmand 0.9.15 --- */
.fsk .cart_totals .recurring-total td{font-size:20px}
.fsk .cart_totals .first-payment-date{display:block;font-family:'Albert Sans',Arial,sans-serif;font-size:13px;color:#6B5862;margin-top:4px}
.fsk .cart_totals .first-payment-date small{font-size:13px}

/* ==========================================================================
   Afrekenpagina (fsx-)
   ========================================================================== */
body.fsx-pagina{background:#FBF7F2}
body.fsx-pagina .entry-hero,body.fsx-pagina .kadence-breadcrumbs,body.fsx-pagina .fs-signup,body.fsx-pagina .site-footer-top-wrap{display:none!important}
body.fsx-pagina .content-area{margin-top:0!important}
body.fsx-pagina .content-bg{background:transparent!important;box-shadow:none!important}
body.fsx-pagina .entry-content-wrap{padding:0!important}
.fsx-kop{background:#fff;border-bottom:1px solid #E4D3C2}
.fsx-kop-binnen{max-width:1160px;margin:0 auto;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.fsx-logo{display:block;line-height:0}
.fsx-logo img{height:60px;width:auto;max-width:200px}
.fsx-veilig{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#620031}
.fsx-intro{padding:40px 0 8px}
.fsx-stappen{list-style:none!important;margin:0 0 28px!important;padding:0!important;display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;letter-spacing:.02em}
.fsx-stappen li{display:flex;align-items:center;gap:8px;margin:0!important;color:#6B5862}
.fsx-stappen li.fsx-nu{color:#3A0A22}
.fsx-bol{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1;font-size:13px}
.fsx-klaar .fsx-bol{background:#620031;color:#FBF7F2}
.fsx-nu .fsx-bol{background:#E66E4B;color:#24151C}
.fsx-straks .fsx-bol{background:#fff;border:1px solid #D9C6B6;color:#6B5862}
.fsx-stappen li.fsx-lijn{width:48px;height:1px;background:#D9C6B6;flex:none}
.fsx-stappen li.fsx-lijn-klaar{background:#620031}
.fsx-intro .fsx-titel{margin:0 0 8px;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(40px,5vw,60px);line-height:1.05;color:#620031}
.fsx-intro .fsx-titel em{font-style:italic}
.fsx-sub{margin:0 0 24px;font-size:19px;color:#6B5862}
body.fsx-pagina .wc-block-checkout{color:#24151C;margin-bottom:72px}
body.fsx-pagina .wc-block-checkout__main .wc-block-components-checkout-step{background:#fff;border:1px solid #E4D3C2;border-radius:0;padding:28px 30px!important;margin:0 0 20px!important}
body.fsx-pagina .wc-block-components-checkout-step__container::after,body.fsx-pagina .wc-block-components-checkout-step::after{display:none!important}
body.fsx-pagina .wc-block-components-checkout-step__heading{margin:0 0 4px!important}
body.fsx-pagina .wc-block-components-checkout-step__title{font-family:'Bodoni Moda',Didot,Georgia,serif!important;font-size:26px!important;font-weight:500!important;color:#620031!important}
body.fsx-pagina .wc-block-components-checkout-step__description{font-size:15px;color:#6B5862;margin-bottom:16px!important}
body.fsx-pagina .fsx-met-partner .wc-block-components-checkout-step__heading{flex-wrap:wrap;gap:8px}
body.fsx-pagina .fsx-met-partner .wc-block-components-checkout-step__title::after{content:"Voor 2 personen";display:inline-block;margin-left:12px;vertical-align:middle;background:#F1E7DC;color:#620031;font-family:'Albert Sans',Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px}
body.fsx-pagina .wc-block-components-text-input input,body.fsx-pagina .wc-blocks-components-select .wc-blocks-components-select__select,body.fsx-pagina .wc-block-components-combobox .wc-block-components-combobox-control input{border:1px solid #D9C6B6!important;border-radius:0!important;background:#FBF7F2!important;color:#24151C!important;font-size:17px!important}
body.fsx-pagina .wc-blocks-components-select .wc-blocks-components-select__container{border-radius:0}
body.fsx-pagina .wc-block-components-text-input input:focus,body.fsx-pagina .wc-blocks-components-select__select:focus,body.fsx-pagina .wc-block-components-combobox-control input:focus{border-color:#620031!important;background:#fff!important;box-shadow:0 0 0 1px #620031!important;outline:none!important}
body.fsx-pagina .wc-block-components-text-input label,body.fsx-pagina .wc-blocks-components-select__label{color:#6B5862!important}
body.fsx-pagina .wc-block-components-address-form__address_2-toggle{color:#B84A2B;font-weight:600}
body.fsx-pagina .wc-block-components-validation-error p{color:#B84A2B}
body.fsx-pagina .wc-block-components-radio-control__option,body.fsx-pagina .wc-block-components-radio-control-accordion-option{border-radius:0!important}
body.fsx-pagina .wc-block-components-radio-control-accordion-option--checked-option-highlighted,body.fsx-pagina .wc-block-components-radio-control__option-checked{box-shadow:inset 0 0 0 1px #620031!important;background:#F1E7DC!important}
body.fsx-pagina .wc-block-components-radio-control__input:checked{border-color:#620031!important}
body.fsx-pagina .wc-block-components-radio-control__input:checked::before{background:#620031!important}
body.fsx-pagina .wc-block-checkout__terms{background:#fff;border:1px solid #E4D3C2;border-bottom:0;padding:26px 30px 6px!important;margin:0!important}
body.fsx-pagina .wc-block-checkout__terms::before{display:none!important}
body.fsx-pagina .wc-block-checkout__terms a{color:#B84A2B}
body.fsx-pagina .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{border-radius:0}
body.fsx-pagina .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:#620031!important;border-color:#620031!important}
body.fsx-pagina .wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#fff!important}
body.fsx-pagina .wc-block-checkout__actions{background:#fff;border-left:1px solid #E4D3C2;border-right:1px solid #E4D3C2;padding:16px 30px 8px!important;margin:0!important}
body.fsx-pagina .wc-block-checkout__actions_row{display:block!important}
body.fsx-pagina .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button{display:none}
body.fsx-pagina .wc-block-components-checkout-place-order-button{width:100%!important;min-height:60px;border-radius:2px!important;background:#620031!important;color:#FBF7F2!important;font-family:'Albert Sans',Arial,sans-serif!important;font-size:18px!important;font-weight:600!important;letter-spacing:.04em;border:0!important}
body.fsx-pagina .wc-block-components-checkout-place-order-button:hover{background:#3A0A22!important}
body.fsx-pagina .wc-block-components-order-summary-item__image:has(img[src*="woocommerce-placeholder"]){display:none}
body.fsx-pagina .wc-block-components-order-summary-item:has(img[src*="woocommerce-placeholder"]) .wc-block-components-order-summary-item__description{padding-left:0}
body.fsx-pagina .wc-block-components-checkout-place-order-button:has(.wc-block-components-spinner){background:#3A0A22!important;color:#FBF7F2!important;opacity:1!important}
body.fsx-pagina .wc-block-components-checkout-place-order-button:has(.wc-block-components-spinner) .wc-block-components-button__text{visibility:hidden;position:relative}
body.fsx-pagina .wc-block-components-checkout-place-order-button:has(.wc-block-components-spinner) .wc-block-components-button__text::after{content:"We zetten de muziek alvast klaar…";visibility:visible;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;font-size:17px;color:#FBF7F2}
body.fsx-pagina .wc-block-components-checkout-place-order-button .wc-block-components-spinner{display:none!important}
.fsx-gerust{background:#fff;border:1px solid #E4D3C2;border-top:0;padding:6px 30px 26px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;font-size:15px;color:#6B5862}
.fsx-gerust span{display:inline-flex;align-items:center;gap:6px}
.fsx-gerust svg{color:#620031}
.fsx-gerust a{color:#B84A2B;font-weight:600}
body.fsx-pagina .wc-block-checkout__sidebar{background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:26px!important;align-self:flex-start;box-shadow:0 24px 60px -40px rgba(58,10,34,.45)}
body.fsx-pagina .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title-text,body.fsx-pagina .wc-block-checkout__sidebar .wc-block-components-title{font-family:'Bodoni Moda',Didot,Georgia,serif!important;font-size:24px!important;font-weight:500!important;color:#620031!important}
body.fsx-pagina .wc-block-components-order-summary-item__quantity{display:none}
body.fsx-pagina .wc-block-components-order-summary-item__image img{border-radius:0}
body.fsx-pagina .wc-block-components-product-name{font-weight:600;color:#3A0A22}
body.fsx-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:28px;font-weight:500;color:#620031}
body.fsx-pagina .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-weight:700;color:#3A0A22}
.fsx-duo{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #E4D3C2;border-bottom:1px solid #E4D3C2;margin:4px 0;font-size:15px;color:#6B5862;line-height:1.35}
.fsx-duo[hidden]{display:none}
.fsx-duo strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:19px;color:#3A0A22}
.fsx-hart{flex:none;width:36px;height:36px;border-radius:50%;background:#620031;color:#E66E4B;display:flex;align-items:center;justify-content:center}
@media (max-width:767px){
.fsx-kop-binnen{padding:8px 16px}
.fsx-logo img{height:44px}
.fsx-veilig{font-size:12px}
.fsx-intro{padding:20px 0 4px}
.fsx-stappen{gap:8px;font-size:13px;margin-bottom:18px!important}
.fsx-stappen li.fsx-lijn{width:auto;flex:1 1 auto}
.fsx-bol{width:24px;height:24px}
.fsx-sub{font-size:16px;margin-bottom:12px}
body.fsx-pagina .wc-block-checkout__main .wc-block-components-checkout-step{padding:20px 16px!important;margin-bottom:16px!important}
body.fsx-pagina .wc-block-checkout__terms{padding:20px 16px 4px!important}
body.fsx-pagina .wc-block-checkout__actions{padding:12px 16px 6px!important}
.fsx-gerust{padding:6px 16px 20px;flex-direction:column;align-items:center;font-size:14px}
body.fsx-pagina .wc-block-checkout__sidebar{padding:16px!important;margin-bottom:16px}
body.fsx-pagina .wc-block-components-checkout-place-order-button:has(.wc-block-components-spinner) .wc-block-components-button__text::after{font-size:15px}
}

/* --- Aanvullingen afrekenen 0.9.17 --- */
body.fsx-pagina .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block{border:0!important;padding:0!important}
body.fsx-pagina .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title{padding:0 0 12px!important}

/* ==========================================================================
   Bedankpagina na aanmelden (fsd-)
   ========================================================================== */
body.fsd-pagina .entry-hero,body.fsd-pagina .kadence-breadcrumbs{display:none!important}
body.fsd-pagina .content-area{margin-top:0!important;margin-bottom:0!important}
body.fsd-pagina .content-container{max-width:none!important;padding:0!important}
body.fsd-pagina .entry-content-wrap{padding:0!important}
.fsd :is(p,h1,h2,h3,ol,dl){margin-top:0!important;margin-bottom:0!important}
.fsd-held{position:relative;overflow:hidden;background:#620031;color:#E4D3C2;padding:clamp(64px,8vw,112px) 20px;text-align:center}
.fsd-held-binnen{position:relative;max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:18px}
.fsd-held .fsa-label{color:#E66E4B}
.fsd-held h1,.fsd-leeg h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(44px,6vw,80px);line-height:1.02;color:#FBF7F2}
.fsd-held h1 em,.fsd-leeg h1 em,.fsd-shop h2 em{font-style:italic}
.fsd-held h1 em{color:#E66E4B}
.fsd-intro{font-size:19px;max-width:600px;color:#F1E7DC}
.fsd-vink{width:76px;height:76px;border-radius:50%;background:#E66E4B;color:#24151C;display:flex;align-items:center;justify-content:center;animation:fsd-pop .6s cubic-bezier(.2,1.6,.4,1) both}
@keyframes fsd-pop{from{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}
.fsd-knoppen{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:8px}
.fsd-feest{background:none;border:0;border-bottom:2px solid #E66E4B;color:#FBF7F2;font:inherit;font-weight:600;padding:0 0 2px;cursor:pointer;border-radius:0}
.fsd-feest:hover{color:#E66E4B;background:none}
.fsd-confetti{position:absolute;inset:0;pointer-events:none}
.fsd-snipper{position:absolute;top:-20px;height:14px;opacity:.9;animation:fsd-val 5s linear infinite}
.fsd-snipper:nth-child(3n){height:8px;border-radius:50%}
@keyframes fsd-val{0%{transform:translateY(-20px) rotate(0)}100%{transform:translateY(720px) rotate(540deg)}}
.fsd-kaarten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(56px,7vw,88px)}
.fsd-kaart{background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;gap:20px}
.fsd-kaart h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:30px;color:#620031}
.fsd-item{display:flex;gap:18px;align-items:flex-start}
.fsd-datum{min-width:72px;flex:none}
.fsd-datum-vink{color:#620031;padding:14px 0}
.fsd-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.fsd-naam{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:24px;line-height:1.2;color:#3A0A22}
.fsd-item>div>span{font-size:15px;color:#6B5862}
.fsd-ook{font-weight:600;color:#B84A2B!important}
.fsd-gegevens{display:flex;flex-direction:column;border-top:1px solid #E4D3C2}
.fsd-gegevens>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #E4D3C2;font-size:15px}
.fsd-gegevens dt{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862}
.fsd-gegevens dd{margin:0;text-align:right;color:#24151C}
.fsd-betaalinfo{font-size:14px;color:#6B5862}
.fsd-stappen{list-style:none;padding:0!important;display:flex;flex-direction:column;gap:16px}
.fsd-stappen li{display:flex;gap:14px;align-items:flex-start;margin:0;font-size:16px;line-height:1.55}
.fsd-nr{flex:none;width:30px;height:30px;border-radius:50%;background:#620031;color:#FBF7F2;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}
.fsd-nr-koraal{background:#E66E4B;color:#24151C}
.fsd-stappen strong{color:#3A0A22}
.fsd-account{font-size:15px;color:#6B5862;border-top:1px solid #E4D3C2;padding-top:16px}
.fsd-account a{color:#B84A2B;font-weight:600}
.fsd-shop{background:#F1E7DC;padding:clamp(56px,7vw,96px) 0}
.fsd-shop .fsa-wrap{display:flex;flex-direction:column;gap:32px}
.fsd-shop-kop{display:flex;flex-direction:column;gap:10px}
.fsd-shop h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(30px,3.4vw,44px);color:#620031}
.fsd-prijs{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:22px;color:#620031}
.fsd-leeg{max-width:760px;margin:0 auto;padding:clamp(64px,8vw,112px) 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}
.fsd-leeg h1{color:#620031}
.fsd-leeg a:not(.fsa-knop){color:#B84A2B}
@media (max-width:900px){.fsd-kaarten{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.fsd-snipper{animation:none;display:none}.fsd-vink{animation:none}}

/* === Wedstrijddanser worden === */
/* --- Wedstrijddanser worden (salespagina) 0.9.19 --- */
.fsw-duo{gap:clamp(32px,6vw,96px)!important}
.fsw-duo h2,.fsw-eerste h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px}
.fsw-eerste h2.fsw-kop2{margin-top:40px}
.fsw-voorbeeld{background:#fff;border:1px solid var(--fs-line);border-left:3px solid #E66E4B;padding:24px 28px;margin-top:24px!important}
.fsw-voorbeeld p{margin:0 0 12px!important;font-size:17px;line-height:1.6}
.fsw-voorbeeld p.fso-label{margin-bottom:10px!important}
.fsw-voorbeeld p.fsw-stapel{margin:0!important;font-family:var(--fs-serif);font-style:italic;font-size:21px;color:var(--global-palette1)}
.fsw-commitment p{font-size:18px;line-height:1.75}
.fsw-commitment p.fsw-slotzin{font-family:var(--fs-serif);font-style:italic;font-size:24px;line-height:1.4;color:#E66E4B;margin-top:28px!important}
.fsw-waarde{font-size:19px!important;font-weight:700;letter-spacing:.02em;color:var(--global-palette6,#B84A2B)!important}
.fsw-plannen{gap:24px!important;margin-top:40px!important;align-items:stretch}
.fsw-plannen .fsw-plan{max-width:none!important;margin:0!important;display:flex;flex-direction:column}
.fsw-plan h3{font-size:22px!important;line-height:1.3}
.fsw-plan .fs-check{flex:1 1 auto}
.fsw-plan .wp-block-buttons{margin-top:auto}
.fsw-best{border-top-color:#E66E4B!important;box-shadow:0 34px 80px -46px rgba(58,10,34,.65)!important}
.fsw-badge{display:inline-block;margin-left:8px;background:#E66E4B;color:#24151C;font-size:11px;letter-spacing:.16em;padding:4px 8px;vertical-align:1px}
@media (min-width:1025px){.fsw-best{transform:translateY(-12px)}}
@media (max-width:767px){
.fsw-voorbeeld{padding:20px}
.fsw-commitment p.fsw-slotzin{font-size:21px}
}
.page-id-29987 .fs-hero-title{font-size:clamp(34px,3.8vw,56px)!important;word-break:normal!important;overflow-wrap:normal!important}
.fsw-commitment p{max-width:760px;margin-left:auto!important;margin-right:auto!important}

/* === Merchandise === */
/* --- Merchandise: overzicht 0.9.22 --- */
.fsh-pagina #primary.content-area{margin-top:0;margin-bottom:0}
.fsh-pagina .kadence-breadcrumbs,.fsh-pagina .entry-hero{display:none!important}
.fsh h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(38px,4.8vw,64px);line-height:1.05;color:#620031;margin:0}
.fsh h1 em{font-style:italic}
.fsh-kop{background:#F1E7DC;padding:clamp(44px,5.5vw,72px) 0 clamp(36px,4vw,52px)}
.fsh-kop .fsa-wrap{display:flex;flex-direction:column;gap:16px}
.fsh-usp{list-style:none!important;margin:6px 0 0!important;padding:0!important;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:15px;color:#6B5862}
.fsh-usp li{margin:0!important;display:inline-flex;align-items:center;gap:8px}
.fsh-usp li::before{content:"";width:16px;height:16px;flex:none;background:#620031;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.fsh-winkel{padding:clamp(28px,4vw,48px) 0 clamp(64px,8vw,104px)}
.fsh-form{display:flex;flex-direction:column;gap:28px;margin:0}
.fsh-soorten{gap:10px}
.fsh-tab{position:relative;margin:0;cursor:pointer}
.fsh-tab input,.fsh-chip input,.fsh-kleur input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.fsh-tab span{display:block;border:1px solid #E4D3C2;color:#3A0A22;padding:9px 18px;border-radius:2px;background:#fff;transition:border-color .2s,background .2s,color .2s}
.fsh-tab:hover span{border-color:#620031;color:#620031}
.fsh-tab input:checked+span{background:#620031;border-color:#620031;color:#FBF7F2}
.fsh-tab input:focus-visible+span,.fsh-chip input:focus-visible+span,.fsh-kleur input:focus-visible~.fsh-stip{outline:2px solid #E66E4B;outline-offset:2px}
.fsh-lay{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.fsh-filterknop{display:none}
.fsh-filters{position:sticky;top:110px;display:flex;flex-direction:column;gap:26px}
.fsh-filters-kop{display:none}
.fsh-groep{border:0;margin:0;padding:0 0 24px;border-bottom:1px solid #E4D3C2;min-width:0}
.fsh-groep legend{padding:0;margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#620031}
.fsh-opties{display:flex;flex-wrap:wrap;gap:8px}
.fsh-chip{position:relative;margin:0;cursor:pointer}
.fsh-chip>span{display:inline-flex;align-items:center;gap:6px;min-height:40px;box-sizing:border-box;padding:8px 14px;border:1px solid #D9C6B6;background:#fff;font-size:15px;font-weight:600;color:#3A0A22;transition:border-color .2s,background .2s,color .2s}
.fsh-groep-maat .fsh-chip>span{min-width:48px;justify-content:center;padding:8px 10px}
.fsh-chip:hover>span{border-color:#620031}
.fsh-chip input:checked+span{background:#620031;border-color:#620031;color:#FBF7F2}
.fsh-tel{font-size:12px;font-weight:600;color:#6B5862}
.fsh-tel:empty{display:none}
.fsh-tel::before{content:"("}.fsh-tel::after{content:")"}
.fsh-groep-maat .fsh-tel{display:none}
.fsh-chip input:checked+span .fsh-tel{color:#E4D3C2}
.fsh-chip.is-leeg,.fsh-kleur.is-leeg{opacity:.38;cursor:not-allowed}
.fsh-groep-kleur .fsh-opties{flex-direction:column;gap:4px}
.fsh-kleur{position:relative;display:flex;align-items:center;gap:12px;margin:0;padding:6px 0;cursor:pointer;font-size:15px;color:#3A0A22}
.fsh-stip{display:inline-block;width:22px;height:22px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);flex:none}
.fsh-kleur .fsh-stip{width:26px;height:26px;box-shadow:0 0 0 1px #D9C6B6}
.fsh-kleur input:checked~.fsh-stip{box-shadow:0 0 0 2px #FBF7F2,0 0 0 4px #620031}
.fsh-kleur input:checked~.fsh-kleurnaam{font-weight:700;color:#620031}
.fsh-kleur .fsh-tel{margin-left:auto}
.fsh-filters-voet{display:flex;align-items:center;gap:16px}
.fsh-wis{font-size:15px;font-weight:600;color:#B84A2B;text-decoration:underline;text-underline-offset:3px}
.fsh-toon{display:none}
.fsh-balk{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;margin-bottom:28px;border-bottom:1px solid #E4D3C2}
.fsh-aantal{margin:0!important;font-size:15px;font-weight:600;color:#6B5862}
.fsh-sorteer{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:15px;color:#6B5862}
.fsh-sorteer select{border:1px solid #D9C6B6;border-radius:0;background:#fff;color:#3A0A22;font-size:15px;font-weight:600;padding:9px 34px 9px 12px;min-height:42px}
.fsh-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:36px 24px}
.fsh-kaart{display:flex;flex-direction:column;gap:14px;margin:0;position:relative}
.fsh-kaart[hidden]{display:none!important}
.fsh-foto{display:block;position:relative;aspect-ratio:1/1;overflow:hidden;background:#fff;border:1px solid #EDE2D6}
.fsh-foto img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;display:block;transition:opacity .35s,transform .5s}
.fsh-foto .fsh-img2{opacity:0}
.fsh-kaart:hover .fsh-img2{opacity:1}
.fsh-kaart:hover .fsh-foto img{transform:scale(1.03)}
.fsh-kaart-tekst{display:flex;flex-direction:column;gap:8px}
.fsh-stippen{display:flex;align-items:center;gap:6px;margin:0!important}
.fsh-stippen .fsh-stip{width:14px;height:14px}
.fsh-kaart h2{margin:0!important;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:20px;line-height:1.25;color:#3A0A22}
.fsh-kaart h2 a{color:inherit;text-decoration:none}
.fsh-kaart h2 a::after{content:"";position:absolute;inset:0}
.fsh-kaart h2 a:focus-visible{outline:none}
.fsh-kaart:has(h2 a:focus-visible) .fsh-foto{outline:2px solid #E66E4B;outline-offset:3px}
.fsh-kaart-onder{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0!important}
.fsh-prijs{font-size:16px;font-weight:700;color:#620031}
.fsh-maten{font-size:13px;font-weight:600;letter-spacing:.06em;color:#6B5862}
.fsh-leeg{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:40px;background:#F1E7DC}
.fsh-leeg[hidden]{display:none}
.fsh-leeg p{margin:0!important;font-size:18px;color:#3A0A22}
@media (max-width:900px){
.fsh-lay{grid-template-columns:1fr}
.fsh-filterknop{display:inline-flex;align-items:center;gap:10px;justify-self:start;border:1px solid #620031;background:#fff;color:#620031;font-size:15px;font-weight:700;padding:11px 18px;border-radius:2px;cursor:pointer}
.fsh-badge{min-width:22px;height:22px;border-radius:11px;background:#620031;color:#FBF7F2;font-size:12px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.fsh-badge[hidden]{display:none}
.fsh-filters{position:fixed;inset:0;z-index:100000;background:#FBF7F2;overflow:auto;padding:0 20px 110px;gap:22px;transform:translateX(-100%);visibility:hidden;transition:transform .3s,visibility .3s}
.fsh-filters.is-open{transform:none;visibility:visible}
.fsh-filters-kop{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#FBF7F2;padding:18px 0;border-bottom:1px solid #E4D3C2;z-index:1}
.fsh-filters-kop strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;color:#620031}
.fsh-sluit{width:44px;height:44px;border:0;background:transparent;font-size:30px;line-height:1;color:#3A0A22;cursor:pointer}
.fsh-filters-voet{position:fixed;left:0;right:0;bottom:0;padding:14px 20px;background:#fff;border-top:1px solid #E4D3C2;justify-content:space-between}
.fsh-toon{display:inline-block}
.fsh-groep-kleur .fsh-opties{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
html.fsh-vast,html.fsh-vast body{overflow:hidden}
.fsh-balk{margin-bottom:22px}
.fsh-lay{position:relative;gap:0}
.fsh-filterknop{position:absolute;top:0;left:0;z-index:2;min-height:44px}
.fsh-balk{justify-content:flex-end;min-height:44px;padding-bottom:16px}
.fsh-aantal{display:none}
.fsh-sorteer select{min-height:44px}
}
@media (max-width:767px){
.fsh-raster{grid-template-columns:1fr 1fr;gap:28px 14px}
.fsh-kaart h2{font-size:16px}
.fsh-kaart-onder{flex-direction:column;gap:2px}
.fsh-prijs{font-size:15px}
.fsh-sorteer>span{display:none}
.fsh-soorten{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px!important;padding:0 20px 4px!important;scrollbar-width:none}
.fsh-tab{flex:none}
.fsh-usp{font-size:14px}
}
@media (prefers-reduced-motion:reduce){.fsh-foto img,.fsh-filters{transition:none}}

/* --- Merchandise: productpagina --- */
.fsh-product .fsh-verborgen{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.fsh-product table.variations{border:0!important;margin:0 0 8px!important;width:100%}
.fsh-product table.variations tr{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.fsh-product table.variations th,.fsh-product table.variations td{display:block;padding:0!important;border:0!important;background:none!important;text-align:left}
.fsh-product table.variations th label{font-size:13px!important;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#620031}
.fsh-gekozen{margin-left:10px;font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:#3A0A22}
.fsh-keuze{display:flex;flex-wrap:wrap;gap:8px}
.fsh-optie{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:52px;min-height:46px;padding:8px 12px;border:1px solid #D9C6B6;background:#fff;color:#3A0A22;font-size:15px;font-weight:600;border-radius:0;cursor:pointer;transition:border-color .2s,background .2s,color .2s;line-height:1}
.fsh-optie:hover{border-color:#620031;color:#620031;background:#fff}
.fsh-optie.is-aan{background:#620031;border-color:#620031;color:#FBF7F2}
.fsh-optie.is-op{opacity:.4;text-decoration:line-through;cursor:not-allowed}
.fsh-optie:focus-visible{outline:2px solid #E66E4B;outline-offset:2px}
.fsh-keuze-kleur .fsh-optie{padding:6px 14px 6px 8px}
.fsh-keuze-kleur .fsh-optie .fsh-stip{width:28px;height:28px}
.fsh-keuze-kleur .fsh-optie.is-aan .fsh-stip{box-shadow:0 0 0 2px #FBF7F2}
.fsh-product .reset_variations{font-size:14px;color:#B84A2B!important;display:inline-block;margin:10px 0 0!important}
.fsh-product .reset_variations[style*="hidden"]{display:none!important}
.fsh-product table.variations tr:last-child{margin-bottom:0}
.fsh-product .single_variation_wrap a[onclick*="Size_Guide"]{display:inline-block;margin:4px 0 14px;color:#B84A2B!important;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.fsh-usp-product{flex-direction:column;gap:10px;margin:22px 0 0!important}
.fsh-usp-product a{color:#B84A2B;font-weight:600}
.fsh-meer .fsh-alles{text-align:center;margin:8px 0 0!important}

/* === Cookiebanner === */
/* --- Cookiebanner 0.9.25 --- */
.fsk-cookies{position:fixed;left:24px;bottom:24px;z-index:100001;width:min(440px,calc(100vw - 48px));background:#FBF7F2;color:#24151C;border-top:4px solid #620031;box-shadow:0 30px 80px -30px rgba(36,21,28,.55),0 0 0 1px rgba(58,10,34,.08);opacity:0;transform:translateY(16px);transition:opacity .3s,transform .3s;font-family:'Albert Sans',Arial,sans-serif}
.fsk-cookies[hidden]{display:none}
.fsk-cookies.is-open{opacity:1;transform:none}
.fsk-cookies-binnen{padding:26px 26px 22px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 80px);overflow:auto;box-sizing:border-box}
.fsk-cookies-titel{margin:0!important;font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:26px;line-height:1.15;color:#620031}
.fsk-cookies-titel em{font-style:italic}
.fsk-cookies-tekst{margin:0!important;font-size:15px;line-height:1.6;color:#6B5862}
.fsk-cookies-tekst a{color:#B84A2B;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.fsk-cookies-keuzes{display:flex;flex-direction:column;border-top:1px solid #E4D3C2}
.fsk-cookies-keuzes[hidden]{display:none}
.fsk-cookies-keuze{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #E4D3C2;margin:0;cursor:pointer}
.fsk-cookies-keuze.is-vast{cursor:default}
.fsk-cookies-keuze-tekst{display:flex;flex-direction:column;gap:3px}
.fsk-cookies-keuze strong{font-size:15px;color:#3A0A22}
.fsk-cookies-keuze small{font-size:13px;line-height:1.45;color:#6B5862}
.fsk-cookies-keuze input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.fsk-schakel{flex:none;position:relative;width:44px;height:24px;border-radius:12px;background:#D9C6B6;transition:background .2s}
.fsk-schakel::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}
.fsk-cookies-keuze input:checked+.fsk-schakel{background:#620031}
.fsk-cookies-keuze input:checked+.fsk-schakel::after{transform:translateX(20px)}
.fsk-cookies-keuze input:disabled+.fsk-schakel{opacity:.55}
.fsk-cookies-keuze input:focus-visible+.fsk-schakel{outline:2px solid #E66E4B;outline-offset:2px}
.fsk-cookies-knoppen{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.fsk-knop{min-height:48px;padding:12px 14px;border:1px solid #620031;background:#fff;color:#620031;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.02em;border-radius:2px;cursor:pointer;transition:background .2s,color .2s}
.fsk-knop:hover{background:#F1E7DC;color:#620031}
.fsk-knop-vol{background:#620031;color:#FBF7F2}
.fsk-knop-vol:hover{background:#3A0A22;color:#FBF7F2}
.fsk-knop[hidden],.fsk-link[hidden]{display:none}
.fsk-knop[data-fsk="opslaan"]{grid-column:1/-1}
.fsk-link{grid-column:1/-1;justify-self:center;background:none;border:0;padding:6px;font-family:inherit;font-size:14px;font-weight:600;color:#B84A2B;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.fsk-knop:focus-visible,.fsk-link:focus-visible{outline:2px solid #E66E4B;outline-offset:2px}
.fsk-cookies-voet{margin:6px 0 0!important}
.fsk-cookies-voet .fsk-link{padding:0;color:inherit;font-weight:400;font-size:inherit;opacity:.85}
@media (max-width:600px){
.fsk-cookies{left:0;right:0;bottom:0;width:100%}
.fsk-cookies-binnen{padding:20px 18px calc(16px + env(safe-area-inset-bottom));max-height:85vh}
.fsk-cookies-titel{font-size:22px}
.fsk-cookies-tekst{font-size:14px}
}
@media (prefers-reduced-motion:reduce){.fsk-cookies,.fsk-schakel,.fsk-schakel::after{transition:none}}
@media print{.fsk-cookies{display:none!important}}

/* === Privacy en cookies === */
/* --- Privacy en cookies 0.9.26 --- */
.fsj-kop{padding-top:clamp(48px,6vw,80px)!important;padding-bottom:clamp(40px,5vw,64px)!important}
.fsj-kop>*{max-width:760px;margin-left:auto!important;margin-right:auto!important}
.fsj-label{font-size:13px!important;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:#620031;margin:0 0 14px!important}
.fsj-kop h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(40px,5vw,64px);line-height:1.05;color:#620031;margin:0 0 18px!important}
.fsj-kop h1 em{font-style:italic}
.fsj-intro{font-size:19px!important;line-height:1.6;color:#3A0A22;margin:0 0 14px!important}
.fsj-datum{font-size:14px!important;color:#6B5862;margin:0!important}
.fsj-tekst{max-width:760px;margin:0 auto!important}
.fsj-tekst h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(26px,2.6vw,32px);line-height:1.2;color:#620031;margin:48px 0 14px!important;padding-top:24px;border-top:1px solid #E4D3C2}
.fsj-tekst h2:first-child{margin-top:0!important;padding-top:0;border-top:0}
.fsj-tekst p,.fsj-tekst li{font-size:17px;line-height:1.7;color:#24151C}
.fsj-tekst p{margin:0 0 14px!important}
.fsj-tekst ul{margin:0 0 16px!important;padding-left:22px!important}
.fsj-tekst li{margin:0 0 8px!important}
.fsj-tekst li::marker{color:#E66E4B}
.fsj-tekst a{color:#B84A2B;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.fsj-tekst .wp-block-buttons{margin:8px 0 8px!important}
.fsj-tekst .wp-block-button__link{text-decoration:none;color:#FBF7F2!important}
.fsj-tabel{margin:6px 0 20px!important;overflow-x:auto}
.fsj-tabel table{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border:1px solid #E4D3C2}
.fsj-tabel th{background:#F1E7DC;color:#3A0A22;font-weight:700;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid #E4D3C2}
.fsj-tabel td{padding:12px 14px;border:0;border-bottom:1px solid #EDE2D6;vertical-align:top;line-height:1.5;color:#24151C}
.fsj-tabel td:first-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:#620031;word-break:break-word;min-width:150px}
.fsj-tabel tr:last-child td{border-bottom:0}
@media (max-width:767px){
.fsj-tabel thead{display:none}
.fsj-tabel table,.fsj-tabel tbody,.fsj-tabel tr,.fsj-tabel td{display:block;width:100%;box-sizing:border-box}
.fsj-tabel tr{border-bottom:1px solid #E4D3C2;padding:10px 0}
.fsj-tabel td{border:0;padding:4px 14px}
.fsj-tabel td:nth-child(2)::before{content:"Van: ";font-weight:700}
.fsj-tabel td:nth-child(4)::before{content:"Bewaard: ";font-weight:700}
}

/* === Cadeaubon, afdansen en kerstgala === */
/* --- Cadeaubon, afdansen en kerstgala 0.9.28 --- */
.fsc2-partner{color:#6B5862!important;font-weight:400!important;font-size:14px!important;line-height:1.5}
.fsc2-hero .wp-block-image img{object-fit:contain!important;background:transparent}
/* Afdansen */
.fsaf-terug{margin:0 0 6px!important;font-size:14px}
.fsaf-terug a{color:#B84A2B;font-weight:600;text-decoration:none}
.fsaf-band{padding-top:40px!important;padding-bottom:40px!important}
.fsaf-feiten{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:1100px;margin:0 auto}
.fsaf-feit{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:6px 12px}
.fsaf-feit+.fsaf-feit{border-left:1px solid #A0476F}
.fsaf-feit strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(24px,2.6vw,34px);line-height:1.1;color:#FBF7F2}
.fsaf-feit span{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#E66E4B}
.fsaf-uitleg{gap:clamp(32px,5vw,80px)!important}
.fsaf-uitleg h2{font-size:clamp(30px,3.4vw,44px);color:var(--global-palette1);margin:0 0 18px}
.fsaf-uitleg h2.fsaf-kop2{margin-top:44px}
.fsaf-checklist{background:#F1E7DC;border-top:4px solid #620031;padding:30px 28px;position:sticky;top:110px}
.fsaf-checklist .fs-check{margin:0!important}
.fsaf-checklist li{font-size:16px;line-height:1.55;margin-bottom:12px}
.fsaf-kaart{max-width:720px;margin:28px auto 0;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(24px,4vw,40px);text-align:center;box-shadow:0 30px 70px -50px rgba(58,10,34,.5)}
.fsaf-wanneer{font-family:'Bodoni Moda',Didot,Georgia,serif;font-size:clamp(22px,2.4vw,28px);color:#620031;margin:0 0 8px!important}
.fsaf-noot{color:#6B5862;font-size:15px;margin:0 0 22px!important}
.fsaf-vraag{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#B84A2B;margin:0 0 14px!important}
.fsaf-niveaus{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.fsaf-niveaus li{margin:0!important}
.fsaf-niveaus a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px;border:1px solid #620031;background:#FBF7F2;color:#620031;font-weight:700;text-decoration:none;transition:background .2s,color .2s}
.fsaf-niveaus a:hover,.fsaf-niveaus a:focus-visible{background:#620031;color:#FBF7F2}
.fsaf-leeg{margin:0!important}
.fsaf-vraaglink{margin-top:20px!important}
.fsaf-vraaglink a{color:#B84A2B;font-weight:600}
/* Kerstgala */
.fsg-hero{padding-top:clamp(48px,6vw,88px)!important;padding-bottom:clamp(48px,6vw,88px)!important}
.fsg-hero-cols{gap:clamp(32px,5vw,72px)!important}
.fsg-datum{font-size:13px!important;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:#E66E4B;margin:0 0 12px!important}
.fsg-hero h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(48px,6vw,84px);line-height:1;color:#FBF7F2;margin:0 0 16px!important}
.fsg-hero h1 em{font-style:italic;color:#E66E4B}
.fsg-prijs{font-size:20px!important;color:#F1E7DC;margin:0 0 20px!important}
.fsg-programma{list-style:none!important;margin:0 0 28px!important;padding:0!important;border-top:1px solid #A0476F}
.fsg-programma li{display:flex;gap:16px;padding:10px 0;border-bottom:1px solid #A0476F;margin:0!important;color:#FBF7F2;font-size:17px}
.fsg-programma strong{min-width:96px;color:#E66E4B}
.fsg-hero .wp-block-image img{aspect-ratio:4/5;object-fit:cover;width:100%}
.fsg-tickets{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin:0}
.fsg-aantal{display:flex;align-items:center;gap:10px;background:#FBF7F2;padding:0 6px 0 14px;margin:0}
.fsg-aantal span{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#620031}
.fsg-aantal input{width:64px;min-height:52px;border:0;background:transparent;font-size:18px;font-weight:700;color:#24151C;text-align:center}
.fsg-knop{min-height:56px;padding:14px 28px;border:0;background:#E66E4B;color:#24151C;font-size:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.fsg-knop:hover,.fsg-knop:focus-visible{background:#FBF7F2}
.fsg-klein{font-size:15px!important;color:#F1E7DC;margin:12px 0 0!important}
.fsg-boxen{gap:24px!important;margin-top:36px!important}
.fsg-box{background:#fff;border:1px solid #E4D3C2;margin:0!important}
.fsg-box .wp-block-image{margin:0!important}
.fsg-box img{aspect-ratio:3/2;object-fit:cover;width:100%;display:block}
.fsg-box h3{font-size:24px;color:var(--global-palette1);margin:20px 22px 8px!important}
.fsg-box p{margin:0 22px 24px!important;font-size:16px;line-height:1.6}
.fsg-galerij{margin-top:32px!important}
.fsg-galerij img{aspect-ratio:1/1;object-fit:cover;width:100%}
.fsg-videos{gap:20px!important;margin:32px 0!important}
.fsg-slot .fsg-tickets{justify-content:center;margin-top:24px}
@media (max-width:900px){
.fsaf-feiten{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}
.fsaf-feit:nth-child(4){border-left:0}
.fsaf-niveaus{grid-template-columns:repeat(2,minmax(0,1fr))}
.fsaf-checklist{position:static}
}
@media (max-width:600px){
.fsaf-feiten{grid-template-columns:repeat(2,minmax(0,1fr))}
.fsaf-feit:nth-child(odd){border-left:0}
.fsaf-feit:nth-child(4){border-left:1px solid #A0476F}
.fsg-tickets{flex-direction:column}
.fsg-aantal{justify-content:space-between}
}

/* === Bedankpagina's formulieren === */
.fs-step>.wp-block-group__inner-container{display:contents}
.fs-step-head>.wp-block-group__inner-container>*:last-child,.fs-step-body>.wp-block-group__inner-container>*:first-child{margin-top:0}
.fs-step-body .fsl-raster{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:24px;margin:24px 0 0!important}
.fsl-raster .fsb-kaart-tekst{padding:20px 22px 22px}
.fs-step-body .fsl-raster p.fsb-ex{font-size:15px;line-height:1.6}
.fs-step-body .fsl-raster h3{font-size:22px;margin:0}
.fs-step-body>.wp-block-group__inner-container>h3:not(:first-child){margin-top:40px}
.fsl-dansen{list-style:none;margin:8px 0 0!important;padding:0!important;display:flex;flex-wrap:wrap;gap:10px}
.fsl-dansen li{margin:0!important}
.fsl-dansen a{display:inline-flex;align-items:center;min-height:44px;padding:8px 22px;border:1px solid #620031;border-radius:999px;background:#FBF7F2;color:#620031;font-weight:700;text-decoration:none;transition:background .2s,color .2s}
.fsl-dansen a:hover,.fsl-dansen a:focus-visible{background:#620031;color:#FBF7F2}
.fs-step-body .fsl-merch{justify-content:stretch;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:20px;margin:24px 0 28px!important}

/* === Werken bij === */
.page-id-2866 .fs-hero-title,.page-id-3163 .fs-hero-title{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;font-size:clamp(36px,4.4vw,64px)!important}
.fsv-vacature{max-width:760px;margin:40px auto 0!important}
.fsv-kans{margin-top:48px!important;font-family:var(--fs-serif);font-style:italic;font-size:24px!important;line-height:1.45!important;color:var(--global-palette1);text-align:center}
.fsv-voorbeelden .fs-usp p+p{margin-top:14px!important}
.fsv-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link{background:#E66E4B!important;color:#24151C!important;border-color:#E66E4B!important}
.fsv-cta .is-style-outline .wp-block-button__link{background:transparent!important;color:#FBF7F2!important;border:1px solid #FBF7F2!important}
.fsv-cta .wp-block-button .wp-block-button__link:hover,.fsv-cta .wp-block-button .wp-block-button__link:focus-visible{background:#FBF7F2!important;color:#3A0A22!important;border-color:#FBF7F2!important}

/* === Zaal huren === */
.page-id-3411 .fs-hero .wp-block-image img{object-position:22% 50%}
.page-id-3411 .fs-hero-title{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;font-size:clamp(36px,4.4vw,64px)!important}
.fsz-galerij{gap:12px!important;margin-top:40px!important}
.fsz-galerij .wp-block-image{margin:0!important}
.fsz-galerij img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}
.fsz-tarief{gap:clamp(32px,5vw,72px)!important}
.fsz-tarief h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px}
.fsz-prijs{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;margin-top:28px!important;padding-top:24px;border-top:1px solid var(--fs-line)}
.fsz-prijs p{margin:0!important}
.fsz-prijs>.wp-block-group__inner-container{display:contents}
.fsz-prijs p.fsz-bedrag{font-family:var(--fs-serif);font-size:clamp(40px,4.4vw,56px);line-height:1;color:var(--global-palette1)}
.fsz-prijs p:not(.fsz-bedrag){font-size:16px;color:#6B5862}
.fsz-geen{margin-top:0!important}
.fsz-geen h3{font-size:28px;color:var(--global-palette1);margin:0 0 12px!important}
.fsz-weten .fs-usp p+p,.fsz-stap p+p{margin-top:12px!important}
.fsz-stap-raster{gap:32px clamp(32px,5vw,72px)!important;margin-top:40px!important}
.fsz-stap{margin:0!important}
.fsz-stap .fs-num{color:#E66E4B;margin:0 0 8px!important}
.fsz-stap h3{color:#FBF7F2;font-size:clamp(24px,2.4vw,30px);margin:0 0 16px!important}
.fsz-stap p{color:#F1E7DC;font-size:17px;line-height:1.7;margin:0}
.fsz-voor-duo{gap:24px!important;margin-top:40px!important}
.fsz-voor figcaption{display:none}
.fsz-voor .wp-block-image{margin:0!important}

/* === Ledenpagina's === */
/* Slot-scherm */
body.fst-pagina .entry-hero,body.fst-pagina .kadence-breadcrumbs{display:none!important}
.fst{background:#F1E7DC;padding:clamp(56px,8vw,112px) 20px}
.fst-kaart{max-width:640px;margin:0 auto;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(28px,5vw,48px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 30px 70px -50px rgba(58,10,34,.5)}
.fst-kaart :is(h1,h2,p){margin:0}
.fst-slot{width:60px;height:60px;border-radius:50%;background:#620031;color:#FBF7F2;display:flex;align-items:center;justify-content:center}
.fst-kaart h1{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:clamp(34px,4vw,48px);line-height:1.1;color:#620031}
.fst-kaart h1 em{font-style:italic}
.fst-tekst{font-size:18px;line-height:1.65;color:#24151C;max-width:520px}
.fst-klein{font-size:14px;color:#6B5862}
.fst-klein a{color:#B84A2B}
.fst-login{width:100%;max-width:400px;margin-top:12px;padding-top:24px;border-top:1px solid #E4D3C2;text-align:left}
.fst-login h2{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:24px;color:#620031;margin:0 0 12px!important}
.fst-login form p{margin:0 0 14px}
.fst-login label{display:block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6B5862;margin-bottom:6px}
.fst-login input[type=text],.fst-login input[type=password]{width:100%;min-height:48px;border:1px solid #E4D3C2;background:#FBF7F2;padding:10px 14px;font-size:16px}
.fst-login .login-remember label{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-weight:400;font-size:15px;color:#24151C}
.fst-login input[type=submit]{width:100%;min-height:52px;background:#620031;color:#FBF7F2;border:0;font-weight:700;font-size:16px;cursor:pointer}
.fst-login input[type=submit]:hover{background:#3A0A22}
/* Ledenpagina's */
.fst-kop h1{font-size:clamp(40px,5vw,68px)}
.fst-terug{margin:0 0 32px!important;font-size:15px}
.fst-terug a{color:#B84A2B;font-weight:600;text-decoration:none}
.fst-tegels{gap:16px!important}
.fst-tegel{margin:0!important}
.fst-tegel a{display:flex;flex-direction:column;gap:6px;height:100%;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:28px 28px 30px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.fst-tegel a:hover,.fst-tegel a:focus-visible{transform:translateY(-3px);border-top-color:#E66E4B;box-shadow:0 26px 60px -40px rgba(58,10,34,.55)}
.fst-tegel strong{font-family:'Bodoni Moda',Didot,Georgia,serif;font-weight:500;font-size:28px;line-height:1.15;color:#620031}
.fst-tegel strong::after{content:" →";color:#E66E4B}
.fst-tegel span{font-size:15px;line-height:1.5;color:#6B5862}
.fst-prive{gap:clamp(32px,5vw,72px)!important}
.fst-prive h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:8px 0 0}
.fst-prive p{font-size:18px;line-height:1.7}
.fst-download{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(24px,4vw,56px);align-items:center;padding:40px 0;border-top:1px solid var(--fs-line);margin:0!important}
.fst-download>.wp-block-group__inner-container{display:contents}
.fst-download .wp-block-image{margin:0!important}
.fst-download img{width:100%;height:auto;display:block;border:1px solid #E4D3C2;background:#fff}
.fst-download h3{font-size:clamp(26px,2.6vw,34px);color:var(--global-palette1);margin:0 0 14px!important}
.fst-download p{font-size:17px;line-height:1.7;margin:0 0 10px!important}
.fst-download .wp-block-buttons{margin-top:18px!important}
.fst-zalen{gap:16px!important;margin-top:32px!important}
.fst-zaal{background:#fff;border:1px solid #E4D3C2;padding:24px 26px;margin:0!important}
.fst-zaal h3{font-size:22px;color:var(--global-palette1);margin:0 0 10px!important}
.fst-zaal p{font-size:16px;line-height:1.6;margin:0 0 10px!important}
.fst-maps a{color:#B84A2B;font-weight:600}
.fst-twee .fst-zaal{padding:32px}
.fst-twee .wp-block-buttons{margin-top:16px!important}
.fst-slides{gap:12px!important;margin-top:32px!important}
.fst-slides .wp-block-image{margin:0!important}
.fst-slides img{width:100%;height:auto;display:block;border:1px solid #E4D3C2}
.fst-binnenkort{max-width:1000px;margin:32px auto 0}
.fst-agenda{text-align:center;margin-top:24px!important}
.fst-agenda a{color:#B84A2B;font-weight:600}
.fst-planner{max-width:1000px;margin:32px auto 0;background:#fff;border:1px solid #E4D3C2;padding:32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.fst-planner p{margin:0;color:#6B5862;font-size:15px}
.fst-planner .fst-extern{font-size:14px;color:#B84A2B}
.fst-planner.is-open{padding:0;display:block}
@media (max-width:767px){.fst-download{grid-template-columns:minmax(0,1fr)}}

/* === Zomer en afmelden === */
/* Afmelden */
.fsab-duo{gap:clamp(32px,5vw,72px)!important;margin-top:0!important;align-items:flex-start!important}
.fsab-duo .wp-block-image{margin:0!important;position:sticky;top:120px}
.fsab-duo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.fsab-duo h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 8px!important}
.fsab-duo .fsw-form{margin-top:24px}
.fsab-ok{background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:clamp(24px,4vw,40px);margin-top:24px}
.fsab-ok p{margin:0 0 10px;font-size:17px;line-height:1.65}
.fsab-ok p:last-child{margin:0}
.fsab-ok .fsab-ok-kop{font-family:var(--fs-serif);font-size:clamp(26px,2.6vw,32px);line-height:1.2;color:var(--global-palette1)}
.fsab-ok a{color:#B84A2B;font-weight:600}
@media (max-width:781px){.fsab-duo .wp-block-image{position:static}.fsab-duo img{aspect-ratio:16/10}}
/* Dansles in de zomer */
.page-id-12178 .fs-hero-title{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;font-size:clamp(40px,5vw,76px)!important}
.page-id-12178 .fs-hero .wp-block-image img{object-position:50% 40%}
.fszo-duo{gap:clamp(32px,5vw,72px)!important;margin-top:0!important}
.fszo-duo h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px!important}
.fszo-duo p{font-size:18px;line-height:1.7}
.fszo-duo .fso-label{margin:0 0 8px!important}
.fszo-groet{font-family:var(--fs-serif);font-style:italic;font-size:24px!important;color:var(--global-palette1);margin-top:24px!important}
.fszo-groet span{display:block;font-style:normal;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#6B5862;margin-top:4px}
.fszo-voorwie h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:0 0 20px!important}
.fszo-voorwie p{font-size:18px;line-height:1.7}
.fszo-voorwie .fs-check{margin:4px 0 24px!important}
.fszo-voorwie .wp-block-image img{aspect-ratio:4/5;object-fit:cover}
.fszo-speciaal>p,.fszo-speciaal .fs-narrow{color:#F1E7DC;font-size:18px;line-height:1.7}
.fszo-drie{gap:32px clamp(32px,5vw,64px)!important;margin-top:48px!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))!important}
.fszo-punt{margin:0!important;padding-top:24px;border-top:1px solid rgba(241,231,220,.25)}
.fszo-punt>.wp-block-group__inner-container{display:contents}
.fszo-punt .fs-num{color:#E66E4B;margin:0 0 10px!important}
.fszo-punt h3{color:#FBF7F2;font-size:clamp(22px,2.2vw,28px);line-height:1.25;margin:0 0 14px!important}
.fszo-punt p:not(.fs-num){color:#F1E7DC;font-size:17px;line-height:1.7;margin:0}
.fszo-programma .fs-rule{margin-bottom:16px!important}
.fszo-aanbod img{aspect-ratio:1/1;object-fit:cover;border:0!important}
.fszo-korting{gap:16px!important;margin:40px auto 32px!important;max-width:960px}
.fszo-tegel{margin:0!important;background:#fff;border:1px solid #E4D3C2;border-top:4px solid #620031;padding:28px 24px;text-align:center;display:flex;flex-direction:column;gap:6px}
.fszo-tegel strong{font-family:var(--fs-serif);font-weight:500;font-size:clamp(34px,3.6vw,46px);line-height:1.05;color:var(--global-palette1)}
.fszo-tegel:last-child{border-top-color:#E66E4B}
.fszo-tegel span{font-size:16px;color:#6B5862}
.fszo-mix{font-family:var(--fs-serif);font-style:italic;font-size:22px!important;color:var(--global-palette1)}
.fszo-klein{font-size:15px!important;line-height:1.65;color:#6B5862;margin-top:24px!important}
.fszo-klein strong{color:#24151C}

/* === Eigen formulieren (vervangt Jetpack) === */
.fsf{display:flex;flex-direction:column;gap:20px}
.fsf-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 16px}
.fsf-veld{grid-column:span 4;display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;border:0}
.fsf-half{grid-column:span 2}
.fsf-kwart{grid-column:span 1}
.fsf-veld>label,.fsf-veld>legend{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--global-palette5);margin:0 0 2px;padding:0}
.fsf-ster{color:#B84A2B;margin-left:3px}
.fsf input:not([type=radio]):not([type=checkbox]),.fsf textarea,.fsf select,.fsf-tips input[type=email]{width:100%;min-height:48px;background:var(--global-palette9);border:1px solid var(--global-palette7);border-radius:2px;padding:12px 14px;font-size:16px;color:var(--global-palette4);font-family:inherit;transition:border-color .15s,box-shadow .15s}
.fsf textarea{min-height:120px;resize:vertical}
.fsf input:focus,.fsf textarea:focus,.fsf-tips input:focus{border-color:var(--global-palette1);box-shadow:0 0 0 3px rgba(98,0,49,.12);outline:none}
.fsf-optie{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--fs-line);font-size:16px;color:var(--global-palette4);cursor:pointer}
.fsf .fsf-optie,.fs-form-card .fsf .fsf-optie{text-transform:none;letter-spacing:0;font-weight:400;font-size:16px;color:var(--global-palette4);margin:0}
.fsf-optie input{accent-color:var(--global-palette1);width:18px;height:18px;margin:0;flex:0 0 auto}
.fsf-tekst{grid-column:span 4;font-size:15px;color:var(--global-palette5)}
.fsf-tekst p{margin:0 0 6px;font-size:15px}
.fsf-knop{width:100%;justify-content:center;text-align:center;background:var(--global-palette1)!important;color:var(--global-palette9)!important;border:0;border-radius:2px;padding:18px 30px;font-size:17px;font-weight:700;cursor:pointer;font-family:inherit}
.fsf-knop:hover,.fsf-knop:focus-visible{background:var(--global-palette3)!important}
.fsf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.fsf-fout{margin:0;padding:14px 18px;border-left:3px solid #B84A2B;background:var(--global-palette8);font-size:15px}
.fsf-fout a{color:var(--global-palette1)}
.fsf-ok{margin:0;padding:18px 20px;border-left:3px solid var(--global-palette1);background:var(--global-palette8);font-size:17px}
.fsf-ok p{margin:0}
.fsf-tips{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.fsf-tips input[type=email]{flex:1 1 220px;width:auto}
.fsf-tips .fsf-knop{width:auto;flex:0 0 auto;padding:14px 24px;font-size:15px}
.fsf-tips .fsf-fout{flex:1 1 100%}
@media (max-width:600px){.fsf-half,.fsf-kwart{grid-column:span 4}.fsf-kwart{grid-column:span 2}}

/* === Cadeau gekregen === */
.page-id-10785 .fs-hero-title{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;font-size:clamp(36px,4.4vw,64px)!important}
.fsc-cadeau,.fsc-team{gap:clamp(32px,6vw,80px)!important}
.fsc-cadeau h2,.fsc-team h2{font-size:clamp(32px,3.6vw,48px);color:var(--global-palette1);margin:8px 0 12px!important}
.fsc-cadeau p,.fsc-team p{font-size:18px;line-height:1.7}
.fsc-sub{font-family:'Albert Sans',Arial,sans-serif!important;font-size:14px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#B84A2B!important;margin:0 0 16px!important}
.fsc-cadeau img{width:100%;height:auto;display:block;box-shadow:0 30px 70px -45px rgba(58,10,34,.55)}
.fsc-team img{width:100%;height:auto;display:block}
.fsc-uitje p{color:#F1E7DC;font-size:18px;line-height:1.7}
.fsc-contact{max-width:860px;margin:40px auto 32px!important}
.fsc-contact .fs-usp{text-align:center}
.fsc-contact .fs-usp h3::before{margin-left:auto;margin-right:auto}
.fsc-contact .fs-contact-quick{font-family:var(--fs-serif);font-size:clamp(24px,2.4vw,30px);margin:0}
.fsc-meer{margin-top:20px!important;color:#6B5862}
.fsc-meer a{color:#B84A2B}

/* === Berichten zonder Spectra === */
.fsb-tekst .wp-block-buttons{gap:12px;margin:1.6em 0}
.fsb-tekst .wp-block-button__link{background:#620031;color:#FBF7F2;border:1px solid #620031;border-radius:2px;padding:15px 28px;font-size:16px;font-weight:700;text-decoration:none}
.fsb-tekst .wp-block-button__link:hover{background:#3A0A22;border-color:#3A0A22;color:#FBF7F2}
.fsb-tekst .is-style-outline .wp-block-button__link{background:transparent;color:#620031}
.fsb-tekst .is-style-outline .wp-block-button__link:hover{background:#620031;color:#FBF7F2}
.fsb-tekst ul.fs-check{padding-left:0}
.fsb-tekst ul.fs-check li{font-size:18px;padding:10px 0 10px 32px;margin:0}
.fsb-tekst ul.fs-medailles{list-style:none;padding:20px 28px;margin:1.6em 0;background:#F1E7DC;border-left:3px solid #E66E4B}
.fsb-tekst ul.fs-medailles li{position:relative;padding:8px 0 8px 34px;margin:0;font-size:17px;border-bottom:1px solid #E4D3C2}
.fsb-tekst ul.fs-medailles li:last-child{border-bottom:0}
.fsb-tekst ul.fs-medailles li::before{content:"";position:absolute;left:0;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#F4DE8A,#C9A227 60%,#9C7A12);box-shadow:0 0 0 2px #FBF7F2,0 0 0 3px #C9A227}
.fsb-tekst .fs-fotobooth{gap:8px!important;margin:2em 0}
.fsb-tekst .fs-fotobooth .wp-block-image{margin:0!important}
.fsb-tekst .fs-fotobooth img{aspect-ratio:1/1;object-fit:cover;width:100%;height:100%!important;transition:opacity .2s}
.fsb-tekst .fs-fotobooth a:hover img{opacity:.85}
.fsb-tekst .fsf{margin:1.6em 0;background:#fff;border:1px solid #E4D3C2;padding:clamp(22px,3vw,36px)}
.fsb-tekst .fsf p{margin:0}
@media (max-width:600px){.fsb-tekst .fs-fotobooth{grid-template-columns:repeat(2,1fr)!important}}

/* === Algemene voorwaarden === */
.fsv-hoofd{padding-bottom:clamp(40px,5vw,64px)!important}
.fsv-sectie{padding-top:clamp(40px,5vw,64px)!important}
.fsv{font-size:17px;line-height:1.7;color:#24151C}
.fsv-wissel{display:inline-flex;gap:4px;padding:4px;background:#F1E7DC;border:1px solid #E4D3C2;margin:0 0 32px}
.fsv-tab{padding:12px 22px;font-size:15px;font-weight:700;color:#6B5862;text-decoration:none;transition:background .2s,color .2s}
.fsv-tab:hover{color:#620031}
.fsv-tab.is-actief{background:#620031;color:#FBF7F2}
.fsv-doc[hidden]{display:none}
.fsv-kop{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:flex-end;justify-content:space-between;margin:0 0 32px}
.fsv-sub{flex:1 1 420px;margin:0;color:#6B5862;font-size:18px}
.fsv-knoppen{display:flex;flex-wrap:wrap;gap:12px}
.fsv-knop{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;padding:14px 24px;border-radius:2px;text-decoration:none!important;transition:background .2s,border-color .2s}
.fsv-knop-donker{background:#620031;color:#FBF7F2!important;border:1px solid #620031}
.fsv-knop-donker:hover{background:#3A0A22;border-color:#3A0A22}
.fsv-knop-licht{background:transparent;border:1px solid #620031;color:#620031!important}
.fsv-knop-licht:hover{background:#620031;color:#FBF7F2!important}
.fsv-kort{background:#3A0A22;color:#E4D3C2;padding:clamp(28px,4vw,44px);margin:0 0 40px}
.fsv-kort h2{margin:0 0 6px!important;color:#FBF7F2;font-size:clamp(30px,3.2vw,40px)}
.fsv-kort h2 em{color:#E66E4B}
.fsv-kort-noot{margin:0 0 24px!important;font-size:15px;color:#C9B3A6}
.fsv-kort ul{margin:0!important;padding:0!important;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 40px}
.fsv-kort li{display:flex;gap:14px;align-items:flex-start;margin:0;font-size:16px;line-height:1.6}
.fsv-kort strong{color:#FBF7F2}
.fsv-kort a{color:#E66E4B;white-space:nowrap}
.fsv-bol{flex:0 0 auto;width:28px;height:28px;border-radius:50%;border:1px solid #E66E4B;color:#E66E4B;font-family:var(--fs-serif);font-style:italic;font-size:15px;display:flex;align-items:center;justify-content:center;margin-top:1px}
.fsv-layout{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
.fsv-inhoud{flex:1 1 230px;max-width:270px;background:#F1E7DC;padding:8px 22px;position:sticky;top:110px}
.fsv-inhoud summary{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#B84A2B;padding:14px 0;cursor:pointer;list-style:none}
.fsv-inhoud summary::-webkit-details-marker{display:none}
.fsv-inhoud ol{margin:0 0 12px!important;padding:0!important;list-style:none}
.fsv-inhoud li{margin:0}
.fsv-inhoud a{display:block;padding:8px 12px;margin:0 -12px;color:#24151C;text-decoration:none;font-size:15px;border-left:2px solid transparent}
.fsv-inhoud a:hover{background:#FBF7F2;border-left-color:#E66E4B;color:#620031}
.fsv-inhoud a span{display:inline-block;width:26px;font-family:var(--fs-serif);font-style:italic;color:#B84A2B}
.fsv-main{flex:999 1 520px;min-width:0;max-width:820px}
.fsv-artikel{background:#fff;border:1px solid #E4D3C2;padding:clamp(24px,3vw,36px);margin:0 0 20px;scroll-margin-top:110px}
.fsv-artikel h2{display:flex;gap:16px;align-items:center;margin:0 0 18px!important;font-size:clamp(24px,2.4vw,30px);line-height:1.2;color:#620031}
.fsv-num{flex:0 0 auto;width:44px;height:44px;border:1px solid #E66E4B;color:#B84A2B;font-style:italic;display:inline-flex;align-items:center;justify-content:center;font-size:20px}
.fsv-intro{color:#6B5862;margin:0 0 18px!important}
.fsv-artikel ol{margin:0!important;padding:0!important;list-style:none;display:flex;flex-direction:column;gap:2px}
.fsv-lid{display:flex;gap:14px;padding:8px 14px;margin:0 -14px;scroll-margin-top:120px;transition:background .3s}
.fsv-lid:target{background:#F1E7DC}
.fsv-nr{flex:0 0 auto;width:40px;font-weight:700;font-size:15px;color:#B84A2B!important;text-decoration:none!important;padding-top:2px}
.fsv-def-uitgelicht{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fsv-def-uitgelicht div{background:#FBF7F2;border:1px solid #F1E7DC;padding:14px 18px;scroll-margin-top:120px}
.fsv-def-uitgelicht div:target{background:#F1E7DC}
.fsv-def-uitgelicht dt{font-weight:700;color:#3A0A22}
.fsv-def-uitgelicht dt span{font-weight:400;color:#6B5862;font-size:13px;margin-left:4px}
.fsv-def-uitgelicht dd{margin:4px 0 0;font-size:15px;line-height:1.6}
.fsv-def-alle{margin-top:16px}
.fsv-def-alle summary{font-weight:700;color:#B84A2B;padding:10px 0;cursor:pointer}
.fsv-def-alle[open] summary{margin-bottom:10px}
.fsv-voet{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-top:1px solid #E4D3C2;padding-top:22px;margin-top:12px;font-size:15px;color:#6B5862}
.fsv-voet span{flex:1 1 300px}
.fsv-voet a{font-weight:700;color:#B84A2B}
@media (max-width:1024px){.fsv-inhoud{position:static;max-width:none;flex-basis:100%}.fsv-kort ul{grid-template-columns:1fr}}
@media (max-width:767px){.fsv-wissel{display:flex}.fsv-tab{flex:1;text-align:center;padding:12px 10px}.fsv-knoppen,.fsv-knop{width:100%;justify-content:center}.fsv-lid{gap:10px;padding:6px 12px;margin:0 -12px;font-size:15px}.fsv-nr{width:36px}.fsv-def-uitgelicht{grid-template-columns:1fr}}

/* === Bioscoop === */
.fsbi-kop .wp-block-buttons{margin-top:8px!important}
.fsbi-sectie .fs-eyebrow{margin-bottom:8px!important}
.fsbi-raster{gap:36px 28px!important;margin-top:40px!important}
.fsbi-raster .fs-yt{margin:0!important;display:flex;flex-direction:column;gap:12px}
.fsbi-raster .fs-yt__btn{gap:10px;padding:16px}
.fsbi-raster .fs-yt__label{display:none}
.fsbi-raster .fs-yt__note{font-size:12px}
.fsbi-raster .fs-yt__play svg{width:56px;height:56px}
.fsbi-raster .wp-element-caption{margin:0!important;text-align:left!important;font-family:var(--fs-serif);font-size:20px!important;line-height:1.3;color:#3A0A22!important}
.fsbi-groot .wp-element-caption{font-size:24px!important}
.fsbi-raster+.wp-block-buttons{margin-top:40px!important}
.fsbi-slot{text-align:center}
.fsbi-slot p{font-size:19px}
.fsbi-raster{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.fsbi-raster.fsbi-groot,.fsbi-raster.fsbi-twee{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media (max-width:1024px){.fsbi-raster{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:640px){.fsbi-raster,.fsbi-raster.fsbi-groot,.fsbi-raster.fsbi-twee{grid-template-columns:minmax(0,1fr)!important}}

/* === Online lessen (Sensei leermodus) === */
body.sensei-course-theme{background:#FBF7F2;color:#24151C}
.sensei-course-theme .sensei-course-theme__header{background:#fff;border-bottom:1px solid #E4D3C2;box-shadow:0 10px 30px -28px rgba(58,10,34,.5)}
.sensei-course-theme .sensei-course-theme__header>.wp-block-group{border-bottom:0!important;min-height:76px}
.sensei-course-theme .sensei-course-theme__header .custom-logo{width:118px!important;height:auto!important;max-height:none}
.sensei-course-theme .wp-block-sensei-lms-course-title{font-family:var(--fs-serif)!important;font-weight:500!important;font-size:19px!important;color:#620031!important;margin:0 0 0 8px!important;padding-left:18px;border-left:1px solid #E4D3C2}
.sensei-course-theme .sensei-course-theme__header p{margin:0;font-size:14px}
.sensei-course-theme .sensei-course-theme__header p a{display:inline-flex;align-items:center;padding:10px 18px;border:1px solid #620031;color:#620031!important;font-weight:700;text-decoration:none!important;transition:background .2s,color .2s}
.sensei-course-theme .sensei-course-theme__header p a:hover{background:#620031;color:#FBF7F2!important}
.sensei-course-theme .sensei-course-theme-prev-next-lesson-a{color:#620031!important}
.sensei-course-theme .sensei-course-theme-prev-next-lesson-a:hover{color:#E66E4B!important}
.sensei-course-theme .sensei-course-theme__sidebar-toggle{color:#620031}
/* Les */
.sensei-course-theme .sensei-course-theme__main-content h1.wp-block-post-title{font-family:var(--fs-serif)!important;font-weight:500!important;font-size:clamp(34px,4vw,54px)!important;line-height:1.1;color:#620031!important;margin-bottom:8px}
.sensei-course-theme .sensei-course-theme__main-content{font-size:17px;line-height:1.75}
.sensei-course-theme .sensei-course-theme__main-content .wp-block-embed,.sensei-course-theme .sensei-course-theme__main-content .wp-block-video{box-shadow:0 30px 70px -45px rgba(58,10,34,.6);margin-bottom:32px}
.sensei-course-theme .sensei-course-theme__main-content h2,.sensei-course-theme .sensei-course-theme__main-content h3{font-family:var(--fs-serif);font-weight:500;color:#620031}
.sensei-course-theme .sensei-course-theme__main-content a:not(.wp-block-button__link):not(.kt-tab-title){color:#B84A2B}
/* Tabbladen in een les (Kadence) */
.sensei-course-theme .kt-tabs-title-list{border-bottom:2px solid #620031!important;gap:4px;margin:0!important;padding:0!important}
.sensei-course-theme .kt-tabs-title-list li{margin:0!important}
.sensei-course-theme .kt-tabs-title-list .kt-tab-title{background:#F1E7DC!important;color:#6B5862!important;border:0!important;border-radius:0!important;margin:0!important;padding:11px 20px!important;font-size:14px!important;font-weight:700!important;letter-spacing:.04em}
.sensei-course-theme .kt-tabs-title-list .kt-tab-title:hover{color:#620031!important}
.sensei-course-theme .kt-tabs-title-list .kt-tab-title-active .kt-tab-title{background:#620031!important;color:#FBF7F2!important}
.sensei-course-theme .kt-tabs-content-wrap>.wp-block-kadence-tab{background:#fff!important;border:1px solid #E4D3C2!important;border-top:0!important;padding:clamp(20px,3vw,32px)!important}
.sensei-course-theme .kt-tab-inner-content-inner>*:last-child{margin-bottom:0}
.sensei-course-theme .fsl-notitie{background:#F1E7DC;border-left:3px solid #E66E4B;padding:16px 20px;margin:20px 0}
.sensei-course-theme .fsl-notitie p{margin:0}
.sensei-course-theme .fsl-notitie-kop{font-weight:700;color:#620031;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px!important}
.sensei-course-theme .fsl-download{margin:20px 0}
/* Knoppen */
.sensei-course-theme .wp-block-button__link{border-radius:2px!important;font-weight:700!important;font-size:15px!important;padding:14px 26px!important;background:transparent!important;color:#620031!important;border:1px solid #620031!important;box-shadow:none!important;transition:background .2s,color .2s}
.sensei-course-theme .wp-block-button__link:hover{background:#620031!important;color:#FBF7F2!important}
.sensei-course-theme .wp-block-sensei-lms-button-complete-lesson .wp-block-button__link,.sensei-course-theme .wp-block-sensei-lms-button-next-lesson .wp-block-button__link,.sensei-course-theme .fsl-download .wp-block-button__link{background:#620031!important;color:#FBF7F2!important}
.sensei-course-theme .wp-block-sensei-lms-button-complete-lesson .wp-block-button__link:hover,.sensei-course-theme .wp-block-sensei-lms-button-next-lesson .wp-block-button__link:hover,.sensei-course-theme .fsl-download .wp-block-button__link:hover{background:#3A0A22!important}
/* Zijbalk */
.sensei-course-theme .sensei-course-theme__sidebar{background:#fff;border:1px solid #E4D3C2}
.sensei-course-theme .sensei-course-theme-course-progress{font-size:13px;color:#6B5862}
.sensei-course-theme .sensei-course-theme-course-progress-bar{background:#F1E7DC!important;height:6px!important;border-radius:0!important}
.sensei-course-theme .sensei-course-theme-course-progress-bar-inner{background:#E66E4B!important;border-radius:0!important}
.sensei-course-theme .sensei-lms-course-navigation-module__title{font-family:var(--fs-serif)!important;font-weight:500!important;font-size:21px!important;color:#620031!important}
.sensei-course-theme .sensei-lms-course-navigation-module__button svg{color:#B84A2B;fill:currentColor}
.sensei-course-theme .sensei-lms-course-navigation-module__summary{font-size:12px;color:#6B5862}
.sensei-course-theme .sensei-lms-course-navigation-lesson__link{color:#24151C!important;font-size:14px;padding:7px 10px;margin:0 -10px;border-left:2px solid transparent;text-decoration:none!important}
.sensei-course-theme .sensei-lms-course-navigation-lesson__link:hover{background:#FBF7F2;color:#620031!important}
.sensei-course-theme .sensei-lms-course-navigation-lesson.current-lesson .sensei-lms-course-navigation-lesson__link{background:#F1E7DC;border-left-color:#E66E4B;font-weight:700;color:#620031!important}
.sensei-course-theme .sensei-lms-course-navigation-lesson__link svg{color:#C9B3A6;fill:currentColor}
.sensei-course-theme .status-in-progress .sensei-lms-course-navigation-lesson__link svg{color:#E66E4B}
.sensei-course-theme .status-completed .sensei-lms-course-navigation-lesson__link svg{color:#620031}

/* === Zoekresultaten === */
.fss-kop .fss-zoek{max-width:640px;margin-top:8px}
.fss-filters{margin-top:8px}
.fss-filters a span{display:inline-block;min-width:22px;margin-left:6px;padding:1px 7px;font-size:12px;font-weight:700;background:#F1E7DC;color:#620031;border-radius:999px;text-align:center}
.fss-filters a[aria-current] span{background:#E66E4B;color:#fff}
.fss mark{background:linear-gradient(transparent 58%,rgba(230,110,75,.32) 58%);color:inherit;padding:0 1px}
.fss-kaart .fsb-meta .fss-prijs{font-weight:700;letter-spacing:0;text-transform:none;font-size:14px;color:#3A0A22}
.fss-kaart .fsb-meta .fss-prijs del{opacity:.6;font-weight:400;margin-right:4px}
.fss .fs4-links{background:#FBF7F2}

/* --- Aanvullingen winkelmand 0.9.49: uitlijning ---
   - clearfix-pseudo-elementen van het thema tellen in een grid mee als kolom: uitzetten en blokken expliciet plaatsen
   - tabel en totalen pas naast elkaar vanaf 1200px (de tabel heeft ~640px nodig)
   - productfoto 72px, bedragen rechts, aantal gecentreerd, btw-regel klein onder het totaal
   - waardebonveld en knoppen even hoog; op mobiel onder elkaar */
.fsk .kadence-woo-cart-form-wrap::before,.fsk .kadence-woo-cart-form-wrap::after{display:none!important;content:none!important}
.fsk .kadence-woo-cart-form-wrap>.woocommerce-cart-form{grid-column:1;grid-row:1}
.fsk .kadence-woo-cart-form-wrap>.cart-collaterals{grid-column:2;grid-row:1}
@media (max-width:1199px){.fsk .kadence-woo-cart-form-wrap{grid-template-columns:minmax(0,1fr)}.fsk .kadence-woo-cart-form-wrap>.cart-collaterals{grid-column:1;grid-row:2}.fsk .cart-collaterals .cart_totals{position:static}}
@media (min-width:769px) and (max-width:1199px){.fsk .kadence-woo-cart-form-wrap>.cart-collaterals{max-width:480px;margin-left:auto!important}}
.fsk td.product-thumbnail{width:104px}
.fsk td.product-thumbnail img{max-width:none;display:block}
.fsk table.shop_table.cart :is(th,td):is(.product-price,.product-subtotal){text-align:right}
.fsk table.shop_table.cart :is(th,td).product-quantity{text-align:center}
.fsk table.shop_table.cart td.product-quantity .quantity{display:inline-block}
.fsk td.actions .coupon{display:flex;gap:8px;align-items:stretch}
.fsk td.actions .coupon input.input-text{min-height:44px;margin:0!important;width:180px}
.fsk td.actions .button{box-sizing:border-box;min-height:44px;line-height:1.2;white-space:nowrap;margin:0!important}
.fsk .cart_totals table.shop_table :is(th,td){vertical-align:baseline}
.fsk .cart_totals .order-total td .includes_tax{display:block;font-family:'Albert Sans',Arial,sans-serif;font-size:13px;font-weight:400;color:#6B5862;margin-top:4px}
.fsk .cart_totals .order-total td .includes_tax .amount{font:inherit;color:inherit}
@media (max-width:768px){
.fsk table.shop_table_responsive.cart tr td{text-align:right!important}
.fsk table.shop_table_responsive.cart tr td::before{float:left;font-weight:600;color:#6B5862}
.fsk table.shop_table_responsive.cart td.product-thumbnail{width:auto;text-align:center!important}
.fsk table.shop_table_responsive.cart td.product-thumbnail img{display:inline-block}
.fsk td.actions .coupon{width:100%;float:none!important;flex-wrap:wrap}
.fsk td.actions .coupon input.input-text{flex:1 1 100%;width:100%}
.fsk td.actions .coupon .button{flex:1 1 100%}
.fsk td.actions > .button{width:100%;margin-top:10px!important}
.fsk .cart_totals table.shop_table_responsive td::before{font-family:'Albert Sans',Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#6B5862}
}

/* --- Vrijdansen-keuzeknoppen 0.9.50: tekstkleur bij hover/focus vastzetten (het thema maakt knoptekst bij hover wit) --- */
.fsr-ws-knop:hover,.fsr-ws-knop:focus-visible{color:#3A0A22}
.fsr-ws-knop[aria-checked="true"]:hover{background:#F1E7DC}
.fsr-knop:not([aria-checked="true"]):hover,.fsr-knop:not([aria-checked="true"]):focus-visible{color:#3A0A22}
.fsr-knop[aria-checked="true"]:hover{background:#620031;color:#FBF7F2}

/* --- Productpagina mobiel 0.9.51: miniaturen in één veegbare rij onder de foto (niet over de foto, niet in twee rijen), minder ruimte tot de titel --- */
@media (max-width:767px){
.woocommerce div.product div.images.woocommerce-product-gallery{margin-bottom:20px;padding-bottom:0}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;margin:8px 0 0;padding:0 0 2px;width:100%;overflow-x:auto;scrollbar-width:none;transform:none;position:static}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar{display:none}
.woocommerce div.product div.images .flex-control-thumbs li{flex:0 0 56px;width:56px;margin:0;padding:0}
.woocommerce div.product div.images .flex-control-thumbs li img{width:56px;height:56px;object-fit:cover;margin:0}
.single-product div.product .summary{margin-top:0}
.single-product div.product .summary .product_title{margin-top:0}
}

/* --- Productpagina mobiel 0.9.53: elke foto in hetzelfde vierkante kader (heel zichtbaar), zodat de slider niet meegroeit met staande foto's en er geen gat onder de foto valt --- */
@media (max-width:767px){
.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image img:not(.zoomImg){width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:var(--global-palette9)}
}

/* --- Productgalerij 0.9.54: Kadence (product-cls.js) zet tijdens het laden een vaste hoogte op de galerij en haalt die hier niet meer weg; daardoor bleef er een gat onder de foto. Hoogte altijd automatisch. --- */
.woocommerce div.product .woocommerce-product-gallery.gallery-has-thumbnails{height:auto!important}
