@font-face {
	font-family: "FontinSans";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url("../fonts/FontinSans-Regular.woff") format("woff"),
	     url("../fonts/FontinSans-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "FontinSans";
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url("../fonts/FontinSans-Bold.woff") format("woff"),
	     url("../fonts/FontinSans-Bold.ttf") format("truetype");
}

@font-face {
	font-family: "FontinSans";
	font-weight: 700;
	font-style: italic;
	font-display: swap;
	src: url("../fonts/FontinSans-BoldItalic.woff") format("woff"),
	     url("../fonts/FontinSans-BoldItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Bazar";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url("../fonts/Bazar.ttf") format("truetype");
}

:root {
	--nlkv-dark: #3a3230;
	--nlkv-dark-soft: #3a3230;
	--nlkv-light: #f6f5f2;
	--nlkv-ink: #342f2e;
	--nlkv-muted: #746f6b;
	--nlkv-accent: #d7a06a;
	--nlkv-white: #ffffff;
	--nlkv-width: 2500px;
	--nlkv-gutter: clamp(22px, 5vw, 72px);
	--nlkv-header: 74px;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: #b5a48e;
	color: var(--nlkv-ink);
	font-family: "Inter", Arial, sans-serif;
	font-size: 18px;
	line-height: 1.6;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.22em;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.site-frame {
	width: min(100%, var(--nlkv-width));
	margin: 0 auto;
	background-color: var(--nlkv-light);
	background-image: radial-gradient(circle, rgba(90, 70, 50, 0.07) 1px, transparent 1px);
	background-size: 26px 26px;
	box-shadow: 0 0 40px rgba(0, 0, 0, 0.12);
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: var(--nlkv-light);
	border-bottom: 1px solid rgba(58, 50, 48, 0.10);
}

.site-header__inner {
	min-height: var(--nlkv-header);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 0 var(--nlkv-gutter);
}

.site-brand {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 1px;
	color: var(--nlkv-dark);
	text-decoration: none;
}

.site-brand__mark {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(20px, 2.2vw, 28px);
	font-weight: 500;
	font-style: italic;
	line-height: 1;
	letter-spacing: 0;
}

.site-brand__name {
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--nlkv-muted);
}

.site-brand__sub {
	font-size: 9px;
	font-weight: 400;
	font-style: italic;
	letter-spacing: 0.06em;
	color: var(--nlkv-muted);
}

.custom-logo-link img {
	max-height: 54px;
	width: auto;
}

.primary-nav > ul,
.primary-nav > div > ul,
.site-footer ul {
	display: flex;
	align-items: center;
	gap: clamp(14px, 2vw, 30px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.primary-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--nlkv-dark);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-decoration: none;
	transition: color 0.2s ease;
}

.primary-nav li {
	position: relative;
}

.primary-nav .sub-menu {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	right: auto;
	display: grid;
	gap: 0;
	min-width: 220px;
	padding: 10px 0;
	margin: 0;
	list-style: none;
	background: #3a3230;
	border-radius: 8px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}

.primary-nav .sub-menu a {
	display: flex;
	min-height: 0;
	padding: 10px 18px;
	font-size: 13px;
	font-weight: 500;
	text-transform: none;
	color: var(--nlkv-accent);
}

.primary-nav .sub-menu a:hover,
.primary-nav .sub-menu a:focus-visible {
	color: var(--nlkv-white);
}

.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.primary-nav > ul > li:last-child > .sub-menu,
.primary-nav > div > ul > li:last-child > .sub-menu {
	left: auto;
	right: 0;
}

.primary-nav a:hover,
.primary-nav a:focus-visible {
	color: var(--nlkv-accent);
}

.primary-nav .sub-menu .current-menu-item > a,
.primary-nav .sub-menu .current_page_item > a {
	color: var(--nlkv-accent);
}

body:not(.home):not(.front-page) .primary-nav > ul > .current-menu-item > a,
body:not(.home):not(.front-page) .primary-nav > ul > .current-menu-ancestor > a,
body:not(.home):not(.front-page) .primary-nav > ul > .current_page_item > a,
body:not(.home):not(.front-page) .primary-nav > ul > .current_page_ancestor > a,
body:not(.home):not(.front-page) .primary-nav > div > ul > .current-menu-item > a,
body:not(.home):not(.front-page) .primary-nav > div > ul > .current-menu-ancestor > a,
body:not(.home):not(.front-page) .primary-nav > div > ul > .current_page_item > a,
body:not(.home):not(.front-page) .primary-nav > div > ul > .current_page_ancestor > a {
	color: var(--nlkv-dark);
	text-decoration: underline;
	text-underline-offset: 0.35em;
	text-decoration-thickness: 1px;
}

.menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(58, 50, 48, 0.22);
	border-radius: 8px;
	background: transparent;
	color: var(--nlkv-dark);
	cursor: pointer;
}

.sub-toggle {
	display: none;
}

body.nav-open {
	overflow: hidden;
}

.menu-toggle__line,
.menu-toggle__line::before,
.menu-toggle__line::after {
	display: block;
	width: 20px;
	height: 2px;
	margin: 0 auto;
	background: currentColor;
	content: "";
}

.menu-toggle__line::before {
	transform: translateY(-7px);
}

.menu-toggle__line::after {
	transform: translateY(5px);
}

.content-wrap,
.home-block__inner,
.site-footer__inner {
	width: 100%;
	max-width: var(--nlkv-width);
	margin: 0 auto;
	padding-inline: var(--nlkv-gutter);
}

.home-block {
	overflow: hidden;
	scroll-margin-top: var(--nlkv-header);
}

.home-block--dark {
	background: var(--nlkv-dark);
	color: var(--nlkv-white);
}

.home-block--light {
	background: var(--nlkv-light);
	background-image: none;
	color: var(--nlkv-ink);
}

.home-block__inner {
	min-height: clamp(520px, 58vw, 780px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	align-items: center;
	gap: clamp(24px, 5vw, 88px);
	padding-block: clamp(46px, 7vw, 110px);
}

.home-block--hero .home-block__inner {
	min-height: clamp(600px, 66vw, 820px);
	padding-top: clamp(52px, 7vw, 96px);
}

.home-block__content {
	position: relative;
	z-index: 2;
}

.home-block__eyebrow,
.home-block__title {
	margin: 0;
	font-family: "FontinSans", Arial, sans-serif;
	font-weight: 700;
	line-height: 0.95;
	text-transform: uppercase;
	letter-spacing: -0.01em;
}

.home-block__eyebrow {
	font-size: clamp(56px, 9vw, 126px);
}

.home-block__title {
	margin-top: 8px;
	font-size: clamp(58px, 9.4vw, 138px);
}

.home-block__title--script {
	font-family: "Permanent Marker", "Comic Sans MS", cursive;
	font-size: clamp(50px, 8vw, 128px);
	line-height: 1;
	text-transform: none;
	transform: rotate(-5deg);
	transform-origin: left center;
}

.home-block--hero .home-block__eyebrow {
	font-size: clamp(72px, 9.4vw, 100px);
}

.home-block--hero .home-block__title--script {
	color: var(--nlkv-accent);
	font-size: clamp(82px, 13vw, 170px);
}

.home-block__text {
	max-width: 540px;
	margin-top: clamp(26px, 4vw, 52px);
	font-size: clamp(17px, 1.8vw, 26px);
}

.home-block--quote .home-block__text {
	max-width: 620px;
	font-size: clamp(30px, 4.2vw, 58px);
	line-height: 1.18;
}

.home-block__text p {
	margin: 0 0 1em;
}

.home-block__text p:last-child {
	margin-bottom: 0;
}

.home-block__link {
	display: inline-flex;
	margin-top: clamp(22px, 3vw, 42px);
	color: var(--nlkv-accent);
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.home-block__media {
	align-self: end;
}

.home-block--image-right .home-block__content { order: 1; }
.home-block--image-right .home-block__media   { order: 2; }
.home-block--image-left  .home-block__content { order: 2; }
.home-block--image-left  .home-block__media   { order: 1; }

.home-block__media img {
	width: 100%;
	max-height: 660px;
	object-fit: contain;
	object-position: center bottom;
}

.home-block--intro .home-block__media img,
.home-block--contact .home-block__media img {
	max-height: 720px;
}

.home-block--feature .home-block__inner {
	min-height: clamp(520px, 62vw, 860px);
}

.home-block--feature .home-block__media {
	align-self: end;
}

.home-block--credentials .home-block__inner {
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	min-height: clamp(520px, 52vw, 720px);
}

.home-block--credentials .home-block__text {
	font-size: clamp(18px, 2vw, 28px);
}

.home-block--contact .home-block__inner {
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}

/* ── Page hero ─────────────────────────────────────────────── */

.page-hero {
	background: var(--nlkv-dark);
	color: var(--nlkv-white);
}

.page-hero--fallback {
	padding-block: clamp(64px, 10vw, 130px);
}

.page-hero--fallback .page-hero__content {
	padding-inline: var(--nlkv-gutter);
}

.page-hero--fallback h1 {
	max-width: 980px;
	margin: 0;
	font-family: "FontinSans", Arial, sans-serif;
	font-size: clamp(48px, 8vw, 108px);
	font-weight: 700;
	line-height: 0.95;
	text-transform: uppercase;
	letter-spacing: -0.02em;
}

.page-hero--image {
	position: relative;
	overflow: hidden;
	height: clamp(340px, 48vw, 640px);
}

.page-hero--image > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--hero-img-pos, center center);
	display: block;
}

.page-hero--image .page-hero__content {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: flex-end;
	padding-inline: var(--nlkv-gutter);
	padding-bottom: clamp(36px, 5.5vw, 72px);
}

.page-hero--title-right .page-hero__content {
	justify-content: flex-end;
	text-align: right;
}

.page-hero--image h1 {
	max-width: min(720px, 62%);
	margin: 0;
	color: var(--nlkv-white);
	font-family: "FontinSans", Arial, sans-serif;
	font-size: clamp(40px, 7vw, 96px);
	font-weight: 700;
	line-height: 0.95;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	-webkit-text-stroke: 5px var(--nlkv-accent);
	paint-order: stroke fill;
	filter: drop-shadow(0 3px 12px rgba(0, 0, 0, 0.45));
}

/* ── Page content ───────────────────────────────────────────── */

.page-content,
.post-list {
	padding-top: clamp(20px, 2.5vw, 36px);
	padding-bottom: clamp(44px, 7vw, 92px);
}

.page-content > * {
	max-width: 100%;
}

.page-content > *:first-child,
.page-content > *:first-child > *:first-child {
	margin-top: 0;
}

.page-content--has-hero > h1:first-child,
.page-content--has-hero > h2:first-child:not(.post-single__title),
.page-content--has-hero > h3:first-child {
	display: none;
}

.page-content h2,
.page-content h3,
.post-card h2 {
	font-family: "FontinSans", Arial, sans-serif;
	font-weight: 700;
	line-height: 1;
}

.page-content h2 {
	font-size: clamp(36px, 5.5vw, 68px);
	margin-top: clamp(36px, 5vw, 60px);
}

.page-content h3 {
	font-size: clamp(24px, 3.5vw, 42px);
}

.page-content a {
	color: var(--nlkv-accent);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.22em;
}

.page-content a:hover {
	opacity: 0.8;
}

.page-content blockquote {
	margin-inline: 0;
	padding: 20px 28px;
	border-left: 3px solid var(--nlkv-accent);
	background: rgba(215, 160, 106, 0.07);
	border-radius: 0 10px 10px 0;
	font-style: italic;
}

.page-content table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.94em;
}

