/* =================================================================
   Bevallingscursus Online – theme.css
   Kleuren, fonts en basis-typografie staan in theme.json.
   Dit bestand regelt layout, de hero, kaarten en de footer.
   ================================================================= */

:root {
	--pco-navy: var(--wp--preset--color--navy);
	--pco-inkt: var(--wp--preset--color--inkt);
	--pco-grijs: var(--wp--preset--color--grijs);
	--pco-roze: var(--wp--preset--color--roze);
	--pco-roze-d: var(--wp--preset--color--roze-donker);
	--pco-poeder: var(--wp--preset--color--poeder);
	--pco-blush: var(--wp--preset--color--blush);
	--pco-creme: var(--wp--preset--color--creme);
	--pco-schaduw: var(--wp--preset--shadow--zacht);
	--pco-radius: 28px;
	--pco-sectie: clamp(3.5rem, 8vw, 6.5rem);
	--pco-overlap: 100px; /* hoeveel de pakketfoto's over de hero vallen */
	--pco-header-hoogte: 88px;
}

/* ---------- Basis ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
img { height: auto; }
::selection { background: var(--pco-poeder); color: var(--pco-navy); }
:focus-visible { outline: 3px solid var(--pco-roze-d); outline-offset: 3px; }

/* Secties sluiten naadloos op elkaar aan (geen standaard block-gap ertussen). */
body .wp-site-blocks > * + * { margin-block-start: 0; }
body .pco-main > * + * { margin-block-start: 0; }
body .wp-block-template-part > * { margin-block: 0; }

.pco-sectie { padding-block: var(--pco-sectie); }
.pco-intro { max-width: 640px; margin-inline: auto !important; color: var(--pco-grijs); font-size: var(--wp--preset--font-size--large); line-height: 1.6; }
.pco-bovenkop { margin-bottom: 0.25rem !important; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--pco-roze-d); }
.pco-accentregel { font-family: var(--wp--preset--font-family--accent); font-size: clamp(1.5rem, 3vw, 1.95rem); line-height: 1.3; color: var(--pco-navy); font-weight: 400; }
.pco-sterren { margin: 0; color: var(--pco-roze-d); letter-spacing: 0.18em; font-size: 1rem; line-height: 1; }

/* ---------- Knoppen ---------- */
.wp-element-button,
.wp-block-button__link { transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; }
.wp-block-button__link:hover { transform: translateY(-2px); }
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--pco-navy);
	box-shadow: inset 0 0 0 2px var(--pco-navy);
	padding: 0.9rem 1.7rem;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--pco-navy); color: #fff; }
.wp-block-button.is-style-pco-licht > .wp-block-button__link { background: #fff; color: var(--pco-navy); }

/* ---------- Lijst met vinkjes ---------- */
.is-style-pco-vink { list-style: none; padding-left: 0; }
.is-style-pco-vink > li { position: relative; padding-left: 2rem; margin-block: 0.6rem; }
.is-style-pco-vink > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.28em;
	width: 1.2rem;
	height: 1.2rem;
	border-radius: 50%;
	background: var(--pco-roze) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B132B' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 62% no-repeat;
}

/* =================================================================
   HEADER
   ================================================================= */
.pco-header-wrap {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 50;
	background: rgba(255, 255, 255, 0.97);
	transition: background-color 0.25s ease, box-shadow 0.25s ease;
}
.pco-gescrold .pco-header-wrap { box-shadow: 0 6px 24px -12px rgba(11, 19, 43, 0.25); }

/* Voorpagina: header ligt transparant over de headerfoto. */
.home .pco-header-wrap { position: fixed; left: 0; right: 0; background: transparent; }
.home.pco-gescrold .pco-header-wrap,
.pco-gescrold .home .pco-header-wrap { background: rgba(255, 255, 255, 0.97); }

.pco-header { padding-block: 0.9rem; }
.pco-header__balk { gap: 1.5rem; }
.pco-logo { margin: 0; flex-shrink: 0; }
.pco-logo img { width: clamp(150px, 16vw, 200px) !important; display: block; }

.pco-nav { gap: 0.2rem 1.4rem; font-weight: 500; color: var(--pco-navy); }
.pco-nav .wp-block-navigation-item__content { text-decoration: none; padding-block: 0.4rem; }
.pco-nav .wp-block-navigation-item__content:hover { color: var(--pco-roze-d); }
.pco-nav .current-menu-item > .wp-block-navigation-item__content { color: var(--pco-roze-d); }
.pco-nav .pco-nav__login > .wp-block-navigation-item__content,
.pco-nav .pco-nav__bestel > .wp-block-navigation-item__content {
	padding: 0.55rem 1.2rem;
	border-radius: 999px;
	font-weight: 700;
	font-size: 0.85rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.pco-nav .pco-nav__login > .wp-block-navigation-item__content { box-shadow: inset 0 0 0 2px var(--pco-navy); }
.pco-nav .pco-nav__bestel > .wp-block-navigation-item__content { background: var(--pco-roze); color: var(--pco-navy); }
.pco-nav .pco-nav__login > .wp-block-navigation-item__content:hover,
.pco-nav .pco-nav__bestel > .wp-block-navigation-item__content:hover { background: var(--pco-navy); color: #fff; }

/* Submenu */
.pco-nav .wp-block-navigation__submenu-container {
	border: 0 !important;
	border-radius: 16px;
	padding: 0.5rem !important;
	background: #fff !important;
	box-shadow: var(--pco-schaduw);
	min-width: 230px !important;
}
.pco-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.55rem 0.8rem !important; border-radius: 10px; }
.pco-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--pco-blush); }

