/* Raamdecoland - landingspagina's uit blokken (landing.php): soortpagina, hoofdcategorie, situatiepagina.
   Mobile-first. Zelfde huisstijl als de productpagina: Sora/Figtree (uit Kadence), var(--rdl-ink), lime var(--rdl-lime), kaarten 14-16px. */

.rdl-lp { --lp-marge: 20px; --lp-tekst: var(--rdl-ink); --lp-grijs: #4a5246; --lp-lijn: #e1e4dd; --lp-vlak: var(--rdl-tint); --lp-lime: var(--rdl-lime); --lp-magenta: var(--rdl-magenta-ink); color: var(--lp-tekst); overflow-x: clip; }
.rdl-lp *, .rdl-lp *::before, .rdl-lp *::after { box-sizing: border-box; }
.rdl-lp h1, .rdl-lp h2 { margin: 0; font-family: Sora, sans-serif; font-weight: 700; letter-spacing: -0.02em; color: var(--lp-tekst); overflow-wrap: break-word; }
.rdl-lp h2 { font-size: 24px; line-height: 1.15; }
.rdl-lp h2 small { margin-left: 6px; font-family: Figtree, sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0; color: var(--lp-grijs); white-space: nowrap; }
.rdl-lp ul { list-style: none; margin: 0; padding: 0; }
.rdl-lp li { margin: 0; }
.rdl-lp figure, .rdl-lp blockquote { margin: 0; padding: 0; border: 0; }
.rdl-lp blockquote::before, .rdl-lp blockquote::after { content: none; }
.rdl-lp img { display: block; max-width: 100%; height: auto; }
.rdl-lp [hidden] { display: none !important; }
.rdl-lp-wrap { max-width: 1240px; margin: 0 auto; padding-left: var(--lp-marge); padding-right: var(--lp-marge); }
/* Afstanden uit tokens.css: tussen twee secties --rdl-sectie (40px mobiel, 64px vanaf 768px), elk de helft. */
.rdl-lp-sectie { padding: calc(var(--rdl-sectie, 40px) / 2) 0; scroll-margin-top: 16px; }
.rdl-lp-sectie h2 { margin-bottom: 18px; }
@media (max-width: 359px) { .rdl-lp { --lp-marge: 16px; } }
@media (min-width: 768px) { .rdl-lp { --lp-marge: 24px; } .rdl-lp h2 { font-size: 30px; } .rdl-lp-sectie h2 { margin-bottom: 24px; } }
@media (prefers-reduced-motion: no-preference) { html:has(.rdl-lp) { scroll-behavior: smooth; } }

/* Knoppen */
.rdl-lp .rdl-lp-knop { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 14px 24px; border: 2px solid transparent; border-radius: 12px; font-family: inherit; font-size: 17px; font-weight: 800; line-height: 1.2; text-decoration: none; cursor: pointer; }
/* Kleurronde: de hoofdknop is ink (lime alleen in de kopen-flow); de klassenaam blijft voor de bestaande HTML */
.rdl-lp .rdl-lp-knop--lime { background: var(--rdl-ink); color: #fff; }
.rdl-lp .rdl-lp-knop--lime:hover { background: #2c3a30; color: #fff; }
.rdl-lp .rdl-lp-knop--omlijnd { border-color: var(--lp-tekst); background: #fff; color: var(--lp-tekst); }
.rdl-lp .rdl-lp-knop--omlijnd:hover { background: var(--lp-vlak); color: var(--lp-tekst); }
.rdl-lp .rdl-lp-knop--licht { border-color: #4b5647; background: transparent; color: #fff; }
.rdl-lp .rdl-lp-knop--licht:hover { border-color: #fff; color: #fff; }
/* Eén focusrand (tokens.css): 2px donker met ruimte, ook voor chips, pillen en het sorteerveld */
.rdl-lp a:focus-visible, .rdl-lp button:focus-visible, .rdl-lp summary:focus-visible, .rdl-lp select:focus-visible { outline: var(--rdl-focus, 2px solid var(--rdl-ink)); outline-offset: var(--rdl-focus-offset, 2px); }
/* Op de donkere vlakken (hulpband, CTA-balk) dezelfde rand in wit, anders is hij niet te zien */
.rdl-lp-hulp a:focus-visible, .rdl-lp-cta a:focus-visible { outline-color: #fff; }

/* a. Hero: mobiel de foto eerst (volle breedte, 230px, score als label), dan kop, intro, vinkjes en knop */
.rdl-lp-hero__binnen { display: flex; flex-direction: column; padding-left: 0; padding-right: 0; }
.rdl-lp-hero__beeld { order: -1; position: relative; height: 230px; overflow: hidden; background: #e9ece4; }
.rdl-lp-hero__beeld img { width: 100%; height: 100%; object-fit: cover; }
.rdl-lp-hero__tekst { padding: 18px var(--lp-marge) 28px; }
.rdl-lp-hero.is-zonder-foto .rdl-lp-hero__tekst { padding-top: 24px; }
.rdl-lp-kruimel { margin-bottom: 10px; font-size: 13px; line-height: 1.4; color: var(--lp-grijs); }
.rdl-lp-kruimel a { color: var(--lp-grijs); text-decoration: underline; text-underline-offset: 2px; }
.rdl-lp-hero h1 { font-size: 30px; line-height: 1.1; }
.rdl-lp-hero__intro { margin-top: 12px; max-width: 60ch; font-size: 16px; line-height: 1.55; color: var(--lp-grijs); }
.rdl-lp-hero__intro p { margin: 0 0 10px; }
.rdl-lp-hero__intro > *:last-child { margin-bottom: 0; }
.rdl-lp-hero__intro a { color: var(--lp-tekst); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.rdl-lp-vanaf { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 6px; margin: 16px 0 0; padding: 8px 14px; border-radius: 12px; background: var(--lp-vlak); font-size: 15px; color: var(--lp-tekst); }
.rdl-lp-vanaf strong { font-family: Sora, sans-serif; font-size: 22px; }
.rdl-lp-vanaf span { font-size: 13px; color: var(--lp-grijs); }
.rdl-lp ul.rdl-lp-vinkjes { display: flex; flex-direction: column; gap: 8px; margin: 16px 0 0; }
.rdl-lp-vinkjes li { display: flex; align-items: flex-start; gap: 8px; font-size: 15px; font-weight: 600; line-height: 1.35; }
.rdl-lp-vinkjes svg { flex: none; margin-top: 1px; }
.rdl-lp-hero__acties { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; margin-top: 20px; }
.rdl-lp-hero__acties .rdl-lp-knop { flex: 1 1 100%; }
.rdl-lp-score { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--lp-grijs); }
.rdl-lp-score strong { color: var(--lp-tekst); font-size: 15px; }
.rdl-lp-score .rdlh-sterren { display: inline-flex; gap: 2px; }
.rdl-lp-hero__acties .rdl-lp-score { display: none; }
.rdl-lp-score--label { position: absolute; left: var(--lp-marge); bottom: 12px; padding: 7px 12px; border-radius: 10px; background: #fff; box-shadow: 0 2px 10px rgba(22, 32, 26, 0.18); }
.rdl-lp-hero.is-zonder-foto .rdl-lp-hero__acties .rdl-lp-score { display: inline-flex; }
/* Pillen onder de knop: de soorten (hoofdcategorie) of de andere uitvoeringen (soortpagina).
   Mobiel op één regel, horizontaal scrollend tot aan de rand van het scherm. */
.rdl-lp-pillen { display: flex; align-items: center; gap: 8px; margin: 16px calc(var(--lp-marge) * -1) 0; padding: 2px var(--lp-marge) 6px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.rdl-lp-pillen::-webkit-scrollbar { display: none; }
.rdl-lp-pillen__label { flex: none; font-size: 13px; font-weight: 600; color: var(--lp-grijs); white-space: nowrap; }
.rdl-lp .rdl-lp-pillen ul { display: flex; gap: 8px; }
.rdl-lp-pillen li { flex: none; }
.rdl-lp .rdl-lp-pil { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 8px 14px; border: 1.5px solid #c9cec3; border-radius: 999px; background: #fff; font-size: 14px; font-weight: 600; line-height: 1.2; color: var(--lp-grijs); text-decoration: none; white-space: nowrap; }
.rdl-lp a.rdl-lp-pil:hover { border-color: var(--lp-tekst); color: var(--lp-tekst); }
.rdl-lp .rdl-lp-pil.is-actief { border-color: var(--lp-tekst); color: var(--lp-tekst); font-weight: 700; }
/* Soort en hoofdcategorie op telefoon en tablet: geen sfeerfoto; onder 768px de korte intro in plaats van de
   volledige en alleen "← {ouder}" als kruimelpad, zodat de producten eerder in beeld komen. */
.rdl-lp-hero__intro--kort, .rdl-lp-terug { display: none; }
@media (max-width: 767px) {
  .rdl-lp-hero__intro--lang { display: none; }
  .rdl-lp-hero__intro--kort { display: block; }
  .rdl-lp-kruimel { display: none; }
  .rdl-lp .rdl-lp-terug { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; min-height: 44px; margin: -12px 0 0; font-size: 14px; font-weight: 600; line-height: 1.2; color: var(--lp-grijs); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  /* Badge "vanaf": prijs en toelichting breken als geheel af, nooit door elkaar */
  .rdl-lp-vanaf { max-width: 100%; }
  /* Hoofdcategorie: geen pillen en geen vinkjes; de tegels per soort staan direct onder de knop */
  .rdl-lp--hoofd .rdl-lp-pillen, .rdl-lp--hoofd ul.rdl-lp-vinkjes { display: none; }
  .rdl-lp--hoofd .rdl-lp-hero__tekst { padding-bottom: 12px; }
  .rdl-lp--hoofd .rdl-lp-soorten { padding-top: 16px; }
  /* Pillenrij: zachte fade rechts zolang er meer te scrollen is (klasse uit landing.js) */
  .rdl-lp-pillen.is-meer { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent); }
  /* Soortpagina: geen vinkjes en geen knop "Kies je kleur"; de kleuren staan er direct onder */
  .rdl-lp--soort ul.rdl-lp-vinkjes, .rdl-lp--soort .rdl-lp-hero__acties { display: none; }
  .rdl-lp--soort .rdl-lp-hero__tekst { padding-bottom: 8px; }
  .rdl-lp--soort .rdl-lp-raster { padding-top: 20px; }
}
@media (max-width: 1023px) {
  .rdl-lp--soort .rdl-lp-hero__beeld, .rdl-lp--hoofd .rdl-lp-hero__beeld { display: none; }
  .rdl-lp--soort .rdl-lp-hero__tekst, .rdl-lp--hoofd .rdl-lp-hero__tekst { padding-top: 24px; }
}
@media (min-width: 768px) {
  .rdl-lp-pillen { flex-wrap: wrap; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; overflow: visible; }
  .rdl-lp .rdl-lp-pillen ul { flex-wrap: wrap; }
  .rdl-lp-hero__acties .rdl-lp-knop { flex: 0 0 auto; }
  .rdl-lp-hero__beeld { height: 320px; }
}
@media (min-width: 1024px) {
  .rdl-lp-hero { padding: 28px 0 8px; }
  .rdl-lp-hero__binnen { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 48px; align-items: center; padding-left: var(--lp-marge); padding-right: var(--lp-marge); }
  .rdl-lp-hero.is-zonder-foto .rdl-lp-hero__binnen { grid-template-columns: minmax(0, 760px); }
  .rdl-lp-hero__tekst { padding: 0; }
  /* Het vak houdt de verhouding van de foto zelf (inline --rdl-verhouding en --rdl-r, landing.php), dus niets
     bijsnijden, maar de hoogte is begrensd (--lp-hero-h): een vierkante foto wordt een smaller vak, een liggende
     een breder vak, en de tekstkolom krijgt de rest. Zo blijft de hero laag genoeg voor het blok eronder. */
  .rdl-lp-hero__beeld { --lp-hero-h: clamp(300px, 52vh, 440px); order: 0; width: min(calc(var(--lp-hero-h) * var(--rdl-r, 1.3333)), 44vw, 560px); height: auto; aspect-ratio: var(--rdl-verhouding, 4 / 3); border-radius: 16px; }
  .rdl-lp-hero h1 { font-size: 44px; line-height: 1.06; }
  .rdl-lp-hero__intro { font-size: 18px; }
  .rdl-lp ul.rdl-lp-vinkjes { flex-direction: row; flex-wrap: wrap; gap: 8px 20px; }
  .rdl-lp-hero__acties .rdl-lp-score { display: inline-flex; }
  .rdl-lp-score--label { display: none; }
}
/* Laag scherm (laptop, 768px hoog): kop, intro en tussenruimtes iets kleiner, zodat het volgende blok in beeld komt */
@media (min-width: 1024px) and (max-height: 820px) {
  .rdl-lp-hero { padding-top: 20px; }
  .rdl-lp-hero h1 { font-size: 38px; }
  .rdl-lp-hero__intro { max-width: 72ch; font-size: 16px; line-height: 1.5; }
  .rdl-lp-vanaf, .rdl-lp ul.rdl-lp-vinkjes, .rdl-lp-pillen { margin-top: 12px; }
  .rdl-lp-hero__acties { margin-top: 16px; }
}

/* Tegels per soort (ook "Andere uitvoeringen") */
.rdl-lp-soorten { background: var(--lp-vlak); }
.rdl-lp ul.rdl-lp-tegels { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.rdl-lp-tegel { display: flex; height: 100%; overflow: hidden; border: 1px solid var(--lp-lijn); border-radius: 16px; background: #fff; color: var(--lp-tekst); text-decoration: none; }
.rdl-lp-tegel:hover { border-color: var(--lp-tekst); color: var(--lp-tekst); }
/* Beeldvak in de verhouding van de foto (inline --rdl-verhouding), nooit vierkant bijgesneden */
.rdl-lp-tegel__beeld { flex: 0 0 34%; align-self: center; aspect-ratio: var(--rdl-verhouding, 4 / 3); background: #e9ece4; }
.rdl-lp-tegel__beeld img { width: 100%; height: 100%; object-fit: cover; }
.rdl-lp-tegel__tekst { flex: 1 1 auto; display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 14px 16px; }
.rdl-lp-tegel__naam { font-family: Sora, sans-serif; font-size: 17px; font-weight: 700; line-height: 1.2; }
.rdl-lp-tegel__prijs { font-size: 14px; color: var(--lp-grijs); }
.rdl-lp-tegel__prijs strong { color: var(--lp-tekst); font-size: 16px; }
.rdl-lp-tegel__kenmerken { display: flex; flex-direction: column; gap: 3px; font-size: 13px; line-height: 1.35; color: var(--lp-grijs); }
.rdl-lp-tegel__kenmerken span { display: flex; align-items: flex-start; gap: 6px; }
.rdl-lp-tegel__kenmerken svg { flex: none; width: 15px; height: 15px; margin-top: 1px; }
.rdl-lp-tegel__knop { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 6px; font-size: 15px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 600px) {
  .rdl-lp ul.rdl-lp-tegels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .rdl-lp ul.rdl-lp-tegels { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
  .rdl-lp ul.rdl-lp-tegels--1, .rdl-lp ul.rdl-lp-tegels--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rdl-lp ul.rdl-lp-tegels--3, .rdl-lp ul.rdl-lp-tegels--5, .rdl-lp ul.rdl-lp-tegels--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rdl-lp-tegels:not(.rdl-lp-tegels--1):not(.rdl-lp-tegels--2) .rdl-lp-tegel { flex-direction: column; }
  .rdl-lp-tegels:not(.rdl-lp-tegels--1):not(.rdl-lp-tegels--2) .rdl-lp-tegel__beeld { flex: none; align-self: stretch; aspect-ratio: var(--rdl-verhouding, 4 / 3); }
  .rdl-lp-tegel__tekst { padding: 18px; }
  .rdl-lp-tegel__naam { font-size: 19px; }
}

/* Voor jouw raam (hoofdcategorie): drie kaarten naar de situatiepagina's */
.rdl-lp-ramen__vlak { padding: var(--space-4, 16px); border-radius: var(--rdl-radius, 12px); background: var(--lp-vlak); }
.rdl-lp .rdl-lp-ramen__vlak h2 { margin: 0 0 4px; font-size: 22px; }
.rdl-lp-ramen__vlak p { margin: 0 0 16px; font-size: 15px; color: var(--lp-grijs); }
.rdl-lp .rdl-lp-ramen ul { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.rdl-lp-ramen a { display: flex; align-items: flex-start; gap: 14px; height: 100%; padding: 16px; border-radius: 12px; background: #fff; color: var(--lp-tekst); text-decoration: none; }
.rdl-lp-ramen a:hover { color: var(--lp-tekst); box-shadow: 0 0 0 1.5px var(--lp-tekst); }
.rdl-lp-ramen svg { flex: none; }
.rdl-lp-ramen a > span { display: flex; flex-direction: column; gap: 4px; }
.rdl-lp-ramen strong { font-size: 16px; }
.rdl-lp-ramen a > span > span { font-size: 14px; line-height: 1.4; color: var(--lp-grijs); }
.rdl-lp-ramen b { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 700; }
@media (min-width: 768px) {
  .rdl-lp-ramen__vlak { padding: 24px; }
  .rdl-lp .rdl-lp-ramen ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
}

/* b. Kleurenraster */
.rdl-lp-raster__kop { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 10px 20px; margin-bottom: 14px; }
.rdl-lp-raster__kop h2 { margin: 0; }
.rdl-lp-sorteer { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--lp-grijs); }
.rdl-lp-sorteer select { min-height: 44px; padding: 8px 32px 8px 12px; border: 1px solid #c9cec3; border-radius: 10px; background-color: #fff; font-family: inherit; font-size: 15px; color: var(--lp-tekst); }
/* Chips: mobiel horizontaal scrollend vanaf de marge, zodat ze boven de producten op één regel blijven */
.rdl-lp-chips { display: flex; gap: 8px; margin: 0 calc(var(--lp-marge) * -1) 18px; padding: 2px var(--lp-marge) 6px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.rdl-lp-chips::-webkit-scrollbar { display: none; }
.rdl-lp .rdl-lp-chip { flex: none; display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 8px 14px; border: 1.5px solid #c9cec3; border-radius: 999px; background: #fff; box-shadow: none; font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1.2; color: var(--lp-tekst); cursor: pointer; }
.rdl-lp .rdl-lp-chip:hover { border-color: var(--lp-tekst); background: #fff; color: var(--lp-tekst); }
.rdl-lp .rdl-lp-chip.is-actief { border-color: var(--lp-tekst); background: var(--lp-tekst); color: #fff; }
.rdl-lp-chip small { font-size: 13px; font-weight: 400; opacity: 0.75; }
.rdl-lp-chip__bol { width: 16px; height: 16px; border-radius: 50%; border: 1px solid rgba(22, 32, 26, 0.25); }
.rdl-lp ul.rdl-lp-kaarten { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; }
/* De kaart zelf: assets/css/productkaart.css (ook gebruikt in de winkel en het categorie-archief) */
.rdl-lp-raster__meer { margin: 22px 0 0; text-align: center; }
.rdl-lp-raster__meer .rdl-lp-knop { width: 100%; }
.rdl-lp-raster__leeg { margin: 12px 0 0; color: var(--lp-grijs); }
.rdl-lp-raster__alles { margin: 18px 0 0; text-align: center; font-size: 15px; }
.rdl-lp-raster__alles a { color: var(--rdl-magenta-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 600px) {
  .rdl-lp ul.rdl-lp-kaarten { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 16px; }
  .rdl-lp-raster__meer .rdl-lp-knop { width: auto; min-width: 260px; }
}
@media (min-width: 768px) {
  .rdl-lp-chips { flex-wrap: wrap; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; overflow: visible; }
}
@media (min-width: 1024px) {
  .rdl-lp ul.rdl-lp-kaarten { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 18px; }
}

/* d. Hulpband */
.rdl-lp-hulp { padding: var(--rdl-sectie, 40px) 0; background: var(--lp-tekst); color: #fff; }
.rdl-lp-hulp__binnen { display: flex; flex-direction: column; gap: 16px; }
.rdl-lp-hulp__foto { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; }
.rdl-lp .rdl-lp-hulp h2 { color: #fff; font-size: 22px; }
.rdl-lp-hulp__kop p { margin: 4px 0 0; font-size: 15px; color: #c9d1c4; }
.rdl-lp ul.rdl-lp-hulp__acties { display: flex; flex-direction: column; gap: 10px; }
.rdl-lp-hulp__acties li > a, .rdl-lp-hulp__contact { display: flex; flex-direction: column; gap: 2px; min-height: 60px; justify-content: center; padding: 12px 16px; border: 1.5px solid #4b5647; border-radius: 14px; color: #fff; text-decoration: none; }
.rdl-lp-hulp__acties li > a:hover { border-color: var(--lp-lime); color: #fff; }
.rdl-lp-hulp__acties strong { font-size: 16px; }
.rdl-lp-hulp__acties span span, .rdl-lp-hulp__acties a > span { font-size: 14px; color: #c9d1c4; }
.rdl-lp-hulp__contact a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
@media (min-width: 1024px) {
  .rdl-lp-hulp__binnen { flex-direction: row; align-items: center; gap: 24px; }
  .rdl-lp-hulp__kop { flex: 0 0 240px; }
  .rdl-lp ul.rdl-lp-hulp__acties { flex: 1 1 auto; flex-direction: row; gap: 14px; }
  .rdl-lp-hulp__acties li { flex: 1 1 0; }
  .rdl-lp-hulp__acties li > a, .rdl-lp-hulp__contact { height: 100%; }
}

/* e. Reviews */
.rdl-lp-reviews__lijst { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.rdl-lp-review { display: flex; flex-direction: column; gap: 10px; padding: 18px; border: 1px solid var(--lp-lijn); border-radius: 16px; background: #fff; }
.rdl-lp-review .rdlh-sterren { display: inline-flex; gap: 2px; }
.rdl-lp-review blockquote { font-size: 16px; font-style: normal; line-height: 1.5; color: var(--lp-tekst); }
.rdl-lp-review figcaption { font-size: 14px; font-weight: 700; color: var(--lp-grijs); }
@media (min-width: 768px) { .rdl-lp-reviews__lijst { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; } }

/* f. Lange tekst: leesbare kolom (ongeveer 70 tekens per regel), tweede sfeerfoto ernaast op desktop */
.rdl-lp-tekst { background: var(--lp-vlak); }
.rdl-lp-tekst__kolom { max-width: 68ch; font-size: 17px; line-height: 1.65; color: #2c352e; }
.rdl-lp .rdl-lp-tekst__kolom h2 { margin: 28px 0 10px; font-size: 24px; }
.rdl-lp .rdl-lp-tekst__kolom h3 { margin: 22px 0 8px; font-family: Sora, sans-serif; font-size: 19px; font-weight: 700; color: var(--lp-tekst); }
.rdl-lp-tekst__kolom > *:first-child { margin-top: 0; }
.rdl-lp-tekst__kolom p { margin: 0 0 14px; }
.rdl-lp .rdl-lp-tekst__kolom ul, .rdl-lp .rdl-lp-tekst__kolom ol { margin: 0 0 14px; padding-left: 22px; }
.rdl-lp .rdl-lp-tekst__kolom ul { list-style: disc; }
.rdl-lp .rdl-lp-tekst__kolom ol { list-style: decimal; }
.rdl-lp-tekst__kolom li { margin-bottom: 6px; }
.rdl-lp-tekst__kolom a { color: var(--rdl-magenta-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.rdl-lp-tekst__beeld { display: none; }
@media (min-width: 1024px) {
  .rdl-lp-tekst.is-met-foto .rdl-lp-tekst__binnen { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: 56px; align-items: start; }
  .rdl-lp-tekst__beeld { display: block; position: sticky; top: 24px; overflow: hidden; border-radius: 16px; }
  .rdl-lp-tekst__beeld img { width: 100%; }
}

/* g. Veelgestelde vragen */
.rdl-lp-faq__lijst { max-width: 820px; border-top: 1px solid var(--lp-lijn); }
.rdl-lp-faq details { border-bottom: 1px solid var(--lp-lijn); }
.rdl-lp-faq summary { position: relative; display: block; min-height: 56px; padding: 16px 40px 16px 0; font-size: 17px; font-weight: 700; line-height: 1.35; cursor: pointer; list-style: none; }
.rdl-lp-faq summary::-webkit-details-marker { display: none; }
.rdl-lp-faq summary::after { content: "+"; position: absolute; right: 6px; top: 50%; transform: translateY(-50%); font-size: 26px; font-weight: 400; line-height: 1; }
.rdl-lp-faq details[open] summary::after { content: "\2212"; }
.rdl-lp-faq__antwoord { padding: 0 0 18px; max-width: 68ch; font-size: 16px; line-height: 1.6; color: #2c352e; }
.rdl-lp-faq__antwoord p { margin: 0 0 10px; }
.rdl-lp-faq__antwoord > *:last-child { margin-bottom: 0; }
.rdl-lp .rdl-lp-faq__antwoord ul { margin: 0 0 10px; padding-left: 22px; list-style: disc; }
.rdl-lp-faq__antwoord a { color: var(--rdl-magenta-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }

/* h. CTA-balk onderaan */
.rdl-lp-cta { padding: 24px 0; background: var(--lp-tekst); color: #fff; }
.rdl-lp-cta__binnen { display: flex; flex-direction: column; gap: 16px; }
.rdl-lp-cta p { margin: 0; display: flex; flex-direction: column; gap: 4px; }
.rdl-lp-cta strong { font-family: Sora, sans-serif; font-size: 20px; line-height: 1.2; }
.rdl-lp-cta p span { font-size: 15px; color: #c9d1c4; }
.rdl-lp-cta__knoppen { display: flex; flex-wrap: wrap; gap: 10px; }
.rdl-lp-cta__knoppen .rdl-lp-knop { flex: 1 1 180px; }
@media (min-width: 768px) {
  .rdl-lp-cta__binnen { flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
  .rdl-lp-cta__knoppen .rdl-lp-knop { flex: 0 0 auto; }
}

/* Mobiel: extra ruimte in het raster is niet nodig; de balk "Kleurstalen (n)" krijgt zijn ruimte al van de footer */