.page-content th,
.page-content td {
	padding: 10px 14px;
	border-bottom: 1px solid rgba(52, 47, 46, 0.12);
	text-align: left;
}

.page-content th {
	font-weight: 600;
	border-bottom-color: rgba(52, 47, 46, 0.28);
}

/* ── Galerij & afbeeldingen in pagina-content ───────────────── */

/* Klassieke WordPress [gallery] shortcode */
.page-content .gallery {
	display: grid;
	gap: clamp(8px, 1.5vw, 14px);
	margin-block: clamp(24px, 3vw, 40px);
}

.page-content .gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.page-content .gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.page-content .gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.page-content .gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }

.page-content .gallery-item,
.page-content .gallery-icon {
	margin: 0;
}

.page-content .gallery-item a {
	display: block;
	overflow: hidden;
	border-radius: 6px;
}

.page-content .gallery-item img {
	width: 100%;
	height: auto;
	transition: transform 0.3s ease;
}

.page-content .gallery-item a:hover img {
	transform: scale(1.04);
}

/* Gutenberg Galerij-blok */
.page-content .wp-block-gallery {
	margin-block: clamp(24px, 3vw, 40px);
	gap: clamp(8px, 1.5vw, 14px) !important;
}

/* Publicatieraster (clubblad, kalenders) */
.nlkv-pub-grid {
	display: grid;
	gap: clamp(8px, 1.5vw, 14px);
	margin-block: clamp(24px, 3vw, 40px);
}