/* Tot 1100px: hamburger (het menu is te lang voor één regel). */
@media (max-width: 1099px) {
	.pco-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
	.pco-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
}
.pco-nav .wp-block-navigation__responsive-container-open svg,
.pco-nav .wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; }
.pco-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--pco-blush) !important;
	color: var(--pco-navy) !important;
	padding: 1.5rem clamp(1.25rem, 5vw, 3rem) 2rem;
}
.pco-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; gap: 0.9rem !important; }
.pco-nav .is-menu-open .wp-block-navigation-item { font-size: 1.35rem; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container { background: transparent !important; box-shadow: none; padding: 0.25rem 0 0 1rem !important; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { font-size: 1.05rem; }
.pco-nav .is-menu-open .pco-nav__login,
.pco-nav .is-menu-open .pco-nav__bestel { font-size: 1rem; margin-top: 0.5rem; }

/* =================================================================
   HERO
   ================================================================= */
.pco-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: min(100svh, 980px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-top: calc(var(--pco-header-hoogte) + clamp(2.5rem, 7vh, 5rem));
	padding-bottom: calc(var(--pco-overlap) + clamp(3.5rem, 9vh, 6rem));
	border-bottom-right-radius: clamp(64px, 12vw, 190px);
	color: #fff;
	background: var(--pco-navy);
}
body .pco-hero > .pco-hero__foto {
	position: absolute;
	inset: 0;
	z-index: -2;
	margin: 0 !important;
	max-width: none !important;
	width: 100%;
	height: 100%;
}
.pco-hero__foto img { width: 100%; height: 100% !important; object-fit: cover; object-position: 68% 47%; }
.pco-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0) 16%),
		linear-gradient(180deg, rgba(11, 19, 43, 0.12) 12%, rgba(11, 19, 43, 0.42) 55%, rgba(11, 19, 43, 0.55) 100%);
}
.pco-hero__titel {
	color: #fff;
	font-size: var(--wp--preset--font-size--huge);
	line-height: 1.05;
	text-shadow: 0 2px 30px rgba(11, 19, 43, 0.35);
	margin-bottom: 0 !important;
}
.pco-hero__sub {
	margin-top: 0.3rem !important;
	font-family: var(--wp--preset--font-family--accent);
	font-size: clamp(1.9rem, 4.6vw, 3.3rem);
	line-height: 1.15;
	text-shadow: 0 2px 24px rgba(11, 19, 43, 0.45);
}
.pco-hero .wp-block-buttons { margin-top: 2rem; }
.pco-hero .wp-block-button__link { box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.95), 0 14px 30px -12px rgba(11, 19, 43, 0.6); }
.pco-hero .wp-block-button__link:hover { background: #fff; color: var(--pco-navy); }
.pco-hero__usp { margin-top: 2.25rem !important; }
.pco-hero__usp-kop { margin-bottom: 0.5rem !important; font-size: 1.15rem; opacity: 0.95; }
.pco-hero__usp .is-style-pco-vink { text-align: left; font-size: 1.02rem; text-shadow: 0 1px 12px rgba(11, 19, 43, 0.5); }
.pco-hero__usp .is-style-pco-vink > li { margin-block: 0.45rem; }
.pco-hero a { color: #fff; text-decoration-color: var(--pco-roze); text-underline-offset: 3px; }

/* =================================================================
   CURSUSPAKKETTEN – de ronde foto's vallen over de hero heen
   ================================================================= */
.pco-pakketten {
	position: relative;
	z-index: 2;
	background: var(--pco-blush);
	padding-bottom: clamp(3rem, 7vw, 5rem);
}
body .pco-pakketten__rij {
	margin-top: 0 !important;
	gap: clamp(1.25rem, 2.5vw, 2rem);
	align-items: stretch !important;
}
.pco-pakket {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: var(--pco-radius);
	box-shadow: var(--pco-schaduw);
	padding: 0 clamp(1.25rem, 2.5vw, 2rem) 2rem;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.pco-pakket:hover { transform: translateY(-6px); box-shadow: 0 28px 60px -22px rgba(11, 19, 43, 0.32); }
.pco-pakket > * { margin-block: 0; }
.pco-pakket > * + * { margin-top: 0.9rem !important; }
body .pco-pakket .pco-pakket__foto {
	width: 200px;
	margin: calc(-1 * var(--pco-overlap)) auto 0 !important;
}
.pco-pakket__foto img {
	display: block;
	width: 200px;
	height: 200px !important;
	object-fit: cover;
	border-radius: 50%;
	border: 6px solid #fff;
	box-shadow: 0 16px 40px -14px rgba(11, 19, 43, 0.45);
	transition: transform 0.35s ease;
}
.pco-pakket:hover .pco-pakket__foto img { transform: scale(1.04) rotate(-2deg); }
.pco-pakket__titel { margin-top: 1.25rem !important; font-size: 1.65rem; text-transform: uppercase; letter-spacing: 0.04em; }
.pco-pakket__toegang {
	width: fit-content;
	margin-inline: auto !important;
	margin-top: 0.5rem !important;
	padding: 0.3rem 0.95rem;
	border-radius: 999px;
	background: var(--pco-blush);
	color: var(--pco-roze-d);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.pco-pakket__lijst { flex-grow: 1; font-size: 0.97rem; line-height: 1.5; }
.pco-pakket__extra { font-style: italic; color: var(--pco-grijs); font-size: 0.9rem; }
.pco-pakket__prijs {
	padding-top: 1rem;
	border-top: 1px solid #F3E1E1;
	font-family: var(--wp--preset--font-family--display);
	font-size: 2.6rem;
	line-height: 1;
	color: var(--pco-navy);
}
.pco-pakket .wp-block-button__link { min-width: 180px; }

/* Bonus: grote foto met tekst en knop eronder */
body .pco-bonus {
	margin-top: clamp(3rem, 6vw, 4.5rem) !important;
	padding: clamp(1.25rem, 3vw, 2rem) clamp(1.25rem, 3vw, 2rem) clamp(1.75rem, 4vw, 2.5rem);
	background: #fff;
	border-radius: 32px;
	box-shadow: var(--pco-schaduw);
}
body .pco-bonus > * + * { margin-top: 1.25rem !important; }
.pco-bonus__foto { margin: 0 auto !important; }
.pco-bonus__foto img { display: block; width: 100%; height: auto; border-radius: 22px; }
.pco-bonus__tekst { font-size: 1.1rem; max-width: 620px; margin-inline: auto !important; }

/* =================================================================
   SECTIES
   ================================================================= */

/* Drie punten */
.pco-drie { padding-top: clamp(3rem, 6vw, 5rem); }
.pco-drie .wp-block-columns { gap: clamp(1.5rem, 4vw, 3.5rem); }
.pco-drie__punt { border-top: 3px solid var(--pco-roze); padding-top: 1.25rem; }
.pco-drie__punt h3 { margin-top: 0; }
.pco-drie__punt p:last-child { color: var(--pco-grijs); }

/* Wat leer je */
.pco-leer { background: var(--pco-creme); }
body .pco-leer__raster { margin-block: 2.75rem 2.5rem !important; gap: 1.25rem; }
.pco-leer__item {
	position: relative;
	background: #fff;
	border-radius: 22px;
	padding: 1.75rem 1.75rem 1.5rem;
	box-shadow: 0 10px 30px -20px rgba(11, 19, 43, 0.25);
}
.pco-leer__item::before {
	content: "";
	display: block;
	width: 2.4rem;
	height: 2.4rem;
	margin-bottom: 1rem;
	border-radius: 50%;
	background: var(--pco-blush) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 50% no-repeat;
}
.pco-leer__item h3 { font-size: 1.3rem; margin: 0 0 0.5rem; }
.pco-leer__item p { margin: 0; color: var(--pco-grijs); font-size: 0.98rem; }

/* Nuchter + uitgelichte recensie */
.pco-nuchter { background: var(--pco-blush); }
.pco-nuchter .wp-block-columns { gap: clamp(2rem, 6vw, 5rem); }
.pco-nuchter .is-style-pco-vink { font-size: 1.08rem; }

/* Recensie-kaarten */
.wp-block-quote.pco-recensie,
.pco-recensie {
	position: relative;
	margin: 0;
	background: #fff;
	border-radius: 24px;
	padding: 2rem;
	box-shadow: var(--pco-schaduw);
}
.pco-recensie--groot { padding: clamp(2rem, 4vw, 2.75rem); margin-bottom: 1.75rem !important; }
.pco-recensie--groot::before {
	content: "“";
	position: absolute;
	top: -0.25em;
	right: 1.5rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 7rem;
	line-height: 1;
	color: var(--pco-roze);
}
.pco-recensie--groot p:not(.pco-sterren) { font-size: 1.08rem; }
.pco-recensie cite { display: block; margin-top: 1rem; font-style: normal; font-weight: 700; color: var(--pco-navy); }
.pco-recensie cite::before { content: "— "; color: var(--pco-roze-d); }

.pco-recensies { background: var(--pco-creme); }
body .pco-recensies__rij { margin-block: 2.75rem 2rem !important; gap: 1.5rem; }
.pco-recensies .pco-recensie { display: flex; flex-direction: column; gap: 0.9rem; }
.pco-recensies .pco-recensie > * { margin: 0 !important; }
.pco-recensies .pco-recensie p:not(.pco-sterren):not(.pco-recensie__naam) { flex-grow: 1; font-size: 0.97rem; color: var(--pco-inkt); }
.pco-recensie__foto img, .is-style-pco-rond img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
.pco-recensie__naam { font-weight: 700; color: var(--pco-navy); }

/* Foto's met organische vorm */
.pco-foto-boog { position: relative; isolation: isolate; margin: 0; }
.pco-foto-boog img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 28px 28px clamp(80px, 12vw, 170px) 28px;
}
.pco-foto-boog--links img { border-radius: 28px 28px 28px clamp(80px, 12vw, 170px); }
.pco-foto-boog::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: 42%;
	aspect-ratio: 1;
	right: -1.25rem;
	bottom: -1.25rem;
	border-radius: 50%;
	background: var(--pco-blush);
}
.pco-foto-boog--links::after { right: auto; left: -1.25rem; }
/* Partnerfoto: hele foto zichtbaar, niet bijsnijden */
body .pco-partner .pco-foto-boog img { aspect-ratio: auto !important; height: auto !important; object-fit: contain !important; }
/* Bijgesneden foto's: bovenkant (gezichten) in beeld houden */
.pco-foto-boog img { object-position: 50% 20%; }

/* Herken je dit */
.pco-herken .wp-block-columns,
.pco-partner > .wp-block-columns,
.pco-krijgt > .wp-block-columns { gap: clamp(2rem, 6vw, 5rem); }
.pco-herken__lijst { list-style: none; padding: 0; font-size: 1.1rem; }
.pco-herken__lijst li { position: relative; padding: 0.85rem 0 0.85rem 1.75rem; border-bottom: 1px solid #F3E1E1; }
.pco-herken__lijst li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1.45rem;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background: var(--pco-roze);
}

/* Cijfers */
.pco-cijfers { background: var(--pco-navy); padding-block: clamp(2.75rem, 6vw, 4rem); }
.pco-cijfers__rij { gap: 1.5rem; }
.pco-cijfers__rij > .wp-block-column + .wp-block-column { border-left: 1px solid rgba(255, 255, 255, 0.14); }
.pco-cijfer { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.6rem, 6vw, 3.8rem); line-height: 1; color: var(--pco-roze); }
.pco-cijfer__label { margin: 0.5rem 0 0 !important; color: rgba(255, 255, 255, 0.8); font-size: 0.82rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }

/* Partner */
.pco-partner__lijsten { gap: 1.5rem; margin-top: 1.5rem !important; }
.pco-partner__lijsten h4 { font-size: 1.15rem; margin-bottom: 0.25rem; }
.pco-partner__lijsten .is-style-pco-vink { font-size: 0.97rem; }

/* Wat je krijgt + op locatie */
body .pco-locatie {
	margin-top: clamp(3rem, 6vw, 4.5rem) !important;
	gap: 1rem 2rem;
	padding: 1.25rem 1.25rem 1.25rem 2rem;
	background: var(--pco-blush);
	border-radius: 999px;
}
.pco-locatie__tekst { margin: 0; font-size: 1.05rem; }

/* Suzan */
.pco-suzan { background: var(--pco-blush); }
body .pco-suzan__kaart {
	gap: clamp(2rem, 5vw, 4rem);
	background: #fff;
	border-radius: 36px;
	padding: clamp(1.5rem, 4vw, 3rem);
	box-shadow: var(--pco-schaduw);
}
.pco-suzan__foto { margin: 0; }
.pco-suzan__foto img { width: 100%; aspect-ratio: 483 / 554; object-fit: cover; border-radius: 999px 999px 28px 28px; }
.pco-suzan h2 { margin-top: 0.25rem; }

/* FAQ */
.pco-faq h2 { margin-bottom: 2rem; }
.pco-vraag { border: 0; padding-block: 0.25rem; }
.pco-vraag summary {
	position: relative;
	list-style: none;
	cursor: pointer;
	padding: 1.1rem 3rem 1.1rem 0;
	font-weight: 700;
	font-size: 1.12rem;
	color: var(--pco-navy);
}
.pco-vraag summary::-webkit-details-marker { display: none; }
.pco-vraag summary::after {
	content: "+";
	position: absolute;
	right: 0.25rem;
	top: 50%;
	transform: translateY(-50%);
	display: grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: var(--pco-blush);
	color: var(--pco-roze-d);
	font-size: 1.3rem;
	font-weight: 400;
	transition: transform 0.25s ease, background-color 0.25s ease;
}
.pco-vraag[open] summary::after { transform: translateY(-50%) rotate(45deg); background: var(--pco-roze); color: var(--pco-navy); }
.pco-vraag p { margin-top: 0; padding-bottom: 1rem; color: var(--pco-grijs); }
.pco-faq .wp-block-buttons { margin-top: 2.5rem; }

/* Blog (voorpagina + blogoverzicht) */
.pco-blogsectie { background: var(--pco-creme); }
.pco-sectiekop { margin-bottom: 2rem; }
.pco-sectiekop h2, .pco-sectiekop p { margin: 0; }
.pco-sectiekop a { text-decoration: none; }
.pco-blog .wp-block-post-template { gap: 1.5rem; }
.pco-blog .wp-block-post-template.is-layout-grid { grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); }
.pco-blog .wp-block-post {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 10px 30px -20px rgba(11, 19, 43, 0.3);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.pco-blog .wp-block-post:hover { transform: translateY(-4px); box-shadow: var(--pco-schaduw); }
.pco-blog .wp-block-post > * { margin: 0; }
.pco-blog .wp-block-post-featured-image img { transition: transform 0.4s ease; }
.pco-blog .wp-block-post:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.pco-blog .wp-block-post-featured-image { overflow: hidden; }
.pco-blog .wp-block-post-title { padding: 1.25rem 1.35rem 0; font-size: 1.2rem; line-height: 1.25; }
.pco-blog .wp-block-post-title a { text-decoration: none; }
.pco-blog .wp-block-post-excerpt { padding: 0.6rem 1.35rem 1.4rem; font-size: 0.93rem; color: var(--pco-grijs); flex-grow: 1; display: flex; flex-direction: column; }
.pco-blog .wp-block-post-excerpt__excerpt { margin: 0 0 0.75rem; }
.pco-blog .wp-block-post-excerpt__more-text { margin-top: auto; margin-bottom: 0; }
.pco-blog .wp-block-post-excerpt__more-link { font-weight: 700; color: var(--pco-roze-d); text-decoration: none; }
.pco-blog .wp-block-query-pagination { margin-top: 3rem; gap: 0.5rem; }
.pco-blog .page-numbers { display: inline-grid; place-items: center; min-width: 2.5rem; height: 2.5rem; border-radius: 50%; text-decoration: none; }
.pco-blog .page-numbers.current { background: var(--pco-roze); color: var(--pco-navy); }

/* =================================================================
   PAGINA'S & BERICHTEN
   ================================================================= */
.pco-paginakop {
	background: var(--pco-blush);
	padding-block: clamp(3rem, 7vw, 5rem);
	border-bottom-right-radius: clamp(48px, 8vw, 120px);
	margin-bottom: 0;
}
.pco-paginakop > * + * { margin-top: 0.75rem; }
.pco-meta { color: var(--pco-roze-d); font-weight: 700; font-size: 0.85rem; letter-spacing: 0.12em; text-transform: uppercase; }
.pco-inhoud { padding-block: clamp(2.5rem, 6vw, 4rem); }
.pco-inhoud--vol { padding-block: 0; }
.pco-inhoud h2 { font-size: var(--wp--preset--font-size--x-large); margin-top: 2.5rem; }
.pco-inhoud h3 { font-size: var(--wp--preset--font-size--large); margin-top: 2rem; }
.pco-inhoud :where(img) { border-radius: 18px; } /* lage prioriteit: eigen vormen (rond, boog) gaan voor */
.pco-uitgelicht { margin-top: clamp(2rem, 4vw, 3rem) !important; }
.pco-uitgelicht img { border-radius: var(--pco-radius); }

.is-style-pco-kaart,
.pco-cursusblok {
	background: var(--pco-blush);
	border-radius: var(--pco-radius);
	padding: clamp(1.75rem, 4vw, 2.5rem);
}
body .pco-cursusblok { margin-block: 1rem 3rem !important; }
.pco-cursusblok h3 { margin-top: 0; }
.pco-berichtnav { padding-bottom: 3rem; gap: 1rem; font-weight: 700; }
.pco-berichtnav a { text-decoration: none; }

/* =================================================================
   FORMULIEREN (MemberPress: registratie, afrekenen, login)
   ================================================================= */
.mp_wrapper,
.mepr-signup-form,
#mepr_loginform { font-size: 1rem; }
.mp_wrapper label,
.mepr-form label { display: inline-block; margin-bottom: 0.35rem; font-weight: 700; color: var(--pco-navy); font-size: 0.92rem; }
.pco-main input[type="text"],
.pco-main input[type="email"],
.pco-main input[type="password"],
.pco-main input[type="tel"],
.pco-main input[type="number"],
.pco-main input[type="url"],
.pco-main select,
.pco-main textarea {
	width: 100%;
	max-width: 100%;
	padding: 0.85rem 1rem;
	border: 1.5px solid #EAD6D6;
	border-radius: 14px;
	background: #fff;
	color: var(--pco-inkt);
	font: inherit;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pco-main input:focus,
.pco-main select:focus,
.pco-main textarea:focus { outline: none; border-color: var(--pco-roze-d); box-shadow: 0 0 0 4px var(--pco-blush); }
.mp_wrapper .mp-form-row { margin-bottom: 1.1rem; }
.pco-main input[type="submit"],
.pco-main button[type="submit"],
.mepr-submit {
	display: inline-block;
	padding: 1rem 2rem;
	border: 0;
	border-radius: 999px;
	background: var(--pco-roze);
	color: var(--pco-navy);
	font: 700 0.95rem/1.2 var(--wp--preset--font-family--body);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.pco-main input[type="submit"]:hover,
.pco-main button[type="submit"]:hover,
.mepr-submit:hover { background: var(--pco-navy); color: #fff; }
.mepr_price, .mepr_price_cell { font-weight: 700; color: var(--pco-navy); }

/* =================================================================
   CTA + FOOTER
   ================================================================= */
.pco-cta { position: relative; z-index: 1; padding-top: var(--pco-sectie); }
body .pco-cta__kaart {
	margin-bottom: -4.5rem !important;
	gap: 1.5rem 3rem;
	padding: clamp(2rem, 4vw, 3rem) clamp(1.75rem, 5vw, 3.75rem);
	border-radius: 32px;
	background: #fff;
	box-shadow: 0 30px 60px -30px rgba(11, 19, 43, 0.35);
}
.pco-cta__tekst { max-width: 560px; }
.pco-cta__tekst h2 { font-size: var(--wp--preset--font-size--x-large); margin: 0 0 0.5rem; }
.pco-cta__tekst p { margin: 0; color: var(--pco-grijs); }


.pco-footer {
	position: relative;
	background: linear-gradient(180deg, var(--pco-blush) 0%, #FCDDE2 100%);
	color: var(--pco-inkt);
	padding-top: calc(4.5rem + clamp(3rem, 6vw, 4.5rem));
	padding-bottom: 1.5rem;
	font-size: 0.94rem;
	line-height: 1.6;
}
body .pco-footer__kolommen {
	display: grid !important;
	grid-template-columns: 1.7fr repeat(4, 1fr);
	gap: 2.5rem 2rem;
}
.pco-footer__kolommen > .wp-block-column { flex-basis: auto !important; min-width: 0; }
.pco-footer__merk > * + * { margin-top: 1rem; }
.pco-footer__merk p { max-width: 330px; }
.pco-footer__logo { margin: 0; }
.pco-footer h4 {
	margin: 0 0 1.1rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--pco-roze-d);
}
.pco-footer .wp-block-list { list-style: none; padding: 0; margin: 0; }
.pco-footer .wp-block-list li { margin-block: 0 0.6rem; }
.pco-footer a { color: var(--pco-navy); text-decoration: none; transition: color 0.2s ease; }
.pco-footer a:hover { color: var(--pco-roze-d); }
.pco-footer__sterren span { color: var(--pco-roze-d); letter-spacing: 0.12em; margin-right: 0.25rem; }
.pco-footer__sterren strong { color: var(--pco-navy); }

.pco-social { gap: 0.6rem !important; }
.pco-social .wp-social-link {
	background: #fff !important;
	color: var(--pco-navy) !important;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.pco-social .wp-social-link a { padding: 0.55rem; }
.pco-social .wp-social-link svg { width: 1.1rem; height: 1.1rem; }
.pco-social .wp-social-link:hover { background: var(--pco-navy) !important; color: #fff !important; transform: translateY(-2px); }
.pco-social .wp-social-link:hover a { color: #fff; }

body .pco-footer__onder {
	margin-top: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(11, 19, 43, 0.12);
	gap: 0.5rem 2rem;
	font-size: 0.82rem;
	color: var(--pco-grijs);
}
.pco-footer__onder p { margin: 0; }
.pco-footer__onder a { color: var(--pco-grijs); }

/* =================================================================
   RESPONSIVE
   ================================================================= */
@media (max-width: 1023px) {
	body .pco-footer__kolommen { grid-template-columns: repeat(4, 1fr); }
	.pco-footer__merk { grid-column: 1 / -1; }
}
@media (max-width: 781px) {
	:root { --pco-overlap: 90px; --pco-header-hoogte: 76px; }

	/* Pakketten onder elkaar: ruimte zodat elke ronde foto boven zijn kaart uitsteekt */
	body .pco-pakketten__rij { row-gap: calc(var(--pco-overlap) + 2rem) !important; }
	.pco-pakket__foto, .pco-pakket__foto img { width: 180px !important; }
	.pco-pakket__foto img { height: 180px !important; }

	body .pco-locatie { border-radius: 28px; padding: 1.5rem; text-align: center; justify-content: center; }
	.pco-cijfers__rij > .wp-block-column + .wp-block-column { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.14); padding-top: 1.5rem; }
	.pco-foto-boog { margin-inline: 0.75rem; }
	body .pco-cta__kaart { text-align: left; }
	body .pco-footer__kolommen { grid-template-columns: 1fr 1fr; gap: 2rem 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}

/* =================================================================
   PAGINA-ONDERDELEN (cursusaanbod, FAQ, extras, checklists)
   ================================================================= */

/* Pakketten bovenaan een gewone pagina: sluit aan op de roze paginakop */
.pco-inhoud:has(> .pco-pakketten:first-child) { padding-top: 0; }
.pco-inhoud > .pco-pakketten:first-child { padding-top: calc(var(--pco-overlap) + 2.5rem); margin-top: 0 !important; }

/* Kaarten in een raster */
body .pco-kaarten { gap: 1.25rem; margin-block: 2rem !important; }
.pco-kaart {
	background: #fff;
	border: 1px solid #F6E4E4;
	border-radius: 22px;
	padding: 1.6rem 1.75rem;
	box-shadow: 0 10px 30px -20px rgba(11, 19, 43, 0.28);
}
.pco-kaart > * { margin-block: 0; }
.pco-kaart > * + * { margin-top: 0.6rem !important; }
.pco-kaart h3 { font-size: 1.3rem; }
.pco-kaart .is-style-pco-vink { font-size: 0.97rem; }
.pco-kaart .is-style-pco-vink > li { margin-block: 0.4rem; }
.pco-kaart .wp-block-buttons { margin-top: 1.1rem !important; }

/* Genummerde stappen (echte volgorde: kiezen, betalen, starten) */
.pco-stappen { counter-reset: stap; }
.pco-stappen .pco-kaart { counter-increment: stap; }
.pco-stappen .pco-kaart::before {
	content: counter(stap);
	display: grid;
	place-items: center;
	width: 2.4rem;
	height: 2.4rem;
	margin-bottom: 0.9rem;
	border-radius: 50%;
	background: var(--pco-roze);
	color: var(--pco-navy);
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.15rem;
}

/* Melding (geen toegang) */
.pco-melding {
	background: var(--pco-blush);
	border-radius: var(--pco-radius);
	padding: clamp(1.75rem, 5vw, 3rem);
	text-align: center;
}
.pco-melding .wp-block-buttons { justify-content: center; }

/* FAQ als pagina */
.pco-inhoud .pco-vraag h4 { margin-top: 1.5rem; font-size: 1.1rem; }
.pco-inhoud .pco-vraag ul { color: var(--pco-grijs); }

/* Afrekenen: formulier rustig en gecentreerd */
.pco-afrekenen .mp_wrapper, .pco-afrekenen .mepr-signup-form { max-width: 620px; margin-inline: auto; }
.pco-afrekenen .mepr-signup-form {
	background: #fff;
	border: 1px solid #F6E4E4;
	border-radius: var(--pco-radius);
	padding: clamp(1.5rem, 4vw, 2.5rem);
	box-shadow: var(--pco-schaduw);
}
.pco-klein { font-size: 0.9rem; color: var(--pco-grijs); }

/* Oude Kubio-pagina's: alles op één brede kolom, tekst even breed als afbeeldingen */
.pco-kubio .pco-inhoud > :where(:not(.alignfull)) { max-width: var(--wp--style--global--wide-size) !important; }
.pco-kubio .pco-inhoud [class*="wp-block-kubio"] { max-width: 100%; }
.pco-kubio .pco-inhoud img { max-width: 100%; height: auto; }

/* =================================================================
   PAGINAKOP MET FOTO (contentpagina's, blog, afrekenen)
   Zelfde sfeer als de voorpagina, maar lager.
   ================================================================= */
body .pco-paginakop--foto {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: clamp(340px, 46vh, 480px);
	padding-top: calc(var(--pco-header-hoogte) + clamp(1.5rem, 4vh, 3rem));
	padding-bottom: clamp(2.5rem, 6vh, 4rem);
	background: var(--pco-navy);
	color: #fff;
	border-bottom-right-radius: clamp(56px, 10vw, 160px);
}
body .pco-paginakop--foto > .pco-hero__foto,
body .pco-paginakop--foto > .wp-block-post-featured-image {
	position: absolute;
	inset: 0;
	z-index: -2;
	margin: 0 !important;
	max-width: none !important;
	width: 100%;
	height: 100%;
}
.pco-paginakop--foto > .pco-hero__foto img,
.pco-paginakop--foto > .wp-block-post-featured-image img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	object-position: 68% 42%;
}
.pco-paginakop--foto::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 22%),
		linear-gradient(180deg, rgba(11, 19, 43, 0.18) 20%, rgba(11, 19, 43, 0.5) 100%);
}
.pco-paginakop--foto h1,
.pco-paginakop--foto .wp-block-post-title {
	color: #fff;
	font-size: clamp(2.3rem, 5vw, 3.8rem);
	line-height: 1.08;
	text-shadow: 0 2px 26px rgba(11, 19, 43, 0.45);
}
.pco-paginakop--foto p { color: rgba(255, 255, 255, 0.92); text-shadow: 0 1px 14px rgba(11, 19, 43, 0.5); }
.pco-paginakop--foto .pco-meta { color: var(--pco-roze); text-shadow: none; }
.pco-paginakop--foto .wp-block-buttons { margin-top: 1.5rem !important; }
.pco-paginakop--foto .wp-block-button__link {
	padding: 0.8rem 1.6rem;
	font-size: 0.85rem;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.95), 0 14px 30px -12px rgba(11, 19, 43, 0.6);
}
.pco-paginakop--foto .wp-block-button__link:hover { background: #fff; color: var(--pco-navy); }
.single-memberpressproduct .pco-paginakop--foto .wp-block-buttons { display: none; }

/* Menu transparant over de fotokop, wit zodra je scrolt (zoals de voorpagina) */
body:has(.pco-paginakop--foto) .pco-header-wrap { position: fixed; left: 0; right: 0; background: transparent; }
.pco-gescrold body:has(.pco-paginakop--foto) .pco-header-wrap { background: rgba(255, 255, 255, 0.97); }

/* Volle-breedte secties (pakketten, recensies, "wat leer je") ook binnen een gewone pagina */
body .pco-inhoud > .alignfull {
	width: 100vw;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}
body .pco-inhoud .pco-pakket__foto img { border-radius: 50%; }

/* Oude pagina's (Kubio-inhoud): geen scheidingslijnen, vaste ruimte tussen vragen zoals live */
.pco-kubio .pco-inhoud .wp-block-separator,
.pco-kubio .pco-inhoud hr,
.pco-kubio .pco-inhoud .wp-block-kubio-spacer { display: none !important; }
.pco-kubio .pco-inhoud :is(h2, h3, h4) { margin-top: 82px !important; margin-bottom: 16px !important; }
.pco-kubio .pco-inhoud :is(h2, h3, h4) + * { margin-top: 0 !important; }
.pco-kubio .pco-inhoud > :is(h2, h3, h4):first-child,
.pco-kubio .pco-inhoud > .wp-block-kubio-spacer:first-child + :is(h2, h3, h4) { margin-top: 0 !important; }

/* Nieuwe FAQ (uitklapvragen) op een pagina: zachte vlakken in plaats van lijnen */
.pco-inhoud .pco-vraag {
	background: var(--pco-creme);
	border: 1px solid #F6E4E4;
	border-radius: 18px;
	padding: 0.35rem 1.4rem;
	margin-top: 16px !important;
}
.pco-inhoud .pco-vraag[open] { background: #fff; box-shadow: 0 10px 30px -20px rgba(11, 19, 43, 0.25); }

/* Gecentreerde afbeelding in paginatekst */
.pco-midden { margin-inline: auto !important; }
.pco-midden img { margin-inline: auto; display: block; border-radius: 0 !important; }
/* Blokken met ruimte ertussen op contentpagina's */
.pco-inhoud > .is-style-pco-kaart, .pco-inhoud > .pco-melding { margin-top: 2.5rem !important; }

/* Dia's (presentatie als afbeeldingen): swipen op telefoon, scrollen op computer */
body .pco-dias {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 1.25rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding: 0.5rem 0.25rem 1.25rem;
	margin-block: 1.5rem 2rem !important;
	scrollbar-color: var(--pco-roze) var(--pco-blush);
	-webkit-overflow-scrolling: touch;
}
body .pco-dias > figure {
	flex: 0 0 min(88%, 920px);
	margin: 0 !important;
	scroll-snap-align: center;
}
.pco-dias img { display: block; width: 100%; height: auto; border-radius: 18px !important; box-shadow: var(--pco-schaduw); }

/* =================================================================
   E-BOOKS (lange tekstpagina's)
   ================================================================= */
.pco-inhoudsblok { margin-block: 2rem 2.5rem !important; }
.pco-inhoudsblok h3 { margin: 0 0 0.75rem; }
.pco-inhoudsopgave {
	columns: 3 220px;
	column-gap: 2rem;
	list-style: none;
	padding: 0;
	margin: 0;
}
.pco-inhoudsopgave li { break-inside: avoid; margin: 0 0 0.45rem; padding-left: 1.1rem; position: relative; }
.pco-inhoudsopgave li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62em;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: var(--pco-roze);
}
.pco-inhoudsopgave a { color: var(--pco-navy); text-decoration: none; }
.pco-inhoudsopgave a:hover { color: var(--pco-roze-d); text-decoration: underline; }

body .pco-hoofdstuk { margin-top: 1.25rem !important; scroll-margin-top: 110px; }
.pco-hoofdstuk h2 { font-size: var(--wp--preset--font-size--x-large); margin-bottom: 0.5rem; }
.pco-hoofdstuk h3 { font-size: 1.25rem; margin-top: 1.5rem !important; }
.pco-hoofdstuk img { border-radius: 14px; }

.pco-tip {
	position: relative;
	margin-block: 1rem !important;
	padding: 0.9rem 1.25rem 0.9rem 3.2rem;
	background: var(--pco-blush);
	border-radius: 16px;
}
.pco-tip::before {
	content: "";
	position: absolute;
	left: 1rem;
	top: 1rem;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	background: var(--pco-roze) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B132B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E") center / 62% no-repeat;
}
.pco-tip p { margin: 0; }
/* Staande pagina's (A4): smaller, zodat er meer naast elkaar passen */
body .pco-dias--staand > figure { flex-basis: min(82%, 520px); }

/* =================================================================
   FAQ-OVERZICHT: alle vragen bovenaan, klikbaar
   ================================================================= */
.pco-vraag, #faq-overzicht, .pco-faq-groepkop { scroll-margin-top: calc(var(--pco-header-hoogte) + 28px); }
body .pco-faq-overzicht {
	background: var(--pco-blush);
	border-radius: 28px;
	padding: clamp(1.5rem, 4vw, 2.75rem);
	margin-block: 2rem 3.5rem !important;
}
.pco-faq-overzicht__label {
	font-family: var(--wp--preset--font-family--accent);
	font-size: 1.35rem;
	letter-spacing: 0.04em;
	color: var(--pco-roze-d);
	margin: 0 0 1.5rem !important;
}
body .pco-faq-overzicht__raster { gap: 1.25rem !important; margin: 0 !important; }
.pco-faq-overzicht__groep {
	background: #fff;
	border-radius: 20px;
	padding: 1.4rem 1.4rem 1rem;
	box-shadow: 0 10px 30px -22px rgba(11, 19, 43, 0.35);
}
.pco-faq-overzicht__groep h3 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin: 0 0 0.75rem !important;
	font-size: 1.15rem;
}
.pco-faq-aantal {
	display: inline-grid;
	place-items: center;
	min-width: 1.8rem;
	height: 1.8rem;
	border-radius: 999px;
	background: var(--pco-roze);
	color: var(--pco-navy);
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.85rem;
	font-weight: 700;
}
body .pco-faq-links { list-style: none; padding: 0; margin: 0 !important; }
body .pco-faq-links li { margin: 0 !important; padding: 0 !important; }
body .pco-faq-links li::before { content: none !important; }
.pco-faq-links li + li { border-top: 1px solid #F6E4E4; }
.pco-faq-links a {
	position: relative;
	display: block;
	padding: 0.6rem 1.6rem 0.6rem 0;
	color: var(--pco-inkt);
	text-decoration: none;
	line-height: 1.4;
	transition: color 0.2s ease;
}
.pco-faq-links a::after {
	content: "→";
	position: absolute;
	right: 0.15rem;
	top: 50%;
	transform: translateY(-50%);
	color: var(--pco-roze-d);
	transition: transform 0.2s ease;
}
.pco-faq-links a:hover, .pco-faq-links a:focus-visible { color: var(--pco-roze-d); }
.pco-faq-links a:hover::after { transform: translate(4px, -50%); }

body .pco-faq-groepkop { margin-top: 3rem !important; margin-bottom: 0.5rem !important; }
body .pco-faq-terug { text-align: right; margin-top: 1rem !important; font-size: 0.9rem; }
.pco-faq-terug a { color: var(--pco-grijs); text-decoration: none; }
.pco-faq-terug a:hover { color: var(--pco-roze-d); }
/* Even oplichten als je via het overzicht bij een vraag komt */
.pco-inhoud .pco-vraag:target { animation: pco-oplichten 1.6s ease; }
@keyframes pco-oplichten { 0%, 30% { box-shadow: 0 0 0 3px var(--pco-roze); } 100% { box-shadow: 0 0 0 0 transparent; } }

/* FAQ-overzicht: knop in de kop (inklappen werkt alleen op de telefoon) */
.pco-faq-knop {
	all: unset;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	font: inherit;
	color: inherit;
}
.pco-faq-knop .pco-faq-aantal { margin-left: auto; }
.pco-faq-knop:focus-visible { outline: 3px solid var(--pco-roze-d); outline-offset: 6px; border-radius: 8px; }

@media (max-width: 700px) {
	body .pco-faq-overzicht { padding: 1.25rem 1rem; border-radius: 22px; margin-block: 1.5rem 2.5rem !important; }
	.pco-faq-overzicht__label { margin-bottom: 1rem !important; }
	body .pco-faq-overzicht__raster { gap: 0.75rem !important; }
	.pco-faq-overzicht__groep { padding: 0.25rem 1.1rem; }
	.pco-faq-js .pco-faq-knop { cursor: pointer; min-height: 3.25rem; }
	.pco-faq-js .pco-faq-overzicht__groep h3 { margin: 0 !important; }
	.pco-faq-js .pco-faq-overzicht__groep:not(.is-open) .pco-faq-links { display: none; }
	.pco-faq-js .pco-faq-overzicht__groep.is-open .pco-faq-links { padding-bottom: 0.6rem; }
	.pco-faq-js .pco-faq-knop::after {
		content: "+";
		display: grid;
		place-items: center;
		flex: 0 0 auto;
		width: 1.8rem;
		height: 1.8rem;
		border-radius: 50%;
		background: var(--pco-blush);
		color: var(--pco-roze-d);
		font-family: var(--wp--preset--font-family--body);
		font-size: 1.2rem;
		transition: transform 0.25s ease;
	}
	.pco-faq-js .is-open .pco-faq-knop::after { transform: rotate(45deg); }
}

/* Zwevende knop terug naar het overzicht */
.pco-faq-zwevend {
	position: fixed;
	right: 16px;
	bottom: calc(16px + env(safe-area-inset-bottom, 0px));
	z-index: 60;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.75rem 1.15rem;
	border-radius: 999px;
	background: var(--pco-navy);
	color: #fff !important;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: none !important;
	box-shadow: 0 12px 30px -12px rgba(11, 19, 43, 0.55);
	opacity: 0;
	transform: translateY(14px);
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease;
}
.pco-faq-zwevend.is-zichtbaar { opacity: 1; transform: none; pointer-events: auto; }
.pco-faq-zwevend:hover { background: var(--pco-roze-d); }

/* Menuknop (hamburger) altijd zichtbaar: wit rondje, ook over een donkere fotokop */
.pco-nav .wp-block-navigation__responsive-container-open {
	width: 46px;
	height: 46px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #fff;
	color: var(--pco-navy);
	box-shadow: 0 6px 18px -8px rgba(11, 19, 43, 0.45);
	transition: background-color 0.25s ease, box-shadow 0.25s ease;
}
.pco-nav .wp-block-navigation__responsive-container-open svg { width: 26px; height: 26px; }
.pco-gescrold .pco-nav .wp-block-navigation__responsive-container-open { background: var(--pco-blush); box-shadow: none; }

/* =================================================================
   TIPS EN TRICKS
   ================================================================= */
/* Springlinks bovenaan: rij met pillen */
body .pco-springlinks {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
	padding: 0;
	margin: 1.5rem auto 1rem !important;
}
body .pco-springlinks li { margin: 0 !important; padding: 0 !important; }
body .pco-springlinks li::before { content: none !important; }
.pco-springlinks a {
	display: inline-block;
	padding: 0.5rem 1rem;
	border-radius: 999px;
	background: var(--pco-blush);
	color: var(--pco-navy);
	font-weight: 600;
	font-size: 0.92rem;
	text-decoration: none;
	transition: background-color 0.2s ease;
}
.pco-springlinks a:hover, .pco-springlinks a:focus-visible { background: var(--pco-roze); }
.pco-inhoud [id] { scroll-margin-top: calc(var(--pco-header-hoogte) + 24px); }

/* Tijdlijn met de vier fases */
body .pco-tijdlijn { position: relative; margin-block: 1.5rem 3rem !important; padding-left: 3.25rem; }
.pco-tijdlijn::before {
	content: "";
	position: absolute;
	left: 1.15rem;
	top: 1rem;
	bottom: 1rem;
	width: 2px;
	background: linear-gradient(var(--pco-roze), var(--pco-poeder));
}
body .pco-fase {
	position: relative;
	counter-increment: fase;
	margin-top: 1.25rem !important;
	background: #fff;
	border: 1px solid #F6E4E4;
	border-radius: 22px;
	padding: 1.4rem 1.6rem 1rem;
	box-shadow: 0 10px 30px -22px rgba(11, 19, 43, 0.3);
}
.pco-tijdlijn { counter-reset: fase; }
.pco-fase::before {
	content: counter(fase);
	position: absolute;
	left: -3.25rem;
	top: 1.25rem;
	display: grid;
	place-items: center;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 50%;
	background: var(--pco-roze);
	color: var(--pco-navy);
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.15rem;
	box-shadow: 0 0 0 6px #fff;
}
.pco-fase > * { margin-block: 0; }
.pco-fase__nr {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--pco-roze-d);
}
.pco-inhoud .pco-fase h3 { margin: 0.15rem 0 0 !important; }
.pco-fase__sub { color: var(--pco-grijs); font-style: italic; margin-top: 0.25rem !important; }
.pco-fase .is-style-pco-vink { margin-top: 0.75rem !important; }

/* Klaarzetten */
body .pco-tips-blok { margin-block: 2.5rem !important; }
.pco-inhoud .pco-tips-blok h2 { margin-top: 0; }
.pco-tips-blok .is-style-pco-vink { columns: 2 300px; column-gap: 2.5rem; }
.pco-tips-blok .is-style-pco-vink > li { break-inside: avoid; }

/* Partner: donker blok */
body .pco-partnerblok {
	margin-block: 2.5rem !important;
	background: var(--pco-navy);
	color: #fff;
	border-radius: var(--pco-radius);
	padding: clamp(1.75rem, 4vw, 2.75rem);
}
.pco-inhoud .pco-partnerblok h2 { margin-top: 0; color: #fff; }
.pco-partnerblok p { color: rgba(255, 255, 255, 0.85); }
.pco-partnerblok .is-style-pco-vink { columns: 2 300px; column-gap: 2.5rem; color: #fff; }
.pco-partnerblok .is-style-pco-vink > li { break-inside: avoid; }

/* Houdingen */
.pco-houding__foto {
	margin: -0.4rem -0.6rem 0.4rem !important;
	background: var(--pco-creme);
	border-radius: 16px;
	padding: 1rem;
	display: grid;
	place-items: center;
	height: 190px;
}
.pco-houding__foto img { max-height: 160px; width: auto; max-width: 100%; object-fit: contain; border-radius: 0 !important; }
.pco-inhoud .pco-houding h3 { margin-top: 0.5rem !important; font-size: 1.2rem; }
.pco-label {
	margin-top: 0.9rem !important;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--pco-roze-d);
}
.pco-houding ul:not(.is-style-pco-vink) { padding-left: 1.1rem; margin-top: 0.3rem !important; color: var(--pco-grijs); font-size: 0.95rem; }
.pco-houding ul:not(.is-style-pco-vink) li { margin-block: 0.25rem; }
.pco-houding .is-style-pco-vink { margin-top: 0.3rem !important; }

/* Let op: verloskundige te laat */
body .pco-let-op {
	margin-block: 2.5rem !important;
	border: 2px solid var(--pco-roze);
	border-radius: var(--pco-radius);
	padding: clamp(1.5rem, 4vw, 2.25rem);
	background: #fff;
}
.pco-inhoud .pco-let-op h2 { margin-top: 0; }
.pco-inhoud .pco-let-op h2::before { content: "!"; display: inline-grid; place-items: center; width: 2rem; height: 2rem; margin-right: 0.6rem; border-radius: 50%; background: var(--pco-roze); color: var(--pco-navy); font-size: 1.1rem; vertical-align: 0.2em; }
.pco-let-op ul { padding-left: 1.2rem; }
.pco-let-op li { margin-block: 0.5rem; }

/* Afsluiter */
body .pco-afsluiter { margin-block: 2.5rem 1rem !important; }
.pco-inhoud .pco-afsluiter h2 { margin-top: 0; }
.pco-afsluiter__succes { margin-top: 2rem !important; font-family: var(--wp--preset--font-family--display); font-size: 1.6rem; color: var(--pco-navy); }
.pco-afsluiter__naam { margin-top: 0.25rem !important; font-family: var(--wp--preset--font-family--accent); font-size: 1.35rem; color: var(--pco-roze-d); }

@media (max-width: 600px) {
	body .pco-tijdlijn { padding-left: 2.4rem; }
	.pco-tijdlijn::before { left: 0.8rem; }
	.pco-fase::before { left: -2.4rem; width: 1.9rem; height: 1.9rem; font-size: 1rem; }
	body .pco-fase { padding: 1.2rem 1.2rem 0.8rem; }
}

/* Bevallingsplan: actieblok bovenaan (bekijken, printen, downloaden) */
body .pco-printblok {
	margin-block: 1.5rem 2.5rem !important;
	padding: 1.4rem clamp(1.25rem, 4vw, 2rem);
	background: var(--pco-blush);
	border-radius: var(--pco-radius);
}
.pco-printblok p { margin-top: 0 !important; }
.pco-printblok .wp-block-buttons { justify-content: center; gap: 0.75rem; margin-top: 1rem !important; }

/* Printen vanaf de website: alleen de inhoud, dia's elk op een eigen pagina */
@media print {
	.pco-header-wrap, footer, .pco-footer, .pco-paginakop--foto,
	.wp-block-buttons, .pco-springlinks, .pco-faq-zwevend, .pco-faq-terug { display: none !important; }
	body { background: #fff !important; }
	body .pco-dias { display: block !important; overflow: visible !important; padding: 0 !important; }
	body .pco-dias > figure { break-inside: avoid; page-break-after: always; margin: 0 0 1rem !important; }
	.pco-dias img { box-shadow: none !important; border-radius: 0 !important; }
	.pco-kaart, .pco-fase, .is-style-pco-kaart, .pco-houding { break-inside: avoid; box-shadow: none !important; }
	.pco-partnerblok { background: #fff !important; color: #000 !important; border: 2px solid var(--pco-navy); }
	.pco-inhoud .pco-partnerblok h2, .pco-partnerblok .is-style-pco-vink { color: #000 !important; }
	a { color: inherit !important; text-decoration: none !important; }
}

/* Menu wit over de foto/donkere kop (voorpagina en pagina's met fotokop) zolang je bovenaan bent.
   Na scrollen wordt de balk wit en het menu weer donkerblauw. */
html:not(.pco-gescrold) :is(body.home, body:has(.pco-paginakop--foto)) .pco-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { color: #fff; text-shadow: 0 1px 10px rgba(11, 19, 43, 0.45); }
html:not(.pco-gescrold) :is(body.home, body:has(.pco-paginakop--foto)) .pco-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover { color: var(--pco-roze); }
html:not(.pco-gescrold) :is(body.home, body:has(.pco-paginakop--foto)) .pco-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { color: #fff; }
html:not(.pco-gescrold) :is(body.home, body:has(.pco-paginakop--foto)) .pco-nav .pco-nav__login > .wp-block-navigation-item__content { box-shadow: inset 0 0 0 2px #fff; }
html:not(.pco-gescrold) :is(body.home, body:has(.pco-paginakop--foto)) .pco-nav .pco-nav__bestel > .wp-block-navigation-item__content { color: var(--pco-navy); text-shadow: none; }

/* =================================================================
   VLUCHTTAS: afvinklijst
   ================================================================= */
body .pco-checklist { list-style: none; padding: 0; margin-top: 0.75rem !important; }
.pco-checklist > li {
	position: relative;
	padding: 0.45rem 0.4rem 0.45rem 2.2rem;
	margin: 0 -0.4rem;
	border-radius: 10px;
	cursor: pointer;
	user-select: none;
	line-height: 1.4;
	transition: background-color 0.15s ease, color 0.15s ease;
}
.pco-checklist > li:hover { background: var(--pco-creme); }
.pco-checklist > li::before {
	content: "";
	position: absolute;
	left: 0.4rem;
	top: 0.55rem;
	width: 1.2rem;
	height: 1.2rem;
	border: 2px solid var(--pco-poeder);
	border-radius: 6px;
	background: #fff;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}
.pco-checklist > li.is-klaar { color: var(--pco-grijs); text-decoration: line-through; text-decoration-color: var(--pco-roze); }
.pco-checklist > li.is-klaar::before {
	border-color: var(--pco-roze);
	background: var(--pco-roze) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B132B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 80% no-repeat;
}
.pco-checklist > li:focus-visible { outline: 3px solid var(--pco-roze-d); outline-offset: 1px; }
.pco-tas h3 { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
.pco-teller {
	flex: 0 0 auto;
	padding: 0.15rem 0.6rem;
	border-radius: 999px;
	background: var(--pco-blush);
	color: var(--pco-roze-d);
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.8rem;
	font-weight: 700;
}
.pco-tas.is-compleet { border-color: var(--pco-roze); }
.pco-tas.is-compleet .pco-teller { background: var(--pco-roze); color: var(--pco-navy); }
body .pco-tassen { margin-block: 1.25rem 2.5rem !important; }
.pco-tassen--breed .pco-checklist { columns: 2 260px; column-gap: 2rem; }
.pco-tassen--breed .pco-checklist > li { break-inside: avoid; }
body .pco-tip-blok {
	margin-block: 2.5rem 1rem !important;
	padding: 1.25rem 1.5rem 1.25rem 4rem;
	background: var(--pco-blush);
	border-radius: var(--pco-radius);
	position: relative;
}
.pco-tip-blok::before {
	content: "";
	position: absolute;
	left: 1.25rem;
	top: 1.35rem;
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 50%;
	background: var(--pco-roze) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B132B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E") center / 62% no-repeat;
}
.pco-inhoud .pco-tip-blok h3 { margin-top: 0 !important; }
.pco-tip-blok p { margin-top: 0.3rem !important; }

@media print {
	.pco-printblok, .pco-teller { display: none !important; }
	.pco-tassen { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0.6rem !important; }
	.pco-tas { padding: 0.8rem 1rem !important; border: 1px solid #ccc !important; }
	.pco-checklist > li { padding-block: 0.15rem; }
	.pco-checklist > li.is-klaar { text-decoration: none; color: inherit; }
}

/* =================================================================
   E-BOOK EXTRA'S (borst- en flesvoeding)
   ================================================================= */
.pco-ebook-kop { margin-inline: auto !important; max-width: 720px; }
.pco-ebook-kop img { border-radius: var(--pco-radius) !important; }
.pco-quote {
	margin-block: 2rem !important;
	font-family: var(--wp--preset--font-family--accent);
	font-size: clamp(1.35rem, 2.6vw, 1.75rem);
	line-height: 1.35;
	color: var(--pco-roze-d);
}
/* geen lijntjes boven en onder de quotes */
.pco-inhoudsopgave--een { columns: 1 !important; }
body .pco-inhoud-kolommen { margin-block: 0.75rem 0 !important; gap: 0.5rem 2rem !important; }
.pco-inhoud-deel .pco-label { margin: 0 0 0.5rem !important; }

/* Deel-scheiding */
body .pco-deel {
	margin-block: 3.5rem 1.5rem !important;
	padding: clamp(1.75rem, 4vw, 2.5rem);
	background: var(--pco-navy);
	border-radius: var(--pco-radius);
	text-align: center;
	color: #fff;
}
.pco-deel__nr { margin: 0 !important; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--pco-roze); }
.pco-inhoud .pco-deel h2 { margin: 0.2rem 0 0 !important; color: #fff; font-size: clamp(2rem, 4vw, 2.8rem); }

/* Twee kolommen binnen een hoofdstuk */
body .pco-twee { gap: 1rem 2.5rem !important; margin-block: 0.5rem !important; }
.pco-inhoud .pco-kolom h3 { margin-top: 0.5rem !important; }

/* Goudkleurig accentblok (colostrum) */
body .pco-goud {
	margin-block: 1.25rem !important;
	padding: 1.25rem 1.5rem;
	border-radius: 18px;
	background: linear-gradient(135deg, #FFF6E0, #FFEFD6);
	border: 1px solid #F5DDB0;
}
.pco-inhoud .pco-goud h3 { margin-top: 0 !important; color: #8A5A00; }

/* Tegels (maagje, voedingsschema) */
body .pco-tegels { gap: 0.75rem !important; margin-block: 1rem 1.25rem !important; }
body .pco-tegel {
	flex: 1 1 140px;
	padding: 1rem 1.1rem;
	border-radius: 16px;
	background: var(--pco-blush);
	text-align: center;
}
.pco-tegel > * { margin: 0 !important; }
.pco-tegel__waarde { font-family: var(--wp--preset--font-family--display); font-size: 1.6rem; line-height: 1.1; color: var(--pco-navy); }
.pco-tegel__label { margin-top: 0.3rem !important; font-size: 0.88rem; color: var(--pco-grijs); line-height: 1.35; }

/* Chips (signalen) */
body .pco-chips { list-style: none; display: flex; flex-wrap: wrap; gap: 0.5rem; padding: 0; margin-block: 0.75rem 1.25rem !important; }
body .pco-chips li { margin: 0 !important; padding: 0.45rem 0.95rem !important; border-radius: 999px; background: #fff; border: 1.5px solid var(--pco-poeder); font-size: 0.95rem; color: var(--pco-navy); }
body .pco-chips li::before { content: none !important; }

/* Voordelen-kaarten */
body .pco-voordelen { margin-top: 1rem !important; }
.pco-voordeel { border-top: 4px solid var(--pco-roze) !important; }
.pco-inhoud .pco-voordeel h3 { font-size: 1.12rem; margin-top: 0 !important; }
.pco-voordeel p { color: var(--pco-grijs); font-size: 0.97rem; }

/* =================================================================
   GOLVENDE OVERGANGEN tussen secties met een andere kleur (voorlopig alleen voorpagina)
   Elke sectie tekent bovenaan een golf in haar eigen kleur, die over
   de sectie erboven valt. Twee witte secties na elkaar: onzichtbaar.
   ================================================================= */
.home .pco-main > :is(.pco-sectie, .pco-cijfers),
.home .pco-footer { --golf: #fff; position: relative; }
.home .pco-main > :is(.pco-leer, .pco-recensies) { --golf: var(--pco-creme); }
.home .pco-main > .pco-blogsectie--donker { --golf: #0b132b; }
.home .pco-main > :is(.pco-nuchter, .pco-suzan) { --golf: var(--pco-blush); }
.home .pco-main > .pco-cijfers { --golf: var(--pco-navy); }
.home .pco-footer { --golf: var(--pco-blush); }
.home .pco-main > :is(.pco-sectie, .pco-cijfers)::before,
.home .pco-footer::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: calc(100% - 1px);
	height: clamp(22px, 3.6vw, 52px);
	background: var(--golf);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60V34C180 6 360 6 540 26s360 32 540 14 270-30 360-22v48z'/%3E%3C/svg%3E") bottom / 100% 100% no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60V34C180 6 360 6 540 26s360 32 540 14 270-30 360-22v48z'/%3E%3C/svg%3E") bottom / 100% 100% no-repeat;
	pointer-events: none;
	z-index: 3;
}
.home .pco-footer::before { z-index: 0; }
@media print { .home .pco-main > :is(.pco-sectie, .pco-cijfers)::before { display: none; } }

/* =================================================================
   BLOG OP DE VOORPAGINA: donkere band met 4 kaarten en leestijd
   ================================================================= */
.pco-blogsectie--donker { background: #0b132b; color: #fff; }
.pco-blogsectie--donker .pco-sectiekop h2 { color: #fff; }
.pco-blogsectie--donker .pco-sectiekop a { color: var(--pco-roze); }
.pco-blogsectie--donker .pco-sectiekop a:hover { color: #fff; }
body .pco-blog--kaarten .wp-block-post-template { gap: 1.75rem; }
.pco-blog--kaarten .wp-block-post {
	border-radius: 4px;
	box-shadow: none;
	min-height: 100%;
}
.pco-blog--kaarten .wp-block-post:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -18px rgba(0, 0, 0, 0.6); }
.pco-blog--kaarten .wp-block-post-featured-image { position: relative; margin: 0; overflow: visible !important; }
.pco-blog--kaarten .wp-block-post-featured-image a { display: block; overflow: hidden; height: 100%; }
.pco-blog--kaarten .wp-block-post-featured-image img { border-radius: 0 !important; }
.pco-leestijd__label {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateY(40%);
	padding: 0.45rem 0.9rem;
	background: var(--pco-roze);
	color: #0b132b;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	z-index: 1;
}
.pco-blog--kaarten .wp-block-post-title {
	padding: 1.9rem 1.5rem 0;
	font-family: var(--wp--preset--font-family--body);
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.35;
	flex-grow: 1;
}
.pco-blog--kaarten .wp-block-post-title a { color: #0b132b; }
.pco-blog--kaarten .wp-block-read-more {
	display: inline-block;
	margin: 1.5rem 1.5rem 1.6rem !important;
	color: var(--pco-roze-d);
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.pco-blog--kaarten .wp-block-read-more:hover { color: #0b132b; }

/* Onderkant van de donkere blogband ook als golf (naar beneden gespiegeld) */
.home .pco-main > .pco-blogsectie--donker::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% - 1px);
	height: clamp(22px, 3.6vw, 52px);
	background: #0b132b;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60V34C180 6 360 6 540 26s360 32 540 14 270-30 360-22v48z'/%3E%3C/svg%3E") bottom / 100% 100% no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60V34C180 6 360 6 540 26s360 32 540 14 270-30 360-22v48z'/%3E%3C/svg%3E") bottom / 100% 100% no-repeat;
	transform: scaleY(-1);
	pointer-events: none;
	z-index: 3;
}

/* Voorpagina: geen dubbele golf onderaan. De donkere blogband golft direct in het roze;
   het blok "Klaar om te beginnen?" krijgt dezelfde roze achtergrond als de footer. */
.home .pco-cta { background: var(--pco-blush); }
.home .pco-footer::before { display: none; }

/* De Kubio-plugin (nog actief voor oude pagina's) zet alle pagina-inhoud op 840px
   via ".entry-content > *". Hier weer op de normale breedte van het thema (1180px). */
html body .pco-inhoud.entry-content > :not(.alignfull):not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--content-size, 1180px); }

/* =================================================================
   HOMEPAGE SPEELSER: iconen, foto's, tekstballonnen
   ================================================================= */
.pco-ico--euro { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 6.3A7 7 0 1 0 17 17.7'/%3E%3Cpath d='M4.5 10.5h8M4.5 13.5h8'/%3E%3C/svg%3E"); }
.pco-ico--video { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M10 9.3v5.4l4.6-2.7z'/%3E%3C/svg%3E"); }
.pco-ico--hart { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7.5-4.6-7.5-10.2A4.1 4.1 0 0 1 12 7.4a4.1 4.1 0 0 1 7.5 2.4C19.5 15.4 12 20 12 20z'/%3E%3C/svg%3E"); }
.pco-ico--baby { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='13.5' r='7'/%3E%3Cpath d='M12 6.5c0-2 1.4-3.2 3.2-3'/%3E%3Cpath d='M9.4 12.6h.01M14.6 12.6h.01'/%3E%3Cpath d='M10 16.2c1.2 1 2.8 1 4 0'/%3E%3C/svg%3E"); }
.pco-ico--route { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='18' r='2.2'/%3E%3Ccircle cx='18' cy='6' r='2.2'/%3E%3Cpath d='M8.2 18H15a3 3 0 0 0 0-6H9a3 3 0 0 1 0-6h6.8'/%3E%3C/svg%3E"); }
.pco-ico--samen { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 20a5.5 5.5 0 0 1 11 0'/%3E%3Ccircle cx='17' cy='9' r='2.4'/%3E%3Cpath d='M15.8 14.3A4.8 4.8 0 0 1 21 19'/%3E%3C/svg%3E"); }
.pco-ico--pil { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.5 20.5 3.5 13.5a4.95 4.95 0 0 1 7-7l7 7a4.95 4.95 0 0 1-7 7z'/%3E%3Cpath d='m8.5 8.5 7 7'/%3E%3C/svg%3E"); }
.pco-ico--plan { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h4l10 10h4'/%3E%3Cpath d='M3 17h4l3-3'/%3E%3Cpath d='M14 10l3-3h4'/%3E%3Cpath d='m18 4 3 3-3 3'/%3E%3Cpath d='m18 14 3 3-3 3'/%3E%3C/svg%3E"); }
.pco-ico--adem { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10.5a3 3 0 1 0-3-3'/%3E%3Cpath d='M3 12h15a3 3 0 1 1-3 3'/%3E%3Cpath d='M3 16h6.5'/%3E%3C/svg%3E"); }
.pco-ico--lach { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8.6 14c1.9 2 4.9 2 6.8 0'/%3E%3Cpath d='M9 9.6h.01M15 9.6h.01'/%3E%3C/svg%3E"); }
.pco-ico--kalender { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='3'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E"); }
.pco-ico--ster { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3.2 2.7 5.5 6 .9-4.35 4.25 1 6L12 17l-5.35 2.85 1-6L3.3 9.6l6-.9z'/%3E%3C/svg%3E"); }
.pco-ico--praat { --pco-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5h14a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H10l-5 4v-4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2z'/%3E%3Cpath d='M8 10h.01M12 10h.01M16 10h.01'/%3E%3C/svg%3E"); }
/* Icoon in een roze rondje boven of naast een blok (klasse: pco-ico pco-ico--naam) */
.pco-ico { position: relative; }
.pco-ico::before {
	content: "";
	display: block;
	width: 3.6rem;
	height: 3.6rem;
	border-radius: 50%;
	background: var(--pco-blush) var(--pco-ico) center / 52% no-repeat;
	transition: transform 0.3s ease;
}
.pco-ico:hover::before { transform: rotate(-8deg) scale(1.06); }

/* Drie punten: kaartjes met icoon, gecentreerd */
.pco-drie__punt { border-top: 0 !important; padding: 2rem 1.75rem 1.75rem !important; text-align: center; background: #fff; border-radius: 26px; box-shadow: 0 14px 34px -24px rgba(11, 19, 43, 0.35); }
.pco-drie__punt::before { margin: 0 auto 1rem; width: 4.25rem; height: 4.25rem; }
.pco-drie__punt h3 { margin: 0 0 0.5rem; font-size: 1.35rem; }
.pco-drie__punt p { margin: 0; }
.pco-drie__punt a { color: var(--pco-roze-d); font-weight: 700; }

/* Wat leer je: foto links, onderwerpen met icoon rechts */
.pco-leer__kolommen { gap: clamp(2rem, 5vw, 4.5rem) !important; }
body .pco-leer__raster { margin-block: 1.5rem 2rem !important; gap: 1.25rem 1.75rem; }
.pco-leer__item {
	display: grid;
	grid-template-columns: 3.1rem 1fr;
	column-gap: 1rem;
	align-items: start;
	background: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	border-radius: 0;
}
.pco-leer__item::before { grid-row: span 2; width: 3.1rem; height: 3.1rem; margin: 0; background: #fff var(--pco-ico) center / 54% no-repeat; box-shadow: 0 8px 20px -12px rgba(231, 125, 152, 0.7); }
.pco-leer__item > * { grid-column: 2; }
.pco-leer__item h3 { font-size: 1.12rem; margin: 0.15rem 0 0.15rem; font-family: var(--wp--preset--font-family--body); font-weight: 700; }
.pco-leer__item p { font-size: 0.95rem; line-height: 1.45; }
.pco-foto-staand img { aspect-ratio: 4 / 5 !important; }
.pco-bovenkop { margin: 0 0 0.25rem !important; font-family: var(--wp--preset--font-family--accent); font-size: 1.35rem; color: var(--pco-roze-d); }

/* Nuchter: foto met zwevend recensiekaartje */
.pco-nuchter__beeld { position: relative; }
.pco-nuchter__beeld .pco-foto-boog img { aspect-ratio: 4 / 4.2; object-position: 50% 30%; }
body .wp-block-quote.pco-recensie--zwevend {
	position: relative;
	z-index: 2;
	max-width: 330px;
	margin: -4.5rem 0 0 -1.5rem !important;
	padding: 1.25rem 1.4rem;
	border-radius: 20px;
	transform: rotate(-2deg);
}
.pco-recensie--zwevend p { margin: 0 !important; font-size: 1rem; line-height: 1.45; }
.pco-recensie--zwevend .pco-sterren { margin-bottom: 0.35rem !important; }
.pco-recensie--zwevend cite { margin-top: 0.6rem; font-size: 0.9rem; }

/* Herken je dit: tekstballonnen */
.pco-herken__lijst { display: flex; flex-direction: column; gap: 0.85rem; }
.pco-herken__lijst li {
	align-self: flex-start;
	max-width: 30rem;
	padding: 0.9rem 1.25rem 0.9rem 3.3rem !important;
	border: 0 !important;
	border-radius: 22px 22px 22px 6px;
	background: var(--pco-blush);
	line-height: 1.4;
	box-shadow: 0 8px 22px -18px rgba(11, 19, 43, 0.4);
}
.pco-herken__lijst li:nth-child(even) { align-self: flex-end; border-radius: 22px 22px 6px 22px; background: #fff; border: 1.5px solid var(--pco-poeder) !important; }
.pco-herken__lijst li::before {
	top: 50% !important;
	left: 0.9rem !important;
	transform: translateY(-50%);
	width: 1.7rem !important;
	height: 1.7rem !important;
	border-radius: 0 !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E77D98' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5h14a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H10l-5 4v-4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2z'/%3E%3Cpath d='M8 10h.01M12 10h.01M16 10h.01'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Cijfers: icoon boven elk getal */
.pco-cijfers__rij > .pco-ico::before { margin: 0 auto 0.85rem; width: 3rem; height: 3rem; background-color: rgba(255, 255, 255, 0.08); }

/* Partner: ronde sticker "ook leuk voor mannen" */
.pco-partner__beeld { position: relative; }
body .pco-sticker {
	position: absolute;
	right: -0.5rem;
	bottom: -1.5rem;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	transform: rotate(6deg);
	transition: transform 0.3s ease;
}
.pco-sticker:hover { transform: rotate(0deg) scale(1.05); }
.pco-sticker > * { margin: 0 !important; }
.pco-sticker img { width: 120px !important; height: 120px; border: 5px solid #fff; box-shadow: 0 12px 28px -14px rgba(11, 19, 43, 0.55); }
.pco-sticker__tekst a { display: inline-block; padding: 0.35rem 0.85rem; border-radius: 999px; background: var(--pco-roze); color: var(--pco-navy); font-size: 0.85rem; font-weight: 700; text-decoration: none; white-space: nowrap; }

@media (max-width: 781px) {
	.pco-leer__kolommen > .wp-block-column:first-child { max-width: 420px; margin-inline: auto; }
	body .wp-block-quote.pco-recensie--zwevend { margin: -3.5rem auto 0 !important; }
	.pco-herken__lijst li, .pco-herken__lijst li:nth-child(even) { align-self: stretch; }
	body .pco-sticker { right: 0.5rem; bottom: -1rem; }
	.pco-sticker img { width: 96px !important; height: 96px; }
}
/* Lange woorden in koppen netjes afbreken op de telefoon (bv. "zwangerschapscursus") */
@media (max-width: 600px) { h1, h2, h3 { hyphens: auto; -webkit-hyphens: auto; } }

/* Vrijstaande (uitgesneden) foto's zonder kader, met een zachte roze vorm erachter */
.pco-foto-vrij { position: relative; isolation: isolate; margin: 0; }
.pco-foto-vrij img { width: 100%; height: auto !important; aspect-ratio: auto !important; border-radius: 0 !important; object-fit: contain !important; }
.pco-foto-vrij::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 8% 4% 2% 8%;
	border-radius: 50%;
	background: radial-gradient(circle at 40% 40%, #fff 0%, var(--pco-blush) 70%);
	transform: rotate(-6deg);
}
.pco-nuchter .pco-foto-vrij::before { background: radial-gradient(circle at 40% 40%, #fff 0%, #FDE0E6 70%); inset: 4% -2% -4% 6%; }
.pco-foto-vrij--rond::before { inset: 12% 6% 6% 10%; border-radius: 46% 54% 50% 50% / 52% 48% 52% 48%; }
.pco-foto-rechts img { object-position: 78% 50% !important; }

/* Nuchter: losse recensie onder de knop (niet aan de foto vast) */
body .wp-block-quote.pco-recensie--klein {
	max-width: 440px;
	margin: 2rem 0 0 !important;
	padding: 1.1rem 1.3rem;
	border-radius: 18px;
	transform: none;
}
.pco-recensie--klein p { margin: 0 !important; font-size: 0.98rem; line-height: 1.45; }
.pco-recensie--klein .pco-sterren { margin-bottom: 0.3rem !important; }
.pco-recensie--klein cite { margin-top: 0.5rem; font-size: 0.88rem; }

/* Hero-titel op de telefoon: iets kleiner zodat "krachtige" en "bevalling" heel blijven */
@media (max-width: 600px) {
	.pco-hero__titel { font-size: clamp(1.9rem, 10.5vw, 2.7rem); hyphens: manual; -webkit-hyphens: manual; text-wrap: balance; overflow-wrap: normal; }
}

/* Homepage: alle knoppen gecentreerd op de telefoon */
@media (max-width: 781px) {
	.home .pco-main .wp-block-buttons { justify-content: center; }
}

/* Bestelpagina: stappen onder de pakketten */
body .pco-pakketten + .pco-stappen { margin-top: clamp(2.5rem, 5vw, 4rem) !important; margin-bottom: clamp(2.5rem, 5vw, 4rem) !important; }

/* =================================================================
   WISSELBALK: online <-> op locatie (staat op beide sites)
   Alleen voor bezoekers die niet zijn ingelogd (klasse pco-uitgelogd),
   niet op de bestel-/afrekenpagina's. Klapt in zodra je scrolt.
   ================================================================= */
:root { --pco-wissel-hoogte: 40px; }
.pco-wissel { background: var(--pco-navy); color: #fff; font-size: 0.82rem; max-height: var(--pco-wissel-hoogte); overflow: hidden; transition: max-height 0.25s ease; }
.pco-gescrold .pco-wissel { max-height: 0; }
.pco-wissel__rij { display: flex; align-items: center; gap: 0.25rem; min-height: var(--pco-wissel-hoogte); margin: 0 auto !important; }
.pco-wissel__tab {
	display: inline-flex; align-items: center; gap: 0.35rem;
	align-self: stretch;
	padding: 0 1rem;
	color: rgba(255, 255, 255, 0.75) !important;
	font-weight: 700; letter-spacing: 0.04em; text-decoration: none !important;
	border-radius: 12px 12px 0 0;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.pco-wissel__tab:hover { color: #fff !important; background: rgba(255, 255, 255, 0.08); }
.pco-wissel__tab.is-actief { background: var(--pco-roze); color: var(--pco-navy) !important; }
.pco-wissel__uitleg { margin-left: auto; color: rgba(255, 255, 255, 0.7); }
.pco-wissel__uitleg strong { color: var(--pco-roze); }
body:has(.pco-wissel) .pco-hero { padding-top: calc(var(--pco-header-hoogte) + var(--pco-wissel-hoogte) + clamp(2.5rem, 7vh, 5rem)); }
body:has(.pco-wissel) .pco-paginakop--foto { padding-top: calc(var(--pco-header-hoogte) + var(--pco-wissel-hoogte) + clamp(1.5rem, 4vh, 3rem)); }
.single-memberpressproduct .pco-wissel { display: none; }
html.pco-gescrold .pco-header-wrap { background: #fff !important; }
@media (max-width: 781px) { .pco-wissel__uitleg { display: none; } .pco-wissel__tab { flex: 1; justify-content: center; padding: 0 0.5rem; } }

/* =================================================================
   MOBIEL MENU: compacte lijst, submenu's inklapbaar, knop onderaan
   ================================================================= */
.pco-sub-knop { display: none; }
.pco-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 4rem !important; gap: 0 !important; align-items: stretch !important; }
.pco-nav .is-menu-open .wp-block-navigation__container { align-items: stretch !important; gap: 0 !important; width: 100%; }
.pco-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item {
	display: grid !important;
	grid-template-columns: 1fr auto;
	align-items: center;
	width: 100%;
	font-size: 1.12rem !important;
	border-bottom: 1px solid rgba(11, 19, 43, 0.1);
}
.pco-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { padding: 0.85rem 0 !important; font-weight: 500; }
.pco-nav .is-menu-open .wp-block-navigation-submenu__toggle,
.pco-nav .is-menu-open .wp-block-navigation__submenu-icon { display: none !important; }
.pco-nav .is-menu-open .pco-sub-knop {
	display: grid;
	place-items: center;
	width: 2.4rem;
	height: 2.4rem;
	border: 0;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
}
.pco-nav .is-menu-open .pco-sub-knop::before {
	content: "";
	width: 0.55rem;
	height: 0.55rem;
	border-right: 2px solid var(--pco-navy);
	border-bottom: 2px solid var(--pco-navy);
	transform: translateY(-2px) rotate(45deg);
	transition: transform 0.2s ease;
}
.pco-nav .is-menu-open .pco-sub-open > .pco-sub-knop { background: var(--pco-roze); }
.pco-nav .is-menu-open .pco-sub-open > .pco-sub-knop::before { transform: translateY(2px) rotate(-135deg); }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container {
	display: none !important;
	grid-column: 1 / -1;
	padding: 0 0 0.75rem 0.9rem !important;
	gap: 0 !important;
}
.pco-nav .is-menu-open .pco-sub-open > .wp-block-navigation__submenu-container { display: flex !important; flex-direction: column; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { font-size: 1rem !important; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.5rem 0 !important; color: var(--pco-grijs) !important; }
/* Aanmelden: grote knop onderaan het menu */
.pco-nav .is-menu-open :is(.pco-nav__bestel, .pco-nav__login) {
	display: block !important;
	border-bottom: 0 !important;
	margin-top: 1.25rem !important;
}
.pco-nav .is-menu-open :is(.pco-nav__bestel, .pco-nav__login) > .wp-block-navigation-item__content {
	display: block !important;
	text-align: center;
	padding: 1rem !important;
	font-size: 1rem;
}
.pco-nav .is-menu-open .pco-sub-open > .wp-block-navigation__submenu-container { align-items: flex-start !important; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { width: 100%; justify-content: flex-start !important; text-align: left; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container,
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { align-items: flex-start !important; justify-content: flex-start !important; }
.pco-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { text-align: left !important; }

.pco-nav .is-menu-open .pco-nav__login { margin-top: 1.25rem !important; }
.pco-nav .is-menu-open .pco-nav__login + .pco-nav__bestel,
.pco-nav .is-menu-open .pco-nav__bestel { margin-top: 0.6rem !important; }


html body .pco-nav .is-menu-open .pco-nav__login > .wp-block-navigation-item__content { box-shadow: inset 0 0 0 2px var(--pco-navy) !important; color: var(--pco-navy) !important; text-shadow: none !important; }
html body .pco-nav .is-menu-open .pco-nav__bestel > .wp-block-navigation-item__content { color: var(--pco-navy) !important; text-shadow: none !important; }

/* Pregnancy Course Online */
.pco-foto-boven img { object-position: 50% 18% !important; }
.pco-drie .wp-block-columns { margin-top: 2.5rem !important; }
.pco-recensies .pco-recensie__foto { display: none; }