.nlkv-pub-grid--6 { grid-template-columns: repeat(6, 1fr); }
.nlkv-pub-grid--4 { grid-template-columns: repeat(4, 1fr); }

.nlkv-pub-grid figure {
	margin: 0;
}

.nlkv-pub-grid figure img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 6px;
	box-shadow: 0 4px 20px rgba(52, 47, 46, 0.14);
}

.nlkv-pub-grid__leeg {
	border-radius: 6px;
}

.nlkv-pub-grid--6 .nlkv-pub-grid__leeg { aspect-ratio: 3 / 4; }
.nlkv-pub-grid--4 .nlkv-pub-grid__leeg { aspect-ratio: 4 / 3; }

@media (max-width: 700px) {
	.nlkv-pub-grid--6 { grid-template-columns: repeat(3, 1fr); }
	.nlkv-pub-grid--4 { grid-template-columns: repeat(2, 1fr); }
}

/* Enkelvoudige Gutenberg afbeelding */
.page-content .wp-block-image {
	margin-block: clamp(12px, 2vw, 20px);
}

.page-content .wp-block-image img {
	border-radius: 6px;
	box-shadow: 0 4px 20px rgba(52, 47, 46, 0.14);
}

/* Hulpklasse: voeg "magazine-grid" toe aan een Groep-blok */
.page-content .magazine-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: clamp(10px, 2vw, 20px);
	margin-block: clamp(24px, 3vw, 40px);
}

.page-content .magazine-grid figure {
	margin: 0;
}

.page-content .magazine-grid img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	box-shadow: 0 4px 20px rgba(52, 47, 46, 0.14);
	transition: transform 0.3s ease;
}

.page-content .magazine-grid a:hover img {
	transform: scale(1.03);
}

.post-card {
	padding-block: 28px;
	border-bottom: 1px solid rgba(52, 47, 46, 0.16);
}

.post-card h2 {
	margin: 0 0 12px;
	font-size: clamp(24px, 3vw, 42px);
}

.post-card h2 a {
	color: inherit;
	text-decoration: none;
	transition: color 0.18s;
}

.post-card h2 a:hover {
	color: var(--nlkv-accent);
}

.post-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1.25rem;
	margin-bottom: 0.75rem;
}

.post-card__datum {
	font-size: 0.875rem;
	color: var(--nlkv-muted);
	font-weight: 500;
}

.post-card__labels {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.post-card__label {
	display: inline-block;
	padding: 0.15rem 0.6rem;
	background: var(--nlkv-light, #ece4d6);
	border: 1px solid rgba(52, 47, 46, 0.18);
	color: var(--nlkv-ink);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background 0.15s, color 0.15s;
}

.post-card__label:hover {
	background: var(--nlkv-accent);
	color: #fff;
	border-color: var(--nlkv-accent);
}

.post-card__excerpt {
	color: var(--nlkv-ink);
	font-size: clamp(14px, 1.1vw, 16px);
	line-height: 1.65;
	max-width: 680px;
	margin-bottom: 1rem;
}

.post-card__excerpt p {
	margin: 0;
}

.post-card__link {
	display: inline-flex;
	color: var(--nlkv-accent);
	font-weight: 700;
	font-size: 0.9375rem;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-decoration: none;
	transition: opacity 0.15s;
}

.post-card__link:hover {
	opacity: 0.75;
}

/* Enkelvoudig bericht */
h2.post-single__title {
	display: block;
	margin: 0 0 1rem;
	font-size: clamp(24px, 3vw, 42px);
}

.post-single__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1.25rem;
	margin-bottom: 2rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(52, 47, 46, 0.16);
}

.post-single__terug {
	margin-top: clamp(32px, 4vw, 56px);
	font-size: 0.9375rem;
	font-weight: 600;
}

.site-footer {
	background: var(--nlkv-dark);
	color: rgba(255, 255, 255, 0.78);
}

.site-footer__inner {
	display: flex;
	align-items: center;
	gap: 24px;
	padding-block: 30px;
	font-size: 14px;
}

.site-footer__brand {
	flex: 1;
	display: flex;
	align-items: center;
}

.site-footer__brand img {
	height: 36px;
	width: auto;
}

.site-footer__brand a {
	display: flex;
	align-items: center;
	gap: 10px;
}

.site-footer__copy {
	flex: 1;
	margin: 0;
	text-align: right;
}

.site-footer p {
	margin: 0;
}

.site-footer a {
	color: inherit;
	text-decoration: none;
}

@media (max-width: 900px) {
	:root {
		--nlkv-header: 66px;
	}

	body {
		font-size: 16px;
	}

	.menu-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.primary-nav {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		display: none;
		max-height: calc(100dvh - var(--nlkv-header));
		overflow-y: auto;
		background: var(--nlkv-dark);
		border-top: 1px solid rgba(58, 50, 48, 0.12);
		z-index: 40;
	}

	.primary-nav.is-open {
		display: block;
	}

	.primary-nav > ul,
	.primary-nav > div > ul {
		display: grid;
		gap: 0;
		padding: 12px var(--nlkv-gutter) 20px;
	}

	.primary-nav a {
		min-height: 48px;
		color: var(--nlkv-accent);
	}

	/* Actief menu-item: overschrijf de donkere desktop-kleur voor leesbaarheid op donkere achtergrond */
	body:not(.home):not(.front-page) .primary-nav > ul > .current-menu-item > a,
	body:not(.home):not(.front-page) .primary-nav > ul > .current-menu-ancestor > a,
	body:not(.home):not(.front-page) .primary-nav > ul > .current_page_item > a,
	body:not(.home):not(.front-page) .primary-nav > ul > .current_page_ancestor > a,
	body:not(.home):not(.front-page) .primary-nav > div > ul > .current-menu-item > a,
	body:not(.home):not(.front-page) .primary-nav > div > ul > .current-menu-ancestor > a,
	body:not(.home):not(.front-page) .primary-nav > div > ul > .current_page_item > a,
	body:not(.home):not(.front-page) .primary-nav > div > ul > .current_page_ancestor > a {
		color: var(--nlkv-white);
		text-decoration: underline;
		text-underline-offset: 0.35em;
		text-decoration-thickness: 1px;
	}

	/* Sub-menu standaard verborgen op mobiel */
	.primary-nav .sub-menu {
		position: static;
		display: none;
		min-width: 0;
		padding: 0 0 8px 16px;
		background: transparent;
		border-radius: 0;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	/* Sub-menu zichtbaar na klik */
	.primary-nav li.sub-open > .sub-menu {
		display: grid;
	}

	.primary-nav .sub-menu a {
		min-height: 0;
		padding: 10px 0;
		font-size: 14px;
	}

	/* Regel zodat link + toggle-knop naast elkaar staan */
	.primary-nav .menu-item-has-children {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	.primary-nav .menu-item-has-children > a {
		flex: 1;
	}

	.primary-nav .menu-item-has-children > .sub-menu {
		width: 100%;
	}

	/* Toggle-knop */
	.sub-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border: none;
		border-radius: 8px;
		background: rgba(255, 255, 255, 0.08);
		color: var(--nlkv-accent);
		cursor: pointer;
		flex-shrink: 0;
	}

	.sub-toggle svg {
		transition: transform 0.22s ease;
	}

	.sub-toggle[aria-expanded="true"] svg {
		transform: rotate(180deg);
	}

	.home-block__inner,
	.home-block--credentials .home-block__inner,
	.home-block--contact .home-block__inner {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.home-block--image-left .home-block__media {
		order: 2;
	}

	.home-block--image-left .home-block__content {
		order: 1;
	}

	.home-block__media img {
		max-height: 430px;
		margin-inline: auto;
	}

	.home-block__text {
		max-width: 100%;
	}

	.site-footer__inner {
		flex-wrap: wrap;
		gap: 16px;
	}

	.site-footer__brand,
	.site-footer__copy {
		flex: unset;
	}

	.site-footer__copy {
		text-align: left;
	}

	.page-content .gallery-columns-4,
	.page-content .gallery-columns-5 {
		grid-template-columns: repeat(3, 1fr);
	}

	.page-hero--image {
		height: clamp(260px, 55vw, 460px);
	}

	.page-hero--image h1 {
		max-width: 90%;
	}
}

@media (max-width: 560px) {
	:root {
		--nlkv-gutter: 18px;
	}

	.page-content .gallery-columns-3,
	.page-content .gallery-columns-4,
	.page-content .gallery-columns-5 {
		grid-template-columns: repeat(2, 1fr);
	}

	.site-brand__name,
	.site-brand__sub {
		display: none;
	}

	.page-hero--image h1 {
		max-width: 100%;
		font-size: clamp(26px, 8vw, 48px);
		-webkit-text-stroke: 3px var(--nlkv-accent);
	}

	.page-hero--title-right .page-hero__content {
		justify-content: flex-start;
		text-align: left;
	}

	.home-block__inner {
		padding-block: 42px;
	}

	.home-block__eyebrow {
		font-size: 54px;
	}

	.home-block__title {
		font-size: 58px;
	}

	.home-block__title--script {
		font-size: 52px;
	}

	.home-block--hero .home-block__title--script {
		font-size: 72px;
	}

	.home-block--quote .home-block__text {
		font-size: 30px;
	}
}

/* ── Windows DPI-schalingscorrecties ────────────────────────────
   min-resolution vuurt op basis van devicePixelRatio (DPR).
   max-resolution: 1.9dppx sluit Mac Retina (2.0dppx) uit —
   alleen Windows DPI 125 %–175 % wordt getroffen.
   125 % DPI → DPR 1,25 → vuurt vanaf 1,2dppx
   150 % DPI → DPR 1,50 → vuurt vanaf 1,4dppx            */

@media (min-resolution: 1.2dppx) and (max-resolution: 1.9dppx) {
	.home-block__inner {
		min-height: clamp(400px, 55vw, 680px);
	}
	.home-block--hero .home-block__inner {
		min-height: clamp(400px, 58vw, 720px);
	}
	.home-block--feature .home-block__inner {
		min-height: clamp(400px, 58vw, 720px);
	}
	.home-block--credentials .home-block__inner {
		min-height: clamp(380px, 48vw, 640px);
	}
	.home-block__media img {
		max-height: 540px;
	}
	.home-block--intro .home-block__media img,
	.home-block--contact .home-block__media img {
		max-height: 580px;
	}
}

@media (min-resolution: 1.4dppx) and (max-resolution: 1.9dppx) {
	.home-block__eyebrow {
		font-size: clamp(44px, 7.5vw, 96px);
	}
	.home-block__title {
		font-size: clamp(46px, 8vw, 106px);
	}
	.home-block__title--script {
		font-size: clamp(40px, 6.5vw, 96px);
	}
	.home-block--hero .home-block__eyebrow {
		font-size: clamp(52px, 7.5vw, 78px);
	}
	.home-block--hero .home-block__title--script {
		font-size: clamp(60px, 9.5vw, 124px);
	}
	.home-block__text {
		margin-top: clamp(18px, 3vw, 36px);
	}
	.home-block__inner {
		min-height: clamp(320px, 48vw, 540px);
		padding-block: clamp(28px, 5vw, 64px);
	}
	.home-block--hero .home-block__inner {
		min-height: clamp(320px, 50vw, 560px);
		padding-top: clamp(32px, 5vw, 64px);
	}
	.home-block--feature .home-block__inner {
		min-height: clamp(320px, 50vw, 560px);
	}
	.home-block--credentials .home-block__inner {
		min-height: clamp(300px, 42vw, 500px);
	}
	.home-block__media img {
		max-height: 380px;
	}
	.home-block--intro .home-block__media img,
	.home-block--contact .home-block__media img {
		max-height: 420px;
	}
}
