/*
Theme Name: Chalet Heuvelrug Child
Theme URI: https://chaletheuvelrug.com
Description: Child theme voor de Chalet Heuvelrug homepage, gebouwd op het Extendable thema.
Author: DocBase
Template: extendable
Version: 1.2.1
Text Domain: chalet-heuvelrug-child

LET OP: "Template: extendable" moet exact overeenkomen met de mapnaam van
het parent-theme in wp-content/themes/ (in jouw geval "extendable").
Klopt de mapnaam niet, dan activeert WordPress dit child theme niet.
*/

/* ==========================================================================
   Lettertypen, zelf gehost (geen verbinding met Google Fonts).
   Work Sans (Regular + Bold) en Amatic SC (Bold), beide onder de SIL Open
   Font License (zie assets/fonts/OFL-*.txt). Gewichten 500 en 600 vallen
   terug op de dichtstbijzijnde van de twee beschikbare bestanden.
   ========================================================================== */

@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url('assets/fonts/work-sans-400.woff') format('woff');
}

@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url('assets/fonts/work-sans-700.woff') format('woff');
}

@font-face {
  font-family: 'Amatic SC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('assets/fonts/amatic-sc-700.woff') format('woff');
}

/* ==========================================================================
   Chalet Heuvelrug — front page styles
   Alles hieronder is geschoold onder #chalet-heuvelrug-home zodat het niet
   botst met de eigen stijlen van het Vogue parent-theme.
   ========================================================================== */

#chalet-heuvelrug-home,
#chalet-heuvelrug-home * {
  box-sizing: border-box;
}

#chalet-heuvelrug-home {
  font-family: 'Work Sans', system-ui, sans-serif;
  background: #f8f4ec;
  color: #3a2f22;
  line-height: 1.5;
}

#chalet-heuvelrug-home a {
  color: inherit;
  text-decoration: none;
}

#chalet-heuvelrug-home a:hover {
  opacity: 0.85;
}

#chalet-heuvelrug-home img {
  max-width: 100%;
  height: auto;
  display: block;
}

#chalet-heuvelrug-home .ch-display {
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
}

#chalet-heuvelrug-home .ch-eyebrow {
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #a8916b;
}

#chalet-heuvelrug-home .ch-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #c96a37;
  color: #fbf3e7;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  padding: 15px 28px;
  border-radius: 6px;
  letter-spacing: 0.01em;
  border: none;
  cursor: pointer;
}

#chalet-heuvelrug-home .ch-cta-btn svg {
  flex: 0 0 auto;
}

#chalet-heuvelrug-home .ch-container {
  max-width: 1140px;
  margin: 0 auto;
}

/* ---------- HERO ---------- */

#chalet-heuvelrug-home .ch-hero {
  position: relative;
  background: linear-gradient(160deg, #2c4636 0%, #1f2f27 100%);
  padding: 100px 40px;
}

/* ---------- TAALSCHAKELAAR ---------- */

#chalet-heuvelrug-home .ch-lang-switch {
  position: absolute;
  top: 28px;
  right: 40px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
}

#chalet-heuvelrug-home .ch-lang-switch a {
  color: rgba(243, 234, 217, 0.45);
}

#chalet-heuvelrug-home .ch-lang-switch a:hover {
  opacity: 1;
  color: rgba(243, 234, 217, 0.75);
}

#chalet-heuvelrug-home .ch-lang-switch a.is-active {
  color: #d9a866;
}

#chalet-heuvelrug-home .ch-lang-switch a.is-active:hover {
  color: #d9a866;
  opacity: 1;
}

#chalet-heuvelrug-home .ch-lang-switch span {
  color: rgba(243, 234, 217, 0.25);
}

/* Brochurepagina: het label "Advertentie" staat rechtsboven, de schakelaar komt links ervan. */
@media (min-width: 901px) {
  #chalet-heuvelrug-home .ch-vb-hero .ch-lang-switch {
    top: 24px;
    right: 170px;
  }
}

#chalet-heuvelrug-home .ch-hero__inner {
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  flex-wrap: wrap;
}

#chalet-heuvelrug-home .ch-hero__brand {
  display: flex;
  align-items: center;
  gap: 40px;
}

#chalet-heuvelrug-home .ch-logo {
  flex: 0 0 auto;
  width: 260px;
  height: 238px;
}

#chalet-heuvelrug-home .ch-hero__divider {
  width: 2px;
  align-self: stretch;
  background: rgba(243, 234, 217, 0.22);
}

#chalet-heuvelrug-home .ch-hero__text {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: left;
}

#chalet-heuvelrug-home .ch-hero__title {
  color: #f3ead9;
  font-size: 84px;
  letter-spacing: 0.01em;
  line-height: 1;
}

#chalet-heuvelrug-home .ch-hero__subtitle {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #cbb896;
  text-align: left;
}

#chalet-heuvelrug-home .ch-hero__cta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
}

#chalet-heuvelrug-home .ch-hero__note {
  font-size: 13px;
  color: rgba(243, 234, 217, 0.6);
  line-height: 1.5;
}

/* ---------- INTRO ---------- */

#chalet-heuvelrug-home .ch-intro {
  padding: 100px 40px;
}

#chalet-heuvelrug-home .ch-section-head {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
}

#chalet-heuvelrug-home .ch-section-head--wide {
  max-width: 820px;
}

#chalet-heuvelrug-home .ch-heading {
  color: #3a2f22;
  font-size: 52px;
  line-height: 1;
}

#chalet-heuvelrug-home .ch-heading--sm {
  font-size: 44px;
}

#chalet-heuvelrug-home .ch-lead {
  color: #5c5344;
  font-size: 17px;
  line-height: 1.75;
}

#chalet-heuvelrug-home .ch-gallery {
  max-width: 1140px;
  margin: 48px auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

#chalet-heuvelrug-home .ch-gallery__item {
  aspect-ratio: 1 / 1;
  border-radius: 2px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(43, 36, 28, 0.18);
}

#chalet-heuvelrug-home .ch-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ---------- OPTIES & KENMERKEN ---------- */

#chalet-heuvelrug-home .ch-features-head {
  max-width: 1140px;
  margin: 80px auto 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
}

#chalet-heuvelrug-home .ch-features {
  max-width: 1140px;
  margin: 24px auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
  align-items: center;
}

#chalet-heuvelrug-home .ch-features__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

#chalet-heuvelrug-home .ch-feature {
  display: flex;
  align-items: center;
  gap: 14px;
}

#chalet-heuvelrug-home .ch-feature__icon {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #f1ede2;
  display: flex;
  align-items: center;
  justify-content: center;
}

#chalet-heuvelrug-home .ch-feature__label {
  font-size: 15px;
  color: #3a2f22;
  font-weight: 500;
}

#chalet-heuvelrug-home .ch-feature__sub {
  font-size: 12px;
  color: #8a7a5c;
  line-height: 1.5;
}

#chalet-heuvelrug-home .ch-review {
  background: #f1ede2;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 6px;
  padding: 36px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#chalet-heuvelrug-home .ch-review__meta {
  display: flex;
  align-items: center;
  gap: 10px;
}

#chalet-heuvelrug-home .ch-review__score {
  background: #2c4636;
  color: #f3ead9;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 4px;
}

#chalet-heuvelrug-home .ch-review__source {
  font-size: 13px;
  color: rgba(58, 47, 34, 0.5);
}

#chalet-heuvelrug-home .ch-review__quote {
  color: #3a2f22;
  font-size: 19px;
  line-height: 1.6;
  font-style: italic;
}

#chalet-heuvelrug-home .ch-review__note {
  font-size: 11px;
  color: rgba(58, 47, 34, 0.4);
  font-style: italic;
}

/* ---------- IN DE BUURT ---------- */

#chalet-heuvelrug-home .ch-area {
  background: #f1ede2;
  padding: 100px 40px;
}

#chalet-heuvelrug-home .ch-area__grid {
  max-width: 1140px;
  margin: 48px auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}

#chalet-heuvelrug-home .ch-area-card {
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 6px;
  overflow: hidden;
  display: flex;
}

#chalet-heuvelrug-home .ch-area-card__media {
  position: relative;
  flex: 0 0 42%;
}

#chalet-heuvelrug-home .ch-area-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#chalet-heuvelrug-home .ch-area-card__badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #d99a4e;
  color: #fff;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 999px;
}

#chalet-heuvelrug-home .ch-area-card__body {
  flex: 1;
  padding: 24px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#chalet-heuvelrug-home .ch-area-card__title {
  font-family: Georgia, 'Times New Roman', serif;
  color: #2c4636;
  font-size: 22px;
  font-weight: 600;
}

#chalet-heuvelrug-home .ch-area-card__desc {
  color: #5c5344;
  font-size: 14.5px;
  line-height: 1.6;
  flex: 1;
}

#chalet-heuvelrug-home .ch-area-card__link {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #a8916b;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 9px 16px;
  border-radius: 999px;
}

/* ---------- VAKANTIEPARK BONTE VLUCHT ---------- */

#chalet-heuvelrug-home .ch-park {
  padding: 100px 40px;
}

#chalet-heuvelrug-home .ch-park-sub {
  color: #5c5344;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.02em;
}

#chalet-heuvelrug-home .ch-amenities {
  max-width: 1140px;
  margin: 48px auto 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
}

#chalet-heuvelrug-home .ch-amenity {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
}

#chalet-heuvelrug-home .ch-amenity__label {
  font-size: 15px;
  color: #3a2f22;
  font-weight: 500;
}

#chalet-heuvelrug-home .ch-park__photo {
  max-width: 1140px;
  margin: 48px auto 0;
  border-radius: 6px;
  overflow: hidden;
}

#chalet-heuvelrug-home .ch-park__photo img {
  width: 100%;
  height: auto;
  max-height: 460px;
  object-fit: cover;
}

/* ---------- SECOND CTA ---------- */

#chalet-heuvelrug-home .ch-cta2 {
  background: linear-gradient(160deg, #2c4636 0%, #1f2f27 100%);
  padding: 88px 40px;
}

#chalet-heuvelrug-home .ch-cta2__inner {
  max-width: 920px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  gap: 56px;
  flex-wrap: wrap;
  justify-content: center;
}

#chalet-heuvelrug-home .ch-badge {
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#chalet-heuvelrug-home .ch-badge__circle {
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 38%, #33503f 0%, #24392c 100%);
  border: 4px solid #d9a866;
  box-shadow: inset 0 0 0 1px rgba(217, 168, 102, 0.5);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 16px;
}

#chalet-heuvelrug-home .ch-badge__logo {
  width: 136px;
  height: 125px;
}

#chalet-heuvelrug-home .ch-badge__divider {
  width: 136px;
  height: 1px;
  background: #d9a866;
  opacity: 0.55;
}

#chalet-heuvelrug-home .ch-badge__text {
  color: #f3ead9;
  width: 232px;
  font-size: 34px;
  letter-spacing: 0.01em;
  line-height: 1.05;
  text-align: center;
}

#chalet-heuvelrug-home .ch-cta2__content {
  flex: 1;
  min-width: 280px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  text-align: left;
}

#chalet-heuvelrug-home .ch-cta2__title {
  color: #f3ead9;
  font-size: 48px;
  line-height: 1.05;
}

#chalet-heuvelrug-home .ch-quote-box {
  background: rgba(243, 234, 217, 0.06);
  border-left: 3px solid #d9a866;
  border-radius: 4px;
  padding: 22px 26px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#chalet-heuvelrug-home .ch-quote-box__text {
  color: rgba(243, 234, 217, 0.78);
  font-size: 15px;
  line-height: 1.65;
  font-style: italic;
}

#chalet-heuvelrug-home .ch-quote-box__signature {
  color: #d9a866;
  font-size: 13px;
  font-style: italic;
}

#chalet-heuvelrug-home .ch-quote-box .ch-cta-btn {
  align-self: center;
}

/* ---------- FAQ ---------- */

#chalet-heuvelrug-home .ch-faq {
  background: #f1ede2;
  padding: 100px 40px;
}

#chalet-heuvelrug-home .ch-faq__list {
  max-width: 820px;
  margin: 40px auto 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#chalet-heuvelrug-home .ch-faq-item {
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 6px;
  overflow: hidden;
}

#chalet-heuvelrug-home .ch-faq-item__q {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-weight: 600;
  font-size: 16px;
  color: #2c4636;
}

#chalet-heuvelrug-home .ch-faq-item__q::-webkit-details-marker {
  display: none;
}

#chalet-heuvelrug-home .ch-faq-item__q::marker {
  content: '';
}

#chalet-heuvelrug-home .ch-faq-item__icon {
  flex: 0 0 auto;
  transition: transform 0.2s ease;
}

#chalet-heuvelrug-home .ch-faq-item[open] .ch-faq-item__icon {
  transform: rotate(180deg);
}

#chalet-heuvelrug-home .ch-faq-item__a {
  padding: 0 24px 20px;
  color: #5c5344;
  font-size: 14.5px;
  line-height: 1.65;
}

/* ---------- FOOTER ---------- */

#chalet-heuvelrug-home .ch-footer {
  background: #1a1613;
  padding: 56px 40px 40px;
}

#chalet-heuvelrug-home .ch-footer__inner {
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  flex-wrap: wrap;
}

#chalet-heuvelrug-home .ch-footer__brand {
  display: flex;
  align-items: center;
  gap: 16px;
}

#chalet-heuvelrug-home .ch-footer__logo {
  width: 54px;
  height: 49px;
}

#chalet-heuvelrug-home .ch-footer__divider {
  width: 1px;
  align-self: stretch;
  background: rgba(231, 220, 198, 0.32);
}

#chalet-heuvelrug-home .ch-footer__text {
  display: flex;
  flex-direction: column;
  gap: 3px;
  text-align: left;
}

#chalet-heuvelrug-home .ch-footer__title {
  color: #f6efe0;
  font-size: 30px;
  letter-spacing: 0.01em;
  line-height: 1;
}

#chalet-heuvelrug-home .ch-footer__subtitle {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #dcc59a;
  text-align: left;
}

#chalet-heuvelrug-home .ch-footer__address {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: rgba(243, 234, 217, 0.88);
  font-size: 14px;
  text-align: right;
}

#chalet-heuvelrug-home .ch-footer__bottom {
  max-width: 1140px;
  margin: 32px auto 0;
  padding-top: 20px;
  border-top: 1px solid rgba(231, 220, 198, 0.2);
  color: rgba(243, 234, 217, 0.72);
  font-size: 12px;
}

/* ---------- RESPONSIVE ---------- */

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-lang-switch {
    right: 24px;
  }

  #chalet-heuvelrug-home .ch-vb-hero .ch-lang-switch {
    top: 56px;
  }

  #chalet-heuvelrug-home .ch-hero,
  #chalet-heuvelrug-home .ch-intro,
  #chalet-heuvelrug-home .ch-area,
  #chalet-heuvelrug-home .ch-park,
  #chalet-heuvelrug-home .ch-cta2,
  #chalet-heuvelrug-home .ch-faq,
  #chalet-heuvelrug-home .ch-footer {
    padding-left: 24px;
    padding-right: 24px;
  }

  #chalet-heuvelrug-home .ch-features {
    grid-template-columns: 1fr;
  }

  #chalet-heuvelrug-home .ch-area__grid {
    grid-template-columns: 1fr;
  }

  #chalet-heuvelrug-home .ch-amenities {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #chalet-heuvelrug-home .ch-gallery {
    grid-template-columns: 1fr;
  }

  #chalet-heuvelrug-home .ch-hero__title {
    font-size: 56px;
  }

  #chalet-heuvelrug-home .ch-footer__address {
    text-align: left;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-hero__inner {
    justify-content: center;
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-hero__brand {
    flex-direction: column;
    gap: 20px;
  }

  #chalet-heuvelrug-home .ch-hero__divider {
    display: none;
  }

  #chalet-heuvelrug-home .ch-hero__text {
    align-items: center;
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-hero__subtitle {
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-hero__cta {
    align-items: center;
  }

  #chalet-heuvelrug-home .ch-area-card {
    flex-direction: column;
  }

  #chalet-heuvelrug-home .ch-area-card__media {
    flex: none;
    aspect-ratio: 16 / 9;
  }

  #chalet-heuvelrug-home .ch-cta2__inner {
    justify-content: center;
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-cta2__content {
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-footer__inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-footer__address {
    text-align: center;
  }
}

/* ==========================================================================
   Accommodatiegids (affiliate) — page-gids.php
   Hergebruikt de bestaande hero-, intro-, FAQ- en footerstijlen hierboven.
   ========================================================================== */

#chalet-heuvelrug-home .ch-gids-hero__inner {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 32px;
}

#chalet-heuvelrug-home .ch-gids-hero__headline {
  color: #f3ead9;
  font-size: 64px;
  line-height: 1;
  margin: 0;
}

#chalet-heuvelrug-home .ch-gids-hero__lead {
  color: rgba(243, 234, 217, 0.75);
  font-size: 18px;
  line-height: 1.7;
  max-width: 620px;
  margin: -8px 0 0;
}

#chalet-heuvelrug-home .ch-gids-disclosure {
  background: #efe6d2;
  border-bottom: 1px solid rgba(43, 36, 28, 0.1);
  padding: 14px 40px;
}

#chalet-heuvelrug-home .ch-gids-disclosure__inner {
  max-width: 1140px;
  margin: 0 auto;
  font-size: 13.5px;
  line-height: 1.6;
  color: #5c5344;
  text-align: center;
}

#chalet-heuvelrug-home .ch-gids-grid {
  max-width: 1140px;
  margin: 48px auto 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
}

#chalet-heuvelrug-home .ch-gids-grid--stays {
  grid-template-columns: repeat(auto-fit, minmax(300px, 380px));
  justify-content: center;
}

#chalet-heuvelrug-home .ch-gids-card {
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

#chalet-heuvelrug-home .ch-gids-card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

#chalet-heuvelrug-home .ch-gids-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#chalet-heuvelrug-home .ch-gids-card__body {
  padding: 24px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1 auto;
}

#chalet-heuvelrug-home .ch-gids-card__place {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #a8916b;
}

#chalet-heuvelrug-home .ch-gids-card__title {
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
  font-size: 38px;
  line-height: 1;
  color: #2c4636;
  margin: 0;
}

#chalet-heuvelrug-home .ch-gids-card__text {
  color: #5c5344;
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
}

#chalet-heuvelrug-home .ch-gids-card__note {
  font-size: 12.5px;
  color: #8b6f47;
  font-style: italic;
}

#chalet-heuvelrug-home .ch-gids-tags {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#chalet-heuvelrug-home .ch-gids-tags li {
  background: #efe6d2;
  color: #5c5344;
  font-size: 12.5px;
  font-weight: 500;
  padding: 4px 10px;
  border-radius: 999px;
}

#chalet-heuvelrug-home .ch-gids-card__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 24px;
  border-top: 1px solid rgba(43, 36, 28, 0.1);
  font-size: 14.5px;
  font-weight: 600;
  color: #c96a37;
}

#chalet-heuvelrug-home .ch-gids-card__link:hover {
  background: #f4ecdc;
  opacity: 1;
}

#chalet-heuvelrug-home .ch-gids-card__link svg {
  flex: 0 0 auto;
}

#chalet-heuvelrug-home .ch-gids-tip {
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 6px;
  padding: 24px;
}

#chalet-heuvelrug-home .ch-gids-tip h3 {
  font-size: 16px;
  font-weight: 600;
  color: #2c4636;
  margin: 0 0 8px;
}

#chalet-heuvelrug-home .ch-gids-tip p {
  color: #5c5344;
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-gids-hero__headline {
    font-size: 48px;
  }

  #chalet-heuvelrug-home .ch-gids-disclosure,
  #chalet-heuvelrug-home .ch-gids-places,
  #chalet-heuvelrug-home .ch-gids-stays,
  #chalet-heuvelrug-home .ch-gids-tips {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-hero__logo {
    width: 160px;
    height: auto;
  }

  #chalet-heuvelrug-home .ch-gids-grid,
  #chalet-heuvelrug-home .ch-gids-grid--stays {
    grid-template-columns: 1fr;
  }
}

/* Wachtwoordformulier op de beveiligde gids */
#chalet-heuvelrug-home.ch-gids-locked {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

#chalet-heuvelrug-home.ch-gids-locked .post-password-form p {
  margin: 0 0 12px;
  color: #5c5344;
  font-size: 15px;
}

#chalet-heuvelrug-home.ch-gids-locked .post-password-form label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
}

#chalet-heuvelrug-home.ch-gids-locked .post-password-form input[type="password"] {
  padding: 12px 14px;
  border: 1px solid rgba(43, 36, 28, 0.25);
  border-radius: 6px;
  font-size: 16px;
  min-width: 240px;
}

#chalet-heuvelrug-home.ch-gids-locked .post-password-form input[type="submit"] {
  background: #c96a37;
  color: #fbf3e7;
  border: 0;
  border-radius: 6px;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
}


/* ===== Plaatspagina's (page-plaats.php) ===== */

#chalet-heuvelrug-home .ch-plaats-crumbs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 0 18px;
  font-size: 14px;
  color: #d8cdb6;
}

#chalet-heuvelrug-home .ch-plaats-crumbs a {
  color: #d9a866;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-plaats-crumbs a:hover {
  text-decoration: underline;
}

#chalet-heuvelrug-home .ch-plaats-facts-wrap {
  max-width: 1040px;
  margin: 0 auto;
  padding: 40px 24px 0;
}

#chalet-heuvelrug-home .ch-plaats-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 16px;
  margin: 0;
}

#chalet-heuvelrug-home .ch-plaats-fact {
  padding: 16px 18px;
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 12px;
}

#chalet-heuvelrug-home .ch-plaats-fact dt {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #a8916b;
}

#chalet-heuvelrug-home .ch-plaats-fact dd {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
  color: #2b241c;
}

#chalet-heuvelrug-home .ch-plaats-prose {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  text-align: left;
}

#chalet-heuvelrug-home .ch-plaats-prose p {
  margin: 0 0 16px;
  font-size: 17px;
  line-height: 1.7;
  color: #3b3226;
}

#chalet-heuvelrug-home .ch-plaats-sources {
  max-width: 720px;
  margin: 0 auto;
  padding: 8px 24px 48px;
  font-size: 14px;
  color: #6b5d48;
}

#chalet-heuvelrug-home .ch-plaats-sources h2 {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #a8916b;
}

#chalet-heuvelrug-home .ch-plaats-sources ul {
  margin: 0;
  padding-left: 18px;
}

#chalet-heuvelrug-home .ch-plaats-sources a {
  color: #6b5d48;
}

#chalet-heuvelrug-home .ch-gids-card__link--own {
  color: #2c4636;
}

@media (max-width: 720px) {
  #chalet-heuvelrug-home .ch-plaats-facts-wrap {
    padding: 28px 16px 0;
  }
  #chalet-heuvelrug-home .ch-plaats-prose p {
    font-size: 16px;
  }
}

/* ===== Zoeker: "Vind snel je verblijf" ===== */

#chalet-heuvelrug-home .ch-finder {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  padding: 24px 28px 20px;
  background: #fbf7ef;
  border-radius: 14px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  text-align: left;
  color: #2b241c;
}

#chalet-heuvelrug-home .ch-finder__title {
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
  font-size: 32px;
  line-height: 1;
  color: #2c4636;
  margin: 0 0 16px;
}

#chalet-heuvelrug-home .ch-finder__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

#chalet-heuvelrug-home .ch-finder__field {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

#chalet-heuvelrug-home .ch-finder__field--wide {
  grid-column: span 2;
}

#chalet-heuvelrug-home .ch-finder__field span {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8a7a5c;
}

#chalet-heuvelrug-home .ch-finder__field select,
#chalet-heuvelrug-home .ch-finder__field input {
  width: 100%;
  height: 46px;
  padding: 0 12px;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  color: #2b241c;
  background: #fff;
  border: 1px solid rgba(43, 36, 28, 0.22);
  border-radius: 8px;
}

#chalet-heuvelrug-home .ch-finder__field select:focus,
#chalet-heuvelrug-home .ch-finder__field input:focus {
  outline: 2px solid #c96a37;
  outline-offset: 1px;
}

#chalet-heuvelrug-home .ch-finder__submit {
  width: 100%;
  justify-content: center;
  margin-top: 18px;
  padding: 16px 28px;
  font-size: 17px;
}

#chalet-heuvelrug-home .ch-finder__note {
  margin-top: 10px;
  font-size: 12.5px;
  color: #6b5d48;
  text-align: center;
}

#chalet-heuvelrug-home .ch-gids-hero__more {
  color: #d9a866;
  font-size: 15px;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-gids-hero__more:hover {
  text-decoration: underline;
}

@media (max-width: 720px) {
  #chalet-heuvelrug-home .ch-finder {
    padding: 20px 16px 16px;
  }
  #chalet-heuvelrug-home .ch-finder__grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* ---- Privacyverklaring (page-privacy.php) ---- */
#chalet-heuvelrug-home .ch-privacy-body {
  padding-top: 48px;
  padding-bottom: 64px;
}
#chalet-heuvelrug-home .ch-privacy .ch-plaats-prose h2 {
  margin: 36px 0 12px;
  font-size: 24px;
  line-height: 1.25;
  color: #2b2418;
}
#chalet-heuvelrug-home .ch-privacy .ch-plaats-prose h2:first-child {
  margin-top: 0;
}
#chalet-heuvelrug-home .ch-privacy .ch-plaats-prose ul {
  margin: 0 0 16px;
  padding-left: 22px;
  font-size: 17px;
  line-height: 1.7;
  color: #3b3226;
}
#chalet-heuvelrug-home .ch-privacy .ch-plaats-prose li {
  margin-bottom: 8px;
}
#chalet-heuvelrug-home .ch-privacy .ch-plaats-prose a {
  color: inherit;
  text-decoration: underline;
}
#chalet-heuvelrug-home .ch-privacy-todo {
  padding: 12px 16px;
  border-radius: 8px;
  background: #fff4d6;
  border: 1px solid #e6c25a;
  font-size: 15px;
}

/* ---- Zoekerstrook op de chaletpagina ---- */
#chalet-heuvelrug-home .ch-finder-strip {
  min-height: 0;
}
#chalet-heuvelrug-home .ch-finder-strip .ch-gids-hero__inner {
  padding-top: 32px;
  padding-bottom: 32px;
}

/* ---- Compact merkblok in de hero (plaats- en privacypagina's) ---- */
#chalet-heuvelrug-home .ch-hero__brand--compact {
  gap: 24px;
  text-decoration: none;
}
#chalet-heuvelrug-home .ch-hero__brand--compact .ch-logo {
  width: 110px;
  height: 101px;
}
#chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__text {
  gap: 4px;
}
#chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__title {
  font-size: 44px;
}
#chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__subtitle {
  font-size: 13px;
}
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-hero__brand--compact {
    flex-direction: row;
    gap: 16px;
  }
  #chalet-heuvelrug-home .ch-hero__brand--compact .ch-logo {
    width: 80px;
    height: 74px;
  }
  #chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__title {
    font-size: 34px;
  }
  #chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__text {
    align-items: flex-start;
    text-align: left;
  }
  #chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__subtitle {
    text-align: left;
    font-size: 11px;
  }
}

/* ---- Snelkoppelingen op situatie (gids-hero) ---- */
#chalet-heuvelrug-home .ch-gids-quick {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
#chalet-heuvelrug-home .ch-gids-quick__label {
  color: #cbb896;
  font-size: 15px;
}
#chalet-heuvelrug-home .ch-gids-quick a {
  display: inline-block;
  padding: 8px 16px;
  border: 1px solid rgba(243, 234, 217, 0.35);
  border-radius: 999px;
  color: #f3ead9;
  font-size: 15px;
  text-decoration: none;
}
#chalet-heuvelrug-home .ch-gids-quick a:hover {
  border-color: #e0a85a;
  color: #e0a85a;
}

/* ==========================================================================
   Gidspagina: beeld, streken en compacte kaarten
   ========================================================================== */

#chalet-heuvelrug-home .ch-gids-hero--overview {
  overflow: hidden;
  padding-bottom: 150px;
}

#chalet-heuvelrug-home .ch-gids-hero--overview .ch-gids-hero__inner {
  position: relative;
  z-index: 1;
}

#chalet-heuvelrug-home .ch-gids-hero__hills {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  width: 100%;
  height: 110px;
  display: block;
  pointer-events: none;
}

#chalet-heuvelrug-home .ch-gids-region {
  max-width: 1140px;
  margin: 56px auto 0;
}

#chalet-heuvelrug-home .ch-gids-region:first-of-type {
  margin-top: 40px;
}

#chalet-heuvelrug-home .ch-gids-region__title {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0;
  font-size: 34px;
  line-height: 1;
  color: #2c4636;
}

#chalet-heuvelrug-home .ch-gids-region__title::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: rgba(43, 36, 28, 0.14);
}

#chalet-heuvelrug-home .ch-gids-region .ch-gids-grid {
  margin-top: 22px;
}

#chalet-heuvelrug-home .ch-gids-grid--places {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
}

#chalet-heuvelrug-home .ch-gids-card__art {
  height: 112px;
  overflow: hidden;
  background: #efe6d2;
  border-bottom: 1px solid rgba(43, 36, 28, 0.08);
}

#chalet-heuvelrug-home .ch-gids-card__art svg,
#chalet-heuvelrug-home .ch-gids-card__art img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__art {
  height: 84px;
}

#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__body {
  padding: 16px 20px 8px;
}

#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__title {
  font-size: 32px;
}

#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__link {
  padding: 12px 20px;
  font-size: 14px;
}

#chalet-heuvelrug-home .ch-gids-card {
  transition: box-shadow 0.18s ease, transform 0.18s ease;
}

#chalet-heuvelrug-home .ch-gids-card:hover {
  box-shadow: 0 10px 26px rgba(43, 36, 28, 0.1);
  transform: translateY(-2px);
}

#chalet-heuvelrug-home .ch-gids-tip__icon {
  color: #c96a37;
  margin-bottom: 6px;
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-hero--overview {
    padding-bottom: 120px;
  }

  #chalet-heuvelrug-home .ch-gids-hero__hills {
    height: 70px;
  }

  #chalet-heuvelrug-home .ch-gids-region__title {
    font-size: 30px;
  }

  #chalet-heuvelrug-home .ch-gids-grid--places {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  #chalet-heuvelrug-home .ch-gids-grid--places .ch-gids-card:not(.ch-gids-card--compact) {
    grid-column: 1 / -1;
  }

  #chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__link {
    font-size: 13px;
    padding: 10px 14px;
  }

  #chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__body {
    padding: 12px 14px 6px;
  }

  #chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__title {
    font-size: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #chalet-heuvelrug-home .ch-gids-card {
    transition: none;
  }
  #chalet-heuvelrug-home .ch-gids-card:hover {
    transform: none;
  }
}

#chalet-heuvelrug-home .ch-gids-region .ch-gids-grid + .ch-gids-grid {
  margin-top: 20px;
}


/* ==========================================================================
   Gidspagina: alfabetisch overzicht met schematische kaart
   ========================================================================== */

#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places {
  margin-top: 40px;
}

#chalet-heuvelrug-home .ch-map {
  max-width: 760px;
  margin: 40px auto 0;
}

#chalet-heuvelrug-home .ch-map__svg {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(43, 36, 28, 0.12);
  border-radius: 10px;
}

#chalet-heuvelrug-home .ch-map__note {
  margin-top: 10px;
  text-align: center;
  font-size: 13px;
  color: #6b5d48;
}

#chalet-heuvelrug-home .ch-map__pt {
  cursor: pointer;
  outline: none;
}

#chalet-heuvelrug-home .ch-map__hit {
  fill: transparent;
}

#chalet-heuvelrug-home .ch-map__dot {
  fill: #c96a37;
  stroke: #fbf7ef;
  stroke-width: 3;
  transition: r 0.15s ease, fill 0.15s ease;
}

#chalet-heuvelrug-home .ch-map__label {
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 19px;
  font-weight: 600;
  fill: #2c4636;
  paint-order: stroke;
  stroke: #f1e9d6;
  stroke-width: 5px;
  stroke-linejoin: round;
}

#chalet-heuvelrug-home .ch-map__pt:hover .ch-map__dot,
#chalet-heuvelrug-home .ch-map__pt:focus .ch-map__dot {
  r: 11;
  fill: #2c4636;
}

#chalet-heuvelrug-home .ch-map__pt:focus-visible .ch-map__label {
  text-decoration: underline;
}

#chalet-heuvelrug-home .ch-map__ref {
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 16px;
  font-style: italic;
  fill: #8b7d63;
}

#chalet-heuvelrug-home .ch-map__compass text {
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  font-weight: 600;
  fill: #8b6f47;
}

#chalet-heuvelrug-home .ch-gids-card:target {
  outline: 3px solid #c96a37;
  outline-offset: 3px;
  scroll-margin-top: 24px;
}

@media (max-width: 600px) {
  /* Op een telefoon alleen de grotere plaatsen labelen; de rest blijft tikbaar. */
  #chalet-heuvelrug-home .ch-map__pt:not(.ch-map__pt--major) .ch-map__label {
    display: none;
  }

  #chalet-heuvelrug-home .ch-map__label {
    font-size: 30px;
    stroke-width: 8px;
  }

  #chalet-heuvelrug-home .ch-map__ref {
    font-size: 24px;
  }

  #chalet-heuvelrug-home .ch-map__dot {
    r: 11;
  }
}


/* Plaatskaarten: foto/tekening loopt door achter de tekst, t/m "Bekijk gids" */
#chalet-heuvelrug-home .ch-gids-card__main {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  isolation: isolate;
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__art {
  position: absolute;
  inset: 0;
  height: auto;
  border-bottom: 0;
  z-index: -2;
}

#chalet-heuvelrug-home .ch-gids-card__main::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(
    to bottom,
    rgba(251, 247, 239, 0) 0,
    rgba(251, 247, 239, 0) 30px,
    rgba(251, 247, 239, 0.9) 84px,
    rgba(251, 247, 239, 0.92) 100%
  );
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__body {
  padding-top: 84px;
  padding-bottom: 16px;
}

#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__main .ch-gids-card__body {
  padding-top: 64px;
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--own {
  background: transparent;
  border-top-color: rgba(43, 36, 28, 0.08);
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--own:hover {
  background: rgba(244, 236, 220, 0.7);
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__text {
  color: #473f33;
}

/* Kaarten met een eigen foto: foto helder zichtbaar, tekst wit op een donker verloop */
#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--photo)::before {
  background: linear-gradient(
    to bottom,
    rgba(26, 38, 30, 0) 0,
    rgba(26, 38, 30, 0.1) 40%,
    rgba(26, 38, 30, 0.72) 68%,
    rgba(26, 38, 30, 0.9) 100%
  );
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--photo) .ch-gids-card__body {
  padding-top: 120px;
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--photo) .ch-gids-card__title {
  color: #fff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--photo) .ch-gids-card__text {
  color: #f4efe4;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

/* Kaarten met een silhouetkaart: vorm van de plaats rechtsboven, tekst loopt eromheen */
#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--map) {
  display: block;
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--map)::before {
  background: none;
}

#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__art--map {
  position: static;
  inset: auto;
  float: right;
  z-index: auto;
  width: 68px;
  height: 68px;
  margin: 18px 20px 0 10px;
  background: none;
  border-bottom: 0;
  overflow: visible;
}

#chalet-heuvelrug-home .ch-gids-card__art--map img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  opacity: 0.4;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

#chalet-heuvelrug-home .ch-gids-card:hover .ch-gids-card__art--map img,
#chalet-heuvelrug-home .ch-gids-card:focus-within .ch-gids-card__art--map img,
#chalet-heuvelrug-home .ch-gids-card.is-active .ch-gids-card__art--map img {
  opacity: 0.92;
  transform: scale(1.04);
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--map) .ch-gids-card__body {
  display: block;
  padding: 20px 24px 18px;
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--map) .ch-gids-card__text {
  clear: both;
}

#chalet-heuvelrug-home .ch-gids-card__main:has(.ch-gids-card__art--map) .ch-gids-card__title {
  margin-bottom: 6px;
}

/* "Bekijk gids": duidelijker als knop, pijl in een rondje dat meebeweegt */
#chalet-heuvelrug-home .ch-gids-card__link--own {
  font-weight: 700;
  color: #2c4636;
}

#chalet-heuvelrug-home .ch-gids-card__link--own svg {
  box-sizing: content-box;
  padding: 6px;
  border-radius: 50%;
  background: #e7efe6;
  color: #2c4636;
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

#chalet-heuvelrug-home .ch-gids-card__link--own:hover svg,
#chalet-heuvelrug-home .ch-gids-card__link--own:focus-visible svg {
  background: #2c4636;
  color: #fbf7ef;
  transform: translateX(2px);
}

#chalet-heuvelrug-home .ch-gids-card__link:focus-visible {
  outline: 2px solid #c96a37;
  outline-offset: -3px;
}

/* Stip op de kaart licht op als je een plaatskaart aanwijst */
#chalet-heuvelrug-home .ch-map__pt.is-active .ch-map__dot {
  r: 12;
  fill: #2c4636;
}

#chalet-heuvelrug-home .ch-map__pt.is-active .ch-map__label {
  display: block;
  fill: #c96a37;
}


/* Brede kaart op desktop: even breed als de plaatskaarten */
#chalet-heuvelrug-home .ch-map__svg--wide { display: none; }

@media (min-width: 1100px) {
  #chalet-heuvelrug-home .ch-map { max-width: 1140px; }
  #chalet-heuvelrug-home .ch-map__svg--compact { display: none; }
  #chalet-heuvelrug-home .ch-map__svg--wide { display: block; }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__label { font-size: 25px; stroke-width: 7px; }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__ref { font-size: 21px; }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__dot { r: 11; }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__pt:hover .ch-map__dot,
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__pt:focus .ch-map__dot,
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__pt.is-active .ch-map__dot { r: 14; }
}


/* Label op betaalde (gesponsorde) verblijven */
#chalet-heuvelrug-home .ch-gids-card__badge {
  display: block;
  width: fit-content;
  align-self: flex-start;
  margin-bottom: 8px;
  padding: 3px 10px;
  border-radius: 999px;
  background: #f1e9d6;
  border: 1px solid #d9cba9;
  color: #6b5233;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* ==========================================================================
   Plaatspagina: tips van de eigenaar als paneel onder "Wat te doen"
   ========================================================================== */

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips {
  max-width: 1140px;
  margin: 40px auto 0;
  padding: 44px 40px 40px;
  background: radial-gradient(circle at 20% 0%, #33503f 0%, #24392c 100%);
  border-radius: 10px;
  color: #f4ecdc;
  position: relative;
  overflow: hidden;
}

#chalet-heuvelrug-home .ch-plaats-tips__head {
  text-align: center;
  margin-bottom: 32px;
}

#chalet-heuvelrug-home .ch-plaats-tips__eyebrow {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #e2b36b;
  margin-bottom: 6px;
}

#chalet-heuvelrug-home .ch-plaats-tips__title {
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
  font-size: 44px;
  line-height: 1.05;
  color: #fbf7ef;
}

/* "Goed om te weten" op de situatiepagina's: oranje paneel (het terracotta van de knoppen) in plaats van donkergroen */
#chalet-heuvelrug-home .ch-situatie-know .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #d9773f 0%, #b55a2b 100%);
}

/* "Waar kun je heen?" op de situatiepagina's: zachtblauw paneel; de groepskoppen worden crème zodat ze leesbaar blijven */
#chalet-heuvelrug-home .ch-situatie-spots .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #86adcd 0%, #5b86ab 100%);
}
#chalet-heuvelrug-home .ch-situatie-spots .ch-plaats-tips__group-title {
  color: #fbf7ef;
}

#chalet-heuvelrug-home .ch-plaats-tips__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 0;
}

#chalet-heuvelrug-home .ch-plaats-tips__item {
  padding: 4px 28px;
  border-left: 1px solid rgba(244, 236, 220, 0.18);
}

#chalet-heuvelrug-home .ch-plaats-tips__item:first-child {
  border-left: 0;
  padding-left: 0;
}

#chalet-heuvelrug-home .ch-plaats-tips__item:last-child {
  padding-right: 0;
}

#chalet-heuvelrug-home .ch-plaats-tips__icon {
  color: #e2b36b;
  margin-bottom: 10px;
}

#chalet-heuvelrug-home .ch-plaats-tips__item h3 {
  font-size: 16.5px;
  font-weight: 600;
  color: #fbf7ef;
  margin: 0 0 8px;
}

#chalet-heuvelrug-home .ch-plaats-tips__item p {
  font-size: 14.5px;
  line-height: 1.65;
  color: rgba(244, 236, 220, 0.82);
  margin: 0;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips {
    padding: 32px 24px;
  }

  #chalet-heuvelrug-home .ch-plaats-tips__list {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  #chalet-heuvelrug-home .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-plaats-tips__item:last-child {
    padding: 22px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(244, 236, 220, 0.18);
  }

  #chalet-heuvelrug-home .ch-plaats-tips__item:first-child {
    padding-top: 0;
    border-top: 0;
  }

  #chalet-heuvelrug-home .ch-plaats-tips__title {
    font-size: 36px;
  }
}

/* ==========================================================================
   Plaatspagina: "in het kort" links, snelle feiten onder elkaar rechts
   ========================================================================== */

#chalet-heuvelrug-home .ch-plaats-intro {
  max-width: 1040px;
  margin: 0 auto;
  padding: 64px 24px 24px;
}

#chalet-heuvelrug-home .ch-plaats-intro--facts {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 56px;
  align-items: start;
}

#chalet-heuvelrug-home .ch-plaats-intro:not(.ch-plaats-intro--facts) .ch-plaats-intro__text {
  max-width: 720px;
  margin: 0 auto;
}

#chalet-heuvelrug-home .ch-plaats-intro__text .ch-eyebrow {
  margin-bottom: 8px;
}

#chalet-heuvelrug-home .ch-plaats-intro__title {
  margin: 0 0 20px;
  font-size: 56px;
  line-height: 1;
  color: #2b241c;
  text-align: left;
}

#chalet-heuvelrug-home .ch-plaats-intro__prose p {
  margin: 0 0 16px;
  font-size: 17px;
  line-height: 1.7;
  color: #3b3226;
}

#chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-facts {
  grid-template-columns: 1fr;
  gap: 12px;
}

#chalet-heuvelrug-home .ch-plaats-intro__facts {
  padding-top: 6px;
}

@media (max-width: 860px) {
  #chalet-heuvelrug-home .ch-plaats-intro {
    padding: 44px 16px 8px;
  }

  #chalet-heuvelrug-home .ch-plaats-intro--facts {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  #chalet-heuvelrug-home .ch-plaats-intro__title {
    font-size: 44px;
  }

  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-facts {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

/* Bronnen als FAQ-antwoord */
#chalet-heuvelrug-home .ch-faq-item__a--bronnen p {
  margin: 0 0 10px;
}

#chalet-heuvelrug-home .ch-faq-item__a--bronnen ul {
  margin: 0;
  padding-left: 20px;
}

#chalet-heuvelrug-home .ch-faq-item__a--bronnen li {
  margin: 0 0 4px;
}

#chalet-heuvelrug-home .ch-faq-item__a--bronnen a {
  color: #c96a37;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Snelle feiten: subtiel groen kleurtje met accentrand */
#chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact {
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 10px;
}

#chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact dt {
  color: #5f7a62;
}

/* ==========================================================================
   Partnerpagina van een verblijf (single-chalet_verblijf.php)
   ========================================================================== */

#chalet-heuvelrug-home .ch-vb-preview {
  background: #fff3cd;
  color: #5c4a00;
  border-bottom: 1px solid #e6d28a;
  padding: 10px 24px;
  font-size: 14px;
  text-align: center;
}

#chalet-heuvelrug-home .ch-vb-chip {
  display: inline-block;
  margin: 0 auto 14px;
  padding: 4px 12px;
  border: 1px solid rgba(226, 179, 107, 0.6);
  border-radius: 999px;
  color: #e2b36b;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#chalet-heuvelrug-home .ch-vb-hero__place {
  color: #e2b36b;
  font-size: 15px;
  letter-spacing: 0.04em;
  margin: -4px 0 14px;
  text-align: center;
}

#chalet-heuvelrug-home .ch-vb-hero__cta {
  margin-top: 28px;
  display: flex;
  justify-content: center;
}

#chalet-heuvelrug-home .ch-vb-photos {
  max-width: 1140px;
  margin: 0 auto;
  padding: 48px 24px 0;
}

#chalet-heuvelrug-home .ch-vb-photos__main {
  margin: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(43, 36, 28, 0.18);
}

#chalet-heuvelrug-home .ch-vb-photos__main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#chalet-heuvelrug-home .ch-vb-photos .ch-gallery {
  margin-top: 16px;
  gap: 16px;
}

#chalet-heuvelrug-home .ch-vb-amenities {
  max-width: 1140px;
  margin: 0 auto;
  padding: 56px 24px 8px;
}

#chalet-heuvelrug-home .ch-vb-amenities__list {
  list-style: none;
  margin: 32px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px 32px;
}

#chalet-heuvelrug-home .ch-vb-around {
  padding: 56px 24px 0;
}

#chalet-heuvelrug-home .ch-vb-around .ch-plaats-prose {
  margin-top: 28px;
}

#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips {
  max-width: 1140px;
  margin: 40px auto 0;
  padding: 44px 40px 40px;
  background: radial-gradient(circle at 20% 0%, #33503f 0%, #24392c 100%);
  border-radius: 10px;
  color: #f4ecdc;
}

#chalet-heuvelrug-home .ch-vb-book {
  padding: 64px 24px 0;
}

#chalet-heuvelrug-home .ch-vb-book__box {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 32px;
  text-align: center;
  background: #fbf7ef;
  border: 1px solid rgba(43, 36, 28, 0.1);
  border-radius: 10px;
}

#chalet-heuvelrug-home .ch-vb-book__lead {
  margin: 12px auto 24px;
  max-width: 520px;
  color: #5c5344;
  font-size: 15.5px;
  line-height: 1.65;
}

#chalet-heuvelrug-home .ch-vb-book__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

#chalet-heuvelrug-home .ch-vb-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 24px;
  border: 2px solid #2c4636;
  border-radius: 6px;
  color: #2c4636;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-vb-btn-secondary:hover {
  background: #2c4636;
  color: #fbf7ef;
}

#chalet-heuvelrug-home .ch-vb-book__contact {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  justify-content: center;
  font-size: 15px;
}

#chalet-heuvelrug-home .ch-vb-book__contact a {
  color: #2c4636;
  text-decoration: underline;
  text-underline-offset: 2px;
}

#chalet-heuvelrug-home .ch-vb-more {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 24px 56px;
  text-align: center;
}

#chalet-heuvelrug-home .ch-vb-more__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
  justify-content: center;
  margin: 0 0 28px;
  font-size: 15px;
  font-weight: 600;
}

#chalet-heuvelrug-home .ch-vb-more__links a {
  color: #c96a37;
}

#chalet-heuvelrug-home .ch-vb-disclosure {
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 8px;
  padding: 14px 18px;
  font-size: 13.5px;
  line-height: 1.6;
  color: #3b3226;
  text-align: left;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-amenities__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips {
    padding: 32px 24px;
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__list {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:last-child {
    padding: 22px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(244, 236, 220, 0.18);
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child {
    padding-top: 0;
    border-top: 0;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-photos {
    padding: 32px 16px 0;
  }

  #chalet-heuvelrug-home .ch-vb-photos .ch-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #chalet-heuvelrug-home .ch-vb-amenities__list {
    grid-template-columns: 1fr;
  }

  #chalet-heuvelrug-home .ch-vb-book__box {
    padding: 32px 20px;
  }
}

/* ==========================================================================
   Partnerpagina, tweede ronde: hero, foto's, review en gastheerblok zoals de home
   ========================================================================== */

#chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
  position: absolute;
  top: 28px;
  right: 40px;
  margin: 0;
}

#chalet-heuvelrug-home .ch-vb-hero .ch-hero__title {
  margin: 0;
}

/* Het tekstje onder de knop mag niet breder worden dan op de home, anders springt de knop onder het logo. */
#chalet-heuvelrug-home .ch-vb-hero .ch-hero__note {
  max-width: 270px;
}

/* Knoppen in het gastheerblok: boeken + e-mail naast elkaar */
#chalet-heuvelrug-home .ch-vb-host-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

#chalet-heuvelrug-home .ch-vb-host-mail {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13.5px 26.5px;
  border: 1.5px solid rgba(243, 234, 217, 0.45);
  border-radius: 6px;
  color: #fbf3e7;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 0.01em;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-vb-host-mail:hover {
  border-color: #fbf3e7;
}

#chalet-heuvelrug-home .ch-vb-lead-p {
  margin: 0 0 14px;
}

#chalet-heuvelrug-home .ch-vb-lead-p:last-child {
  margin-bottom: 0;
}

/* Foto's: rijen van drie, een onvolledige laatste rij staat in het midden */
#chalet-heuvelrug-home .ch-vb-gallery {
  max-width: 1140px;
  margin: 48px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}

#chalet-heuvelrug-home .ch-vb-gallery__item {
  flex: 0 0 calc((100% - 48px) / 3);
  aspect-ratio: 1 / 1;
  border-radius: 2px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(43, 36, 28, 0.18);
}

#chalet-heuvelrug-home .ch-vb-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Snelle feiten onder de foto's */
#chalet-heuvelrug-home .ch-vb-facts {
  padding: 40px 0 0;
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact {
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 10px;
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact dt {
  color: #5f7a62;
}

/* Voorzieningen zonder review: drie kolommen, zoals de grid al doet */
#chalet-heuvelrug-home .ch-features--no-review {
  align-items: start;
}

/* Gastheerblok: lange namen passen in de cirkel */
#chalet-heuvelrug-home .ch-badge__text--long {
  font-size: 26px;
}

#chalet-heuvelrug-home .ch-vb-around {
  padding-bottom: 120px;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
    position: static;
    margin: 0 auto 20px;
    align-self: center;
  }

  #chalet-heuvelrug-home .ch-vb-gallery {
    gap: 16px;
  }

  #chalet-heuvelrug-home .ch-vb-gallery__item {
    flex: 0 0 calc((100% - 16px) / 2);
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-gallery__item {
    flex: 0 0 100%;
  }
}

/* Kopje "Highlights" boven de snelle feiten */
#chalet-heuvelrug-home .ch-vb-facts-head {
  margin: 48px auto 0;
}

/* ==========================================================================
   Kleurthema's voor partnerpagina's (standaard groen = geen extra klasse nodig)
   ========================================================================== */

#chalet-heuvelrug-home.ch-theme-blauw .ch-hero,
#chalet-heuvelrug-home.ch-theme-blauw .ch-cta2 {
  background: linear-gradient(160deg, #2b4258 0%, #1c2b3a 100%);
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #33506a 0%, #243649 100%);
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-badge__circle {
  background: radial-gradient(circle at 50% 38%, #33506a 0%, #243649 100%);
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-review__score {
  background: #2b4258;
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-facts .ch-plaats-fact {
  background: #e4ebf1;
  border-left-color: #5b7a96;
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-facts .ch-plaats-fact dt {
  color: #5b7a96;
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-hero,
#chalet-heuvelrug-home.ch-theme-aarde .ch-cta2 {
  background: linear-gradient(160deg, #4d3b2c 0%, #33281e 100%);
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #5a4532 0%, #3b2d22 100%);
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-badge__circle {
  background: radial-gradient(circle at 50% 38%, #5a4532 0%, #3b2d22 100%);
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-review__score {
  background: #4d3b2c;
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-facts .ch-plaats-fact {
  background: #efe6d9;
  border-left-color: #8a6d4f;
}

#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-facts .ch-plaats-fact dt {
  color: #8a6d4f;
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-hero,
#chalet-heuvelrug-home.ch-theme-antraciet .ch-cta2 {
  background: linear-gradient(160deg, #3a3e42 0%, #25282b 100%);
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #454a4f 0%, #2c2f33 100%);
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-badge__circle {
  background: radial-gradient(circle at 50% 38%, #454a4f 0%, #2c2f33 100%);
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-review__score {
  background: #3a3e42;
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-facts .ch-plaats-fact {
  background: #e7e8e9;
  border-left-color: #6b7176;
}

#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-facts .ch-plaats-fact dt {
  color: #6b7176;
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-hero,
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-cta2 {
  background: linear-gradient(160deg, #5c2c37 0%, #3e1e26 100%);
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #6a3642 0%, #472029 100%);
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-badge__circle {
  background: radial-gradient(circle at 50% 38%, #6a3642 0%, #472029 100%);
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-review__score {
  background: #5c2c37;
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-facts .ch-plaats-fact {
  background: #f0e2e4;
  border-left-color: #9a5a66;
}

#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-facts .ch-plaats-fact dt {
  color: #9a5a66;
}

/* Tips: kolommen even breed en even ver uit elkaar; evenwichtige ruimte boven en onder het tipsblok */
#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__list {
  margin: 0 -28px;
}

#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item,
#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:last-child {
  padding: 4px 28px;
}

#chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child {
  border-left: 0;
}

#chalet-heuvelrug-home.ch-verblijf .ch-intro {
  padding-bottom: 64px;
}

#chalet-heuvelrug-home .ch-vb-around {
  padding-top: 0;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__list {
    margin: 0;
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:last-child {
    padding: 22px 0 0;
  }

  #chalet-heuvelrug-home .ch-vb-around .ch-plaats-tips__item:first-child {
    padding-top: 0;
  }
}

/* Highlights: duidelijk kopje en grotere, volledige rij blokken */
#chalet-heuvelrug-home .ch-vb-facts-head {
  margin: 64px auto 0;
}

#chalet-heuvelrug-home .ch-vb-facts {
  max-width: 1140px;
  padding: 28px 0 0;
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-facts {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 20px;
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact {
  padding: 22px 24px;
  border-left-width: 4px;
  box-shadow: 0 2px 10px rgba(43, 36, 28, 0.07);
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact dt {
  margin: 0 0 8px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

#chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact dd {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-facts {
    padding-left: 16px;
    padding-right: 16px;
  }

  #chalet-heuvelrug-home .ch-vb-facts .ch-plaats-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  #chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact {
    padding: 16px 16px;
  }

  #chalet-heuvelrug-home .ch-vb-facts .ch-plaats-fact dd {
    font-size: 16px;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-around {
    padding-bottom: 72px;
  }
}

/* Review op de partnerpagina: valt meer op, in dezelfde tint als de Highlights (kleur volgt het thema) */
#chalet-heuvelrug-home.ch-verblijf .ch-review {
  position: relative;
  overflow: hidden;
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 4px solid #5f8466;
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(43, 36, 28, 0.14), 0 2px 6px rgba(43, 36, 28, 0.06);
  padding: 40px 36px 34px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-review::before {
  content: "\201D";
  position: absolute;
  bottom: -44px;
  right: 20px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 150px;
  line-height: 1;
  color: #5f8466;
  opacity: 0.22;
  pointer-events: none;
}

#chalet-heuvelrug-home.ch-verblijf .ch-review__score {
  font-size: 17px;
  padding: 7px 14px;
  border-radius: 6px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-review__source {
  font-size: 14px;
  color: rgba(58, 47, 34, 0.7);
}

#chalet-heuvelrug-home.ch-verblijf .ch-review__quote {
  color: #2b241c;
  font-weight: 500;
}

#chalet-heuvelrug-home.ch-verblijf .ch-review__note {
  color: rgba(58, 47, 34, 0.6);
  padding-right: 56px;
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-review { background: #e4ebf1; border-left-color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-blauw .ch-review::before { color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-review { background: #efe6da; border-left-color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-review::before { color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-review { background: #e7e8e9; border-left-color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-review::before { color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-review { background: #f0e2e4; border-left-color: #9a5a66; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-review::before { color: #9a5a66; }

@media (max-width: 600px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-review {
    padding: 34px 24px 28px;
  }

  #chalet-heuvelrug-home.ch-verblijf .ch-review::before {
    font-size: 110px;
  }
}

/* Titel "Review" bovenin het blok */
#chalet-heuvelrug-home.ch-verblijf .ch-review__title {
  margin: 0;
  font-size: 34px;
  line-height: 1;
  color: #2b241c;
}

/* Voorzieningen in een kader naast de review; kopjes even groot als Highlights */
#chalet-heuvelrug-home .ch-vb-features-head {
  margin: 72px auto 0;
}

#chalet-heuvelrug-home.ch-verblijf .ch-features {
  margin-top: 28px;
  justify-items: stretch;
  grid-template-columns: 2fr 1fr;
  align-items: stretch;
  gap: 28px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-features--no-review {
  grid-template-columns: 1fr;
}

#chalet-heuvelrug-home .ch-vb-amenities {
  width: 100%;
  box-sizing: border-box;
  justify-self: stretch;
  display: grid;
  gap: 24px 40px;
  align-content: start;
  align-items: start;
  background: #fffdf8;
  border: 1px solid rgba(44, 70, 54, 0.14);
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(43, 36, 28, 0.1), 0 2px 6px rgba(43, 36, 28, 0.05);
  padding: 36px 36px 40px;
}

#chalet-heuvelrug-home .ch-vb-amenities--1 { grid-template-columns: 1fr; }
#chalet-heuvelrug-home .ch-vb-amenities--2 { grid-template-columns: 1fr 1fr; }
#chalet-heuvelrug-home .ch-vb-amenities--3 { grid-template-columns: 1fr 1fr 1fr; }

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-amenities { border-color: rgba(91, 122, 150, 0.35); }
#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-amenities { border-color: rgba(138, 109, 79, 0.35); }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-amenities { border-color: rgba(107, 113, 118, 0.35); }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-amenities { border-color: rgba(154, 90, 102, 0.35); }

@media (max-width: 900px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-features {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-amenities,
  #chalet-heuvelrug-home .ch-vb-amenities--2,
  #chalet-heuvelrug-home .ch-vb-amenities--3 {
    grid-template-columns: 1fr;
    padding: 28px 22px 30px;
  }
}

/* Voorzieningen over de volle breedte (3 kolommen) */
#chalet-heuvelrug-home.ch-verblijf .ch-features,
#chalet-heuvelrug-home.ch-verblijf .ch-features--no-review {
  grid-template-columns: 1fr;
}

#chalet-heuvelrug-home .ch-vb-amenities,
#chalet-heuvelrug-home .ch-vb-amenities--1,
#chalet-heuvelrug-home .ch-vb-amenities--2,
#chalet-heuvelrug-home .ch-vb-amenities--3 {
  padding: 40px 44px 44px;
}

/* Review naast de tips; tips maximaal 4 in 2 x 2 */
#chalet-heuvelrug-home .ch-vb-duo {
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
}

#chalet-heuvelrug-home .ch-vb-duo--both {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
}

#chalet-heuvelrug-home .ch-vb-duo .ch-review,
#chalet-heuvelrug-home .ch-vb-duo .ch-plaats-tips {
  margin: 0;
  max-width: none;
  box-sizing: border-box;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips {
  padding: 40px 36px 40px;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__head {
  margin-bottom: 26px;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__list {
  margin: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item,
#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:last-child {
  padding: 22px 26px;
  border-left: 1px solid rgba(244, 236, 220, 0.18);
  border-top: 1px solid rgba(244, 236, 220, 0.18);
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-child(odd) {
  border-left: 0;
  padding-left: 0;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-child(even) {
  padding-right: 0;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-child(-n+2) {
  border-top: 0;
  padding-top: 4px;
}

#chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-last-child(-n+2):nth-child(n+3) {
  padding-bottom: 4px;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-duo--both {
    grid-template-columns: minmax(0, 1fr);
  }

  #chalet-heuvelrug-home .ch-vb-amenities,
  #chalet-heuvelrug-home .ch-vb-amenities--1,
  #chalet-heuvelrug-home .ch-vb-amenities--2,
  #chalet-heuvelrug-home .ch-vb-amenities--3 {
    padding: 32px 28px 34px;
    gap: 20px 28px;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips {
    padding: 32px 22px;
  }

  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__list {
    grid-template-columns: minmax(0, 1fr);
  }

  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:last-child,
  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-child(odd),
  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:nth-child(even) {
    border-left: 0;
    border-top: 1px solid rgba(244, 236, 220, 0.18);
    padding: 22px 0 22px;
  }

  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:first-child {
    border-top: 0;
    padding-top: 4px;
  }

  #chalet-heuvelrug-home .ch-vb-duo--both .ch-plaats-tips__item:last-child {
    padding-bottom: 4px;
  }
}

/* Tipsblok: altijd goud (kleur van het label "Van de verhuurder"), los van het kleurthema */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #eec984 0%, #dfae60 100%);
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__eyebrow {
  color: rgba(43, 36, 28, 0.72);
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__title {
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__icon {
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item h3 {
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item p {
  color: rgba(43, 36, 28, 0.82);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-duo--both .ch-plaats-tips__item {
  border-color: rgba(43, 36, 28, 0.22);
}

/* Tipsblok: pins in de donkere kleur van het thema, tekst in wit */
#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__icon { color: #2c4636; }
#chalet-heuvelrug-home.ch-theme-blauw .ch-plaats-tips__icon { color: #2b4258; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-plaats-tips__icon { color: #4d3b2c; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-plaats-tips__icon { color: #3a3e42; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-plaats-tips__icon { color: #5c2c37; }

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__eyebrow,
#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__title,
#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item h3 {
  color: #ffffff;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item p {
  color: rgba(255, 255, 255, 0.94);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-duo--both .ch-plaats-tips__item {
  border-color: rgba(255, 255, 255, 0.4);
}

/* Dieper goud, zodat de witte tekst goed leesbaar blijft */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips {
  background: radial-gradient(circle at 20% 0%, #d8a04a 0%, #b97a2b 100%);
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item p {
  color: #ffffff;
}

/* Tipsblok: zelfde tint als Highlights en Review (volgt het kleurthema); titel links, net als Review */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips {
  position: relative;
  background: #e9eee0;
  color: #2b241c;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 4px solid #5f8466;
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(43, 36, 28, 0.14), 0 2px 6px rgba(43, 36, 28, 0.06);
}
#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-around .ch-plaats-tips { background: #e4ebf1; border-left-color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-around .ch-plaats-tips { background: #efe6da; border-left-color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-around .ch-plaats-tips { background: #e7e8e9; border-left-color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-around .ch-plaats-tips { background: #f0e2e4; border-left-color: #9a5a66; }

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__head {
  text-align: left;
  margin-bottom: 22px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__title {
  font-size: 34px;
  line-height: 1;
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__icon { color: #5f8466; }
#chalet-heuvelrug-home.ch-theme-blauw .ch-plaats-tips__icon { color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-plaats-tips__icon { color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-plaats-tips__icon { color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-plaats-tips__icon { color: #9a5a66; }

#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item h3 { color: #2b241c; }
#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__item p { color: rgba(58, 47, 34, 0.8); }

#chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-duo--both .ch-plaats-tips__item {
  border-color: rgba(43, 36, 28, 0.14);
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-around .ch-plaats-tips {
    padding: 34px 24px 28px;
  }
}

/* ==========================================================================
   Reviews onder "Alle opties & kenmerken" (max. 3, licht, zoals het voorzieningenkader)
   ========================================================================== */
#chalet-heuvelrug-home .ch-vb-reviews-sec {
  padding: 0 24px 120px;
}

#chalet-heuvelrug-home .ch-vb-reviews-head {
  margin: 8px auto 0;
}

#chalet-heuvelrug-home .ch-vb-reviews {
  max-width: 1140px;
  margin: 28px auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
}

#chalet-heuvelrug-home .ch-vb-reviews--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#chalet-heuvelrug-home .ch-vb-reviews--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews .ch-review {
  background: #fffdf8;
  border: 1px solid rgba(44, 70, 54, 0.14);
  border-left-width: 1px;
  box-shadow: 0 18px 40px rgba(43, 36, 28, 0.1), 0 2px 6px rgba(43, 36, 28, 0.05);
  padding: 36px 32px 36px;
  margin: 0;
  box-sizing: border-box;
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-reviews .ch-review { background: #fffdf8; border-color: rgba(91, 122, 150, 0.35); }
#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-reviews .ch-review { background: #fffdf8; border-color: rgba(138, 109, 79, 0.35); }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-reviews .ch-review { background: #fffdf8; border-color: rgba(107, 113, 118, 0.35); }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-reviews .ch-review { background: #fffdf8; border-color: rgba(154, 90, 102, 0.35); }

#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--3 .ch-review__quote,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--2 .ch-review__quote {
  font-size: 17px;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-reviews--2,
  #chalet-heuvelrug-home .ch-vb-reviews--3 {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-vb-reviews-sec {
    padding: 0 16px 72px;
  }

  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews .ch-review {
    padding: 30px 24px 28px;
  }
}

/* ==========================================================================
   Tips van uw gastheer in het gastheerblok: lichte kaarten, zoals de Highlights (max. 4, 2 x 2)
   ========================================================================== */
#chalet-heuvelrug-home .ch-vb-host-tips {
  max-width: 920px;
  margin: 72px auto 0;
  padding-top: 56px;
  border-top: 1px solid rgba(217, 168, 102, 0.4);
}

#chalet-heuvelrug-home .ch-vb-host-tips--solo {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

#chalet-heuvelrug-home .ch-vb-host-tips__title {
  font-size: 40px;
  line-height: 1.05;
  color: #f3ead9;
  text-align: left;
  margin: 0 0 28px;
}

#chalet-heuvelrug-home .ch-vb-host-tips__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

#chalet-heuvelrug-home .ch-vb-host-tips__item {
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 10px;
  padding: 24px 26px 26px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

#chalet-heuvelrug-home .ch-vb-host-tips__icon {
  color: #5f8466;
  margin-bottom: 10px;
}

#chalet-heuvelrug-home .ch-vb-host-tips__item h3 {
  font-size: 16.5px;
  font-weight: 600;
  color: #2b241c;
  margin: 0 0 8px;
}

#chalet-heuvelrug-home .ch-vb-host-tips__item p {
  font-size: 14.5px;
  line-height: 1.65;
  color: rgba(58, 47, 34, 0.82);
  margin: 0;
}

#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-host-tips__item { background: #e4ebf1; border-left-color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-blauw .ch-vb-host-tips__icon { color: #5b7a96; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-host-tips__item { background: #efe6d9; border-left-color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-aarde .ch-vb-host-tips__icon { color: #8a6d4f; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-host-tips__item { background: #e7e8e9; border-left-color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-antraciet .ch-vb-host-tips__icon { color: #6b7176; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-host-tips__item { background: #f0e2e4; border-left-color: #9a5a66; }
#chalet-heuvelrug-home.ch-theme-bordeaux .ch-vb-host-tips__icon { color: #9a5a66; }

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-host-tips__title {
    text-align: center;
  }
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-vb-host-tips {
    margin-top: 56px;
    padding-top: 44px;
  }

  #chalet-heuvelrug-home .ch-vb-host-tips__title {
    font-size: 34px;
  }

  #chalet-heuvelrug-home .ch-vb-host-tips__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  #chalet-heuvelrug-home .ch-vb-host-tips__item {
    padding: 22px 22px 24px;
  }
}

/* Reviews: kaarten altijd even groot (een derde van de breedte) en gecentreerd; 1 of 2 staan in het midden */
#chalet-heuvelrug-home .ch-vb-reviews,
#chalet-heuvelrug-home .ch-vb-reviews--1,
#chalet-heuvelrug-home .ch-vb-reviews--2,
#chalet-heuvelrug-home .ch-vb-reviews--3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews .ch-review {
  flex: 0 0 calc((100% - 56px) / 3);
  max-width: calc((100% - 56px) / 3);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--1 .ch-review__quote {
  font-size: 17px;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews .ch-review {
    flex: 0 0 100%;
    max-width: 560px;
  }
}

/* Footer: links in de footer even licht als de tekst */
#chalet-heuvelrug-home .ch-footer a {
  color: inherit;
}

/* Label "Advertentie": rechtsboven in de hero, goudgevuld en goed leesbaar */
#chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
  padding: 7px 16px;
  background: #e2b36b;
  border: 0;
  color: #2b241c;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.2;
}

#chalet-heuvelrug-home .ch-vb-hero__disclosure {
  max-width: 270px;
  margin-top: 2px;
  font-size: 12.5px;
  line-height: 1.5;
  color: rgba(243, 234, 217, 0.82);
}


@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
    display: block;
    width: fit-content;
    margin: 0 auto 20px;
  }
}

/* Label "Advertentie" is een link naar de uitleg onderaan */
#chalet-heuvelrug-home .ch-vb-hero a.ch-vb-chip {
  text-decoration: none;
  cursor: pointer;
}

#chalet-heuvelrug-home .ch-vb-hero a.ch-vb-chip:hover,
#chalet-heuvelrug-home .ch-vb-hero a.ch-vb-chip:focus-visible {
  background: #f0c47f;
}

#chalet-heuvelrug-home .ch-faq-item {
  scroll-margin-top: 40px;
}

/* ==========================================================================
   Gastheerblok: rustiger en persoonlijker
   ========================================================================== */
/* Cirkel verticaal gecentreerd tegenover het kader */
#chalet-heuvelrug-home .ch-cta2__inner {
  align-items: center;
}

/* Gekozen foto vult de cirkel */
#chalet-heuvelrug-home .ch-badge__circle--foto {
  padding: 0;
  gap: 0;
}

#chalet-heuvelrug-home .ch-badge__photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

/* Quote: groter, helderder en met een aanhalingsteken */
#chalet-heuvelrug-home .ch-quote-box {
  position: relative;
  overflow: hidden;
  padding: 28px 30px 28px;
}

#chalet-heuvelrug-home .ch-quote-box::before {
  content: "\201C";
  position: absolute;
  top: -6px;
  right: 22px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 120px;
  line-height: 1;
  color: #d9a866;
  opacity: 0.22;
  pointer-events: none;
}

#chalet-heuvelrug-home .ch-quote-box__text {
  color: rgba(243, 234, 217, 0.95);
  font-size: 17.5px;
  line-height: 1.7;
  padding-right: 44px;
}

#chalet-heuvelrug-home .ch-quote-box__signature {
  font-size: 14px;
}

/* Knoppen links uitgelijnd met de tekst (op mobiel blijven ze gecentreerd) */
@media (min-width: 901px) {
  #chalet-heuvelrug-home .ch-vb-host-btns {
    justify-content: flex-start;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-quote-box {
    padding: 24px 22px;
  }

  #chalet-heuvelrug-home .ch-quote-box__text {
    font-size: 16.5px;
    padding-right: 0;
  }
}

/* Label "Advertentie": kleiner en rustiger */
#chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
  padding: 4px 11px;
  font-size: 11px;
  letter-spacing: 0.12em;
  line-height: 1.2;
}

@media (min-width: 901px) {
  #chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
    top: 22px;
    right: 28px;
  }
}

/* Partnerpagina: kruimelpad linksboven en klikbaar logo */
#chalet-heuvelrug-home .ch-vb-crumbs {
  position: absolute;
  top: 22px;
  left: 28px;
  right: 190px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  font-size: 13px;
  line-height: 1.3;
  color: #d8cdb6;
}

#chalet-heuvelrug-home .ch-vb-crumbs a {
  color: #e2b36b;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-vb-crumbs a:hover,
#chalet-heuvelrug-home .ch-vb-crumbs a:focus-visible {
  text-decoration: underline;
}

#chalet-heuvelrug-home .ch-vb-crumbs [aria-current="page"] {
  color: rgba(243, 234, 217, 0.9);
}

#chalet-heuvelrug-home .ch-vb-crumbs__sep {
  opacity: 0.6;
}

#chalet-heuvelrug-home .ch-vb-logo-link {
  display: block;
  flex: none;
  line-height: 0;
  transition: opacity 0.15s ease;
}

#chalet-heuvelrug-home .ch-vb-logo-link:hover {
  opacity: 0.85;
}

#chalet-heuvelrug-home .ch-vb-logo-link:focus-visible {
  outline: 2px solid #e2b36b;
  outline-offset: 4px;
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-vb-crumbs {
    position: static;
    justify-content: center;
    margin: 0 0 14px;
    padding: 0 16px;
    text-align: center;
  }

  #chalet-heuvelrug-home .ch-vb-hero .ch-vb-chip {
    margin-top: 0;
  }
}

@media (max-width: 600px) {
  /* Op een smal scherm staat de naam er direct onder: laatste stap van het kruimelpad weglaten */
  #chalet-heuvelrug-home .ch-vb-crumbs [aria-current="page"],
  #chalet-heuvelrug-home .ch-vb-crumbs__sep:nth-last-child(2) {
    display: none;
  }
}

/* ==========================================================================
   Plaatspagina in de stijl van de partnerpagina: tips als lichte kaarten
   ========================================================================== */
#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__head {
  margin-bottom: 36px;
}

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item,
#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:last-child {
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 10px;
  padding: 24px 26px 26px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__icon {
  color: #5f8466;
}

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item h3 {
  color: #2b241c;
}

#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item p {
  color: rgba(58, 47, 34, 0.82);
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips {
    padding: 36px 18px 28px;
  }

  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:last-child {
    padding: 20px 20px 22px;
  }
}

/* Plaatspagina: galerij met foto's van de plaats (zelfde raster als de partnerpagina) */
#chalet-heuvelrug-home .ch-plaats-gallery {
  max-width: 1040px;
  margin: 0 auto;
  padding: 24px 24px 100px;
}

#chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery {
  margin-top: 0;
}

/* Plaatspagina: tips van de redactie bovenaan, "Dagje uit" eronder */
#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips {
  margin-top: 0;
}



/* Plaatspagina: bereikbaarheid als kaarten per vervoermiddel */
#chalet-heuvelrug-home .ch-plaats-about .ch-section-head {
  margin-bottom: 40px;
}

#chalet-heuvelrug-home .ch-plaats-reach {
  list-style: none;
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

#chalet-heuvelrug-home .ch-plaats-reach__item {
  flex: 1 1 280px;
  max-width: 480px;
  background: #e9eee0;
  border: 1px solid rgba(44, 70, 54, 0.12);
  border-left: 3px solid #5f8466;
  border-radius: 10px;
  padding: 24px 26px 26px;
  text-align: left;
}

#chalet-heuvelrug-home .ch-plaats-reach__icon {
  display: block;
  color: #5f8466;
  margin-bottom: 10px;
}

#chalet-heuvelrug-home .ch-plaats-reach__item h3 {
  margin: 0 0 8px;
  font-size: 16.5px;
  font-weight: 600;
  color: #2b241c;
}

#chalet-heuvelrug-home .ch-plaats-reach__item p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(58, 47, 34, 0.86);
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-plaats-reach {
    padding: 0 16px;
  }

  #chalet-heuvelrug-home .ch-plaats-reach__item {
    flex-basis: 100%;
    max-width: none;
    padding: 20px 20px 22px;
  }
}

/* ==========================================================================
   Vaste koppenmaten (Amatic SC) voor gids, plaatspagina en partnerpagina
   Paginatitel 64 / sectie- en paneelkop 52 / groepskop 40 / klein 32.
   Namen op verblijf- en dagje-uit-kaarten staan in het gewone lettertype (16,5 px, vet).
   Op mobiel: 44 / 40 / 32 / 28.
   Paneelkop = "Tips van de redactie" en "Tips van uw gastheer".
   ========================================================================== */
#chalet-heuvelrug-home .ch-gids-hero__headline { font-size: 64px; }
#chalet-heuvelrug-home.ch-gids .ch-heading,
#chalet-heuvelrug-home.ch-verblijf .ch-heading,
#chalet-heuvelrug-home.ch-verblijf .ch-heading--sm,
#chalet-heuvelrug-home .ch-plaats-intro__title,
#chalet-heuvelrug-home .ch-plaats-tips__title,
#chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__title,
#chalet-heuvelrug-home .ch-vb-host-tips__title { font-size: 52px; }
#chalet-heuvelrug-home.ch-verblijf .ch-review__title,
#chalet-heuvelrug-home .ch-gids-region__title,
#chalet-heuvelrug-home .ch-gids-card__title { font-size: 40px; }
#chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__title { font-size: 32px; }

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-gids-hero__headline { font-size: 44px; }
}
@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-gids .ch-heading,
  #chalet-heuvelrug-home.ch-verblijf .ch-heading,
  #chalet-heuvelrug-home.ch-verblijf .ch-heading--sm,
  #chalet-heuvelrug-home .ch-plaats-intro__title,
  #chalet-heuvelrug-home .ch-plaats-tips__title,
  #chalet-heuvelrug-home.ch-verblijf .ch-plaats-tips__title,
  #chalet-heuvelrug-home .ch-vb-host-tips__title { font-size: 40px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-review__title,
  #chalet-heuvelrug-home .ch-gids-region__title,
  #chalet-heuvelrug-home .ch-gids-card__title { font-size: 32px; }
  #chalet-heuvelrug-home .ch-gids-card--compact .ch-gids-card__title { font-size: 28px; }
}

/* Plaatsfoto's: beschrijving als pill onderin de foto */
#chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery__item {
  position: relative;
}

#chalet-heuvelrug-home .ch-vb-gallery__caption {
  position: absolute;
  left: 12px;
  bottom: 12px;
  max-width: calc(100% - 24px);
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(251, 247, 239, 0.94);
  color: #2b241c;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  box-shadow: 0 2px 8px rgba(43, 36, 28, 0.2);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-vb-gallery__caption {
    left: 8px;
    bottom: 8px;
    max-width: calc(100% - 16px);
    padding: 5px 11px;
    font-size: 12px;
  }
}

/* Plaatspagina: foto bij een tip van de redactie */
#chalet-heuvelrug-home .ch-plaats-tips__photo {
  aspect-ratio: 4 / 3;
  margin: 0 0 16px;
  border-radius: 6px;
  overflow: hidden;
  background: #d9dfcf;
}

#chalet-heuvelrug-home .ch-plaats-tips__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ==========================================================================
   VASTE AFSPRAKEN VOOR RUIMTE (gids, plaatspagina's en partnerpagina)
   Pas de maten hier aan; alle pagina's volgen.

   --sp-section  boven en onder elke sectie (en onder de foto's voor een nieuwe sectie)
   --sp-block    tussen twee blokken op dezelfde achtergrond (bijv. verblijven > tips >
                 dagje uit): gelijk aan --sp-section; wil je hier meer of minder ruimte,
                 vervang dan 'var(--sp-section)' door een eigen maat
   --sp-head     tussen een kop en de inhoud eronder
   --sp-grid     tussen kaarten naast en onder elkaar
   ========================================================================== */
#chalet-heuvelrug-home.ch-gids,
#chalet-heuvelrug-home.ch-verblijf {
  --sp-section: 100px;
  --sp-block: var(--sp-section);
  --sp-head: 48px;
  --sp-grid: 24px;
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-gids,
  #chalet-heuvelrug-home.ch-verblijf {
    --sp-section: 72px;
    --sp-block: var(--sp-section);
    --sp-head: 40px;
    --sp-grid: 20px;
  }
}

#chalet-heuvelrug-home.ch-gids .ch-area,
#chalet-heuvelrug-home.ch-gids .ch-intro,
#chalet-heuvelrug-home.ch-gids .ch-faq {
  padding-top: var(--sp-section);
  padding-bottom: var(--sp-section);
}

/* Foto's op de plaatspagina */
#chalet-heuvelrug-home.ch-gids .ch-plaats-gallery {
  padding-bottom: var(--sp-section);
}

/* Blokken op dezelfde achtergrond: samen precies --sp-block */
#chalet-heuvelrug-home.ch-gids .ch-plaats-spots.ch-area {
  padding-top: calc(var(--sp-block) - var(--sp-section));
}

#chalet-heuvelrug-home.ch-gids .ch-plaats-spots .ch-plaats-tips + .ch-plaats-spots__head {
  margin-top: var(--sp-block);
}

/* Kop > inhoud */
#chalet-heuvelrug-home.ch-gids section > .ch-gids-grid,
#chalet-heuvelrug-home.ch-gids .ch-faq__list,
#chalet-heuvelrug-home.ch-gids .ch-map {
  margin-top: var(--sp-head);
}

#chalet-heuvelrug-home.ch-gids .ch-plaats-about .ch-section-head {
  margin-bottom: var(--sp-head);
}

/* Kaarten */
#chalet-heuvelrug-home.ch-gids .ch-gids-grid,
#chalet-heuvelrug-home.ch-gids .ch-plaats-reach {
  gap: var(--sp-grid);
}

/* Partnerpagina volgt dezelfde afspraken */
#chalet-heuvelrug-home.ch-verblijf .ch-intro,
#chalet-heuvelrug-home.ch-verblijf .ch-faq,
#chalet-heuvelrug-home.ch-verblijf .ch-cta2 {
  padding-top: var(--sp-section);
  padding-bottom: var(--sp-section);
}

/* Reviews horen bij hetzelfde blok als de opties erboven: samen --sp-block */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews-sec {
  padding-top: calc(var(--sp-block) - var(--sp-section));
  padding-bottom: var(--sp-section);
}

/* Donkere band "Welkom": titel is een sectiekop; tips daaronder zijn een paneelkop */
#chalet-heuvelrug-home.ch-verblijf .ch-cta2__title {
  font-size: 52px;
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-host-tips__title {
  margin-bottom: var(--sp-head);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-host-tips__list {
  gap: var(--sp-grid);
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-cta2__title {
    font-size: 40px;
  }
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews-head {
  margin-top: 0;
}

/* Onderdelen onder elkaar in de pagina: foto's, feiten, opties */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-facts-head,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-features-head {
  margin-top: var(--sp-block);
}

/* Kop > inhoud */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery,
#chalet-heuvelrug-home.ch-verblijf .ch-features--no-review,
#chalet-heuvelrug-home.ch-verblijf .ch-features,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews,
#chalet-heuvelrug-home.ch-verblijf .ch-faq__list {
  margin-top: var(--sp-head);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-facts {
  padding-top: var(--sp-head);
}

/* Tips van de gastheer in de donkere band: lijn precies in het midden van --sp-block */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-host-tips {
  margin-top: calc(var(--sp-block) / 2);
  padding-top: calc(var(--sp-block) / 2);
}

/* Kaarten */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-facts .ch-plaats-facts,
#chalet-heuvelrug-home.ch-verblijf .ch-features,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews {
  gap: var(--sp-grid);
}

/* Eerste inhoud na de gekleurde kop: altijd --sp-section ruimte; ruimte onder de inleiding idem */
#chalet-heuvelrug-home.ch-gids .ch-plaats-intro,
#chalet-heuvelrug-home.ch-gids .ch-plaats-intro--facts {
  padding-top: var(--sp-section);
  padding-bottom: var(--sp-section);
}

/* Foto's volgen op de inleiding: samen --sp-block */
#chalet-heuvelrug-home.ch-gids .ch-plaats-gallery {
  padding-top: calc(var(--sp-block) - var(--sp-section));
}

/* Tips van de redactie: kop > kaarten volgt --sp-head */
#chalet-heuvelrug-home.ch-gids .ch-plaats-spots .ch-plaats-tips__head {
  margin-bottom: var(--sp-head);
}

/* Namen op verblijf- en dagje-uit-kaarten in het gewone lettertype, zoals de tips */
#chalet-heuvelrug-home .ch-gids-stays .ch-gids-card__title,
#chalet-heuvelrug-home .ch-plaats-spots .ch-gids-card__title {
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 16.5px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0;
  color: #2b241c;
}

/* Verblijfkaart: label "Gesponsord" rechtsboven in de foto, "Bekijk partnerpagina" direct onder de foto */
#chalet-heuvelrug-home .ch-gids-card__image {
  position: relative;
}

#chalet-heuvelrug-home .ch-gids-card__badge--on-image {
  position: absolute;
  top: 14px;
  right: 14px;
  margin: 0;
  background: rgba(251, 247, 239, 0.95);
  box-shadow: 0 2px 8px rgba(43, 36, 28, 0.2);
}

#chalet-heuvelrug-home .ch-gids-card__link--top,
#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--top {
  background: #e9eee0;
  border-top: 0;
  border-bottom: 1px solid rgba(44, 70, 54, 0.14);
}

#chalet-heuvelrug-home .ch-gids-card__link--top:hover,
#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--top:hover {
  background: #dde5d1;
}

#chalet-heuvelrug-home .ch-gids-card__link--top svg {
  background: #fbf7ef;
}

#chalet-heuvelrug-home .ch-gids-card__link--top:hover svg,
#chalet-heuvelrug-home .ch-gids-card__link--top:focus-visible svg {
  background: #2c4636;
}

/* ---- Zoeker: Plaats + vast Soort verblijf op de eerste rij, vier keuzes eronder ---- */
#chalet-heuvelrug-home .ch-finder__grid {
  grid-template-columns: repeat(12, 1fr);
}
#chalet-heuvelrug-home .ch-finder__field {
  grid-column: span 3;
}
#chalet-heuvelrug-home .ch-finder__field--wide {
  grid-column: span 6;
}
#chalet-heuvelrug-home .ch-finder__fixed {
  display: flex;
  align-items: center;
  height: 46px;
  padding: 0 12px;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  color: #2b241c;
  background: #e9eee0;
  border: 1px solid rgba(43, 36, 28, 0.12);
  border-radius: 8px;
}
@media (max-width: 720px) {
  #chalet-heuvelrug-home .ch-finder__grid {
    grid-template-columns: 1fr 1fr;
  }
  #chalet-heuvelrug-home .ch-finder__field--wide {
    grid-column: span 2;
  }
  #chalet-heuvelrug-home .ch-finder__field {
    grid-column: span 1;
  }
  #chalet-heuvelrug-home .ch-finder__field--wide {
    grid-column: span 2;
  }
}

/* Melding als de zoeker geen verblijven vindt */
#chalet-heuvelrug-home .ch-gids-empty {
  max-width: 720px;
  margin: var(--sp-head, 48px) auto 0;
  text-align: center;
  padding: 18px 22px;
  background: #e9eee0;
  border-radius: 12px;
  font-size: 16px;
  line-height: 1.55;
  color: #2b241c;
}
#chalet-heuvelrug-home .ch-gids-empty a {
  color: #c96a37;
  font-weight: 600;
}

/* Label op een uitgelicht verblijf dat niet helemaal bij de zoekopdracht past */
#chalet-heuvelrug-home .ch-gids-card__mismatch {
  align-self: flex-start;
  margin: 0 0 10px;
  padding: 5px 12px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  color: #8a4a22;
  background: #f6e3d3;
  border-radius: 999px;
}

/* ---- Gids: verblijven in de spotlight als horizontale kaart (foto links, wit deel rechts, twee knoppen naast elkaar) ---- */
#chalet-heuvelrug-home .ch-gids-grid--rows {
  grid-template-columns: 1fr;
  max-width: 1000px;
}
#chalet-heuvelrug-home .ch-gids-card--wide {
  display: grid;
  grid-template-columns: minmax(0, 42%) minmax(0, 1fr);
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__image {
  aspect-ratio: auto;
  min-height: 300px;
  height: 100%;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__body {
  padding: 32px 32px 20px;
  gap: 12px;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__title {
  font-size: 24px;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 0 32px 32px;
  margin-top: auto;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link {
  flex: 1 1 150px;
  min-width: 0;
  padding: 14px 16px;
  gap: 8px;
  border: 0;
  border-radius: 8px;
  text-align: left;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own {
  background: #e9eee0;
  color: #2c4636;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own:hover {
  background: #dde5d1;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link:not(.ch-gids-card__link--own) {
  background: #c96a37;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link:not(.ch-gids-card__link--own):hover {
  background: #b25a2c;
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-card--wide {
    grid-template-columns: 1fr;
  }
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__image {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__body {
    padding: 24px 22px 16px;
  }
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions {
    padding: 0 22px 24px;
  }
}
/* Knoppen in de kleur van het platform: Airbnb #FF385C, Booking.com #0057b8 (de rest blijft oranje) */
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link.ch-gids-card__link--p-airbnb {
  background: #ff385c;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link.ch-gids-card__link--p-airbnb:hover {
  background: #e00b41;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link.ch-gids-card__link--p-booking {
  background: #0057b8;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link.ch-gids-card__link--p-booking:hover {
  background: #004a9c;
}

/* ---- Boekknoppen: overal dezelfde knop (alleen de plek verschilt: onder elkaar of naast elkaar) ---- */
#chalet-heuvelrug-home .ch-gids-card__link--book {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 0 24px 12px;
  padding: 14px 16px;
  border: 0;
  border-radius: 8px;
  background: #c96a37;
  color: #fff;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.3;
}
#chalet-heuvelrug-home .ch-gids-card__link--book:last-child {
  margin-bottom: 24px;
}
#chalet-heuvelrug-home .ch-gids-card__link--book:hover {
  background: #b25a2c;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-airbnb {
  background: #ff385c;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-airbnb:hover {
  background: #e00b41;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-booking {
  background: #0057b8;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-booking:hover {
  background: #004a9c;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--book {
  margin: 0;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-natuurhuisje {
  background: #5a125b;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card__link--book.ch-gids-card__link--p-natuurhuisje:hover {
  background: #470e48;
}

/* ---- Horizontale kaart: "Brochure" altijd op een eigen regel (links, ruimte ernaast voor later), daaronder de boekknoppen in drie kolommen ---- */
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link {
  flex: none;
  padding: 14px 14px;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own {
  grid-column: 1 / -1;
  justify-self: start;
  width: calc((100% - 24px) / 3);
}
@media (max-width: 980px) {
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own {
    width: calc((100% - 12px) / 2);
  }
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions {
    grid-template-columns: 1fr;
  }
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own {
    width: auto;
    justify-self: stretch;
  }
}

/* Tips van de redactie: link naar de website van een uitje, onderaan de tip */
#chalet-heuvelrug-home .ch-plaats-tips__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  font-size: 14px;
  font-weight: 600;
  color: #c96a37;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-plaats-tips__link:hover {
  color: #a8531f;
  text-decoration: underline;
}

/* Tips van de redactie: drie naast elkaar, maximaal twee rijen (6 tips) */
#chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 900px) {
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}

@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list {
    grid-template-columns: 1fr;
  }
}

/* Blok Locatie op de brochurepagina: volgt de vaste afspraken voor ruimte.
   Zelfde achtergrond als de reviews erboven, dus samen precies --sp-block;
   kop > inhoud is --sp-head; de donkere band eronder zorgt zelf voor zijn ruimte. */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-locatie {
  padding-top: calc(var(--sp-block) - var(--sp-section));
  padding-bottom: var(--sp-section);
}

#chalet-heuvelrug-home.ch-verblijf .ch-vb-locatie .ch-amenities,
#chalet-heuvelrug-home.ch-verblijf .ch-vb-locatie .ch-park__photo {
  margin-top: var(--sp-head);
}

#chalet-heuvelrug-home .ch-vb-locatie .ch-lead p {
  margin: 0 0 0.9em;
}

#chalet-heuvelrug-home .ch-vb-locatie .ch-lead p:last-child {
  margin-bottom: 0;
}


/* ==========================================================================
   Verblijven op de plaatspagina's: dezelfde kaart als brons in de spotlight (drie naast elkaar),
   met filter en paginering. Volgt de vaste afspraken voor ruimte (--sp-head, --sp-grid).
   ========================================================================== */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--thirds {
    max-width: 1000px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
  }
}

@media (min-width: 601px) and (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-grid--thirds {
    max-width: 1000px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Filter boven de lijst (plaatspagina): dezelfde zoekbalk als de zoeker (.ch-zk), op de lichte achtergrond. */
#chalet-heuvelrug-home .ch-finder.ch-zk.ch-zk--stay {
  max-width: 1000px;
  margin: var(--sp-head, 48px) auto 0;
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__bar {
  box-shadow: 0 10px 28px rgba(43, 36, 28, 0.13);
  border: 1px solid rgba(43, 36, 28, 0.08);
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__field--q { flex: 1.7 1 0; cursor: text; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__field input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 26px 18px 6px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: #2b241c;
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__field input::placeholder { color: #9a8c70; font-weight: 500; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__field input:focus { outline: 0; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__field:has(input:focus-visible) { box-shadow: inset 0 0 0 2px #c96a37; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__panel {
  box-shadow: 0 10px 28px rgba(43, 36, 28, 0.13);
  border: 1px solid rgba(43, 36, 28, 0.08);
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__sel { position: relative; min-width: 220px; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__sel select {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  min-height: 40px;
  padding: 0 36px 0 12px;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #2b241c;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232c4636' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center / 14px no-repeat;
  border: 1px solid rgba(43, 36, 28, 0.18);
  border-radius: 8px;
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__meta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin: 16px 0 0;
  font-size: 14px;
  color: #6b5d48;
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__meta a {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #c96a37;
  text-decoration: none;
}
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__meta a::before { content: "\00b7"; margin-right: 14px; color: #6b5d48; }
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__meta a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .ch-zk--stay + .ch-gids-grid,
#chalet-heuvelrug-home .ch-zk--stay + .ch-gids-empty + .ch-gids-grid { margin-top: var(--sp-grid, 24px); }
#chalet-heuvelrug-home .ch-zk--stay + .ch-gids-empty { margin: var(--sp-grid, 24px) auto 0; max-width: 1000px; }
@media (max-width: 1000px) {
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__field--q { flex: none; }
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__panel { max-width: none; }
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__sel { min-width: 0; }
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__row { flex-direction: column; align-items: stretch; }
}

/* Laatste kaart "Alle verblijven in [plaats]": donkergroen, met icoon en drie voordelen, zodat de ruimte onder de tekst iets zegt */
#chalet-heuvelrug-home .ch-gids-card--more {
  position: relative;
  background: #2c4636;
  border-color: #2c4636;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__body,
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__link {
  position: relative;
  z-index: 1;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__title {
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__text {
  color: rgba(251, 243, 231, 0.82);
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__more-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 6px;
  border-radius: 50%;
  background: #c96a37;
  color: #fff;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__perks {
  list-style: none;
  margin: 10px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid rgba(251, 243, 231, 0.2);
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 15px;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__perks li {
  position: relative;
  padding-left: 28px;
  line-height: 1.4;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__perks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #c96a37 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center / 11px no-repeat;
}
#chalet-heuvelrug-home .ch-gids-card--more .ch-gids-card__trees {
  flex: 1 1 0;
  min-height: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  color: rgba(251, 243, 231, 0.16);
  pointer-events: none;
}
#chalet-heuvelrug-home .ch-gids-card--more:hover {
  box-shadow: 0 10px 26px rgba(44, 70, 54, 0.3);
}

/* Situatiepagina's: afsluitende kaart met de boekknoppen en een link naar de gids */
#chalet-heuvelrug-home .ch-situatie-cta {
  padding-top: 0;
}
#chalet-heuvelrug-home .ch-situatie-cta__card {
  max-width: 1140px;
  margin: 0 auto;
  padding: 40px 40px 32px;
  background: radial-gradient(circle at 20% 0%, #33503f 0%, #24392c 100%);
  border-radius: 10px;
  color: #fbf3e7;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#chalet-heuvelrug-home .ch-situatie-cta__card .ch-gids-card__more-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: #c96a37;
  color: #fff;
}
#chalet-heuvelrug-home .ch-situatie-cta__title {
  margin: 0 0 10px;
  font-size: 26px;
  line-height: 1.2;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-situatie-cta__text {
  max-width: 640px;
  margin: 0 0 24px;
  color: rgba(251, 243, 231, 0.84);
  line-height: 1.55;
}
#chalet-heuvelrug-home .ch-situatie-cta__buttons {
  display: flex;
  gap: 14px;
  width: 100%;
  max-width: 760px;
}
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book {
  flex: 1 1 0;
  margin: 0;
  justify-content: center;
  text-align: center;
}
#chalet-heuvelrug-home .ch-situatie-cta__more {
  margin-top: 20px;
  color: #fbf3e7;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#chalet-heuvelrug-home .ch-situatie-cta__more:hover {
  color: #f0a77c;
}
#chalet-heuvelrug-home .ch-situatie-cta__note {
  margin: 14px 0 0;
  font-size: 13px;
  color: rgba(251, 243, 231, 0.6);
}
@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-situatie-cta__card {
    padding: 32px 20px 26px;
  }
  #chalet-heuvelrug-home .ch-situatie-cta__title {
    font-size: 23px;
  }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons {
    flex-direction: column;
    gap: 10px;
  }
}

/* Paginering */
#chalet-heuvelrug-home .ch-pager {
  max-width: 1140px;
  margin: var(--sp-head, 48px) auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

#chalet-heuvelrug-home .ch-pager__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

#chalet-heuvelrug-home .ch-pager__num,
#chalet-heuvelrug-home .ch-pager__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 14px;
  border: 1px solid rgba(43, 36, 28, 0.22);
  border-radius: 8px;
  background: #fbf7ef;
  font-size: 15px;
  font-weight: 600;
  color: #2c4636;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-pager a.ch-pager__num:hover,
#chalet-heuvelrug-home .ch-pager a.ch-pager__nav:hover {
  background: #f4ecdc;
  opacity: 1;
}

#chalet-heuvelrug-home .ch-pager__num.is-current {
  background: #2c4636;
  border-color: #2c4636;
  color: #fbf3e7;
}

#chalet-heuvelrug-home .ch-pager__nav.is-disabled {
  opacity: 0.4;
}

#chalet-heuvelrug-home .ch-pager__gap {
  color: #6b5d48;
}

@media (max-width: 520px) {
  #chalet-heuvelrug-home .ch-pager__nav {
    padding: 0 10px;
  }
}

/* ---- Mobiel: verblijven zwiepen opzij, in de ingestelde volgorde (gids: spotlight, plaatspagina: lijst) ---- */
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-grid--rows {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: var(--sp-grid, 20px);
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    padding: 0 24px 4px;
    box-sizing: border-box;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 24px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  #chalet-heuvelrug-home .ch-gids-grid--rows::-webkit-scrollbar {
    display: none;
  }

  #chalet-heuvelrug-home .ch-gids-grid--rows > .ch-gids-card {
    flex: 0 0 84%;
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  /* Lage kaarten naast elkaar: de foto blijft 3:2, de wide-kaart staat gestapeld */
  #chalet-heuvelrug-home .ch-gids-card--wide {
    display: flex;
    flex-direction: column;
  }

  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__image {
    aspect-ratio: 3 / 2;
    min-height: 0;
    height: auto;
  }

  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__content {
    flex: 1 1 auto;
  }
}

/* ---- Gids, spotlight op een breed scherm: 1e verblijf breed; 2e breed eronder; vanaf 3 verblijven de rest in 2 of 3 kolommen ---- */
@media (min-width: 761px) {
  /* Zes kolommen: 1e verblijf over alles, 2e en 3e elk de helft, 4e t/m 6e elk een derde */
  #chalet-heuvelrug-home .ch-gids-grid--lead {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child {
    grid-column: 1 / -1;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(2),
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(3) {
    grid-column: span 3;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(n + 4) {
    grid-column: span 2;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child),
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide {
    display: flex;
    flex-direction: column;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__image,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__image {
    aspect-ratio: 3 / 2;
    min-height: 0;
    height: auto;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__content,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__content {
    flex: 1 1 auto;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__body,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__body {
    padding: 24px 22px 16px;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__title,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__title {
    font-size: 20px;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__actions,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__actions {
    padding: 0 22px 24px;
    grid-template-columns: 1fr;
  }

  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__actions .ch-gids-card__link--own,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__actions .ch-gids-card__link--own {
    width: auto;
    justify-self: stretch;
  }
}

/* ---- Brochure-balk onder de foto: zwart met witte tekst (plaatspagina en staande kaarten op de gids) ---- */
#chalet-heuvelrug-home .ch-gids-card__link--top,
#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--top {
  background: #1b1712;
  color: #fff;
  border-bottom-color: #1b1712;
}

#chalet-heuvelrug-home .ch-gids-card__link--top:hover,
#chalet-heuvelrug-home .ch-gids-card__main .ch-gids-card__link--top:hover {
  background: #2f2820;
}

/* ---- Brochure staat in elke kaart direct onder de foto: foto + balk vormen samen de mediakolom ---- */
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__media {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__media .ch-gids-card__image {
  flex: 1 1 auto;
}

#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__media .ch-gids-card__link--top {
  flex: none;
  margin: 0;
  border-radius: 0;
  border-top: 0;
  padding: 16px 22px;
}

@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__media .ch-gids-card__image {
    flex: none;
    height: auto;
    min-height: 0;
  }
}

@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:not(:first-child) .ch-gids-card__media .ch-gids-card__image,
  #chalet-heuvelrug-home .ch-gids-grid--thirds > .ch-gids-card--wide .ch-gids-card__media .ch-gids-card__image {
    flex: none;
  }
}

/* ---- Spotlightplekken: kleuren staan onderaan het bestand (Ultra, High, Hot, Smart, Quick) ---- */



/* Plaatspagina: verblijf met een spotlightplek heeft de Brochure-balk in de kleur van die plek (de kaart zelf blijft gewoon) */

/* Verblijf zonder foto: de Brochure-balk staat bovenaan zijn kolom en rekt niet mee */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid:not(.ch-gids-grid--lead) .ch-gids-card--wide .ch-gids-card__media:not(:has(.ch-gids-card__image)),
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__media:not(:has(.ch-gids-card__image)) {
    align-self: start;
  }
}

/* Kader om de kaart in de kleur van de spotlightplek */



/* Spotlightkaarten: het tekstdeel krijgt de tint van de plek (kleur van de plek), zodat foto, Brochure-balk en tekst als één geheel lezen en de kaart eruit springt */

/* Locatie en kenmerkchips op de verblijfskaarten: duidelijker. De locatie in terracotta met een pinnetje, de chips wit met een rand en donkerder tekst */
#chalet-heuvelrug-home .ch-gids-card__place {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-weight: 700;
  color: #b55a2b;
}
#chalet-heuvelrug-home .ch-gids-card__place::before {
  content: "";
  flex: none;
  width: 14px;
  height: 14px;
  margin-top: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f4119' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
#chalet-heuvelrug-home .ch-gids-tags li {
  background: #fff;
  color: #3d3427;
  font-size: 13px;
  font-weight: 600;
  padding: 5px 12px;
  border: 1px solid rgba(43, 36, 28, 0.2);
}

/* Leesbaarheid verblijfskaarten: locatie minder gespatieerd en donkerder, beschrijving en chips donkerder (lettergrootte ongewijzigd) */
#chalet-heuvelrug-home .ch-gids-card__place {
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 1.35;
  color: #8f4119;
}
#chalet-heuvelrug-home .ch-gids-card__place::before {
  margin-top: 1px;
}
#chalet-heuvelrug-home .ch-gids-card--stay .ch-gids-card__text {
  color: #2b251d;
  font-size: 15px;
  line-height: 1.65;
}
#chalet-heuvelrug-home .ch-gids-tags li {
  color: #2b251d;
  font-size: 13px;
}

/* ---- Lege spotlightplek: vak met kader in de kleur van de plek en een knop om de plek te bestellen ---- */
#chalet-heuvelrug-home .ch-gids-card--empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
  padding: 28px 22px;
  min-height: 220px;
  background: #fffdf8;
  border-style: dashed;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__empty-tier {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b5f50;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__title {
  margin: 0;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__text {
  margin: 0;
  max-width: 34em;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__order {
  display: inline-block;
  margin-top: 6px;
  padding: 11px 22px;
  border-radius: 8px;
  background: #1b1712;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__order:hover,
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__order:focus {
  background: #2f2820;
}
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--empty:first-child { min-height: 200px; }
}

/* Lege plek: verkoopt de spotlight (met brochure) en wijst op de losse brochure */
#chalet-heuvelrug-home .ch-gids-card--empty { gap: 12px; }
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__empty-tier {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(43, 36, 28, 0.18);
  color: #3d3427;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__empty-tier::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #cd7f32;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__text { color: #2b251d; font-size: 15px; }
#chalet-heuvelrug-home .ch-gids-card__empty-perks {
  list-style: none;
  margin: 2px 0 4px;
  padding: 0;
  max-width: 30em;
  text-align: left;
  display: grid;
  gap: 8px;
}
#chalet-heuvelrug-home .ch-gids-card__empty-perks li {
  position: relative;
  padding-left: 26px;
  font-size: 14px;
  line-height: 1.45;
  color: #2b251d;
}
#chalet-heuvelrug-home .ch-gids-card__empty-perks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 18px;
  height: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232c4636' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
#chalet-heuvelrug-home .ch-gids-card--empty .ch-gids-card__order { padding: 13px 28px; font-size: 16px; }
#chalet-heuvelrug-home .ch-gids-card__empty-alt {
  margin: 4px 0 0;
  max-width: 30em;
  font-size: 13.5px;
  line-height: 1.45;
  color: #3d3427;
}
#chalet-heuvelrug-home .ch-gids-card__empty-alt a { color: #8f4119; font-weight: 700; text-decoration: underline; }
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--empty:first-child { min-height: 0; }
}

/* ---- Brochure-balk: het mooie kopletterype (Amatic SC), iets groter ---- */
#chalet-heuvelrug-home .ch-gids-card__link--top,
#chalet-heuvelrug-home .ch-gids-card__link--top span {
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0.03em;
}
#chalet-heuvelrug-home .ch-gids-card--wide .ch-gids-card__media .ch-gids-card__link--top {
  padding: 13px 22px;
}

/* ---- Breed scherm, 1e verblijf: de foto is even groot als die van het 2e verblijf (halve breedte, 3:2) ---- */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child {
    grid-template-columns: calc(50% - 12px) minmax(0, 1fr);
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__media .ch-gids-card__image {
    flex: 1 1 auto;
    aspect-ratio: 3 / 2;
    min-height: 0;
    height: auto;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__content {
    padding: 28px 34px;
  }
}
@media (min-width: 761px) {
  /* Boekknoppen van het eerste verblijf: altijd naast elkaar, vaste grootte */
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__actions {
    display: grid;
    grid-template-columns: repeat(3, 128px);
    justify-content: start;
    gap: 8px;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__actions .ch-gids-card__link svg {
    display: none;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__actions .ch-gids-card__link {
    min-width: 0;
    width: auto;
    padding: 14px 8px;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(11px, 1.15vw, 14px);
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__content {
    padding: 24px 28px;
  }
}

/* Brochure-balk: tekst en pijl samen in het midden */
#chalet-heuvelrug-home .ch-gids-card__link--top {
  justify-content: center;
  gap: 14px;
}

/* Boekknoppen ook bij de zilveren plekken (2 en 3): naast elkaar, vaste grootte */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(2) .ch-gids-card__actions,
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(3) .ch-gids-card__actions {
    display: grid;
    grid-template-columns: repeat(3, 128px);
    justify-content: start;
    gap: 8px;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(2) .ch-gids-card__actions .ch-gids-card__link,
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(3) .ch-gids-card__actions .ch-gids-card__link {
    min-width: 0;
    width: auto;
    padding: 14px 8px;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(11px, 1.15vw, 14px);
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(2) .ch-gids-card__actions .ch-gids-card__link svg,
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(3) .ch-gids-card__actions .ch-gids-card__link svg {
    display: none;
  }
}

/* ---- Sterbeoordeling onder de naam ---- */
#chalet-heuvelrug-home .ch-gids-card__stars {
  display: flex;
  gap: 2px;
  margin: -2px 0 8px;
  font-size: 18px;
  line-height: 1;
}
#chalet-heuvelrug-home .ch-gids-card__stars .is-on { color: #d4a017; }
#chalet-heuvelrug-home .ch-gids-card__stars .is-off { color: #d9d2c3; }

/* Smallere schermen: gouden en zilveren boekknoppen blijven even groot, maar kleiner */
@media (min-width: 761px) and (max-width: 1060px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(-n + 3) .ch-gids-card__actions {
    grid-template-columns: repeat(3, 104px);
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(-n + 3) .ch-gids-card__actions .ch-gids-card__link {
    font-size: 12px;
    padding: 12px 4px;
  }
}
@media (min-width: 761px) and (max-width: 880px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(-n + 3) .ch-gids-card__actions {
    grid-template-columns: repeat(3, 88px);
    gap: 6px;
  }
}

/* Tekstvlak van de gouden kaart gelijk aan de zilveren: zelfde marges, naamgrootte en uitlijning */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__content {
    padding: 0;
    justify-content: flex-start;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__body {
    padding: 24px 22px 16px;
    flex: 0 0 auto;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__title {
    font-size: 20px;
  }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__actions {
    padding: 0 22px 24px;
    margin-top: auto;
  }
}

/* ---- Plaatskaarten op de gids: knop Gids in het groen van de site ---- */
#chalet-heuvelrug-home .ch-gids-grid--places .ch-gids-card__link--top {
  background: #2c4636;
  color: #fff;
  border-bottom-color: #2c4636;
}
#chalet-heuvelrug-home .ch-gids-grid--places .ch-gids-card__link--top:hover,
#chalet-heuvelrug-home .ch-gids-grid--places .ch-gids-card__link--top:focus-visible {
  background: #223a2b;
}

/* ---- Zoekknop: de pijl krijgt dezelfde ronde vorm als bij de knop Gids ---- */
#chalet-heuvelrug-home .ch-finder__submit svg {
  box-sizing: content-box;
  width: 14px;
  height: 14px;
  padding: 6px;
  border-radius: 50%;
  background: #fbf7ef;
  color: #2b241c;
  stroke: currentColor;
}

/* ---- Situatiepagina's: opmaak van de plaatspagina ---- */
#chalet-heuvelrug-home .ch-plaats-tips__place {
  display: block;
  margin: 0 0 0.3em;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #a8916b;
}


#chalet-heuvelrug-home.ch-situatie .ch-plaats-tips__item p + p {
  margin-top: 0.7em;
}
@media (min-width: 761px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__list {
    grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr));
  }
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__list[style*="--cols:1"] {
    max-width: 560px;
    margin: 0 auto;
  }
}

/* ---- Situatiepagina's: de groene panelen op de lichte achtergrond van de home ---- */
#chalet-heuvelrug-home.ch-situatie .ch-plaats-spots.ch-area {
  background: #f8f4ec;
}

/* ---- Situatiepagina's: uitjes in groepen binnen het groene paneel ---- */
/* Maten volgen de vaste afspraken: kop > inhoud = --sp-head, tussen groepen = --sp-head */
#chalet-heuvelrug-home .ch-plaats-tips__group-title {
  margin: var(--sp-head) 0 var(--sp-head);
  font-family: 'Amatic SC', cursive;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.1;
  color: #e2b36b;
  text-align: left;
}
#chalet-heuvelrug-home .ch-plaats-tips__head + .ch-plaats-tips__group-title {
  margin-top: 0;
}
@media (min-width: 761px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
/* Kaarten in het paneel Tips van de redactie (plaats- en situatiepagina's): tussenruimte uit de vaste afspraken */
#chalet-heuvelrug-home.ch-gids .ch-plaats-spots .ch-plaats-tips__list {
  gap: var(--sp-grid);
}
/* Hero: naam en ondertitel staan onderaan, op de onderkant van het huisje-plaatje */
@media (min-width: 601px) {
  #chalet-heuvelrug-home .ch-hero__brand .ch-hero__text {
    align-self: flex-end;
  }
}
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-hero__brand--compact .ch-hero__text {
    align-self: flex-end;
  }
}
/* Mobiel: plaatskaarten op de gids zwiepen opzij (zoals de spotlight), in alfabetische volgorde */
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-grid--places {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: var(--sp-grid, 20px);
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    padding: 0 24px 4px;
    box-sizing: border-box;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 24px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  #chalet-heuvelrug-home .ch-gids-grid--places::-webkit-scrollbar {
    display: none;
  }

  #chalet-heuvelrug-home .ch-gids-grid--places > .ch-gids-card {
    flex: 0 0 72%;
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
}

/* ---- Boekknoppen overal gelijk: zelfde hoogte, lettergrootte en hoeken, tekst in het midden, zonder pijl ---- */
#chalet-heuvelrug-home .ch-gids-card .ch-gids-card__link.ch-gids-card__link--book,
#chalet-heuvelrug-home .ch-gids-grid .ch-gids-card .ch-gids-card__actions .ch-gids-card__link.ch-gids-card__link--book,
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  min-width: 0;
  width: auto;
  padding: 0 16px;
  border: 0;
  border-radius: 8px;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#chalet-heuvelrug-home .ch-vb-bookbtn.ch-cta-btn {
  display: inline-flex;
  padding: 0 28px;
  color: #fff;
}

#chalet-heuvelrug-home .ch-vb-bookbtn.ch-cta-btn:hover {
  background: #b25a2c;
}

#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-airbnb { background: #ff385c; }
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-airbnb:hover { background: #e00b41; }
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-booking { background: #0057b8; }
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-booking:hover { background: #004a9c; }
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-natuurhuisje { background: #5a125b; }
#chalet-heuvelrug-home .ch-vb-bookbtn.ch-gids-card__link--p-natuurhuisje:hover { background: #470e48; }

@media (min-width: 761px) {
  /* Het eerste verblijf van de spotlight: drie knoppen naast elkaar, even breed */
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:first-child .ch-gids-card__actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }
  /* Verblijf 2 en 3: de knoppen delen samen de volle breedte (één knop is dus even breed als de kaart) */
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(2) .ch-gids-card__actions,
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--wide:nth-child(3) .ch-gids-card__actions {
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    justify-content: stretch;
    gap: 12px;
  }
}

/* ---- (i) bij de sterren met uitleg ---- */
#chalet-heuvelrug-home .ch-gids-card__rating {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: -2px 0 8px;
}
#chalet-heuvelrug-home .ch-gids-card__rating .ch-gids-card__stars {
  margin: 0;
}
#chalet-heuvelrug-home .ch-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 1.5px solid #8a7a5c;
  border-radius: 50%;
  background: transparent;
  color: #6b5d48;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 11px;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  cursor: pointer;
  position: relative;
}
#chalet-heuvelrug-home .ch-info::before {
  content: '';
  position: absolute;
  inset: -9px; /* groter tikvlak op een telefoon */
}
#chalet-heuvelrug-home .ch-info:hover,
#chalet-heuvelrug-home .ch-info:focus-visible,
#chalet-heuvelrug-home .ch-gids-card__rating.is-open .ch-info {
  background: #2c4636;
  border-color: #2c4636;
  color: #fbf7ef;
}
#chalet-heuvelrug-home .ch-info__tip {
  position: absolute;
  z-index: 5;
  top: calc(100% + 6px);
  left: 0;
  width: 250px;
  max-width: 100%;
  padding: 10px 12px;
  border-radius: 8px;
  background: #2b241c;
  color: #fbf7ef;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0;
  text-transform: none;
  box-shadow: 0 6px 18px rgba(43, 36, 28, 0.25);
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.12s ease;
  pointer-events: none;
}
#chalet-heuvelrug-home .ch-gids-card__rating.is-open .ch-info__tip,
#chalet-heuvelrug-home .ch-info:focus-visible + .ch-info__tip {
  visibility: visible;
  opacity: 1;
}
@media (hover: hover) {
  #chalet-heuvelrug-home .ch-info:hover + .ch-info__tip {
    visibility: visible;
    opacity: 1;
  }
}

/* ---- Kaart: op een telefoon de brede kaart met alle plaatsnamen, zijwaarts te swipen ---- */
#chalet-heuvelrug-home .ch-map__scroll {
  position: relative;
}
#chalet-heuvelrug-home .ch-map__swipe {
  display: none;
}
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-map__scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    border: 1px solid rgba(43, 36, 28, 0.12);
    border-radius: 10px;
    scrollbar-width: thin;
    scrollbar-color: #c9bb9a transparent;
  }
  #chalet-heuvelrug-home .ch-map__svg--compact {
    display: none;
  }
  #chalet-heuvelrug-home .ch-map__svg--wide {
    display: block;
    width: 1100px;
    max-width: none;
    border: 0;
    border-radius: 0;
  }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__pt:not(.ch-map__pt--major) .ch-map__label {
    display: block;
  }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__label {
    font-size: 25px;
    stroke-width: 7px;
  }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__ref {
    font-size: 21px;
  }
  #chalet-heuvelrug-home .ch-map__svg--wide .ch-map__dot {
    r: 11;
  }
  #chalet-heuvelrug-home .ch-map__swipe {
    display: inline;
  }
}
/* Mobiel: Tips van de redactie zwiepen opzij, kaart voor kaart (plaats- en situatiepagina's) */
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: var(--sp-grid, 20px);
    margin: 0 -18px -26px;
    padding: 4px 18px 30px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 18px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__list::-webkit-scrollbar {
    display: none;
  }

  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item,
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:first-child,
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:last-child {
    flex: 0 0 82%;
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  /* Een lijst met maar één kaart (bijvoorbeeld Goed om te weten): die vult de breedte */
  #chalet-heuvelrug-home .ch-plaats-spots .ch-plaats-tips__item:only-child {
    flex-basis: 100%;
  }
}
/* Mobiel: reviews op de brochurepagina zwiepen opzij, review voor review */
@media (max-width: 600px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--2,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--3 {
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    margin-left: -16px;
    margin-right: -16px;
    padding: 4px 16px 48px;
    margin-bottom: -36px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 16px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--2::-webkit-scrollbar,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--3::-webkit-scrollbar {
    display: none;
  }

  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--2 .ch-review,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-reviews--3 .ch-review {
    flex: 0 0 84%;
    max-width: 84%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
}


/* ---- Zoeker (voorpagina, plaats- en situatiepagina's): zoekbalk in één rij met een paneel Meer filters ---- */
#chalet-heuvelrug-home .ch-finder.ch-zk {
  max-width: 940px;
  padding: 0;
  background: none;
  border-radius: 0;
  box-shadow: none;
  color: #2b241c;
}
#chalet-heuvelrug-home .ch-zk__bar {
  display: flex;
  align-items: stretch;
  background: #fff;
  border-radius: 999px;
  padding: 8px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.32);
}
#chalet-heuvelrug-home .ch-zk__field {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 58px;
  padding: 11px 18px 0;
  border-radius: 999px;
  cursor: pointer;
}
#chalet-heuvelrug-home .ch-zk__field--plaats { flex: 1.55 1 0; }
#chalet-heuvelrug-home .ch-zk__field + .ch-zk__field::before,
#chalet-heuvelrug-home .ch-zk__filt::before {
  content: "";
  position: absolute;
  left: 0;
  top: 24%;
  bottom: 24%;
  width: 1px;
  background: rgba(43, 36, 28, 0.18);
}
#chalet-heuvelrug-home .ch-zk__field:hover { background: #f6f1e6; }
#chalet-heuvelrug-home .ch-zk__field:hover::before,
#chalet-heuvelrug-home .ch-zk__field:hover + .ch-zk__field::before { opacity: 0; }
#chalet-heuvelrug-home .ch-zk__field:focus-within { background: #f1ebdd; }
#chalet-heuvelrug-home .ch-zk__field:has(select:focus-visible) { box-shadow: inset 0 0 0 2px #c96a37; }
#chalet-heuvelrug-home .ch-zk__field span {
  position: relative;
  z-index: 1;
  pointer-events: none;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.3;
  color: #8a7a5c;
}
/* De keuzelijst beslaat het hele vak, zodat een klik overal de lijst opent */
#chalet-heuvelrug-home .ch-zk__field select {
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 26px 36px 6px 18px;
  border: 0;
  border-radius: 0;
  background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232c4636' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center / 14px no-repeat;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: #2b241c;
  text-overflow: ellipsis;
  cursor: pointer;
}
#chalet-heuvelrug-home .ch-zk__field select:focus { outline: 0; }
#chalet-heuvelrug-home .ch-zk__field select option { color: #2b241c; background: #fff; font-weight: 500; }
#chalet-heuvelrug-home .ch-zk__filt {
  position: relative;
  flex: none;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #2c4636;
  cursor: pointer;
}
#chalet-heuvelrug-home .ch-zk__filt:hover,
#chalet-heuvelrug-home .ch-zk__filt[aria-expanded="true"] { background: #f1ebdd; }
#chalet-heuvelrug-home .ch-zk__filt:focus-visible,
#chalet-heuvelrug-home .ch-zk__go:focus-visible { outline: 2px solid #c96a37; outline-offset: 2px; }
#chalet-heuvelrug-home .ch-zk__badge {
  font-style: normal;
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #c4683a;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
}
#chalet-heuvelrug-home .ch-zk__badge[hidden] { display: none; }
#chalet-heuvelrug-home .ch-zk .ch-zk__go {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: auto;
  margin: 0 0 0 6px;
  padding: 0 28px;
  border: 0;
  border-radius: 999px;
  background: #c4683a;
  color: #fff;
  font-family: 'Work Sans', system-ui, sans-serif;
  font-size: 17px;
  cursor: pointer;
}
#chalet-heuvelrug-home .ch-zk .ch-zk__go:hover { background: #a9552d; }
#chalet-heuvelrug-home .ch-zk .ch-zk__go b { font-weight: 700; }
#chalet-heuvelrug-home .ch-zk .ch-zk__go svg { stroke: currentColor; }
#chalet-heuvelrug-home .ch-zk__panel {
  max-width: 640px;
  margin: 12px auto 0;
  padding: 8px 22px;
  background: #fbf7ef;
  border-radius: 20px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  text-align: left;
}
#chalet-heuvelrug-home .ch-zk__panel[hidden] { display: none; }
#chalet-heuvelrug-home .ch-zk__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
}
#chalet-heuvelrug-home .ch-zk__row + .ch-zk__row { border-top: 1px solid rgba(43, 36, 28, 0.18); }
#chalet-heuvelrug-home .ch-zk__lbl {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: #2c4636;
}
#chalet-heuvelrug-home .ch-zk__fixed {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 0 12px;
  font-size: 15px;
  background: #e9eee0;
  border: 1px solid rgba(43, 36, 28, 0.12);
  border-radius: 8px;
}
#chalet-heuvelrug-home .ch-zk__seg-ctl {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  background: #ece5d3;
  border-radius: 999px;
}
#chalet-heuvelrug-home .ch-zk__opt { position: relative; cursor: pointer; }
#chalet-heuvelrug-home .ch-zk__opt input {
  position: absolute;
  opacity: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  cursor: pointer;
}
#chalet-heuvelrug-home .ch-zk__opt span {
  display: block;
  min-width: 56px;
  padding: 8px 18px;
  border-radius: 999px;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  color: #5c5344;
}
#chalet-heuvelrug-home .ch-zk__opt:hover span { background: rgba(255, 255, 255, 0.6); }
#chalet-heuvelrug-home .ch-zk__opt input:checked + span {
  background: #2c4636;
  color: #fbf3e7;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}
#chalet-heuvelrug-home .ch-zk__opt input:focus-visible + span { outline: 2px solid #c96a37; outline-offset: 1px; }
/* Uitleg bij de knop Zoek: een tekstballon met een puntje naar de knop */
#chalet-heuvelrug-home .ch-zk .ch-finder__note {
  position: relative;
  display: table;
  max-width: calc(100% - 8px);
  margin: 16px 4px 0 auto;
  padding: 9px 16px;
  border: 1px solid #5f806c;
  border-radius: 12px;
  background: #3b5a47;
  color: #fbf3e7;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.4;
  text-align: left;
}
#chalet-heuvelrug-home .ch-zk .ch-finder__note::before {
  content: "";
  position: absolute;
  top: -7px;
  right: 64px;
  width: 12px;
  height: 12px;
  background: #3b5a47;
  border-top: 1px solid #5f806c;
  border-left: 1px solid #5f806c;
  transform: rotate(45deg);
}

@media (max-width: 1000px) {
  #chalet-heuvelrug-home .ch-zk__bar {
    flex-direction: column;
    border-radius: 22px;
    padding: 6px;
  }
  #chalet-heuvelrug-home .ch-zk__field,
  #chalet-heuvelrug-home .ch-zk__field--plaats { flex: none; border-radius: 16px; padding: 11px 16px 0; min-height: 62px; }
  #chalet-heuvelrug-home .ch-zk__field select { padding: 28px 44px 6px 16px; }
  #chalet-heuvelrug-home .ch-zk__field + .ch-zk__field::before {
    left: 16px;
    right: 16px;
    top: 0;
    bottom: auto;
    width: auto;
    height: 1px;
  }
  #chalet-heuvelrug-home .ch-zk__field:hover + .ch-zk__field::before { opacity: 1; }
  #chalet-heuvelrug-home .ch-zk__filt {
    justify-content: center;
    padding: 14px 16px;
    border-top: 1px solid rgba(43, 36, 28, 0.18);
    border-radius: 0;
  }
  #chalet-heuvelrug-home .ch-zk__filt::before { display: none; }
  #chalet-heuvelrug-home .ch-zk .ch-zk__go { margin: 6px 0 0; padding: 15px 20px; border-radius: 16px; }
  #chalet-heuvelrug-home .ch-zk .ch-finder__note { margin: 14px auto 0; text-align: center; }
  #chalet-heuvelrug-home .ch-zk .ch-finder__note::before { right: auto; left: 50%; margin-left: -6px; }
  #chalet-heuvelrug-home .ch-zk__panel { padding: 4px 16px; }
  #chalet-heuvelrug-home .ch-zk__row { flex-direction: column; align-items: stretch; gap: 10px; }
  #chalet-heuvelrug-home .ch-zk__seg-ctl { display: flex; }
  #chalet-heuvelrug-home .ch-zk__opt { flex: 1; }
}


/* ---- Hero: de links onder de zoeker (situaties en meer lezen) ---- */
#chalet-heuvelrug-home .ch-gids-quick {
  margin-top: 22px;
  gap: 10px 10px;
}
#chalet-heuvelrug-home .ch-gids-quick__label {
  width: 100%;
  text-align: center;
  margin-bottom: 2px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(243, 234, 217, 0.7);
}
#chalet-heuvelrug-home .ch-gids-quick a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px 10px 14px;
  border: 1px solid rgba(243, 234, 217, 0.3);
  background: rgba(255, 255, 255, 0.08);
  color: #f7efe0;
  font-size: 15px;
  font-weight: 600;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
#chalet-heuvelrug-home .ch-gids-quick a::before {
  content: "";
  flex: none;
  width: 20px;
  height: 20px;
  background: #e0a868;
  -webkit-mask: var(--ch-ic, none) center / contain no-repeat;
  mask: var(--ch-ic, none) center / contain no-repeat;
}
#chalet-heuvelrug-home .ch-gids-quick a:not([href*="zonder-auto"]):not([href*="met-hond"]):not([href*="met-kinderen"])::before { display: none; }
#chalet-heuvelrug-home .ch-gids-quick a:not([href*="zonder-auto"]):not([href*="met-hond"]):not([href*="met-kinderen"]) { padding-left: 20px; }
#chalet-heuvelrug-home .ch-gids-quick a[href*="zonder-auto"] {
  --ch-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='17' r='3.5'/%3E%3Ccircle cx='18' cy='17' r='3.5'/%3E%3Cpath d='M6 17l4-8h5l3 8M10 9l-1.5-3H6M13 6h3'/%3E%3C/svg%3E");
}
#chalet-heuvelrug-home .ch-gids-quick a[href*="met-hond"] {
  --ch-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cellipse cx='6.5' cy='10' rx='2' ry='2.6'/%3E%3Cellipse cx='10.5' cy='6' rx='2' ry='2.6'/%3E%3Cellipse cx='15.5' cy='6' rx='2' ry='2.6'/%3E%3Cellipse cx='19' cy='10.5' rx='2' ry='2.6'/%3E%3Cpath d='M12.5 11c-2.9 0-5.5 3-5.5 5.6 0 1.7 1.3 2.4 2.6 2.4 1 0 1.7-.5 2.9-.5s1.9.5 2.9.5c1.3 0 2.6-.7 2.6-2.4 0-2.6-2.6-5.6-5.5-5.6z'/%3E%3C/svg%3E");
}
#chalet-heuvelrug-home .ch-gids-quick a[href*="met-kinderen"] {
  --ch-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8.5 14.5c1 1.4 2.2 2 3.5 2s2.5-.6 3.5-2'/%3E%3Cpath d='M9 9.5h.01M15 9.5h.01' stroke-width='3'/%3E%3C/svg%3E");
}
#chalet-heuvelrug-home .ch-gids-quick a:hover,
#chalet-heuvelrug-home .ch-gids-quick a:focus-visible {
  background: #fbf3e7;
  border-color: #fbf3e7;
  color: #2c4636;
}
#chalet-heuvelrug-home .ch-gids-quick a:hover::before,
#chalet-heuvelrug-home .ch-gids-quick a:focus-visible::before { background: #c4683a; }

#chalet-heuvelrug-home .ch-gids-hero__more {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 26px;
  padding: 6px 4px;
  color: rgba(247, 239, 224, 0.9);
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
}
#chalet-heuvelrug-home .ch-gids-hero__more:hover { color: #fff; text-decoration: none; }
#chalet-heuvelrug-home .ch-gids-hero__more-ic {
  flex: none;
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(224, 168, 104, 0.7);
  border-radius: 50%;
  transition: background 0.15s, transform 0.15s;
}
#chalet-heuvelrug-home .ch-gids-hero__more-ic::before {
  content: "";
  width: 12px;
  height: 12px;
  background: #e0a868;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M6 13l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M6 13l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
#chalet-heuvelrug-home .ch-gids-hero__more:hover .ch-gids-hero__more-ic { background: rgba(224, 168, 104, 0.18); transform: translateY(2px); }

/* ==========================================================================
   Spotlightkaart: kaart met de foto over de hele kaart en de tekst eroverheen (gids: breed, plaatspagina: klein)
   ========================================================================== */
#chalet-heuvelrug-home .ch-gids-card.ch-photo {
  position: relative;
  display: block;
  min-height: 430px;
  border: 0;
  border-radius: 18px;
  background: #1b1712;
  color: #fff;
  box-shadow: 0 10px 26px rgba(43, 36, 28, 0.22);
  isolation: isolate;
}
#chalet-heuvelrug-home .ch-photo--wide { min-height: 420px; }
#chalet-heuvelrug-home .ch-photo__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
}
#chalet-heuvelrug-home .ch-photo__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
#chalet-heuvelrug-home .ch-photo:hover .ch-photo__bg img { transform: scale(1.04); }
/* Donker verloop onderin en een kader in de kleur van de plek */
#chalet-heuvelrug-home .ch-photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(to top, rgba(14, 22, 17, 0.93) 0%, rgba(14, 22, 17, 0.8) 40%, rgba(14, 22, 17, 0) 80%);
}
#chalet-heuvelrug-home .ch-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 18px;
  pointer-events: none;
  box-shadow: inset 0 0 0 2px var(--tier, #d4af37);
}

#chalet-heuvelrug-home .ch-photo__lint {
  position: absolute;
  z-index: 2;
  top: 20px;
  left: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 16px 7px 18px;
  border-radius: 0 999px 999px 0;
  background: var(--tier, #d4af37);
  color: var(--tier-ink, #1b1712);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
}
#chalet-heuvelrug-home .ch-photo__lint span {
  padding-left: 10px;
  border-left: 1px solid rgba(27, 23, 18, 0.35);
  font-weight: 600;
  letter-spacing: 0.06em;
  opacity: 0.75;
}

#chalet-heuvelrug-home .ch-photo__over {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  min-height: inherit;
  padding: 72px 24px 24px;
  box-sizing: border-box;
}
#chalet-heuvelrug-home .ch-photo--wide .ch-photo__over {
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  padding: 72px 32px 32px;
}
#chalet-heuvelrug-home .ch-photo__info { min-width: 0; }
#chalet-heuvelrug-home .ch-photo--wide .ch-photo__info { max-width: 560px; }

#chalet-heuvelrug-home .ch-photo__mismatch {
  display: inline-block;
  margin: 0 0 8px;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
  font-size: 12.5px;
  font-style: italic;
}
#chalet-heuvelrug-home .ch-photo__place {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--tier-light, #f1d58a);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
#chalet-heuvelrug-home .ch-photo__title {
  margin: 6px 0 6px;
  font-family: 'Amatic SC', cursive;
  font-size: 44px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  color: #fff;
}
#chalet-heuvelrug-home .ch-photo--small .ch-photo__title { font-size: 36px; }
#chalet-heuvelrug-home .ch-photo .ch-gids-card__rating { margin: 0 0 4px; }
#chalet-heuvelrug-home .ch-photo .ch-gids-card__stars .is-on { color: #f1c14a; }
#chalet-heuvelrug-home .ch-photo .ch-gids-card__stars .is-off { color: rgba(255, 255, 255, 0.3); }
#chalet-heuvelrug-home .ch-photo .ch-info { border-color: rgba(255, 255, 255, 0.7); color: #fff; }
#chalet-heuvelrug-home .ch-photo__text {
  margin: 10px 0 0;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.92);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#chalet-heuvelrug-home .ch-photo__chips {
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#chalet-heuvelrug-home .ch-photo__chips li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  font-size: 13px;
  font-weight: 600;
  color: #fff;
}
#chalet-heuvelrug-home .ch-photo__chips svg { color: var(--tier-light, #f1d58a); flex: none; }

#chalet-heuvelrug-home .ch-photo__actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: none;
}
#chalet-heuvelrug-home .ch-photo--wide .ch-photo__actions { width: 230px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__actions { margin-top: 14px; flex-direction: row; flex-wrap: wrap; align-items: center; }
#chalet-heuvelrug-home .ch-photo__brochure {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 18px;
  border-radius: 12px;
  background: var(--tier, #d4af37);
  color: var(--tier-ink, #1b1712);
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
  transition: transform 0.15s ease, background 0.15s ease;
}
#chalet-heuvelrug-home .ch-photo__brochure:hover { color: var(--tier-ink, #1b1712); filter: brightness(1.08); transform: translateY(-1px); }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__brochure { padding: 9px 14px; font-size: 14px; gap: 6px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__brochure svg:first-child { display: none; }
#chalet-heuvelrug-home .ch-photo__provs { display: flex; flex-wrap: wrap; gap: 8px; }
#chalet-heuvelrug-home .ch-photo--wide .ch-photo__provs { flex-direction: column; }
#chalet-heuvelrug-home .ch-photo__prov {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.16);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  font-size: 13.5px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}
#chalet-heuvelrug-home .ch-photo__prov:hover { background: #fff; color: #1b1712; }

@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-photo:first-child { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-photo--wide { min-height: 640px; }
  #chalet-heuvelrug-home .ch-photo--wide .ch-photo__over {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-end;
    gap: 16px;
    padding: 80px 20px 20px;
  }
  #chalet-heuvelrug-home .ch-photo--wide .ch-photo__actions { width: auto; }
  #chalet-heuvelrug-home .ch-photo--wide .ch-photo__provs { flex-direction: row; }
  #chalet-heuvelrug-home .ch-photo__title { font-size: 40px; }
}

/* ---- Spotlight: alle plekken als kaart over de volle breedte ---- */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-photo { grid-column: 1 / -1; }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-photo--wide:not(.ch-photo--ultra) { min-height: 380px; }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--empty.ch-gids-card--ex-6 { grid-column: 1 / -1; }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--empty.ch-gids-card--ex-3 { grid-column: span 3; }
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--empty.ch-gids-card--ex-2 { grid-column: span 2; }
}
/* Brochure-knop, plaatslabel en pictogrammen in de kleur van de plek */
@media (min-width: 761px) {
  /* Verblijf zonder foto in de spotlight: gewone kaart, twee naast elkaar */
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--stay:not(.ch-photo) { grid-column: span 3; }
}

/* Boekknoppen op de spotlightkaart: gekleurd puntje voor de naam van het platform */
#chalet-heuvelrug-home .ch-photo__prov--airbnb::before,
#chalet-heuvelrug-home .ch-photo__prov--booking::before,
#chalet-heuvelrug-home .ch-photo__prov--natuurhuisje::before {
  content: "";
  flex: none;
  width: 10px;
  height: 10px;
  margin-right: 8px;
  border-radius: 50%;
  background: #999;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.92);
}
#chalet-heuvelrug-home .ch-photo__prov--airbnb::before { background: #ff385c; }
#chalet-heuvelrug-home .ch-photo__prov--booking::before { background: #0057b8; }
#chalet-heuvelrug-home .ch-photo__prov--natuurhuisje::before { background: #c96a37; }

/* ==========================================================================
   Spotlightplekken: vijf plekken met een eigen naam en kleur (Ultra, High, Hot, Smart, Quick).
   Elke plek zet een paar kleurwaarden; kaarten, lint, kader en knoppen gebruiken die.
   --tier = hoofdkleur, --tier-ink = tekstkleur op die kleur, --tier-dark = donkerder tint voor hover,
   --tier-soft = lichte achtergrond, --tier-glow = schaduw, --tier-light = lichte tint voor tekst op een foto.
   ========================================================================== */
#chalet-heuvelrug-home .ch-tier--ultra { --tier: #0b2e6b; --tier-ink: #fff;    --tier-dark: #082350; --tier-soft: #e6edf9; --tier-glow: rgba(11, 46, 107, 0.28);   --tier-light: #9dbdff; }
#chalet-heuvelrug-home .ch-tier--high  { --tier: #ff9500; --tier-ink: #1b1712; --tier-dark: #e08400; --tier-soft: #fff1dc; --tier-glow: rgba(255, 149, 0, 0.28);  --tier-light: #ffc873; }
#chalet-heuvelrug-home .ch-tier--hot   { --tier: #ff453a; --tier-ink: #1b1712; --tier-dark: #e63a30; --tier-soft: #ffe9e7; --tier-glow: rgba(255, 69, 58, 0.25);  --tier-light: #ff9d96; }
#chalet-heuvelrug-home .ch-tier--smart { --tier: #34c759; --tier-ink: #10240f; --tier-dark: #2aa84b; --tier-soft: #e6f7ea; --tier-glow: rgba(52, 199, 89, 0.25);  --tier-light: #9fe6b3; }
#chalet-heuvelrug-home .ch-tier--quick { --tier: #8e8e93; --tier-ink: #1b1712; --tier-dark: #7b7b80; --tier-soft: #efeff1; --tier-glow: rgba(142, 142, 147, 0.25); --tier-light: #d0d0d4; }

/* Gewone spotlightkaart (verblijf zonder foto): kader, tint en Brochure-balk in de kleur van de plek */
#chalet-heuvelrug-home .ch-gids-card--tier { border: 2px solid var(--tier); }
#chalet-heuvelrug-home .ch-gids-card--stay.ch-gids-card--tier {
  background: var(--tier-soft);
  box-shadow: 0 10px 28px var(--tier-glow);
}
#chalet-heuvelrug-home .ch-gids-card--stay.ch-gids-card--tier .ch-gids-tags li {
  background: #fff;
  border-color: var(--tier);
}
#chalet-heuvelrug-home .ch-gids-card--tier .ch-gids-card__link--top,
#chalet-heuvelrug-home .ch-gids-card--bar .ch-gids-card__link--top {
  background: var(--tier);
  color: var(--tier-ink);
  border-bottom-color: var(--tier);
}
#chalet-heuvelrug-home .ch-gids-card--tier .ch-gids-card__link--top:hover,
#chalet-heuvelrug-home .ch-gids-card--bar .ch-gids-card__link--top:hover { background: var(--tier-dark); }
/* Lege plek: lichte tint en een stip in de kleur van de plek */
#chalet-heuvelrug-home .ch-gids-card--empty.ch-gids-card--tier { background: var(--tier-soft); border: 2px dashed var(--tier); }
#chalet-heuvelrug-home .ch-gids-card--empty.ch-gids-card--tier .ch-gids-card__empty-tier::before { background: var(--tier); }

/* ---- Plek 6: advertentiekaart, altijd onderaan de spotlight ---- */
#chalet-heuvelrug-home .ch-gids-card--ad {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 32px 36px;
  border: 0;
  border-radius: 18px;
  background: #2c4636;
  color: #fbf7ef;
  box-shadow: 0 10px 26px rgba(43, 36, 28, 0.18);
}
#chalet-heuvelrug-home .ch-gids-card--ad:hover { transform: none; }
#chalet-heuvelrug-home .ch-gids-card__ad-text { max-width: 600px; display: flex; flex-direction: column; gap: 10px; }
#chalet-heuvelrug-home .ch-gids-card__ad-label {
  align-self: flex-start;
  padding: 4px 12px;
  border: 1px solid rgba(251, 247, 239, 0.5);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #f1d58a;
}
#chalet-heuvelrug-home .ch-gids-card--ad .ch-gids-card__title { margin: 0; font-size: 34px; color: #fbf7ef; }
#chalet-heuvelrug-home .ch-gids-card--ad .ch-gids-card__text { margin: 0; font-size: 15.5px; line-height: 1.55; color: rgba(251, 247, 239, 0.92); }
#chalet-heuvelrug-home .ch-gids-card__ad-tiers { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
#chalet-heuvelrug-home .ch-gids-card__ad-tiers li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  font-size: 13px;
  font-weight: 700;
}
#chalet-heuvelrug-home .ch-gids-card__ad-tiers li::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--tier);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.9);
}
#chalet-heuvelrug-home .ch-gids-card__ad-actions { flex: none; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; max-width: 300px; }
#chalet-heuvelrug-home .ch-gids-card__ad-order {
  display: inline-block;
  padding: 14px 32px;
  border-radius: 12px;
  background: #f1d58a;
  color: #1b1712;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.15s ease;
}
#chalet-heuvelrug-home .ch-gids-card__ad-order:hover,
#chalet-heuvelrug-home .ch-gids-card__ad-order:focus { background: #fff; color: #1b1712; }
#chalet-heuvelrug-home .ch-gids-card__ad-alt { margin: 0; font-size: 13px; line-height: 1.45; color: rgba(251, 247, 239, 0.85); }
#chalet-heuvelrug-home .ch-gids-card__ad-alt { text-wrap: balance; }
#chalet-heuvelrug-home .ch-gids-card__ad-alt a { color: #f1d58a; font-weight: 700; text-decoration: underline; white-space: nowrap; }
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-gids-card--ad { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-card--ad { flex-direction: column; align-items: stretch; gap: 20px; padding: 26px 22px; }
  #chalet-heuvelrug-home .ch-gids-card__ad-actions { max-width: none; }
  #chalet-heuvelrug-home .ch-gids-card--ad .ch-gids-card__title { font-size: 28px; }
}

/* Kleine spotlightkaart (plaatspagina): donkerder verloop zodat tekst op een lichte foto leesbaar blijft, en compactere boekknoppen */
#chalet-heuvelrug-home .ch-photo--small::before {
  background: linear-gradient(to top, rgba(14, 22, 17, 0.94) 0%, rgba(14, 22, 17, 0.86) 45%, rgba(14, 22, 17, 0.5) 75%, rgba(14, 22, 17, 0.12) 100%);
}
#chalet-heuvelrug-home .ch-photo__place,
#chalet-heuvelrug-home .ch-photo__title { text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55); }
#chalet-heuvelrug-home .ch-tier--quick { --tier-light: #e6e6ea; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__provs { gap: 6px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__prov { padding: 8px 10px; font-size: 13px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__prov::before { width: 9px; height: 9px; margin-right: 6px; }

/* Kleine spotlightkaart: vaste opbouw. Boven de foto met lint, daaronder plaats, naam en sterren, dan de kenmerken,
   dan Brochure over de volle breedte en de boekknoppen in twee kolommen (een oneven laatste knop over de volle breedte). */
#chalet-heuvelrug-home .ch-photo--small .ch-photo__actions {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 8px;
  margin-top: 14px;
}
#chalet-heuvelrug-home .ch-photo--small .ch-photo__brochure { width: 100%; padding: 11px 14px; font-size: 15px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__provs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
  gap: 8px;
}
#chalet-heuvelrug-home .ch-photo--small .ch-photo__prov { min-width: 0; padding: 9px 8px; white-space: nowrap; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__prov:last-child:nth-child(odd) { grid-column: 1 / -1; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__chips { margin-top: 10px; gap: 6px; }
#chalet-heuvelrug-home .ch-photo--small .ch-photo__chips li { padding: 5px 10px; font-size: 12.5px; }


/* Situatie-keuzes: staan net boven de kaart ("Waar wil je heen?"), op de lichte achtergrond. */
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 28px auto 28px;
  max-width: 940px;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick__label { color: #8a7a5c; }
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a {
  border: 1px solid rgba(43, 36, 28, 0.16);
  background: #fff;
  color: #2c4636;
  box-shadow: 0 4px 14px rgba(43, 36, 28, 0.08);
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a::before { background: #c4683a; }
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a:hover,
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a:focus-visible {
  background: #2c4636;
  border-color: #2c4636;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a:hover::before,
#chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a:focus-visible::before { background: #e0a868; }


/* ============================================================
   Mobiele home (≤760px): compactere bovenkant, lagere spotlightkaart,
   situatiekeuzes op één regel, hele kaart zichtbaar + plaatsenrij, compactere FAQ
   ============================================================ */
@media (max-width: 760px) {
  /* 1. Bovenkant */
  #chalet-heuvelrug-home .ch-gids-hero { padding-top: 26px !important; padding-bottom: 64px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__inner { gap: 12px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-hero__brand { flex-direction: row !important; gap: 12px !important; justify-content: center; align-items: center; margin-bottom: 14px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__logo { width: 54px !important; height: auto !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-hero__divider { display: block !important; height: 46px !important; width: 1px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-hero__title { font-size: 34px !important; line-height: 1 !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-hero__subtitle { font-size: 11px !important; }
  #chalet-heuvelrug-home .ch-gids-hero__headline { font-size: 28px !important; margin: 4px 0 2px !important; line-height: 1.05 !important; }
  #chalet-heuvelrug-home .ch-gids-hero__lead { font-size: 15.5px !important; line-height: 1.5 !important; margin: 0 auto 10px !important; max-width: 36ch; color: rgba(243, 234, 217, .88) !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__bar { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0; padding: 6px !important; border-radius: 22px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__field--plaats { grid-column: 1 / -1; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__field { min-height: 54px !important; padding: 9px 14px 0 !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__field select { padding: 24px 30px 4px 14px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__field + .ch-zk__field::before { display: none !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk__filt { grid-column: 1; justify-content: center; padding: 12px 8px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk .ch-zk__go { grid-column: 2; margin: 4px 0 0 !important; padding: 13px 16px !important; border-radius: 16px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more { margin-top: 8px !important; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk .ch-finder__note { margin: 12px auto 0 !important; font-size: 14px; }
  #chalet-heuvelrug-home .ch-gids-hero .ch-zk .ch-finder__note::before { left: 75% !important; right: auto !important; margin-left: -6px !important; }

  /* 2. Spotlightkaart (breed) lager en rustiger */
  #chalet-heuvelrug-home .ch-gids-grid--lead > .ch-photo { align-self: flex-start; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide { min-height: 500px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__over { padding: 70px 18px 18px !important; gap: 12px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__title { font-size: 32px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px !important; margin: 6px 0 0 !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__chips li:nth-child(n+4) { display: none; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__actions { width: auto !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__provs { display: grid !important; grid-template-columns: 1fr 1fr 1.3fr !important; gap: 5px !important; flex-direction: row !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__prov { padding: 9px 2px !important; font-size: 11.5px !important; justify-content: center; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__prov::before { margin-right: 4px !important; width: 8px !important; height: 8px !important; }

  /* 3. Waar wil je heen? (situatiekeuzes op één regel; plaatskeuze + kaart: zie blok ≤600px hieronder) */
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick { flex-wrap: nowrap !important; gap: 5px !important; margin: 22px auto 20px !important; justify-content: center; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick__label { display: none !important; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a { padding: 8px 9px 8px 8px !important; font-size: 12.5px !important; gap: 5px !important; white-space: nowrap; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a::before { width: 14px !important; height: 14px !important; }

  /* 4. FAQ */
  #chalet-heuvelrug-home .ch-faq { padding-top: 44px !important; padding-bottom: 44px !important; }
  #chalet-heuvelrug-home .ch-faq .ch-heading { font-size: 34px !important; }
  #chalet-heuvelrug-home .ch-faq__list { gap: 8px !important; margin-top: 22px !important; }
  #chalet-heuvelrug-home .ch-faq-item { border-radius: 12px !important; }
  #chalet-heuvelrug-home .ch-faq-item__q { padding: 15px 16px !important; font-size: 15.5px !important; line-height: 1.3 !important; gap: 12px; }
  #chalet-heuvelrug-home .ch-faq-item__a { padding: 0 16px 16px !important; font-size: 14.5px !important; line-height: 1.55 !important; }
  #chalet-heuvelrug-home .ch-faq-item[open] { border-color: rgba(196, 104, 58, .35) !important; background: #fff !important; }
  #chalet-heuvelrug-home .ch-faq-item[open] .ch-faq-item__q { color: #c4683a; }
}

/* Plaatskeuze boven de kaart (alle schermen): onder de kaart staat alleen de gekozen plaatskaart. JS zet js-pick. */
#chalet-heuvelrug-home .ch-gids-pick { display: none; }
#chalet-heuvelrug-home .ch-gids-places.js-pick .ch-gids-pick { display: block; max-width: 300px; margin: 28px auto 0; }
#chalet-heuvelrug-home .ch-gids-pick__field { position: relative; display: block; background: #fff; border: 1px solid rgba(43, 36, 28, .16); border-radius: 16px; box-shadow: 0 6px 18px rgba(43, 36, 28, .08); padding: 9px 40px 0 16px; min-height: 56px; }
#chalet-heuvelrug-home .ch-gids-pick__label { display: block; font: 700 11px 'Work Sans', sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #8a7a5c; }
#chalet-heuvelrug-home .ch-gids-pick select { appearance: none; -webkit-appearance: none; border: 0; background: transparent; width: 100%; padding: 2px 0 10px; font: 600 16px 'Work Sans', sans-serif; color: #2c4636; outline: none; cursor: pointer; }
#chalet-heuvelrug-home .ch-gids-pick__field::after { content: ''; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; border-right: 2px solid #a8916b; border-bottom: 2px solid #a8916b; transform: translateY(-65%) rotate(45deg); pointer-events: none; }
#chalet-heuvelrug-home .ch-gids-pick__field:focus-within { border-color: #2c4636; }
/* Telefoon: onder de kaart alleen de gekozen plaatskaart. Tablet en desktop: alle plaatskaarten blijven staan, de gekozen licht even op. */
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-places.js-pick .ch-gids-grid--places { display: none; }
  #chalet-heuvelrug-home .ch-gids-places.js-pick.has-pick .ch-gids-grid--places { display: flex; justify-content: center; padding-top: 8px; padding-bottom: 20px; }
  #chalet-heuvelrug-home .ch-gids-places.js-pick .ch-gids-grid--places > .ch-gids-card:not(.is-picked) { display: none; }
  #chalet-heuvelrug-home .ch-gids-places.js-pick .ch-gids-grid--places > .ch-gids-card.is-picked { flex: 0 0 100%; max-width: 560px; }
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-picked .ch-gids-card__main { padding-top: 18px; }
/* Mooiere plaatskaarten: zachte schaduw, ronde hoeken, silhouet in een lichtgroen vlak, accentlijntje bovenaan en een lichte lift bij hover */
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card {
  border: 1px solid rgba(44, 70, 54, 0.13);
  border-radius: 14px;
  background: #fffdf8;
  box-shadow: 0 2px 10px rgba(43, 36, 28, 0.06);
  position: relative;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card::after {
  content: '';
  position: absolute; left: 0; right: 0; top: 0; height: 4px;
  background: linear-gradient(90deg, #b9cba3, #d9e4c8);
  transition: background .2s ease;
  pointer-events: none;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card:hover::after,
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-picked::after {
  background: linear-gradient(90deg, #c4683a, #e0a868);
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card:hover {
  box-shadow: 0 14px 28px rgba(43, 36, 28, 0.13);
  border-color: rgba(196, 104, 58, 0.4);
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places .ch-gids-card__main .ch-gids-card__art--map {
  width: 62px;
  height: 62px;
  box-sizing: border-box;
  padding: 8px;
  margin: 20px 18px 0 6px;
  background: #eef2e6;
  border-radius: 16px;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places .ch-gids-card__art--map img { opacity: 0.62; }
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places .ch-gids-card:hover .ch-gids-card__art--map img,
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places .ch-gids-card.is-picked .ch-gids-card__art--map img { opacity: 0.95; }
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places .ch-gids-card__title { color: #2c4636; }

/* De gekozen plaatskaart springt eruit: oranje rand, schaduw en (tablet/desktop) iets opgetild; de andere kaarten worden rustiger. */
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-picked {
  border-color: #c4683a;
  box-shadow: 0 0 0 3px #c4683a, 0 18px 36px rgba(43, 36, 28, .22);
  background: #fff;
  position: relative;
}
#chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-picked::before {
  content: 'Gekozen plaats';
  position: absolute; top: 0; left: 0; z-index: 3;
  background: #c4683a; color: #fff; border-radius: 0 0 12px 0; padding: 5px 14px 6px 12px;
  font: 700 11px 'Work Sans', sans-serif; letter-spacing: .08em; text-transform: uppercase;
}
@media (min-width: 601px) {
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card { scroll-margin-top: 90px; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card { transition: opacity .25s ease, transform .25s ease, box-shadow .25s ease; }
  #chalet-heuvelrug-home .ch-gids-places.has-pick .ch-gids-grid--places > .ch-gids-card:not(.is-picked) { opacity: .72; }
  #chalet-heuvelrug-home .ch-gids-places.has-pick .ch-gids-grid--places > .ch-gids-card:not(.is-picked):hover { opacity: 1; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-picked { transform: translateY(-6px); }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-grid--places > .ch-gids-card.is-flash { animation: ch-flash 1.8s ease-out; }
}
@keyframes ch-flash {
  0%, 35% { box-shadow: 0 0 0 3px #c4683a, 0 14px 30px rgba(43, 36, 28, .18); }
  100% { box-shadow: 0 0 0 3px rgba(196, 104, 58, 0), 0 0 0 rgba(43, 36, 28, 0); }
}
#chalet-heuvelrug-home .ch-gids-places.js-pick .ch-map__pt { cursor: pointer; }
#chalet-heuvelrug-home .ch-faq-item[open] { border-color: rgba(196, 104, 58, .35); background: #fff; }
#chalet-heuvelrug-home .ch-faq-item[open] .ch-faq-item__q { color: #c4683a; }

/* Tablet en desktop (≥761px): rustigere spotlightkaart en compactere FAQ */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide { min-height: 330px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--wide .ch-photo__chips li:nth-child(n+4) { display: none; }
  #chalet-heuvelrug-home .ch-faq__list { gap: 10px; }
  #chalet-heuvelrug-home .ch-faq-item { border-radius: 12px; }
  #chalet-heuvelrug-home .ch-faq-item__q { padding: 17px 22px; }
  #chalet-heuvelrug-home .ch-faq-item__a { padding: 0 22px 18px; }
}

/* Knop "Terug naar de spotlight" onder de plaatskaarten: tablet en desktop altijd, telefoon pas na een plaatskeuze */
#chalet-heuvelrug-home .ch-gids-backspot { display: none; }
#chalet-heuvelrug-home .ch-gids-backspot svg { flex: none; color: #c4683a; }
@media (min-width: 601px) {
  #chalet-heuvelrug-home .ch-gids-backspot {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    width: max-content; max-width: 100%; margin: 40px auto 0; padding: 14px 26px;
    background: #fff; border: 1px solid rgba(44, 70, 54, .2); border-radius: 999px;
    box-shadow: 0 4px 14px rgba(43, 36, 28, .07);
    font: 700 15px 'Work Sans', sans-serif; color: #2c4636; text-decoration: none;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
  }
  #chalet-heuvelrug-home .ch-gids-backspot:hover { background: #2c4636; border-color: #2c4636; color: #fff; transform: translateY(-2px); }
  #chalet-heuvelrug-home .ch-gids-backspot:hover svg { color: #e0a868; }
}
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-places.js-pick.has-pick .ch-gids-backspot {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    max-width: 420px; margin: 12px auto 0; padding: 14px 18px;
    background: #fff; border: 1px solid rgba(44, 70, 54, .2); border-radius: 14px;
    box-shadow: 0 4px 14px rgba(43, 36, 28, .07);
    font: 700 15px 'Work Sans', sans-serif; color: #2c4636; text-decoration: none;
  }
  #chalet-heuvelrug-home .ch-gids-backspot:active { background: #eef2e6; }
  /* Gekozen kaart op een telefoon: schaduw blijft binnen het blok, zodat er geen harde rand in de achtergrond komt */
  #chalet-heuvelrug-home .ch-gids-places.js-pick.has-pick .ch-gids-grid--places > .ch-gids-card.is-picked { box-shadow: 0 0 0 3px #c4683a, 0 6px 14px rgba(43, 36, 28, .16); }
}

/* Hero: "Of lees eerst meer over de regio" in dezelfde knopstijl als "Terug naar de spotlight" */
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 26px;
  background: #fff;
  border: 1px solid rgba(44, 70, 54, .2);
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
  font: 700 15px 'Work Sans', sans-serif;
  color: #2c4636;
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more:hover,
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more:focus-visible {
  background: #2c4636;
  border-color: #fff;
  color: #fff;
  transform: translateY(-2px);
}
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more-ic {
  width: 16px;
  height: 16px;
  border: 0;
  border-radius: 0;
  background: none;
}
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more-ic::before { width: 16px; height: 16px; background: #c4683a; }
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more:hover .ch-gids-hero__more-ic,
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more:focus-visible .ch-gids-hero__more-ic { background: none; transform: translateY(2px); }
#chalet-heuvelrug-home .ch-gids-hero .ch-gids-hero__more:hover .ch-gids-hero__more-ic::before { background: #e0a868; }

/* ---- Advertentie: ingeklapt, dunne balk onderaan de spotlight + (i) bij de kop ---- */
#chalet-heuvelrug-home .ch-gids-adinfo {
  display: inline-flex;
  width: 22px;
  height: 22px;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  font-size: 13px;
  text-decoration: none;
  opacity: 0.75;
}
#chalet-heuvelrug-home .ch-gids-adinfo:hover,
#chalet-heuvelrug-home .ch-gids-adinfo:focus-visible { opacity: 1; }
#chalet-heuvelrug-home .ch-gids-adbar { max-width: 1000px; margin: 18px auto 0; }
#chalet-heuvelrug-home .ch-gids-adbar > summary {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 8px 16px;
  border: 1px solid #ded4be;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.45);
  color: #6b5d48;
  font-size: 13.5px;
  line-height: 1.3;
  cursor: pointer;
  list-style: none;
}
#chalet-heuvelrug-home .ch-gids-adbar > summary::-webkit-details-marker { display: none; }
#chalet-heuvelrug-home .ch-gids-adbar > summary:hover,
#chalet-heuvelrug-home .ch-gids-adbar > summary:focus-visible { background: rgba(255, 255, 255, 0.8); border-color: #c9bb9c; }
#chalet-heuvelrug-home .ch-gids-adbar__label {
  flex: none;
  padding: 2px 9px;
  border: 1px solid #b9ab8d;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6b5d48;
}
#chalet-heuvelrug-home .ch-gids-adbar__text { flex: 1 1 auto; min-width: 0; }
#chalet-heuvelrug-home .ch-gids-adbar__chev {
  flex: none;
  width: 8px;
  height: 8px;
  margin: 0 4px 3px 0;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 0.15s ease;
}
#chalet-heuvelrug-home .ch-gids-adbar[open] > summary .ch-gids-adbar__chev { transform: rotate(-135deg); margin-bottom: -3px; }
#chalet-heuvelrug-home .ch-gids-adbar > .ch-gids-card--ad { margin-top: 10px; }

/* Advertentiebalk: zacht groen met een korte tweede regel */
#chalet-heuvelrug-home .ch-gids-adbar > summary {
  background: #e6eee4;
  border-color: #b9ccb7;
  color: #2c4636;
  padding: 10px 16px;
}
#chalet-heuvelrug-home .ch-gids-adbar > summary:hover,
#chalet-heuvelrug-home .ch-gids-adbar > summary:focus-visible { background: #dbe8d8; border-color: #8fae8c; }
#chalet-heuvelrug-home .ch-gids-adbar__label { border-color: #2c4636; color: #2c4636; background: rgba(255, 255, 255, 0.55); }
#chalet-heuvelrug-home .ch-gids-adbar__text { display: flex; flex-direction: column; gap: 2px; }
#chalet-heuvelrug-home .ch-gids-adbar__text strong { font-size: 14.5px; font-weight: 700; color: #1f3a2a; }
#chalet-heuvelrug-home .ch-gids-adbar__sub { font-size: 13px; line-height: 1.4; color: #4a5f4e; }
#chalet-heuvelrug-home .ch-gids-adbar__more { flex: none; font-size: 12.5px; font-weight: 700; color: #2c4636; text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-adbar__more { display: none; }
  #chalet-heuvelrug-home .ch-gids-adbar > summary { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 6px 10px; }
  #chalet-heuvelrug-home .ch-gids-adbar__label { justify-self: start; }
  #chalet-heuvelrug-home .ch-gids-adbar__chev { grid-column: 2; grid-row: 1; }
  #chalet-heuvelrug-home .ch-gids-adbar__text { grid-column: 1 / -1; }
}

/* Lint op de foto: alleen "Gesponsord", de naam van de plek staat er niet meer op (de kleur blijft) */
#chalet-heuvelrug-home .ch-photo__lint span {
  padding-left: 0;
  border-left: 0;
  font-weight: 700;
  letter-spacing: 0.1em;
  opacity: 1;
}

/* ---- Plaatspagina: alle verblijven als staande fotokaart. Gewone verblijven ('plain') hebben een neutrale kleur en geen label ---- */
#chalet-heuvelrug-home .ch-tier--plain { --tier: #efe6d0; --tier-ink: #1b1712; --tier-dark: #e2d6b8; --tier-soft: #f7f2e6; --tier-glow: rgba(239, 230, 208, 0.25); --tier-light: #f6efdc; }
#chalet-heuvelrug-home .ch-photo.ch-tier--plain::after { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22); }
#chalet-heuvelrug-home .ch-photo__bg--empty { background: linear-gradient(160deg, #5f7a62 0%, #43604a 55%, #2f4636 100%); }

/* ============================================================
   Plaatspagina: compacter en rustiger (marges, feiten, galerij, bereikbaarheid)
   ============================================================ */
#chalet-heuvelrug-home.ch-plaats { --sp-section: 84px; --sp-head: 40px; }
@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-plaats { --sp-section: 44px; --sp-head: 26px; --sp-grid: 14px; }
}
@media (max-width: 760px) {
  /* In het kort */
  #chalet-heuvelrug-home .ch-plaats-intro { padding: 40px 16px 0 !important; }
  #chalet-heuvelrug-home .ch-plaats-intro--facts { gap: 18px !important; }
  #chalet-heuvelrug-home .ch-plaats-intro__title { font-size: 36px !important; margin: 0 0 16px !important; }
  #chalet-heuvelrug-home .ch-plaats-intro__prose p { font-size: 15.5px; line-height: 1.6; margin: 0 0 12px; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts { padding-top: 0; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-facts { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact { padding: 10px 12px !important; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact:last-child:nth-child(odd) { grid-column: 1 / -1; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact dt { font-size: 10.5px; margin-bottom: 3px; }
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-fact dd { font-size: 14px; line-height: 1.35; }

  /* Foto's: een zwipe-rij in plaats van drie grote foto's onder elkaar */
  #chalet-heuvelrug-home .ch-plaats-gallery { padding-left: 0 !important; padding-right: 0 !important; padding-top: 22px !important; }
  #chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery {
    display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 10px; margin: 0;
    padding: 2px 16px 10px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
    scroll-padding-left: 16px; scrollbar-width: none;
  }
  #chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery::-webkit-scrollbar { display: none; }
  #chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery__item { flex: 0 0 78% !important; aspect-ratio: 4 / 3 !important; border-radius: 12px; scroll-snap-align: start; }

  /* Bereikbaarheid: compacte kaarten met pictogram naast de titel */
  #chalet-heuvelrug-home .ch-plaats-reach { gap: 8px; padding: 0; }
  #chalet-heuvelrug-home .ch-plaats-reach__item {
    display: grid; grid-template-columns: 26px 1fr; column-gap: 10px; align-items: center; padding: 12px 14px 14px !important;
  }
  #chalet-heuvelrug-home .ch-plaats-reach__icon { margin: 0; width: 22px; height: 22px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item h3 { margin: 0; font-size: 15.5px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item p { grid-column: 1 / -1; margin-top: 6px; font-size: 14px; line-height: 1.55; }
}
@media (min-width: 601px) and (max-width: 1000px) {
  #chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery { gap: 12px; }
  #chalet-heuvelrug-home .ch-plaats-gallery .ch-vb-gallery__item { flex: 0 0 calc((100% - 24px) / 3) !important; aspect-ratio: 4 / 3; border-radius: 12px; }
}

/* Sprong naar "[plaats] in het kort": de kop komt niet vlak onder de rand van het scherm te staan */
#chalet-heuvelrug-home .ch-plaats-intro { scroll-margin-top: 0; }
@media (max-width: 760px) {
  #chalet-heuvelrug-home #over-plaats { scroll-margin-top: 36px; }
}

/* Personen en Slaapkamers in Meer filters (plaatspagina) */
#chalet-heuvelrug-home .ch-zk__pick { display: block; min-width: 190px; }
#chalet-heuvelrug-home .ch-zk__pick select {
  width: 100%;
  min-height: 40px;
  padding: 0 34px 0 14px;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  color: #2c4636;
  background-color: #ece5d3;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-zk__pick { min-width: 0; width: 100%; }
  #chalet-heuvelrug-home .ch-zk__pick select { min-height: 44px; }
}

/* Telefoon: in het verblijvenfilter staan Zoeken, Soort en Gesponsord achter Meer filters */
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-zk--stay:not(.ch-zk--more) .ch-zk__bar .ch-zk__field { display: none; }
}

/* Zoeker bovenaan zonder Meer filters: op een telefoon staat Zoek op een eigen, volle rij */
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-zk:not(.ch-zk--stay) .ch-zk__go { grid-column: 1 / -1; width: 100%; }
}

/* Telefoon: Meer filters in het verblijvenfilter als ronde (pil)knop */
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__filt {
    justify-content: center;
    min-height: 48px;
    margin: 10px 0 0;
    padding: 0 16px;
    border: 0;
    border-radius: 999px;
    background: #ece5d3;
  }
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__filt:hover,
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__filt[aria-expanded="true"] { background: #e2d9c1; }
  #chalet-heuvelrug-home .ch-zk--stay .ch-zk__go { border-radius: 999px; }
}

/* Telefoon: staan de filters open, dan staat Zoek onderaan, onder het paneel (niet erboven) */
#chalet-heuvelrug-home .ch-zk--stay .ch-zk__go--end { display: none; }
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-zk--stay.ch-zk--more .ch-zk__bar .ch-zk__go { display: none; }
  #chalet-heuvelrug-home .ch-zk--stay.ch-zk--more .ch-zk__go--end {
    display: flex;
    width: 100%;
    justify-content: center;
    margin: 12px 0 0;
    padding: 15px 20px;
    border-radius: 999px;
  }
  #chalet-heuvelrug-home .ch-zk--stay.ch-zk--more .ch-zk__bar { padding-bottom: 10px; }
}

/* Plaatskaart (small): boven 600 px zoals altijd; omschrijving en meer dan 4 kenmerken pas op een telefoon */
@media (min-width: 761px) {
  #chalet-heuvelrug-home .ch-photo--small .ch-photo__text { display: none; }
  #chalet-heuvelrug-home .ch-photo--small .ch-photo__chips li:nth-child(n+5) { display: none; }
}
/* Telefoon (tot 760 px): de kaart op de plaatspagina is identiek aan de spotlightkaart op de gids */
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small { min-height: 500px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small::before {
    background: linear-gradient(to top, rgba(14, 22, 17, 0.93) 0%, rgba(14, 22, 17, 0.8) 40%, rgba(14, 22, 17, 0) 80%);
  }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__over { padding: 70px 18px 18px !important; gap: 12px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__title { font-size: 32px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__text { display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px !important; margin: 6px 0 0 !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__chips { margin-top: 14px !important; gap: 8px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__chips li { padding: 6px 12px !important; font-size: 13px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__chips li:nth-child(n+4) { display: none !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__actions { width: auto !important; margin-top: 0 !important; gap: 10px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__brochure { padding: 13px 18px !important; font-size: 16px !important; gap: 10px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__brochure svg:first-child { display: block !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__provs { display: grid !important; grid-template-columns: 1fr 1fr 1.3fr !important; gap: 5px !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__prov { padding: 9px 2px !important; font-size: 11.5px !important; justify-content: center; min-width: 0; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__prov:last-child:nth-child(odd) { grid-column: auto !important; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-photo--small .ch-photo__prov::before { margin-right: 4px !important; width: 8px !important; height: 8px !important; }
}

/* Groene kaart "Alle verblijven": op desktop blijven de knoppen onder elkaar zoals altijd (de omhulling telt dan niet mee) */
#chalet-heuvelrug-home .ch-gids-card__links { display: contents; }

/* Telefoon: de verblijfkaarten blijven altijd 500 px hoog (ook als de groene kaart "Alle verblijven" in de rij staat); de groene kaart is net zo hoog en heeft de drie knoppen op één rij, zoals de boeklinks op de verblijfkaarten */
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid > .ch-photo--small,
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid > .ch-gids-card--more { align-self: flex-start; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more { height: 500px; min-height: 500px; overflow: hidden; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more .ch-gids-card__trees { display: none; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more .ch-gids-card__text { font-size: 14px; line-height: 1.45; margin: 6px 0 0; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more .ch-gids-card__perks { margin-top: 10px; padding-top: 14px; gap: 10px; font-size: 14px; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more .ch-gids-card__links {
    display: grid;
    grid-template-columns: 1fr 1.3fr 1fr;
    gap: 5px;
    margin-top: auto;
    padding: 14px 24px 20px;
    align-self: stretch;
    width: 100%;
    box-sizing: border-box;
  }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-card--more .ch-gids-card__link {
    flex: none;
    min-width: 0;
    min-height: 40px;
    margin: 0;
    padding: 9px 2px;
    font-size: 11px;
    justify-content: center;
    text-align: center;
  }
}

/* Telefoon in landscape en kleine tablet (601 tot 760 px): ook de verblijven op de gids en de plaatspagina zwipen opzij, met dezelfde kaart als op een telefoon */
@media (min-width: 601px) and (max-width: 760px) {
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: var(--sp-grid, 20px);
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    padding: 0 24px 4px;
    box-sizing: border-box;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 24px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows::-webkit-scrollbar { display: none; }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-photo,
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-gids-card--more {
    flex: 0 0 340px;
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-photo,
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-gids-card--more { align-self: flex-start; }
}

/* Kaartbreedte in de swipe-rij: 84% van het scherm, maar nooit breder dan 340 px (zo springt de breedte niet bij 600 px) */
@media (max-width: 600px) {
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-photo,
  #chalet-heuvelrug-home .ch-gids-stays .ch-gids-grid--rows > .ch-gids-card--more { flex-basis: min(84%, 340px); }
}

/* ---- Situatiepagina's: afstemmen op home en plaatspagina ---- */
/* Spotlight bovenaan: zelfde ritme als "Verblijven in [plaats]" op de plaatspagina */
#chalet-heuvelrug-home.ch-situatie .ch-situatie-stays { padding-top: var(--sp-section); padding-bottom: var(--sp-section); }
#chalet-heuvelrug-home.ch-situatie .ch-situatie-stays + .ch-plaats-intro { margin-top: 0; }
@media (max-width: 760px) {
  /* Hero: de situatiekeuzes op één regel, zoals op home */
  #chalet-heuvelrug-home.ch-situatie .ch-gids-hero .ch-gids-quick { flex-wrap: nowrap; gap: 6px; margin: 18px auto 0; justify-content: center; }
  #chalet-heuvelrug-home.ch-situatie .ch-gids-hero .ch-gids-quick__label { flex: 0 0 100%; text-align: center; margin: 0 0 4px; }
  #chalet-heuvelrug-home.ch-situatie .ch-gids-hero .ch-gids-quick { flex-wrap: wrap; }
  #chalet-heuvelrug-home.ch-situatie .ch-gids-hero .ch-gids-quick a { padding: 9px 14px; font-size: 14px; white-space: nowrap; }
  #chalet-heuvelrug-home #inhoud { scroll-margin-top: 36px; }
  /* Goed om te weten: kaarten in het paneel compacter */
  #chalet-heuvelrug-home.ch-situatie .ch-plaats-tips__item p { font-size: 14px; line-height: 1.5; }
}
/* Zoek een verblijf-kaart: de drie boekknoppen op één rij op een telefoon, zoals op de plaatspagina */
@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-situatie-cta__card { padding: 28px 20px 22px; }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons { flex-direction: row; gap: 5px; }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
    padding: 12px 4px;
    font-size: 12px;
    justify-content: center;
    text-align: center;
  }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link:nth-child(2) { flex-grow: 1.3; }
}
/* Situatiepagina's: ruimte tussen "In het kort" en het volgende paneel (op een telefoon plakten ze aan elkaar) */
@media (max-width: 760px) {
  #chalet-heuvelrug-home.ch-situatie .ch-plaats-intro + .ch-plaats-spots { margin-top: var(--sp-section); }
}
/* Zoek een verblijf-kaart: fijner (kleinere kaart, ronde knoppen met gekleurd stipje, zoals de boekknoppen op de verblijfkaarten) */
#chalet-heuvelrug-home .ch-situatie-cta__card {
  max-width: 880px;
  padding: 30px 32px 24px;
}
#chalet-heuvelrug-home .ch-situatie-cta__card .ch-gids-card__more-icon {
  width: 38px;
  height: 38px;
  margin-bottom: 10px;
}
#chalet-heuvelrug-home .ch-situatie-cta__card .ch-gids-card__more-icon svg { width: 20px; height: 20px; }
#chalet-heuvelrug-home .ch-situatie-cta__title { font-size: 22px; margin-bottom: 8px; }
#chalet-heuvelrug-home .ch-situatie-cta__text { font-size: 15px; line-height: 1.5; margin-bottom: 18px; max-width: 560px; }
#chalet-heuvelrug-home .ch-situatie-cta__buttons { max-width: 560px; gap: 10px; }
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.08);
  color: #fbf3e7;
  font-size: 14px;
  font-weight: 700;
  box-shadow: none;
  transform: none;
}
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book::before {
  content: "";
  flex: none;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #0057b8;
  box-shadow: 0 0 0 2px #fff;
}
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--p-natuurhuisje::before { background: #c96a37; }
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--p-airbnb::before { background: #ff385c; }
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book:hover,
#chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book:focus-visible {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.55);
}
#chalet-heuvelrug-home .ch-situatie-cta__more { margin-top: 16px; font-size: 14px; }
#chalet-heuvelrug-home .ch-situatie-cta__note { margin-top: 10px; font-size: 12px; }
@media (max-width: 700px) {
  #chalet-heuvelrug-home .ch-situatie-cta__card { padding: 24px 16px 20px; }
  #chalet-heuvelrug-home .ch-situatie-cta__title { font-size: 20px; }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons { gap: 6px; }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book { height: 40px; padding: 0 6px; font-size: 12px; gap: 5px; }
  #chalet-heuvelrug-home .ch-situatie-cta__buttons .ch-gids-card__link--book::before { width: 9px; height: 9px; }
}
/* Zoek een verblijf-kaart hoort bij het gedeelte erboven (Goed om te weten): zelfde achtergrond, geen aparte band; de FAQ blijft een eigen band */
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know { padding-bottom: 0; }
#chalet-heuvelrug-home.ch-situatie .ch-situatie-cta {
  background: rgb(248, 244, 236);
  padding-top: var(--sp-section);
}
/* Situatiepagina's: de situatiekeuzes staan onder de introtekst (op de lichte achtergrond) in plaats van in de hero */
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px;
  margin: 24px 0 0;
}
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick__label {
  width: 100%;
  margin: 0 0 2px;
  text-align: left;
  color: #8a7a5c;
}
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a {
  border: 1px solid rgba(43, 36, 28, 0.16);
  background: #fff;
  color: #2c4636;
  box-shadow: 0 4px 14px rgba(43, 36, 28, 0.08);
}
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a::before { background: #c4683a; }
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a:hover,
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a:focus-visible {
  background: #2c4636;
  border-color: #2c4636;
  color: #fbf3e7;
}
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a:hover::before,
#chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a:focus-visible::before { background: #e0a868; }
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick { gap: 6px; margin-top: 20px; }
  #chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a { padding: 9px 14px 9px 10px; font-size: 14px; white-space: nowrap; }
}
/* Melding als er geen verblijven zijn (plaatspagina): korte kop, daaronder de uitleg */
#chalet-heuvelrug-home .ch-gids-empty strong {
  display: block;
  margin-bottom: 2px;
  font-size: 17px;
  font-weight: 700;
  color: #2c4636;
}
/* Hele smalle telefoons (320 px): niets mag buiten het scherm vallen */
@media (max-width: 350px) {
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a { padding: 7px 8px 7px 7px !important; font-size: 11.5px !important; gap: 4px !important; }
  #chalet-heuvelrug-home .ch-gids-places .ch-gids-quick a::before { width: 12px !important; height: 12px !important; }
  #chalet-heuvelrug-home .ch-plaats-intro__title { font-size: 31px; overflow-wrap: anywhere; }
}
@media (max-width: 350px) {
  #chalet-heuvelrug-home .ch-plaats-intro__text { min-width: 0; }
  #chalet-heuvelrug-home .ch-plaats-intro .ch-gids-quick a { padding: 8px 10px 8px 8px; font-size: 13px; white-space: normal; }
}
@media (max-width: 350px) {
  #chalet-heuvelrug-home .ch-plaats-intro { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 350px) {
  #chalet-heuvelrug-home .ch-plaats-facts { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 350px) {
  #chalet-heuvelrug-home .ch-plaats-intro__facts .ch-plaats-facts { grid-template-columns: minmax(0, 1fr) !important; }
}

/* ===== Brochure: alle boekknoppen, compacte hero, fotorij, terugblok ===== */
#chalet-heuvelrug-home .ch-vb-hero__btns {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
#chalet-heuvelrug-home .ch-vb-hero__btns .ch-vb-bookbtn.ch-cta-btn { border-radius: 999px; }
#chalet-heuvelrug-home .ch-vb-hero__alt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 46px;
  padding: 0 22px;
  border: 1.5px solid rgba(243, 234, 217, 0.55);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: #f3ead9;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.15s, border-color 0.15s;
}
#chalet-heuvelrug-home .ch-vb-hero__alt::before {
  content: "";
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #f3ead9;
}
#chalet-heuvelrug-home .ch-vb-hero__alt.ch-gids-card__link--p-airbnb::before { background: #ff385c; }
#chalet-heuvelrug-home .ch-vb-hero__alt.ch-gids-card__link--p-booking::before { background: #4d97e8; }
#chalet-heuvelrug-home .ch-vb-hero__alt.ch-gids-card__link--p-natuurhuisje::before { background: #c46bc6; }
#chalet-heuvelrug-home .ch-vb-hero__alt:hover,
#chalet-heuvelrug-home .ch-vb-hero__alt:focus-visible {
  background: rgba(255, 255, 255, 0.16);
  border-color: #f3ead9;
}
#chalet-heuvelrug-home .ch-vb-hero__disclosure { margin-left: auto; margin-right: auto; }

/* Fotorij: geen losse foto onderaan op desktop */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery {
  display: grid;
  gap: var(--sp-grid, 14px);
  margin-left: auto;
  margin-right: auto;
}
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols1 { grid-template-columns: minmax(0, 720px); justify-content: center; }
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
/* 5 of meer: drie per rij, een restrij staat gecentreerd */
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols5 { display: flex; flex-wrap: wrap; justify-content: center; }
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols5 .ch-vb-gallery__item { flex: 0 0 calc((100% - 2 * var(--sp-grid, 14px)) / 3); }
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery__item {
  width: auto;
  flex: none;
  aspect-ratio: 4 / 3;
  border-radius: 12px;
  overflow: hidden;
}
#chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Tablet en telefoon: foto's als zwiperij */
@media (max-width: 900px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols1,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols2,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols3,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols4,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols5 {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 2px 24px 10px;
    margin-left: -24px;
    margin-right: -24px;
    max-width: none;
    justify-content: flex-start;
    scroll-padding-left: 24px;
  }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery::-webkit-scrollbar { display: none; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery__item,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols5 .ch-vb-gallery__item {
    flex: 0 0 46%;
    scroll-snap-align: start;
  }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols1 .ch-vb-gallery__item { flex-basis: 100%; }
  }
@media (max-width: 600px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery__item,
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols5 .ch-vb-gallery__item { flex-basis: 78%; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-gallery--cols1 .ch-vb-gallery__item { flex-basis: 100%; }
}

/* Compacte hero op mobiel */
@media (max-width: 760px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero { padding-top: 18px; padding-bottom: 24px; min-height: 0; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-vb-chip { margin-bottom: 14px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__inner { gap: 16px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__brand { gap: 10px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-logo { width: 88px; height: auto; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__divider { display: none; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__title { font-size: 40px; line-height: 1.02; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__subtitle { font-size: 14px; margin-top: 4px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__cta { margin-top: 0; gap: 8px; width: 100%; }
  #chalet-heuvelrug-home .ch-vb-hero__btns { flex-direction: column; gap: 8px; width: 100%; max-width: 320px; margin: 0 auto; }
  #chalet-heuvelrug-home .ch-vb-hero__btns > a,
  #chalet-heuvelrug-home .ch-vb-hero__btns > a.ch-cta-btn { width: 100% !important; height: 44px; padding: 0 16px; }
  #chalet-heuvelrug-home .ch-vb-hero__disclosure { font-size: 12px; margin-top: 6px; }
}

/* Gastheerbadge past ook op 320px */
@media (max-width: 380px) {
  #chalet-heuvelrug-home .ch-badge { max-width: 100%; }
  #chalet-heuvelrug-home .ch-badge__circle { width: min(340px, 100%); height: auto; aspect-ratio: 1 / 1; }
}

@media (min-width: 761px) and (max-width: 900px) {
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero { padding-bottom: 36px; }
  #chalet-heuvelrug-home.ch-verblijf .ch-vb-hero .ch-hero__cta { width: 100%; align-items: center; text-align: center; }
  #chalet-heuvelrug-home .ch-vb-hero__disclosure { max-width: 380px; }
}

/* ==========================================================================
   Plaatspagina: Tips van de redactie op een lichtgroene achtergrond over de
   volle breedte, in plaats van het donkere kader. Alleen op de plaatspagina.
   ========================================================================== */
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots.ch-area {
  background: #e4ede0;
  padding: 72px 40px 84px;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips {
  background: none;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  padding: 0;
  color: #24392c;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__title {
  color: #1d3a2c;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item:last-child {
  background: #ffffff;
  border: 1px solid rgba(44, 70, 54, 0.1);
  border-left: 3px solid #5f8466;
  box-shadow: 0 8px 22px rgba(36, 57, 44, 0.1);
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots.ch-area {
    padding: 52px 18px 48px;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips {
    padding: 0;
  }
}

/* Plaatspagina: Tips van de redactie met meer uitstraling (kop met label en lijn, genummerde kaarten) */
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots.ch-area {
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.55) 0%, rgba(255, 255, 255, 0) 45%),
    radial-gradient(circle at 92% 100%, rgba(95, 132, 102, 0.16) 0%, rgba(95, 132, 102, 0) 50%),
    #e4ede0;
  padding: 84px 40px 96px;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__head {
  margin-bottom: 48px;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__eyebrow {
  display: inline-block;
  margin-bottom: 8px;
  padding: 5px 14px;
  border-radius: 999px;
  background: #c9672f;
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__title {
  font-size: 58px;
  line-height: 1;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-tips__rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 12px auto 0;
  color: #c9672f;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-tips__rule::before,
#chalet-heuvelrug-home.ch-plaats .ch-plaats-tips__rule::after {
  content: "";
  width: 64px;
  height: 2px;
  background: linear-gradient(90deg, rgba(201, 103, 47, 0), #c9672f);
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-tips__rule::after {
  transform: scaleX(-1);
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-tips__sub {
  max-width: 560px;
  margin: 14px auto 0;
  font-size: 17px;
  line-height: 1.55;
  color: #3d5446;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__list {
  counter-reset: tip;
  gap: 28px;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item:last-child {
  position: relative;
  counter-increment: tip;
  border: 0;
  border-radius: 12px;
  background-image: linear-gradient(90deg, #5f8466, #8fb08f);
  background-repeat: no-repeat;
  background-size: 100% 5px;
  box-shadow: 0 14px 34px rgba(36, 57, 44, 0.14);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(36, 57, 44, 0.2);
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item::before {
  content: counter(tip);
  position: absolute;
  top: -22px;
  right: 18px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #c9672f;
  border: 3px solid #e4ede0;
  color: #ffffff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__icon {
  box-sizing: content-box;
  padding: 11px;
  border-radius: 50%;
  background: #2f5a40;
  color: #ffffff;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item h3 {
  font-size: 20px;
  line-height: 1.25;
  color: #1d3a2c;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  padding: 8px 16px;
  border: 1.5px solid #c9672f;
  border-radius: 999px;
  color: #b0572a;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__link:hover {
  background: #c9672f;
  color: #ffffff;
  text-decoration: none;
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots.ch-area {
    padding: 60px 18px 56px;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__title {
    font-size: 44px;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__head {
    margin-bottom: 36px;
  }

  /* In de zwipe-rij wordt alles buiten de kaart afgeknipt: het nummer staat daarom binnen de kaart */
  #chalet-heuvelrug-home.ch-plaats .ch-plaats-spots .ch-plaats-tips__item::before {
    top: 16px;
    right: 16px;
    width: 34px;
    height: 34px;
    font-size: 16px;
    border-width: 2px;
  }
}

/* ==========================================================================
   Situatiepagina's: "Waar kun je heen?" en "Goed om te weten" als gekleurde
   band over de volle breedte met witte kaarten. De kleur kies je per pagina
   en per blok in WordPress (ch-band--groen / zand / blauw / perzik / donker).
   Zonder nummers of pinnetjes. Alleen op de situatiepagina's.
   ========================================================================== */
#chalet-heuvelrug-home .ch-band {
  --band-bg: #e4ede0;
  --band-glow: rgba(95, 132, 102, 0.16);
  --band-title: #1d3a2c;
  --band-text: #3d5446;
  --band-accent: #5f8466;
  --band-group: #3f6a4b;
  --band-hi: rgba(255, 255, 255, 0.45);
  --band-icon: #2f5a40;
}

#chalet-heuvelrug-home .ch-band--zand {
  --band-icon: #86683a;
  --band-bg: #f1e9d9;
  --band-glow: rgba(176, 140, 84, 0.18);
  --band-title: #4a3a1f;
  --band-text: #5c4b30;
  --band-accent: #b08c54;
  --band-group: #86683a;
}

#chalet-heuvelrug-home .ch-band--blauw {
  --band-icon: #3a6788;
  --band-bg: #dce8f1;
  --band-glow: rgba(70, 120, 160, 0.16);
  --band-title: #1f3b52;
  --band-text: #3b556b;
  --band-accent: #4c7ea3;
  --band-group: #3a6788;
}

#chalet-heuvelrug-home .ch-band--perzik {
  --band-icon: #b8561f;
  --band-bg: #f8e9dd;
  --band-glow: rgba(201, 103, 47, 0.14);
  --band-title: #5a2f14;
  --band-text: #6b4430;
  --band-accent: #d07a45;
  --band-group: #a2531f;
}

#chalet-heuvelrug-home .ch-band--donker {
  --band-icon: #27402f;
  --band-bg: #27402f;
  --band-glow: rgba(143, 176, 143, 0.14);
  --band-title: #ffffff;
  --band-text: #d9e6dc;
  --band-accent: #8fb08f;
  --band-group: #b9d3bb;
  --band-hi: rgba(255, 255, 255, 0.05);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots.ch-area,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know.ch-area {
  padding: 72px 40px 72px;
  background:
    radial-gradient(circle at 12% 0%, var(--band-hi) 0%, rgba(255, 255, 255, 0) 45%),
    radial-gradient(circle at 92% 100%, var(--band-glow) 0%, rgba(0, 0, 0, 0) 50%),
    var(--band-bg);
}

/* Staan "Waar kun je heen?" en "Goed om te weten" onder elkaar met dezelfde kleur, dan vormen ze één band */
#chalet-heuvelrug-home.ch-situatie .ch-band--groen + .ch-band--groen.ch-area,
#chalet-heuvelrug-home.ch-situatie .ch-band--zand + .ch-band--zand.ch-area,
#chalet-heuvelrug-home.ch-situatie .ch-band--blauw + .ch-band--blauw.ch-area,
#chalet-heuvelrug-home.ch-situatie .ch-band--perzik + .ch-band--perzik.ch-area,
#chalet-heuvelrug-home.ch-situatie .ch-band--donker + .ch-band--donker.ch-area {
  padding-top: 0;
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips {
  background: none;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  padding: 0;
  color: var(--band-text);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__title,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__title {
  color: var(--band-title);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__group-title {
  color: var(--band-group);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item:last-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item:last-child {
  background: #ffffff;
  border: 1px solid rgba(44, 70, 54, 0.1);
  border-left: 4px solid var(--band-accent);
  box-shadow: 0 8px 22px rgba(36, 57, 44, 0.12);
  color: #24392c;
}

/* Kaart: kleurstreep bovenaan, icoon half over de rand, plaats als label, kenmerken en knop (geen nummer of pinnetje-icoon) */
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item:last-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item:first-child,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item:last-child {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 16px;
  padding: 44px 24px 22px;
  box-shadow: 0 10px 28px rgba(36, 57, 44, 0.13);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item:hover,
#chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 36px rgba(36, 57, 44, 0.22);
}

#chalet-heuvelrug-home.ch-situatie .ch-plaats-spots .ch-plaats-tips__item::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 0;
  width: auto;
  height: 5px;
  display: block;
  border: 0;
  border-radius: 16px 16px 0 0;
  background: linear-gradient(90deg, var(--band-icon), var(--band-accent));
}

#chalet-heuvelrug-home.ch-situatie .ch-plaats-spots .ch-plaats-tips__item h3 {
  color: #1d3a2c;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-icon {
  position: absolute;
  top: -26px;
  left: 22px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  border: 4px solid var(--band-bg);
  background: var(--band-icon);
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(36, 57, 44, 0.25);
}

#chalet-heuvelrug-home.ch-situatie .ch-si-icon__svg {
  display: block;
  width: 28px;
  height: 28px;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-chip {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0 0 10px;
  padding: 4px 11px 4px 8px;
  border-radius: 999px;
  background: #eef2ef;
  background: color-mix(in srgb, var(--band-accent) 16%, #ffffff);
  color: var(--band-icon);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 14px;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-tag {
  padding: 3px 10px;
  border-radius: 6px;
  background: #f2efe7;
  color: #6b5a38;
  font-size: 12px;
  font-weight: 700;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 16px;
  color: #b0572a;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-tags + .ch-si-more,
#chalet-heuvelrug-home.ch-situatie .ch-plaats-tips__item p + .ch-si-more {
  margin-top: 0;
  padding-top: 0;
}

#chalet-heuvelrug-home.ch-situatie .ch-plaats-tips__item p + .ch-si-more,
#chalet-heuvelrug-home.ch-situatie .ch-si-tags + .ch-si-more {
  margin-top: 16px;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-more:hover {
  text-decoration: underline;
}

/* Het icoon steekt boven de kaart uit: meer ruimte tussen de rijen */
@media (min-width: 701px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__list,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__list {
    row-gap: 56px;
  }
}

/* Tablet: twee kaarten naast elkaar, anders worden ze te smal */
@media (min-width: 701px) and (max-width: 1000px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__list,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__list,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__list[style*="--cols"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Groepskop: icoon, titel, aantal tips en een lijn */
#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 12px 0 44px;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead + .ch-plaats-tips__list {
  margin-top: 0;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead__icon {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: var(--band-icon);
  color: #ffffff;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead__icon svg {
  width: 22px;
  height: 22px;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead .ch-plaats-tips__group-title {
  margin: 0;
  font-size: 38px;
  line-height: 1;
  color: var(--band-title);
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead__count {
  flex: none;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.7);
  color: var(--band-group);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#chalet-heuvelrug-home.ch-situatie .ch-si-grouphead__line {
  flex: 1;
  min-width: 12px;
  height: 2px;
  background: linear-gradient(90deg, var(--band-accent), transparent);
}

#chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__list + .ch-si-grouphead {
  margin-top: 56px;
}

/* Mobiel: de zwipe-rij knipt alles buiten de kaart af, dus het icoon staat binnen in de kaart */
@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__item,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__item {
    padding: 22px 20px 20px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-si-icon {
    position: static;
    width: 50px;
    height: 50px;
    margin-bottom: 14px;
    border: 0;
    box-shadow: none;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-si-icon__svg {
    width: 26px;
    height: 26px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-si-grouphead {
    gap: 10px;
    margin: 4px 0 24px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-si-grouphead .ch-plaats-tips__group-title {
    font-size: 30px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-si-grouphead__icon {
    width: 34px;
    height: 34px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__list + .ch-si-grouphead {
    margin-top: 36px;
  }
}

/* Lijntje onder de kop, met een stipje in het midden */
#chalet-heuvelrug-home.ch-situatie .ch-plaats-tips__rule i {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #c9672f;
}

@media (max-width: 700px) {
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots.ch-area,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know.ch-area {
    padding: 52px 18px 48px;
  }

  #chalet-heuvelrug-home.ch-situatie .ch-situatie-spots .ch-plaats-tips__title,
  #chalet-heuvelrug-home.ch-situatie .ch-situatie-know .ch-plaats-tips__title {
    font-size: 44px;
  }
}

/* ==========================================================================
   Plaatspagina: "In het kort" met de snelle feiten in één ronde kaart met ronde
   pictogrammen, en de foto's met grote ronde hoeken. Op de plaats- en situatiepagina's.
   ========================================================================== */
#chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-facts {
  display: block;
  padding: 10px 26px;
  border-radius: 32px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(60, 50, 30, 0.12);
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact {
  position: relative;
  min-height: 52px;
  margin: 0;
  padding: 18px 0 18px 68px;
  border: 0;
  border-bottom: 1px dashed #d9d2c2;
  border-radius: 0;
  background: none;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact:last-child {
  border-bottom: 0;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact dt {
  margin: 0 0 3px;
  color: #4d7254;
  font-size: 12px;
  letter-spacing: 0.14em;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact dd {
  margin: 0;
  font-size: 15.5px;
  line-height: 1.4;
  color: #2b241c;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-fact__icon {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-top: -26px;
  border-radius: 50%;
  background: #2f5a40;
  color: #ffffff;
  box-shadow: 0 0 0 5px #e4ede0;
}

#chalet-heuvelrug-home.ch-plaats .ch-plaats-fact__icon svg {
  display: block;
  width: 24px;
  height: 24px;
}

/* Foto's: grote ronde hoeken en een zachte schaduw */
#chalet-heuvelrug-home.ch-plaats .ch-plaats-gallery .ch-vb-gallery__item {
  overflow: hidden;
  border-radius: 30px;
  box-shadow: 0 10px 26px rgba(60, 50, 30, 0.16);
}

@media (max-width: 860px) {
  #chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-facts {
    grid-template-columns: none !important;
    gap: 0 !important;
    padding: 6px 20px !important;
    border-radius: 26px;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact {
    min-height: 44px;
    padding: 14px 0 14px 58px !important;
    grid-column: auto !important;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact dt {
    font-size: 11px !important;
    margin-bottom: 2px !important;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-intro__facts .ch-plaats-fact dd {
    font-size: 14.5px !important;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-fact__icon {
    width: 44px;
    height: 44px;
    margin-top: -22px;
    box-shadow: 0 0 0 4px #e4ede0;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-fact__icon svg {
    width: 21px;
    height: 21px;
  }

  #chalet-heuvelrug-home.ch-plaats .ch-plaats-gallery .ch-vb-gallery__item {
    border-radius: 22px !important;
    box-shadow: 0 6px 16px rgba(60, 50, 30, 0.14);
  }
}

/* ==========================================================================
   Plaatspagina: Bereikbaarheid. Elk vervoermiddel een eigen kleur, een rond
   pictogram, een afgeronde kaart en een link onderaan.
   ========================================================================== */
#chalet-heuvelrug-home .ch-plaats-reach__item {
  --rc: #4d6b5c;
  --rb: #e6ece8;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 0;
  border-radius: 30px;
  background: var(--rb);
  padding: 24px 26px 22px;
  box-shadow: 0 8px 22px rgba(60, 50, 30, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#chalet-heuvelrug-home .ch-plaats-reach__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(60, 50, 30, 0.16);
}

#chalet-heuvelrug-home .ch-plaats-reach__item--trein { --rc: #3a6788; --rb: #dce8f1; }
#chalet-heuvelrug-home .ch-plaats-reach__item--bus { --rc: #b8561f; --rb: #f8e9dd; }
#chalet-heuvelrug-home .ch-plaats-reach__item--auto { --rc: #2f5a40; --rb: #e4ede0; }
#chalet-heuvelrug-home .ch-plaats-reach__item--fiets { --rc: #86683a; --rb: #f1e9d9; }
#chalet-heuvelrug-home .ch-plaats-reach__item--ov { --rc: #2c6f73; --rb: #dcecec; }

#chalet-heuvelrug-home .ch-plaats-reach__head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}

#chalet-heuvelrug-home .ch-plaats-reach__ic {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--rc);
  color: #ffffff;
}

#chalet-heuvelrug-home .ch-plaats-reach__item .ch-plaats-reach__icon {
  display: block;
  width: 28px;
  height: 28px;
  margin: 0;
  color: #ffffff;
}

#chalet-heuvelrug-home .ch-plaats-reach__item h3 {
  margin: 0;
  font-size: 21px;
  font-weight: 700;
  color: var(--rc);
}

#chalet-heuvelrug-home .ch-plaats-reach__item p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #3b4a40;
}

#chalet-heuvelrug-home .ch-plaats-reach__link {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 16px;
  color: var(--rc);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

#chalet-heuvelrug-home .ch-plaats-reach__link:hover {
  text-decoration: underline;
}

@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-plaats-reach { gap: 14px; padding: 0 16px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item {
    display: flex !important;
    padding: 20px 20px 18px !important;
    border-radius: 26px;
  }
  #chalet-heuvelrug-home .ch-plaats-reach__item { text-align: left !important; align-items: stretch !important; }
  #chalet-heuvelrug-home .ch-plaats-reach__head { justify-content: flex-start !important; text-align: left; }
  #chalet-heuvelrug-home .ch-plaats-reach__link { align-self: flex-start; justify-content: flex-start; }
  #chalet-heuvelrug-home .ch-plaats-reach__ic { width: 46px; height: 46px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item .ch-plaats-reach__icon { width: 24px; height: 24px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item h3 { font-size: 19px; }
  #chalet-heuvelrug-home .ch-plaats-reach__item p { margin-top: 0; font-size: 14.5px; line-height: 1.6; }
}

/* Plaatspagina: knop "Terug naar het aanbod" (zelfde uiterlijk als "Terug naar de spotlight" op de gids) */
#chalet-heuvelrug-home .ch-plaats-back { display: flex; justify-content: center; padding: 8px 20px 40px; }
#chalet-heuvelrug-home.ch-situatie .ch-plaats-back:not(.ch-vb-back) { padding-top: 36px; }
#chalet-heuvelrug-home .ch-plaats-back__link {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: max-content; max-width: 100%; padding: 14px 26px;
  background: #fff; border: 1px solid rgba(44, 70, 54, .2); border-radius: 999px;
  box-shadow: 0 4px 14px rgba(43, 36, 28, .07);
  font: 700 15px 'Work Sans', sans-serif; color: #2c4636; text-decoration: none;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
#chalet-heuvelrug-home .ch-plaats-back__link svg { flex: none; color: #c4683a; }
#chalet-heuvelrug-home .ch-plaats-back__link:hover { background: #2c4636; border-color: #2c4636; color: #fff; transform: translateY(-2px); }
#chalet-heuvelrug-home .ch-plaats-back__link:hover svg { color: #e0a868; }
#chalet-heuvelrug-home .ch-plaats-back__link:active { background: #eef2e6; }

#chalet-heuvelrug-home .ch-vb-back { padding: 0; margin-top: 40px; }
#chalet-heuvelrug-home.ch-privacy .ch-privacy-body a { overflow-wrap: anywhere; }
/* Brochure: knop "Terug naar start". De ontwerpen (Panorama, Hoofdstukken, enz.) hebben eigen linkkleuren, daarom hier vast: witte pil met donkere tekst, goed leesbaar op licht en donker. */
#chalet-heuvelrug-home .ch-vb-back .ch-plaats-back__link {
  background: #fff !important;
  color: #2c4636 !important;
  border: 1px solid rgba(44, 70, 54, .25) !important;
  font-family: 'Work Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  opacity: 1 !important;
}
#chalet-heuvelrug-home .ch-vb-back .ch-plaats-back__link svg { color: #c4683a !important; }
#chalet-heuvelrug-home .ch-vb-back .ch-plaats-back__link:hover { background: #2c4636 !important; color: #fff !important; border-color: #2c4636 !important; }
#chalet-heuvelrug-home .ch-vb-back .ch-plaats-back__link:hover svg { color: #e0a868 !important; }

/* Plaatspagina: lege lijst met uitleg wat er wel kan */
#chalet-heuvelrug-home .ch-gids-empty__link { display: inline-block; margin: 6px 0 4px; font-weight: 700; color: #c4683a; text-decoration: none; }
#chalet-heuvelrug-home .ch-gids-empty__link:hover { text-decoration: underline; }

/* ==========================================================================
   BROCHURE-ONTWERPEN: Panorama (pn), Tijdschrift (tj), Hoofdstukken (hf)
   Het ontwerp kies je per verblijf in het kader Brochure. Het kleurthema
   zet de variabelen hieronder; alles is afgeschermd onder .ch-lay.
   ========================================================================== */

/* ---------- kleurthema's als variabelen ---------- */
#chalet-heuvelrug-home.ch-lay {
  --deep: #1d3a2c; --deep2: #14271e; --c1: #2c4636;
  --bg: #121f18; --bg2: #182a21; --glow: 80, 140, 100;
  --hl: #c9dc7a; --pop: #d9764a; --grn: #2d5a43;
  --gold: #e0b36a;
}
#chalet-heuvelrug-home.ch-lay.ch-theme-blauw { --deep: #1f3347; --deep2: #14202c; --c1: #2b4258; --bg: #0f1822; --bg2: #172636; --glow: 80, 120, 170; --hl: #b9d3ea; --pop: #e0894f; --grn: #3d6a8c; }
#chalet-heuvelrug-home.ch-lay.ch-theme-aarde { --deep: #3b2d22; --deep2: #271d15; --c1: #4d3b2c; --bg: #1c150f; --bg2: #261d15; --glow: 170, 120, 70; --hl: #ecd08f; --pop: #b5532e; --grn: #7a5a3a; }
#chalet-heuvelrug-home.ch-lay.ch-theme-antraciet { --deep: #2c2f33; --deep2: #1d1f22; --c1: #3a3e42; --bg: #151719; --bg2: #1f2225; --glow: 130, 140, 150; --hl: #d6d9dc; --pop: #d9764a; --grn: #5a6066; }
#chalet-heuvelrug-home.ch-lay.ch-theme-bordeaux { --deep: #4a2430; --deep2: #331a21; --c1: #5c2c37; --bg: #1e1015; --bg2: #2c161d; --glow: 170, 80, 100; --hl: #f0c4cb; --pop: #c24f63; --grn: #8a3a4a; }

/* boekplatformen */
#chalet-heuvelrug-home.ch-lay .pl-airbnb { --pc: #ff385c; --pcl: #ff6b85; }
#chalet-heuvelrug-home.ch-lay .pl-booking { --pc: #0057b8; --pcl: #4d97e8; }
#chalet-heuvelrug-home.ch-lay .pl-natuurhuisje { --pc: #5a125b; --pcl: #c46bc6; }
#chalet-heuvelrug-home.ch-lay .pl-eigen, #chalet-heuvelrug-home.ch-lay .pl-anders { --pc: #c96a37; --pcl: #e08a55; }

/* ---------- gedeeld ---------- */
#chalet-heuvelrug-home.ch-lay :where([class$="-wrap"], [class$="-wrap"] *, [class$="-wrap"] *::before, [class$="-wrap"] *::after) { box-sizing: border-box; }
#chalet-heuvelrug-home.ch-lay :where([class$="-wrap"] *) { margin: 0; padding: 0; }
#chalet-heuvelrug-home.ch-lay .lay-disp { font-family: 'Amatic SC', cursive; font-weight: 700; line-height: .95; letter-spacing: .01em; }
#chalet-heuvelrug-home.ch-lay .lay-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#chalet-heuvelrug-home.ch-lay .lay-sep { font-style: normal; opacity: .55; }
#chalet-heuvelrug-home.ch-lay .lay-crumb-cur { display: inline-flex; align-items: center; gap: 8px; }
#chalet-heuvelrug-home.ch-lay :where([class$="-ic"]) { width: 1em; height: 1em; flex: none; }
#chalet-heuvelrug-home.ch-lay :where([class$="-wrap"]) { overflow-x: clip; }
#chalet-heuvelrug-home.ch-lay [id^="lay-"] { scroll-margin-top: 76px; }
#chalet-heuvelrug-home.ch-lay .ch-vb-preview { position: relative; z-index: 60; }
#chalet-heuvelrug-home.ch-lay :where([class$="-wrap"] a:hover) { opacity: 1; }
#chalet-heuvelrug-home.ch-lay :where([class$="-wrap"] img) { max-width: none; height: auto; }

/* de vaste boekbalk onderin (alleen mobiel) */
#chalet-heuvelrug-home.ch-lay .lay-stick { display: none; }
#chalet-heuvelrug-home.ch-lay .lay-stick.is-off { opacity: 0; pointer-events: none; transform: translateY(24px); }

/* ======================================================================
   PANORAMA
   ====================================================================== */
#chalet-heuvelrug-home.ch-lay--panorama { background: #f8f4ec; color: #1f2a24; }
#chalet-heuvelrug-home .pn-wrap { font-family: 'Work Sans', system-ui, sans-serif; line-height: 1.6; -webkit-font-smoothing: antialiased; }
#chalet-heuvelrug-home .pn-hero { position: relative; isolation: isolate; min-height: min(94vh, 860px); color: #fff; display: flex; flex-direction: column; justify-content: flex-end; background: linear-gradient(160deg, var(--c1), var(--deep2)); overflow: hidden; }
#chalet-heuvelrug-home .pn-hero--noimg { min-height: 520px; }
#chalet-heuvelrug-home .pn-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
#chalet-heuvelrug-home .pn-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(10, 20, 15, .58) 0%, rgba(10, 20, 15, 0) 30%, rgba(10, 20, 15, .15) 52%, rgba(10, 20, 15, .84) 100%); }
#chalet-heuvelrug-home .pn-top { position: absolute; top: 0; left: 0; right: 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 40px; z-index: 3; }
#chalet-heuvelrug-home .pn-top__l { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
#chalet-heuvelrug-home .pn-logo img { height: 46px; width: auto; }
#chalet-heuvelrug-home .pn-crumbs { font-size: 13px; letter-spacing: .04em; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; text-shadow: 0 1px 8px rgba(0, 0, 0, .35); }
#chalet-heuvelrug-home .pn-crumbs a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .pn-chip { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; border: 1px solid rgba(255, 255, 255, .55); border-radius: 99px; padding: 5px 12px; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); background: rgba(255, 255, 255, .1); color: #fff; white-space: nowrap; }
#chalet-heuvelrug-home .pn-hero__in { position: relative; z-index: 2; max-width: 1240px; width: 100%; margin: 0 auto; padding: 120px 40px 96px; }
#chalet-heuvelrug-home .pn-eyebrow { font-size: 13px; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 10px; display: flex; align-items: center; gap: 10px; }
#chalet-heuvelrug-home .pn-eyebrow::before { content: ""; width: 34px; height: 1px; background: var(--gold); }
#chalet-heuvelrug-home .pn-wrap h1 { font-size: clamp(76px, 12vw, 168px); color: #fff; overflow-wrap: anywhere; }
#chalet-heuvelrug-home .pn-tag { font-size: clamp(18px, 2vw, 24px); max-width: 640px; margin: 14px 0 26px; opacity: .95; }
#chalet-heuvelrug-home .pn-btns { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 4px; }
#chalet-heuvelrug-home .pn-tag + .pn-btns { margin-top: 0; }
#chalet-heuvelrug-home .pn-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 26px; border-radius: 99px; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center; border: 1.5px solid transparent; transition: transform .15s, background .15s; }
#chalet-heuvelrug-home .pn-btn .pn-ic { font-size: 18px; }
#chalet-heuvelrug-home .pn-btn--main { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .pn-btn--ghost { border-color: rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .12); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); color: #fff; }
#chalet-heuvelrug-home .pn-btn:hover { transform: translateY(-2px); }
#chalet-heuvelrug-home .pn-disc { font-size: 12.5px; opacity: .8; margin-top: 12px; }

#chalet-heuvelrug-home .pn-facts { position: relative; z-index: 4; max-width: 1100px; margin: -52px auto 0; background: #fff; border-radius: 22px; box-shadow: 0 24px 60px -24px rgba(20, 40, 30, .45); display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); overflow: hidden; }
#chalet-heuvelrug-home .pn-fact { padding: 26px 22px; display: flex; align-items: center; gap: 16px; border-right: 1px solid #ece5d6; min-width: 0; }
#chalet-heuvelrug-home .pn-fact:last-child { border-right: 0; }
#chalet-heuvelrug-home .pn-fact .pn-ic { font-size: 34px; color: var(--deep); }
#chalet-heuvelrug-home .pn-fact b { display: block; font-size: 40px; line-height: 1.05; color: var(--deep); }
#chalet-heuvelrug-home .pn-fact b.is-long { font-size: 30px; }
#chalet-heuvelrug-home .pn-fact b.is-xlong { font-size: 24px; line-height: 1.1; }
#chalet-heuvelrug-home .pn-fact span { font-size: 13px; color: #5c6a62; letter-spacing: .04em; }

#chalet-heuvelrug-home .pn-story { max-width: 1180px; margin: 0 auto; padding: 110px 40px 70px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 70px; align-items: start; }
#chalet-heuvelrug-home .pn-story--solo { grid-template-columns: minmax(0, 760px); justify-content: center; }
#chalet-heuvelrug-home .pn-kicker { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; font-weight: 700; color: #9a6b2c; margin-bottom: 12px; }
#chalet-heuvelrug-home .pn-story h2 { font-size: clamp(52px, 6vw, 88px); color: var(--deep); }
#chalet-heuvelrug-home .pn-p { font-size: 19px; line-height: 1.75; color: #3d4a43; margin-top: 22px; }
#chalet-heuvelrug-home .pn-p.is-first::first-letter { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 78px; float: left; line-height: .8; margin: 6px 6px 0 0; color: var(--deep); }
#chalet-heuvelrug-home .pn-p + .pn-p { margin-top: 16px; }
#chalet-heuvelrug-home .pn-mosaic { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: 200px 200px; gap: 12px; }
#chalet-heuvelrug-home .pn-mosaic img { width: 100%; height: 100%; object-fit: cover; border-radius: 18px; }
#chalet-heuvelrug-home .pn-mosaic--1 { grid-template-rows: 380px; }
#chalet-heuvelrug-home .pn-mosaic--1 img { grid-column: 1 / 7; }
#chalet-heuvelrug-home .pn-mosaic--2 img:nth-child(1) { grid-column: 1 / 5; grid-row: 1 / 3; }
#chalet-heuvelrug-home .pn-mosaic--2 img:nth-child(2) { grid-column: 5 / 7; grid-row: 1 / 3; }
#chalet-heuvelrug-home .pn-mosaic--3 img:nth-child(1) { grid-column: 1 / 5; grid-row: 1 / 3; }
#chalet-heuvelrug-home .pn-mosaic--3 img:nth-child(2), #chalet-heuvelrug-home .pn-mosaic--3 img:nth-child(3) { grid-column: 5 / 7; }
#chalet-heuvelrug-home .pn-more { max-width: 1180px; margin: 0 auto; padding: 0 40px 30px; }
#chalet-heuvelrug-home .pn-strip { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 6px; }
#chalet-heuvelrug-home .pn-strip::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .pn-strip > div { flex: 0 0 calc((100% - 24px) / 3); aspect-ratio: 4 / 3; scroll-snap-align: start; }
#chalet-heuvelrug-home .pn-strip img { width: 100%; height: 100%; object-fit: cover; border-radius: 18px; }

#chalet-heuvelrug-home .pn-amen { background: var(--deep); color: #f3ead9; padding: 90px 40px; margin-top: 40px; }
#chalet-heuvelrug-home .pn-amen__in { max-width: 1180px; margin: 0 auto; }
#chalet-heuvelrug-home .pn-amen h2 { font-size: clamp(48px, 5vw, 74px); text-align: center; margin-bottom: 46px; color: #fff; }
#chalet-heuvelrug-home .pn-grid6 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(243, 234, 217, .22); border-left: 1px solid rgba(243, 234, 217, .22); }
#chalet-heuvelrug-home .pn-grid6 > div { padding: 30px 26px; border-right: 1px solid rgba(243, 234, 217, .22); border-bottom: 1px solid rgba(243, 234, 217, .22); display: flex; align-items: center; gap: 18px; font-size: 18px; min-width: 0; }
#chalet-heuvelrug-home .pn-grid6 .pn-ic { font-size: 32px; color: var(--gold); }

#chalet-heuvelrug-home .pn-rev { max-width: 1180px; margin: 0 auto; padding: 110px 40px; }
#chalet-heuvelrug-home .pn-rev__list { display: grid; gap: 40px; align-items: start; }
#chalet-heuvelrug-home .pn-rev--2 .pn-rev__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#chalet-heuvelrug-home .pn-rev--3 .pn-rev__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
#chalet-heuvelrug-home .pn-review { text-align: center; max-width: 980px; margin: 0 auto; }
#chalet-heuvelrug-home .pn-score { display: inline-flex; align-items: center; justify-content: center; min-width: 112px; height: 112px; padding: 0 14px; border-radius: 56px; background: var(--gold); color: var(--deep); font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 46px; margin-bottom: 30px; box-shadow: 0 0 0 8px rgba(224, 179, 106, .25); }
#chalet-heuvelrug-home .pn-score.is-long { font-size: 34px; }
#chalet-heuvelrug-home .pn-review blockquote { font-size: clamp(26px, 3.2vw, 40px); line-height: 1.35; color: var(--deep); font-weight: 400; letter-spacing: -.01em; }
#chalet-heuvelrug-home .pn-rev--2 .pn-review blockquote { font-size: 26px; }
#chalet-heuvelrug-home .pn-rev--3 .pn-review blockquote { font-size: 20px; line-height: 1.45; }
#chalet-heuvelrug-home .pn-rev--2 .pn-score, #chalet-heuvelrug-home .pn-rev--3 .pn-score { min-width: 84px; height: 84px; font-size: 36px; margin-bottom: 20px; }
#chalet-heuvelrug-home .pn-src { margin-top: 22px; font-size: 13px; color: #5c6a62; letter-spacing: .06em; text-transform: uppercase; }
#chalet-heuvelrug-home .pn-note { margin-top: 8px; font-size: 12.5px; color: #7a867e; font-style: italic; }

#chalet-heuvelrug-home .pn-loc { position: relative; isolation: isolate; min-height: 560px; background: var(--deep); display: flex; align-items: center; padding: 60px 40px; overflow: hidden; }
#chalet-heuvelrug-home .pn-loc__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
#chalet-heuvelrug-home .pn-loc::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(10, 20, 15, .7), rgba(10, 20, 15, 0) 70%); }
#chalet-heuvelrug-home .pn-loc__card { max-width: 520px; width: 100%; margin-left: max(0px, calc((100% - 1100px) / 2)); background: rgba(248, 244, 236, .97); border-radius: 22px; padding: 38px 36px; }
#chalet-heuvelrug-home .pn-loc--noimg { min-height: 0; padding: 90px 40px; justify-content: center; }
#chalet-heuvelrug-home .pn-loc--noimg::before { display: none; }
#chalet-heuvelrug-home .pn-loc--noimg .pn-loc__card { margin: 0; }
#chalet-heuvelrug-home .pn-loc__card h2 { font-size: 60px; color: var(--deep); }
#chalet-heuvelrug-home .pn-loc__card p { margin: 14px 0 0; color: #3d4a43; }
#chalet-heuvelrug-home .pn-loc__card ul { margin-top: 22px; }
#chalet-heuvelrug-home .pn-loc__card li { list-style: none; display: flex; gap: 14px; align-items: center; padding: 11px 0; border-top: 1px solid #e6dfce; }
#chalet-heuvelrug-home .pn-loc__card li .pn-ic { font-size: 22px; color: #9a6b2c; }

#chalet-heuvelrug-home .pn-host { max-width: 1000px; margin: 0 auto; padding: 100px 40px 30px; }
#chalet-heuvelrug-home .pn-host__in { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 36px; align-items: center; }
#chalet-heuvelrug-home .pn-hostimg { width: 150px; height: 150px; border-radius: 50%; object-fit: cover; border: 4px solid var(--gold); display: block; }
#chalet-heuvelrug-home .pn-hostimg--logo { display: flex; align-items: center; justify-content: center; background: var(--deep); }
#chalet-heuvelrug-home .pn-hostimg--logo img { width: 56%; height: auto; }
#chalet-heuvelrug-home .pn-host h2 { font-size: 54px; color: var(--deep); margin-bottom: 10px; }
#chalet-heuvelrug-home .pn-host__in p { font-size: 20px; line-height: 1.7; color: #3d4a43; }
#chalet-heuvelrug-home .pn-sign { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 44px; color: var(--deep); margin-top: 8px; }
#chalet-heuvelrug-home .pn-hostbtns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
#chalet-heuvelrug-home .pn-hostbtns .pn-btn { min-height: 46px; padding: 0 22px; }
#chalet-heuvelrug-home .pn-hostbtns .pn-btn--ghost { border-color: var(--deep); color: var(--deep); background: transparent; }
#chalet-heuvelrug-home .pn-tips { margin-top: 70px; }
#chalet-heuvelrug-home .pn-tips h2 { font-size: 44px; color: var(--deep); margin-bottom: 20px; }
#chalet-heuvelrug-home .pn-tips ul { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
#chalet-heuvelrug-home .pn-tips li { display: flex; gap: 14px; background: #fff; border-radius: 18px; padding: 20px 22px; box-shadow: 0 10px 30px -18px rgba(20, 40, 30, .4); }
#chalet-heuvelrug-home .pn-tips li .pn-ic { font-size: 26px; color: #9a6b2c; margin-top: 2px; }
#chalet-heuvelrug-home .pn-tips h3 { font-size: 16px; color: var(--deep); margin-bottom: 4px; }
#chalet-heuvelrug-home .pn-tips p { font-size: 14.5px; color: #4a554e; line-height: 1.55; }

#chalet-heuvelrug-home .pn-close { margin-top: 70px; background: linear-gradient(180deg, var(--deep), var(--deep2)); color: #fff; text-align: center; padding: 96px 40px; }
#chalet-heuvelrug-home .pn-close h2 { font-size: clamp(54px, 7vw, 100px); color: #fff; }
#chalet-heuvelrug-home .pn-close p { opacity: .85; margin: 12px 0 30px; }
#chalet-heuvelrug-home .pn-close .pn-btns { justify-content: center; }
#chalet-heuvelrug-home .pn-close .pn-disc { text-align: center; }

#chalet-heuvelrug-home .pn-stick { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 50; gap: 8px; padding: 8px; background: rgba(20, 39, 30, .92); background: color-mix(in srgb, var(--deep2) 94%, transparent); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-radius: 99px; box-shadow: 0 14px 34px -10px rgba(0, 0, 0, .5); transition: opacity .2s, transform .2s; }
#chalet-heuvelrug-home .pn-stick a { flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 46px; padding: 0 10px; border-radius: 99px; font-weight: 700; font-size: 14px; line-height: 1.15; color: #fff; border: 1.5px solid rgba(255, 255, 255, .55); }
#chalet-heuvelrug-home .pn-stick a.is-main { flex: 1.5; background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); }

@media (max-width: 820px) {
  #chalet-heuvelrug-home .pn-top { padding: 14px 18px; align-items: flex-start; }
  #chalet-heuvelrug-home .pn-top__l { flex-direction: column; align-items: flex-start; gap: 8px; }
  #chalet-heuvelrug-home .pn-logo img { height: 36px; }
  #chalet-heuvelrug-home .pn-crumbs { font-size: 12px; }
  #chalet-heuvelrug-home .pn-hero { min-height: 88vh; }
  #chalet-heuvelrug-home .pn-hero__in { padding: 130px 20px 84px; }
  #chalet-heuvelrug-home .pn-wrap h1 { font-size: 84px; }
  #chalet-heuvelrug-home .pn-btns { gap: 8px; }
  #chalet-heuvelrug-home .pn-btn { flex: 1; min-height: 48px; padding: 0 12px; font-size: 14px; }
  #chalet-heuvelrug-home .pn-btn--main { flex: 1 1 100%; }
  #chalet-heuvelrug-home .pn-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: -44px 16px 0; }
  #chalet-heuvelrug-home .pn-fact { padding: 18px 14px; gap: 10px; }
  #chalet-heuvelrug-home .pn-fact:nth-child(even) { border-right: 0; }
  #chalet-heuvelrug-home .pn-fact:nth-child(n+3) { border-top: 1px solid #ece5d6; }
  #chalet-heuvelrug-home .pn-fact .pn-ic { font-size: 26px; }
  #chalet-heuvelrug-home .pn-fact b { font-size: 34px; }
  #chalet-heuvelrug-home .pn-story { grid-template-columns: minmax(0, 1fr); gap: 34px; padding: 70px 20px 30px; }
  #chalet-heuvelrug-home .pn-p { font-size: 17px; }
  #chalet-heuvelrug-home .pn-mosaic { grid-template-rows: 150px 150px; }
  #chalet-heuvelrug-home .pn-mosaic--1 { grid-template-rows: 240px; }
  #chalet-heuvelrug-home .pn-more { padding: 0 20px 20px; }
  #chalet-heuvelrug-home .pn-strip > div { flex-basis: 78%; }
  #chalet-heuvelrug-home .pn-amen { padding: 64px 20px; }
  #chalet-heuvelrug-home .pn-grid6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #chalet-heuvelrug-home .pn-grid6 > div { padding: 22px 14px; font-size: 15px; gap: 12px; flex-direction: column; align-items: flex-start; }
  #chalet-heuvelrug-home .pn-rev { padding: 70px 22px; }
  #chalet-heuvelrug-home .pn-rev--2 .pn-rev__list, #chalet-heuvelrug-home .pn-rev--3 .pn-rev__list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 14px; margin: 0 -22px; padding: 0 22px 6px; }
  #chalet-heuvelrug-home .pn-rev--2 .pn-review, #chalet-heuvelrug-home .pn-rev--3 .pn-review { flex: 0 0 84%; scroll-snap-align: center; margin: 0; }
  #chalet-heuvelrug-home .pn-rev__list::-webkit-scrollbar { display: none; }
  #chalet-heuvelrug-home .pn-score { min-width: 92px; height: 92px; font-size: 38px; }
  #chalet-heuvelrug-home .pn-loc { display: block; padding: 0; min-height: 0; background: none; overflow: visible; }
  #chalet-heuvelrug-home .pn-loc::before { display: none; }
  #chalet-heuvelrug-home .pn-loc__img { position: static; height: 260px; z-index: auto; }
  #chalet-heuvelrug-home .pn-loc__card { margin: 0; max-width: none; border-radius: 0; padding: 40px 22px; }
  #chalet-heuvelrug-home .pn-loc--noimg { background: var(--deep); padding: 0; }
  #chalet-heuvelrug-home .pn-loc--noimg .pn-loc__card { background: transparent; color: #f3ead9; }
  #chalet-heuvelrug-home .pn-host { padding: 70px 22px 20px; }
  #chalet-heuvelrug-home .pn-host__in { grid-template-columns: minmax(0, 1fr); text-align: center; justify-items: center; gap: 20px; }
  #chalet-heuvelrug-home .pn-hostimg { width: 120px; height: 120px; }
  #chalet-heuvelrug-home .pn-host__in p { font-size: 17px; }
  #chalet-heuvelrug-home .pn-hostbtns { justify-content: center; }
  #chalet-heuvelrug-home .pn-tips { margin-top: 50px; }
  #chalet-heuvelrug-home .pn-tips ul { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .pn-close { padding: 70px 22px; margin-top: 50px; }
  #chalet-heuvelrug-home.ch-lay .pn-stick { display: flex; }
  #chalet-heuvelrug-home.ch-lay--panorama .ch-footer { padding-bottom: 96px; }
}
@media (max-width: 600px) { #chalet-heuvelrug-home .pn-wrap .lay-crumb-cur { display: none; } }

/* ======================================================================
   TIJDSCHRIFT
   ====================================================================== */
#chalet-heuvelrug-home.ch-lay--tijdschrift { background-color: #f3ecdc; background-image: radial-gradient(rgba(28, 26, 23, .06) 1px, transparent 1px); background-size: 14px 14px; color: #1c1a17; }
#chalet-heuvelrug-home .tj-wrap { font-family: 'Work Sans', system-ui, sans-serif; line-height: 1.6; --ink: #1c1a17; --card: #fffaf0; --mut: #6b655a; -webkit-font-smoothing: antialiased; }
#chalet-heuvelrug-home .tj-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 40px; border-bottom: 2px solid var(--ink); background: #f3ecdc; }
#chalet-heuvelrug-home .tj-bar__l { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
#chalet-heuvelrug-home .tj-logo img { height: 40px; width: auto; }
#chalet-heuvelrug-home .tj-crumbs { font-size: 13px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-weight: 700; letter-spacing: .03em; }
#chalet-heuvelrug-home .tj-crumbs a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .tj-stamp { font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; border: 2px solid var(--ink); padding: 4px 10px; transform: rotate(-3deg); background: var(--hl); white-space: nowrap; }
#chalet-heuvelrug-home .tj-page { max-width: 1240px; margin: 0 auto; padding: 0 40px; }
#chalet-heuvelrug-home .tj-open { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 56px; padding: 64px 0 40px; align-items: end; }
#chalet-heuvelrug-home .tj-open--noimg { grid-template-columns: minmax(0, 1fr); }
#chalet-heuvelrug-home .tj-no { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 28px; color: var(--pop); display: flex; align-items: center; gap: 12px; line-height: 1.1; }
#chalet-heuvelrug-home .tj-no::after { content: ""; height: 2px; width: 70px; background: var(--pop); }
#chalet-heuvelrug-home .tj-wrap h1 { font-size: clamp(84px, 11vw, 168px); margin: 10px 0 18px; overflow-wrap: anywhere; }
#chalet-heuvelrug-home .tj-wrap h1 em { font-style: normal; background: linear-gradient(transparent 62%, var(--hl) 62%, var(--hl) 92%, transparent 92%); }
#chalet-heuvelrug-home .tj-lead { font-size: 22px; line-height: 1.55; max-width: 560px; color: #3a352c; }
#chalet-heuvelrug-home .tj-cover { position: relative; padding-right: 10px; }
#chalet-heuvelrug-home .tj-cover img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border: 3px solid var(--ink); border-radius: 6px; box-shadow: 10px 10px 0 var(--ink); }
#chalet-heuvelrug-home .tj-cover figcaption { position: absolute; left: -14px; bottom: 26px; background: var(--card); border: 2px solid var(--ink); padding: 6px 14px; font-weight: 700; font-size: 13px; transform: rotate(-2deg); max-width: 80%; }
#chalet-heuvelrug-home .tj-spec { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); border-top: 3px solid var(--ink); border-bottom: 3px solid var(--ink); margin-top: 26px; background: var(--card); }
#chalet-heuvelrug-home .tj-fact { padding: 20px 22px; border-right: 2px solid var(--ink); min-width: 0; }
#chalet-heuvelrug-home .tj-fact:last-child { border-right: 0; }
#chalet-heuvelrug-home .tj-fact b { display: block; font-size: 58px; line-height: 1; }
#chalet-heuvelrug-home .tj-fact b.is-long { font-size: 40px; }
#chalet-heuvelrug-home .tj-fact b.is-xlong { font-size: 30px; line-height: 1.05; }
#chalet-heuvelrug-home .tj-fact span { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .tj-cols { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 64px; padding: 70px 0 40px; align-items: start; }
#chalet-heuvelrug-home .tj-cols--nobook { grid-template-columns: minmax(0, 1fr); }
#chalet-heuvelrug-home .tj-main { min-width: 0; }
#chalet-heuvelrug-home .tj-sec { margin-bottom: 84px; }
#chalet-heuvelrug-home .tj-sec h2 { font-size: clamp(48px, 5vw, 72px); margin: 6px 0 20px; }
#chalet-heuvelrug-home .tj-p { font-size: 18.5px; line-height: 1.75; color: #3a352c; max-width: 640px; margin-bottom: 14px; }
#chalet-heuvelrug-home .tj-p.is-first::first-letter { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 84px; float: left; line-height: .78; margin: 6px 12px 0 0; color: var(--pop); }
#chalet-heuvelrug-home .tj-collage { display: grid; gap: 22px; margin-top: 36px; max-width: 640px; }
#chalet-heuvelrug-home .tj-collage--1 { grid-template-columns: minmax(0, 1fr); }
#chalet-heuvelrug-home .tj-collage--2 { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); }
#chalet-heuvelrug-home .tj-collage img { width: 100%; height: 100%; object-fit: cover; border: 3px solid var(--ink); border-radius: 6px; box-shadow: 6px 6px 0 var(--ink); }
#chalet-heuvelrug-home .tj-collage figure:nth-child(1) { aspect-ratio: 4 / 3; transform: rotate(-1.2deg); }
#chalet-heuvelrug-home .tj-collage--1 figure:nth-child(1) { aspect-ratio: 16 / 10; transform: rotate(-.8deg); }
#chalet-heuvelrug-home .tj-collage figure:nth-child(2) { aspect-ratio: 3 / 4; transform: rotate(1.6deg); margin-top: 30px; }
#chalet-heuvelrug-home .tj-collage figcaption { font-size: 12.5px; font-weight: 700; margin-top: 10px; color: var(--mut); }
#chalet-heuvelrug-home .tj-strip { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-top: 34px; padding: 4px 8px 12px 4px; max-width: 700px; }
#chalet-heuvelrug-home .tj-strip::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .tj-strip > div { flex: 0 0 46%; aspect-ratio: 4 / 3; scroll-snap-align: start; }
#chalet-heuvelrug-home .tj-strip img { width: 100%; height: 100%; object-fit: cover; border: 3px solid var(--ink); border-radius: 6px; box-shadow: 5px 5px 0 var(--ink); }
#chalet-heuvelrug-home .tj-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; max-width: 640px; list-style: none; }
#chalet-heuvelrug-home .tj-list li { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 2px dotted rgba(28, 26, 23, .35); font-size: 17px; font-weight: 700; min-width: 0; }
#chalet-heuvelrug-home .tj-list .tj-ic { font-size: 22px; color: var(--grn); }
#chalet-heuvelrug-home .tj-reviews { display: grid; gap: 52px; max-width: 640px; margin-top: 48px; }
#chalet-heuvelrug-home .tj-review { position: relative; background: var(--hl); border: 3px solid var(--ink); border-radius: 6px; padding: 58px 34px 28px; box-shadow: 8px 8px 0 var(--ink); }
#chalet-heuvelrug-home .tj-score { position: absolute; top: -26px; right: 26px; min-width: 84px; height: 84px; padding: 0 12px; border-radius: 42px; background: var(--pop); color: #fff; border: 3px solid var(--ink); display: flex; align-items: center; justify-content: center; font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 36px; transform: rotate(8deg); }
#chalet-heuvelrug-home .tj-score.is-long { font-size: 28px; }
#chalet-heuvelrug-home .tj-review blockquote { font-size: 23px; line-height: 1.4; font-weight: 400; padding-right: 30px; }
#chalet-heuvelrug-home .tj-src { margin-top: 16px; font-weight: 700; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
#chalet-heuvelrug-home .tj-note { margin-top: 6px; font-size: 12.5px; font-style: italic; color: #4a5030; }
#chalet-heuvelrug-home .tj-where { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; max-width: 640px; margin-top: 22px; }
#chalet-heuvelrug-home .tj-where > div { background: var(--card); border: 2px solid var(--ink); border-radius: 6px; padding: 16px 18px; display: flex; gap: 14px; align-items: center; font-weight: 700; font-size: 15px; min-width: 0; }
#chalet-heuvelrug-home .tj-where .tj-ic { font-size: 26px; color: var(--pop); }
#chalet-heuvelrug-home .tj-locimg { margin-top: 26px; max-width: 640px; }
#chalet-heuvelrug-home .tj-locimg img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 3px solid var(--ink); border-radius: 6px; box-shadow: 8px 8px 0 var(--ink); }
#chalet-heuvelrug-home .tj-hostrow { display: flex; gap: 22px; align-items: center; max-width: 640px; }
#chalet-heuvelrug-home .tj-hostimg { width: 110px; height: 110px; flex: none; border-radius: 50%; object-fit: cover; border: 3px solid var(--ink); display: block; }
#chalet-heuvelrug-home .tj-hostimg--logo { display: flex; align-items: center; justify-content: center; background: var(--deep); }
#chalet-heuvelrug-home .tj-hostimg--logo img { width: 56%; height: auto; }
#chalet-heuvelrug-home .tj-sign { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 40px; color: var(--grn); line-height: 1.1; }
#chalet-heuvelrug-home .tj-hostbtns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
#chalet-heuvelrug-home .tj-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px; border: 2px solid var(--ink); border-radius: 6px; font-weight: 700; font-size: 14px; background: #fff; }
#chalet-heuvelrug-home .tj-btn--main { background: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .tj-btn .tj-ic { font-size: 17px; }
#chalet-heuvelrug-home .tj-tips { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; max-width: 640px; }
#chalet-heuvelrug-home .tj-tips li { display: flex; gap: 12px; background: var(--card); border: 2px solid var(--ink); border-radius: 6px; padding: 16px 18px; }
#chalet-heuvelrug-home .tj-tips .tj-ic { font-size: 24px; color: var(--pop); margin-top: 2px; }
#chalet-heuvelrug-home .tj-tips h3 { font-size: 15.5px; margin-bottom: 4px; }
#chalet-heuvelrug-home .tj-tips p { font-size: 14px; line-height: 1.5; color: #4a463c; }

#chalet-heuvelrug-home .tj-book { position: sticky; top: 20px; background: var(--card); border: 3px solid var(--ink); border-radius: 8px; box-shadow: 10px 10px 0 var(--ink); padding: 26px 24px; }
#chalet-heuvelrug-home .tj-book h2 { font-size: 44px; line-height: 1; }
#chalet-heuvelrug-home .tj-book p { font-size: 14px; color: var(--mut); margin: 6px 0 18px; }
#chalet-heuvelrug-home .tj-pick { display: flex; align-items: center; gap: 12px; padding: 14px 16px; margin-bottom: 10px; border: 2px solid var(--ink); border-radius: 6px; font-weight: 700; background: #fff; transition: transform .15s, box-shadow .15s; }
#chalet-heuvelrug-home .tj-pick:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--ink); }
#chalet-heuvelrug-home .tj-pick i { width: 12px; height: 12px; border-radius: 50%; background: var(--pc, #c96a37); flex: none; }
#chalet-heuvelrug-home .tj-pick span { flex: 1; min-width: 0; }
#chalet-heuvelrug-home .tj-pick .tj-ic { font-size: 20px; }
#chalet-heuvelrug-home .tj-pick--main { background: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .tj-pick--main i { background: #fff; }
#chalet-heuvelrug-home .tj-book small { display: block; font-size: 12px; line-height: 1.5; color: var(--mut); margin-top: 12px; }
#chalet-heuvelrug-home .tj-stick { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; gap: 10px; padding: 10px 12px; background: #f3ecdc; border-top: 3px solid var(--ink); transition: opacity .2s, transform .2s; }
#chalet-heuvelrug-home .tj-stick a { flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 46px; padding: 0 8px; border: 2px solid var(--ink); border-radius: 6px; font-weight: 700; font-size: 14px; line-height: 1.15; background: #fff; }
#chalet-heuvelrug-home .tj-stick a.is-main { flex: 1.5; background: var(--pc, #c96a37); color: #fff; }

/* de veelgestelde vragen passen zich aan het papier aan */
#chalet-heuvelrug-home.ch-lay--tijdschrift .ch-faq { background: transparent; border-top: 3px solid #1c1a17; }
#chalet-heuvelrug-home.ch-lay--tijdschrift .ch-faq-item { background: #fffaf0; border: 2px solid #1c1a17; border-radius: 6px; }
#chalet-heuvelrug-home.ch-lay--tijdschrift .ch-faq-item__q { color: #1c1a17; }

@media (max-width: 900px) {
  #chalet-heuvelrug-home .tj-bar { padding: 12px 18px; }
  #chalet-heuvelrug-home .tj-bar__l { gap: 6px 16px; }
  #chalet-heuvelrug-home .tj-logo img { height: 32px; }
  #chalet-heuvelrug-home .tj-page { padding: 0 20px; }
  #chalet-heuvelrug-home .tj-open { grid-template-columns: minmax(0, 1fr); gap: 34px; padding: 34px 0 26px; }
  #chalet-heuvelrug-home .tj-wrap h1 { font-size: 84px; }
  #chalet-heuvelrug-home .tj-lead { font-size: 18px; }
  #chalet-heuvelrug-home .tj-cover img { aspect-ratio: 1 / 1; box-shadow: 7px 7px 0 var(--ink); }
  #chalet-heuvelrug-home .tj-cover figcaption { left: 8px; }
  #chalet-heuvelrug-home .tj-spec { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #chalet-heuvelrug-home .tj-fact { padding: 14px; }
  #chalet-heuvelrug-home .tj-fact:nth-child(even) { border-right: 0; }
  #chalet-heuvelrug-home .tj-fact:nth-child(n+3) { border-top: 2px solid var(--ink); }
  #chalet-heuvelrug-home .tj-fact b { font-size: 46px; }
  #chalet-heuvelrug-home .tj-cols { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 40px 0 10px; }
  #chalet-heuvelrug-home .tj-book { position: static; order: -1; box-shadow: 7px 7px 0 var(--ink); margin-bottom: 36px; }
  #chalet-heuvelrug-home .tj-sec { margin-bottom: 60px; }
  #chalet-heuvelrug-home .tj-p { font-size: 17px; }
  #chalet-heuvelrug-home .tj-collage--2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
  #chalet-heuvelrug-home .tj-collage--2 figure:nth-child(1), #chalet-heuvelrug-home .tj-collage--2 figure:nth-child(2) { aspect-ratio: 1 / 1; }
  #chalet-heuvelrug-home .tj-collage--2 figure:nth-child(2) { margin-top: 18px; }
  #chalet-heuvelrug-home .tj-strip > div { flex-basis: 78%; }
  #chalet-heuvelrug-home .tj-list, #chalet-heuvelrug-home .tj-where, #chalet-heuvelrug-home .tj-tips { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .tj-review { padding: 46px 22px 24px; }
  #chalet-heuvelrug-home .tj-review blockquote { font-size: 20px; padding-right: 0; }
  #chalet-heuvelrug-home .tj-score { top: -30px; right: 16px; min-width: 70px; height: 70px; font-size: 30px; }
  #chalet-heuvelrug-home .tj-hostrow { flex-direction: column; text-align: center; }
  #chalet-heuvelrug-home .tj-hostbtns { justify-content: center; }
  #chalet-heuvelrug-home.ch-lay .tj-stick { display: flex; }
  #chalet-heuvelrug-home.ch-lay--tijdschrift .ch-footer { padding-bottom: 96px; }
}
@media (max-width: 600px) { #chalet-heuvelrug-home .tj-wrap .lay-crumb-cur { display: none; } }

/* ======================================================================
   HOOFDSTUKKEN
   ====================================================================== */
#chalet-heuvelrug-home.ch-lay--hoofdstukken { background: var(--bg); color: #f3ead9; }
#chalet-heuvelrug-home .hf-wrap { position: relative; --line: rgba(243, 234, 217, .16); --cream: #f3ead9; --mut: rgba(243, 234, 217, .7); font-family: 'Work Sans', system-ui, sans-serif; line-height: 1.6; -webkit-font-smoothing: antialiased; }
#chalet-heuvelrug-home .hf-wrap::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(900px 500px at 85% -5%, rgba(var(--glow), .2), transparent 60%), radial-gradient(700px 500px at -5% 40%, rgba(var(--glow), .14), transparent 60%); }
#chalet-heuvelrug-home .hf-wrap > * { position: relative; }
#chalet-heuvelrug-home .hf-mast { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 40px 0; font-size: 13px; color: var(--mut); }
#chalet-heuvelrug-home .hf-mast__l { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
#chalet-heuvelrug-home .hf-logo img { height: 38px; width: auto; }
#chalet-heuvelrug-home .hf-crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
#chalet-heuvelrug-home .hf-crumbs a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .hf-chip { border: 1px solid var(--gold); color: var(--gold); border-radius: 99px; padding: 4px 12px; font-size: 11px; letter-spacing: .14em; font-weight: 700; text-transform: uppercase; white-space: nowrap; }
#chalet-heuvelrug-home .hf-pill { position: sticky; top: 14px; z-index: 40; display: flex; gap: 4px; width: max-content; max-width: calc(100% - 24px); margin: 14px auto 0; padding: 6px; background: rgba(24, 42, 33, .82); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid var(--line); border-radius: 99px; overflow-x: auto; scrollbar-width: none; }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .hf-pill { background: rgba(var(--glow), .0); background-color: color-mix(in srgb, var(--bg2) 84%, transparent); }
#chalet-heuvelrug-home .hf-pill::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .hf-pill a { padding: 8px 16px; border-radius: 99px; font-size: 13.5px; font-weight: 700; white-space: nowrap; color: var(--mut); transition: background .2s, color .2s; }
#chalet-heuvelrug-home .hf-pill a.is-on { background: var(--cream); color: #16261e; }
#chalet-heuvelrug-home .hf-pill a[data-book] { background: #c96a37; color: #fff; }
#chalet-heuvelrug-home .hf-hero { max-width: 1200px; margin: 0 auto; padding: 40px 40px 90px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 60px; align-items: center; }
#chalet-heuvelrug-home .hf-hero--noimg { grid-template-columns: minmax(0, 1fr); padding-top: 70px; }
#chalet-heuvelrug-home .hf-k { color: var(--gold); letter-spacing: .2em; font-size: 12.5px; font-weight: 700; text-transform: uppercase; }
#chalet-heuvelrug-home .hf-wrap h1 { font-size: clamp(84px, 10.5vw, 150px); margin: 12px 0 20px; color: #fff; overflow-wrap: anywhere; }
#chalet-heuvelrug-home .hf-tag { font-size: 20px; line-height: 1.65; color: var(--mut); max-width: 520px; }
#chalet-heuvelrug-home .hf-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
#chalet-heuvelrug-home .hf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 24px; border-radius: 99px; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center; border: 1.5px solid var(--line); background: rgba(255, 255, 255, .05); color: var(--cream); transition: transform .15s; }
#chalet-heuvelrug-home .hf-btn:hover { transform: translateY(-2px); }
#chalet-heuvelrug-home .hf-btn--main { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .hf-btn .hf-ic { font-size: 17px; }
#chalet-heuvelrug-home .hf-disc { font-size: 12.5px; color: var(--mut); margin-top: 14px; }
#chalet-heuvelrug-home .hf-archwrap { position: relative; max-width: 440px; justify-self: center; width: 100%; }
#chalet-heuvelrug-home .hf-arch { position: relative; aspect-ratio: 3 / 4.1; border-radius: 999px 999px 24px 24px; overflow: hidden; border: 1px solid var(--line); box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .7); }
#chalet-heuvelrug-home .hf-arch img { width: 100%; height: 100%; object-fit: cover; }
#chalet-heuvelrug-home .hf-arch::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, rgba(0, 0, 0, .35)); }
#chalet-heuvelrug-home .hf-halo { position: absolute; inset: -14px; border-radius: 999px 999px 36px 36px; border: 1px solid rgba(232, 180, 95, .45); pointer-events: none; }
#chalet-heuvelrug-home .hf-nums { max-width: 1100px; margin: 0 auto; padding: 0 40px; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
#chalet-heuvelrug-home .hf-fact { padding: 10px 24px; border-left: 1px solid var(--line); min-width: 0; }
#chalet-heuvelrug-home .hf-fact:first-child { border-left: 0; padding-left: 0; }
#chalet-heuvelrug-home .hf-fact b { display: block; font-size: 84px; line-height: 1; color: var(--gold); }
#chalet-heuvelrug-home .hf-fact b.is-long { font-size: 52px; }
#chalet-heuvelrug-home .hf-fact b.is-xlong { font-size: 38px; line-height: 1.05; }
#chalet-heuvelrug-home .hf-fact span { font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .hf-chap { max-width: 1100px; margin: 0 auto; padding: 130px 40px 0; display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 30px; }
#chalet-heuvelrug-home .hf-rom { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 120px; line-height: .8; color: transparent; -webkit-text-stroke: 1.5px var(--gold); }
#chalet-heuvelrug-home .hf-chap h2 { font-size: clamp(54px, 6vw, 84px); color: #fff; }
#chalet-heuvelrug-home .hf-txt { font-size: 19px; line-height: 1.8; color: var(--mut); max-width: 620px; margin-top: 18px; }
#chalet-heuvelrug-home .hf-trio { display: grid; gap: 16px; margin-top: 40px; }
#chalet-heuvelrug-home .hf-trio--1 { grid-template-columns: minmax(0, 360px); }
#chalet-heuvelrug-home .hf-trio--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 640px; }
#chalet-heuvelrug-home .hf-trio--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#chalet-heuvelrug-home .hf-arch2 { aspect-ratio: 3 / 4; border-radius: 999px 999px 18px 18px; overflow: hidden; border: 1px solid var(--line); }
#chalet-heuvelrug-home .hf-trio .hf-arch2:nth-child(2) { margin-top: 40px; }
#chalet-heuvelrug-home .hf-arch2 img { width: 100%; height: 100%; object-fit: cover; }
#chalet-heuvelrug-home .hf-strip { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin-top: 26px; padding-bottom: 6px; }
#chalet-heuvelrug-home .hf-strip::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .hf-strip > div { flex: 0 0 calc((100% - 28px) / 3); aspect-ratio: 4 / 3; scroll-snap-align: start; border-radius: 20px; overflow: hidden; border: 1px solid var(--line); }
#chalet-heuvelrug-home .hf-strip img { width: 100%; height: 100%; object-fit: cover; }
#chalet-heuvelrug-home .hf-chips { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
#chalet-heuvelrug-home .hf-chips > span { display: inline-flex; align-items: center; gap: 10px; padding: 13px 20px; border: 1px solid var(--line); border-radius: 99px; background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .02)); font-size: 16px; }
#chalet-heuvelrug-home .hf-chips .hf-ic { font-size: 21px; color: var(--gold); }
#chalet-heuvelrug-home .hf-reviews { display: grid; gap: 18px; margin-top: 34px; }
#chalet-heuvelrug-home .hf-reviews--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#chalet-heuvelrug-home .hf-reviews--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#chalet-heuvelrug-home .hf-review { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 16px; align-items: center; align-content: start; padding: 36px 36px 30px; border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(160deg, rgba(232, 180, 95, .14), rgba(255, 255, 255, .02)); }
#chalet-heuvelrug-home .hf-review blockquote { grid-column: 1 / -1; order: 1; font-size: clamp(22px, 2.4vw, 32px); line-height: 1.4; color: #fff; font-weight: 400; }
#chalet-heuvelrug-home .hf-reviews--2 blockquote { font-size: 22px; }
#chalet-heuvelrug-home .hf-reviews--3 blockquote { font-size: 18px; line-height: 1.5; }
#chalet-heuvelrug-home .hf-score { order: 2; margin-top: 22px; font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 44px; color: var(--gold); line-height: 1; }
#chalet-heuvelrug-home .hf-src { order: 3; margin-top: 22px; color: var(--mut); font-size: 14px; }
#chalet-heuvelrug-home .hf-score + .hf-src { }
#chalet-heuvelrug-home .hf-note { order: 4; grid-column: 1 / -1; margin-top: 10px; font-size: 12.5px; font-style: italic; color: var(--mut); }
#chalet-heuvelrug-home .hf-facts4 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 30px; max-width: 640px; }
#chalet-heuvelrug-home .hf-facts4 > div { display: flex; gap: 14px; align-items: center; padding: 18px 20px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255, 255, 255, .03); min-width: 0; }
#chalet-heuvelrug-home .hf-facts4 .hf-ic { font-size: 26px; color: var(--gold); }
#chalet-heuvelrug-home .hf-locimg { margin-top: 30px; border-radius: 26px; overflow: hidden; border: 1px solid var(--line); }
#chalet-heuvelrug-home .hf-locimg img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
#chalet-heuvelrug-home .hf-host { display: flex; gap: 26px; align-items: center; margin-top: 26px; }
#chalet-heuvelrug-home .hf-hostimg { width: 120px; height: 120px; flex: none; border-radius: 50%; object-fit: cover; border: 2px solid var(--gold); padding: 4px; display: block; }
#chalet-heuvelrug-home .hf-hostimg--logo { display: flex; align-items: center; justify-content: center; background: var(--bg2); }
#chalet-heuvelrug-home .hf-hostimg--logo img { width: 56%; height: auto; }
#chalet-heuvelrug-home .hf-host .hf-txt { margin-top: 0; }
#chalet-heuvelrug-home .hf-sign { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 46px; color: var(--gold); line-height: 1.1; margin-top: 6px; }
#chalet-heuvelrug-home .hf-hostbtns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
#chalet-heuvelrug-home .hf-hostbtns .hf-btn { min-height: 44px; padding: 0 20px; font-size: 14px; }
#chalet-heuvelrug-home .hf-tips { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 34px; max-width: 760px; }
#chalet-heuvelrug-home .hf-tips li { display: flex; gap: 14px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255, 255, 255, .03); }
#chalet-heuvelrug-home .hf-tips .hf-ic { font-size: 24px; color: var(--gold); margin-top: 2px; }
#chalet-heuvelrug-home .hf-tips h3 { font-size: 16px; color: #fff; margin-bottom: 4px; }
#chalet-heuvelrug-home .hf-tips p { font-size: 14.5px; line-height: 1.55; color: var(--mut); }
#chalet-heuvelrug-home .hf-go { max-width: 1100px; margin: 150px auto 0; padding: 0 40px 90px; }
#chalet-heuvelrug-home .hf-go__in { border: 1px solid var(--line); border-radius: 36px; padding: 70px 50px; text-align: center; background: radial-gradient(600px 300px at 50% 0, rgba(232, 180, 95, .2), transparent 70%), var(--bg2); }
#chalet-heuvelrug-home .hf-go h2 { font-size: clamp(56px, 7vw, 104px); color: #fff; }
#chalet-heuvelrug-home .hf-go p { color: var(--mut); margin: 12px 0 36px; }
#chalet-heuvelrug-home .hf-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; max-width: 820px; margin: 0 auto; }
#chalet-heuvelrug-home .hf-tile { display: flex; flex-direction: column; align-items: flex-start; gap: 26px; padding: 24px; border-radius: 22px; border: 1px solid var(--line); background: rgba(255, 255, 255, .04); text-align: left; transition: transform .2s, border-color .2s; }
#chalet-heuvelrug-home .hf-tile:hover { transform: translateY(-3px); border-color: var(--pcl, #e08a55); }
#chalet-heuvelrug-home .hf-tile i { width: 40px; height: 40px; border-radius: 12px; background: var(--pc, #c96a37); display: block; flex: none; }
#chalet-heuvelrug-home .hf-tile b { font-size: 19px; display: block; }
#chalet-heuvelrug-home .hf-tile span { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--mut); }
#chalet-heuvelrug-home .hf-tile .hf-ic { font-size: 16px; }
#chalet-heuvelrug-home .hf-tile.is-main { border-color: var(--pc, #c96a37); background: rgba(255, 255, 255, .07); }
#chalet-heuvelrug-home .hf-go .hf-disc { margin-top: 24px; }
#chalet-heuvelrug-home .hf-stick { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 50; padding: 8px; gap: 8px; background: rgba(24, 42, 33, .94); background: color-mix(in srgb, var(--bg2) 94%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid var(--line); border-radius: 99px; transition: opacity .2s, transform .2s; }
#chalet-heuvelrug-home .hf-stick a { flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 44px; padding: 0 8px; border-radius: 99px; font-weight: 700; font-size: 14px; line-height: 1.15; border: 1px solid var(--line); color: #f3ead9; }
#chalet-heuvelrug-home .hf-stick a.is-main { flex: 1.6; background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }

/* veelgestelde vragen en footer in dezelfde donkere stijl */
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq { background: var(--bg); border-top: 1px solid rgba(243, 234, 217, .16); }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq .ch-heading { color: #fff; }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item { background: rgba(255, 255, 255, .04); border: 1px solid rgba(243, 234, 217, .16); border-radius: 16px; }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item__q { color: #f3ead9; }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item__a { color: rgba(243, 234, 217, .72); }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item[open] { background: rgba(255, 255, 255, .07); border-color: rgba(232, 180, 95, .45); }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item[open] .ch-faq-item__q { color: #e8b45f; }
#chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-faq-item__icon path { stroke: #e8b45f; }

@media (max-width: 860px) {
  #chalet-heuvelrug-home .hf-mast { padding: 14px 18px 0; }
  #chalet-heuvelrug-home .hf-logo img { height: 30px; }
  #chalet-heuvelrug-home .hf-pill { top: 10px; margin-top: 10px; }
  #chalet-heuvelrug-home .hf-hero { grid-template-columns: minmax(0, 1fr); padding: 26px 22px 60px; gap: 34px; }
  #chalet-heuvelrug-home .hf-archwrap { order: -1; max-width: 300px; }
  #chalet-heuvelrug-home .hf-wrap h1 { font-size: 84px; }
  #chalet-heuvelrug-home .hf-tag { font-size: 17px; }
  #chalet-heuvelrug-home .hf-btns { gap: 8px; }
  #chalet-heuvelrug-home .hf-btn { flex: 1 1 100%; }
  #chalet-heuvelrug-home .hf-btn--main { order: -1; }
  #chalet-heuvelrug-home .hf-nums { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 22px; row-gap: 22px; }
  #chalet-heuvelrug-home .hf-fact:nth-child(odd) { border-left: 0; padding-left: 0; }
  #chalet-heuvelrug-home .hf-fact b { font-size: 64px; }
  #chalet-heuvelrug-home .hf-chap { grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 90px 22px 0; }
  #chalet-heuvelrug-home .hf-rom { font-size: 80px; }
  #chalet-heuvelrug-home .hf-txt { font-size: 17px; }
  #chalet-heuvelrug-home .hf-trio--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #chalet-heuvelrug-home .hf-trio--3 .hf-arch2:nth-child(3) { display: none; }
  #chalet-heuvelrug-home .hf-trio { gap: 12px; }
  #chalet-heuvelrug-home .hf-trio .hf-arch2:nth-child(2) { margin-top: 26px; }
  #chalet-heuvelrug-home .hf-strip > div { flex-basis: 78%; }
  #chalet-heuvelrug-home .hf-reviews--2, #chalet-heuvelrug-home .hf-reviews--3 { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .hf-review { padding: 28px 22px; }
  #chalet-heuvelrug-home .hf-facts4, #chalet-heuvelrug-home .hf-tips { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .hf-host { flex-direction: column; text-align: center; }
  #chalet-heuvelrug-home .hf-hostbtns { justify-content: center; }
  #chalet-heuvelrug-home .hf-go { margin-top: 100px; padding: 0 14px 60px; }
  #chalet-heuvelrug-home .hf-go__in { padding: 48px 20px; border-radius: 28px; }
  #chalet-heuvelrug-home .hf-tiles { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .hf-tile { flex-direction: row; align-items: center; gap: 16px; }
  #chalet-heuvelrug-home .hf-tile i { width: 34px; height: 34px; }
  #chalet-heuvelrug-home.ch-lay .hf-stick { display: flex; }
  #chalet-heuvelrug-home.ch-lay--hoofdstukken .ch-footer { padding-bottom: 96px; }
}
@media (max-width: 600px) { #chalet-heuvelrug-home .hf-wrap .lay-crumb-cur { display: none; } }
@media (max-width: 350px) {
  #chalet-heuvelrug-home .pn-wrap h1, #chalet-heuvelrug-home .tj-wrap h1, #chalet-heuvelrug-home .hf-wrap h1 { font-size: 66px; }
  #chalet-heuvelrug-home .pn-fact b, #chalet-heuvelrug-home .tj-fact b { font-size: 32px; }
  #chalet-heuvelrug-home .hf-fact b { font-size: 52px; }
  #chalet-heuvelrug-home .pn-btn, #chalet-heuvelrug-home .hf-btn { padding: 0 8px; }
}

/* ======================================================================
   RUST
   ====================================================================== */
#chalet-heuvelrug-home.ch-lay--rust { background: color-mix(in srgb, var(--hl) 7%, #fbf9f4); color: var(--deep2); }
#chalet-heuvelrug-home .rs-wrap { --ink: var(--deep2); --mut: color-mix(in srgb, var(--deep2) 62%, #fff); --line: color-mix(in srgb, var(--deep) 20%, transparent); --tint: color-mix(in srgb, var(--hl) 20%, #f4f0e6); font-family: 'Work Sans', system-ui, sans-serif; line-height: 1.7; -webkit-font-smoothing: antialiased; }
#chalet-heuvelrug-home .rs-bar { display: flex; align-items: center; gap: 22px; max-width: 1200px; margin: 0 auto; padding: 20px 40px; flex-wrap: wrap; }
#chalet-heuvelrug-home .rs-logo img { height: 38px; width: auto; }
#chalet-heuvelrug-home .rs-crumbs { font-size: 13px; color: var(--mut); display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-right: auto; }
#chalet-heuvelrug-home .rs-crumbs a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .rs-chip { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; border: 1px solid var(--line); border-radius: 99px; padding: 4px 12px; color: var(--mut); white-space: nowrap; }
#chalet-heuvelrug-home .rs-hero { text-align: center; max-width: 980px; margin: 0 auto; padding: 56px 24px 0; }
#chalet-heuvelrug-home .rs-eyebrow { font-size: 12.5px; letter-spacing: .3em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .rs-wrap h1 { font-size: clamp(80px, 10.5vw, 148px); color: var(--deep); margin: 14px 0 10px; overflow-wrap: anywhere; }
#chalet-heuvelrug-home .rs-tag { font-size: 20px; line-height: 1.7; color: var(--mut); max-width: 560px; margin: 0 auto 30px; }
#chalet-heuvelrug-home .rs-btns { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
#chalet-heuvelrug-home .rs-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 26px; border-radius: 99px; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center; border: 1.5px solid var(--line); color: var(--ink); background: transparent; transition: transform .15s; }
#chalet-heuvelrug-home .rs-btn:hover { transform: translateY(-2px); }
#chalet-heuvelrug-home .rs-btn--main { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .rs-btn .rs-ic { font-size: 18px; }
#chalet-heuvelrug-home .rs-disc { font-size: 12.5px; color: var(--mut); margin-top: 14px; }
#chalet-heuvelrug-home .rs-photo { margin: 60px -120px 0; border-radius: 32px; overflow: hidden; aspect-ratio: 16 / 8; background: var(--tint); }
#chalet-heuvelrug-home .rs-photo img { width: 100%; height: 100%; object-fit: cover; }
#chalet-heuvelrug-home .rs-facts { max-width: 920px; margin: 60px auto 0; padding: 0 24px; display: flex; justify-content: center; flex-wrap: wrap; }
#chalet-heuvelrug-home .rs-fact { position: relative; padding: 8px 36px; text-align: center; min-width: 0; }
#chalet-heuvelrug-home .rs-fact + .rs-fact::before { content: ""; position: absolute; left: 0; top: 18%; bottom: 18%; width: 1px; background: var(--line); }
#chalet-heuvelrug-home .rs-fact b { display: block; font-size: 56px; line-height: 1; color: var(--deep); }
#chalet-heuvelrug-home .rs-fact b.is-long { font-size: 40px; }
#chalet-heuvelrug-home .rs-fact b.is-xlong { font-size: 30px; line-height: 1.1; }
#chalet-heuvelrug-home .rs-fact span { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .rs-sec { max-width: 720px; margin: 0 auto; padding: 110px 24px 0; text-align: center; }
#chalet-heuvelrug-home .rs-sec h2 { font-size: clamp(46px, 5vw, 68px); color: var(--deep); }
#chalet-heuvelrug-home .rs-rule { display: block; width: 44px; height: 1px; background: var(--deep); opacity: .4; margin: 18px auto 28px; }
#chalet-heuvelrug-home .rs-p { max-width: 640px; margin: 0 auto 16px; font-size: 18.5px; line-height: 1.85; color: color-mix(in srgb, var(--deep2) 82%, #fff); text-align: left; }
#chalet-heuvelrug-home .rs-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 46px -90px 0; }
#chalet-heuvelrug-home .rs-duo--1 { grid-template-columns: minmax(0, 1fr); }
#chalet-heuvelrug-home .rs-duo img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 24px; }
#chalet-heuvelrug-home .rs-strip { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 16px -90px 0; }
#chalet-heuvelrug-home .rs-strip::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .rs-strip > div { flex: 0 0 calc((100% - 32px) / 3); aspect-ratio: 4 / 3; scroll-snap-align: start; }
#chalet-heuvelrug-home .rs-strip img { width: 100%; height: 100%; object-fit: cover; border-radius: 24px; }
#chalet-heuvelrug-home .rs-sec--tint { max-width: none; margin-top: 110px; padding: 90px 24px; background: var(--tint); }
#chalet-heuvelrug-home .rs-list { list-style: none; max-width: 720px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 56px; text-align: left; }
#chalet-heuvelrug-home .rs-list li { display: flex; align-items: center; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 16.5px; min-width: 0; }
#chalet-heuvelrug-home .rs-list .rs-ic { font-size: 22px; color: var(--deep); opacity: .75; }
#chalet-heuvelrug-home .rs-rev { padding-top: 110px; }
#chalet-heuvelrug-home .rs-review { padding: 44px 0; border-top: 1px solid var(--line); }
#chalet-heuvelrug-home .rs-review:first-child { border-top: 0; padding-top: 0; }
#chalet-heuvelrug-home .rs-score { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 44px; line-height: 1; color: var(--deep); margin-bottom: 16px; }
#chalet-heuvelrug-home .rs-score.is-long { font-size: 32px; }
#chalet-heuvelrug-home .rs-review blockquote { font-size: clamp(22px, 2.6vw, 29px); line-height: 1.55; color: var(--ink); font-weight: 400; }
#chalet-heuvelrug-home .rs-src { margin-top: 20px; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .rs-note { margin-top: 8px; font-size: 12.5px; font-style: italic; color: var(--mut); }
#chalet-heuvelrug-home .rs-where { list-style: none; display: flex; flex-wrap: wrap; gap: 12px 30px; justify-content: center; margin-top: 28px; }
#chalet-heuvelrug-home .rs-where li { display: inline-flex; align-items: center; gap: 10px; font-size: 15.5px; }
#chalet-heuvelrug-home .rs-where .rs-ic { font-size: 21px; color: var(--deep); opacity: .75; }
#chalet-heuvelrug-home .rs-locimg { margin: 44px -90px 0; border-radius: 28px; overflow: hidden; }
#chalet-heuvelrug-home .rs-locimg img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
#chalet-heuvelrug-home .rs-host .rs-hostimg { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; display: block; margin: 0 auto 24px; border: 1px solid var(--line); padding: 5px; background: #fff; }
#chalet-heuvelrug-home .rs-host .rs-hostimg--logo { display: flex; align-items: center; justify-content: center; background: var(--deep); padding: 0; }
#chalet-heuvelrug-home .rs-host .rs-hostimg--logo img { width: 56%; height: auto; }
#chalet-heuvelrug-home .rs-host h2 { margin-bottom: 14px; }
#chalet-heuvelrug-home .rs-host .rs-p { text-align: center; }
#chalet-heuvelrug-home .rs-sign { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 46px; line-height: 1.1; color: var(--deep); margin-top: 6px; }
#chalet-heuvelrug-home .rs-hostbtns { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 22px; }
#chalet-heuvelrug-home .rs-hostbtns .rs-btn { min-height: 46px; padding: 0 22px; }
#chalet-heuvelrug-home .rs-tips { list-style: none; text-align: left; border-top: 1px solid var(--line); }
#chalet-heuvelrug-home .rs-tips li { display: flex; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--line); }
#chalet-heuvelrug-home .rs-tips .rs-ic { font-size: 22px; color: var(--deep); opacity: .75; margin-top: 3px; }
#chalet-heuvelrug-home .rs-tips h3 { font-size: 16.5px; color: var(--ink); margin-bottom: 3px; }
#chalet-heuvelrug-home .rs-tips p { font-size: 15px; color: var(--mut); line-height: 1.6; }
#chalet-heuvelrug-home .rs-book { margin-top: 120px; padding: 100px 24px; background: var(--tint); text-align: center; }
#chalet-heuvelrug-home .rs-book h2 { font-size: clamp(54px, 6.5vw, 92px); color: var(--deep); }
#chalet-heuvelrug-home .rs-book p { color: var(--mut); margin: 12px 0 30px; }
#chalet-heuvelrug-home .rs-stick { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 50; gap: 8px; padding: 8px; background: color-mix(in srgb, #fff 94%, transparent); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border: 1px solid var(--line); border-radius: 99px; box-shadow: 0 14px 34px -14px rgba(20, 30, 25, .4); transition: opacity .2s, transform .2s; }
#chalet-heuvelrug-home .rs-stick a { flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 46px; padding: 0 10px; border-radius: 99px; font-weight: 700; font-size: 14px; line-height: 1.15; color: var(--ink); border: 1.5px solid var(--line); }
#chalet-heuvelrug-home .rs-stick a.is-main { flex: 1.5; background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }

@media (max-width: 1240px) {
  #chalet-heuvelrug-home .rs-photo, #chalet-heuvelrug-home .rs-duo, #chalet-heuvelrug-home .rs-strip, #chalet-heuvelrug-home .rs-locimg { margin-left: 0; margin-right: 0; }
}
@media (max-width: 820px) {
  #chalet-heuvelrug-home .rs-bar { padding: 14px 18px; gap: 8px 16px; }
  #chalet-heuvelrug-home .rs-logo img { height: 32px; }
  #chalet-heuvelrug-home .rs-hero { padding: 38px 20px 0; }
  #chalet-heuvelrug-home .rs-wrap h1 { font-size: 84px; }
  #chalet-heuvelrug-home .rs-tag { font-size: 18px; }
  #chalet-heuvelrug-home .rs-btn { flex: 1; min-height: 48px; padding: 0 12px; font-size: 14px; }
  #chalet-heuvelrug-home .rs-btn--main { flex: 1 1 100%; }
  #chalet-heuvelrug-home .rs-photo { margin-top: 40px; border-radius: 22px; aspect-ratio: 4 / 3; }
  #chalet-heuvelrug-home .rs-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 40px; row-gap: 20px; padding: 0 20px; }
  #chalet-heuvelrug-home .rs-fact { padding: 8px 10px; }
  #chalet-heuvelrug-home .rs-fact:nth-child(odd)::before { display: none; }
  #chalet-heuvelrug-home .rs-fact b { font-size: 46px; }
  #chalet-heuvelrug-home .rs-sec { padding: 76px 20px 0; }
  #chalet-heuvelrug-home .rs-p { font-size: 17px; }
  #chalet-heuvelrug-home .rs-duo { gap: 10px; margin-top: 32px; }
  #chalet-heuvelrug-home .rs-duo img { aspect-ratio: 1 / 1; border-radius: 18px; }
  #chalet-heuvelrug-home .rs-duo--1 img { aspect-ratio: 4 / 3; }
  #chalet-heuvelrug-home .rs-strip > div { flex-basis: 78%; }
  #chalet-heuvelrug-home .rs-sec--tint { margin-top: 76px; padding: 64px 20px; }
  #chalet-heuvelrug-home .rs-list { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .rs-rev { padding-top: 76px; }
  #chalet-heuvelrug-home .rs-locimg { border-radius: 20px; }
  #chalet-heuvelrug-home .rs-book { margin-top: 80px; padding: 72px 20px; }
  #chalet-heuvelrug-home.ch-lay .rs-stick { display: flex; }
  #chalet-heuvelrug-home.ch-lay--rust .ch-footer { padding-bottom: 96px; }
}
@media (max-width: 600px) { #chalet-heuvelrug-home .rs-wrap .lay-crumb-cur { display: none; } }
@media (max-width: 350px) {
  #chalet-heuvelrug-home .rs-wrap h1 { font-size: 66px; }
  #chalet-heuvelrug-home .rs-fact b { font-size: 36px; }
  #chalet-heuvelrug-home .rs-btn { padding: 0 8px; }
}

/* ======================================================================
   ROMANTISCH
   ====================================================================== */
#chalet-heuvelrug-home.ch-lay--romantisch { background: color-mix(in srgb, var(--hl) 12%, #fff7f3); color: var(--deep2); }
#chalet-heuvelrug-home .rm-wrap { --ink: var(--deep2); --mut: color-mix(in srgb, var(--deep2) 64%, #fff); --soft: color-mix(in srgb, var(--pop) 24%, transparent); --heart: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-8-5-8-11.2A4.6 4.6 0 0 1 12 7a4.6 4.6 0 0 1 8 2.8C20 16 12 21 12 21z'/></svg>"); font-family: 'Work Sans', system-ui, sans-serif; line-height: 1.7; -webkit-font-smoothing: antialiased; }
#chalet-heuvelrug-home .rm-bar { display: flex; align-items: center; gap: 22px; max-width: 1200px; margin: 0 auto; padding: 20px 40px; flex-wrap: wrap; }
#chalet-heuvelrug-home .rm-logo img { height: 38px; width: auto; }
#chalet-heuvelrug-home .rm-crumbs { font-size: 13px; color: var(--mut); display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-right: auto; }
#chalet-heuvelrug-home .rm-crumbs a:hover { text-decoration: underline; }
#chalet-heuvelrug-home .rm-chip { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; border: 1px solid var(--soft); border-radius: 99px; padding: 4px 12px; color: var(--mut); white-space: nowrap; background: rgba(255, 255, 255, .6); }
#chalet-heuvelrug-home .rm-hero { text-align: center; max-width: 900px; margin: 0 auto; padding: 34px 24px 0; }
#chalet-heuvelrug-home .rm-oval { position: relative; width: min(430px, 88%); aspect-ratio: 4 / 5; margin: 0 auto 38px; padding: 14px; border-radius: 50%; border: 1.5px solid var(--pop); }
#chalet-heuvelrug-home .rm-oval::before, #chalet-heuvelrug-home .rm-oval::after { content: ""; position: absolute; background: var(--pop); -webkit-mask: var(--heart) center / contain no-repeat; mask: var(--heart) center / contain no-repeat; }
#chalet-heuvelrug-home .rm-oval::before { width: 34px; height: 34px; top: 10%; right: -4%; transform: rotate(14deg); }
#chalet-heuvelrug-home .rm-oval::after { width: 20px; height: 20px; bottom: 16%; left: -2%; transform: rotate(-16deg); opacity: .7; }
#chalet-heuvelrug-home .rm-oval__in { width: 100%; height: 100%; border-radius: 50%; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(40, 20, 25, .5); background: var(--soft); }
#chalet-heuvelrug-home .rm-oval__in img { width: 100%; height: 100%; object-fit: cover; }
#chalet-heuvelrug-home .rm-eyebrow { font-size: 12.5px; letter-spacing: .3em; text-transform: uppercase; color: var(--pop); font-weight: 700; }
#chalet-heuvelrug-home .rm-wrap h1 { font-size: clamp(80px, 11vw, 150px); color: var(--deep); margin: 10px 0 4px; overflow-wrap: anywhere; }
#chalet-heuvelrug-home .rm-flourish { display: block; width: 150px; color: var(--pop); margin: 8px auto 20px; }
#chalet-heuvelrug-home .rm-flourish svg { display: block; width: 100%; height: auto; }
#chalet-heuvelrug-home .rm-tag { font-size: 21px; font-style: italic; line-height: 1.65; color: var(--mut); max-width: 560px; margin: 0 auto 30px; }
#chalet-heuvelrug-home .rm-btns { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
#chalet-heuvelrug-home .rm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 26px; border-radius: 99px; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center; border: 1.5px solid var(--pop); color: var(--deep); background: rgba(255, 255, 255, .65); transition: transform .15s; }
#chalet-heuvelrug-home .rm-btn:hover { transform: translateY(-2px); }
#chalet-heuvelrug-home .rm-btn--main { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .rm-btn .rm-ic { font-size: 18px; }
#chalet-heuvelrug-home .rm-disc { font-size: 12.5px; color: var(--mut); margin-top: 14px; }

#chalet-heuvelrug-home .rm-facts { max-width: 920px; margin: 62px auto 0; padding: 0 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; }
#chalet-heuvelrug-home .rm-fact { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 24px 14px 20px; text-align: center; background: #fff; border: 1px solid var(--soft); border-radius: 26px; box-shadow: 0 16px 34px -24px rgba(60, 20, 30, .5); min-width: 0; }
#chalet-heuvelrug-home .rm-fact .rm-ic { font-size: 26px; color: var(--pop); }
#chalet-heuvelrug-home .rm-fact b { display: block; font-size: 46px; line-height: 1; color: var(--deep); }
#chalet-heuvelrug-home .rm-fact b.is-long { font-size: 34px; }
#chalet-heuvelrug-home .rm-fact b.is-xlong { font-size: 27px; line-height: 1.1; }
#chalet-heuvelrug-home .rm-fact span { display: block; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--mut); }

#chalet-heuvelrug-home .rm-story { max-width: 1100px; margin: 0 auto; padding: 110px 40px 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: 70px; align-items: center; }
#chalet-heuvelrug-home .rm-story--solo { grid-template-columns: minmax(0, 720px); justify-content: center; text-align: center; }
#chalet-heuvelrug-home .rm-story h2 { font-size: clamp(52px, 6vw, 82px); color: var(--deep); }
#chalet-heuvelrug-home .rm-story .rm-flourish { margin-left: 0; }
#chalet-heuvelrug-home .rm-story--solo .rm-flourish { margin-left: auto; }
#chalet-heuvelrug-home .rm-p { font-size: 18.5px; line-height: 1.85; color: color-mix(in srgb, var(--deep2) 82%, #fff); margin-top: 14px; }
#chalet-heuvelrug-home .rm-p.is-first::first-letter { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 82px; float: left; line-height: .8; margin: 6px 6px 0 0; color: var(--pop); }
#chalet-heuvelrug-home .rm-story--solo .rm-p.is-first::first-letter { float: none; font-size: inherit; font-family: inherit; margin: 0; color: inherit; }
#chalet-heuvelrug-home .rm-frames { position: relative; aspect-ratio: 1 / 1.05; }
#chalet-heuvelrug-home .rm-frames figure { position: absolute; background: #fff; padding: 9px; box-shadow: 0 24px 46px -24px rgba(60, 20, 30, .55); }
#chalet-heuvelrug-home .rm-frames img { width: 100%; height: 100%; object-fit: cover; display: block; }
#chalet-heuvelrug-home .rm-frames figure:nth-child(1) { top: 0; left: 0; width: 64%; aspect-ratio: 4 / 5; border-radius: 50%; transform: rotate(-3deg); }
#chalet-heuvelrug-home .rm-frames figure:nth-child(1) img { border-radius: 50%; }
#chalet-heuvelrug-home .rm-frames figure:nth-child(2) { bottom: 0; right: 0; width: 56%; aspect-ratio: 3 / 4; border-radius: 999px 999px 26px 26px; transform: rotate(3deg); }
#chalet-heuvelrug-home .rm-frames figure:nth-child(2) img { border-radius: 999px 999px 18px 18px; }
#chalet-heuvelrug-home .rm-frames--1 figure:nth-child(1) { left: 50%; width: 76%; margin-left: -38%; }
#chalet-heuvelrug-home .rm-more { max-width: 1100px; margin: 50px auto 0; padding: 0 40px; }
#chalet-heuvelrug-home .rm-strip { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 6px 2px 14px; }
#chalet-heuvelrug-home .rm-strip::-webkit-scrollbar { display: none; }
#chalet-heuvelrug-home .rm-strip > div { flex: 0 0 calc((100% - 28px) / 3); aspect-ratio: 4 / 3; scroll-snap-align: start; background: #fff; padding: 7px; border-radius: 26px; box-shadow: 0 14px 30px -20px rgba(60, 20, 30, .5); }
#chalet-heuvelrug-home .rm-strip img { width: 100%; height: 100%; object-fit: cover; border-radius: 20px; display: block; }

#chalet-heuvelrug-home .rm-sec { max-width: 900px; margin: 0 auto; padding: 110px 24px 0; text-align: center; }
#chalet-heuvelrug-home .rm-sec h2 { font-size: clamp(48px, 5.4vw, 72px); color: var(--deep); }
#chalet-heuvelrug-home .rm-pills { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
#chalet-heuvelrug-home .rm-pills > span { display: inline-flex; align-items: center; gap: 9px; padding: 11px 18px; border-radius: 99px; background: #fff; border: 1px solid var(--soft); font-size: 15.5px; }
#chalet-heuvelrug-home .rm-pills .rm-ic { font-size: 20px; color: var(--pop); }
#chalet-heuvelrug-home .rm-rev { max-width: 1100px; }
#chalet-heuvelrug-home .rm-rev__list { display: grid; gap: 22px; align-items: start; margin-top: 8px; }
#chalet-heuvelrug-home .rm-rev--1 .rm-rev__list { grid-template-columns: minmax(0, 700px); justify-content: center; }
#chalet-heuvelrug-home .rm-rev--2 .rm-rev__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#chalet-heuvelrug-home .rm-rev--3 .rm-rev__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#chalet-heuvelrug-home .rm-review { position: relative; background: #fff; border: 1px solid var(--soft); border-radius: 28px; padding: 52px 32px 30px; box-shadow: 0 20px 40px -28px rgba(60, 20, 30, .55); text-align: center; }
#chalet-heuvelrug-home .rm-review::before { content: "\201C"; position: absolute; top: 4px; left: 50%; transform: translateX(-50%); font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 110px; line-height: 1; color: var(--pop); opacity: .35; }
#chalet-heuvelrug-home .rm-score { display: inline-flex; align-items: center; gap: 8px; font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 40px; line-height: 1; color: var(--pop); margin-bottom: 14px; }
#chalet-heuvelrug-home .rm-score::before { content: ""; width: 20px; height: 20px; background: var(--pop); -webkit-mask: var(--heart) center / contain no-repeat; mask: var(--heart) center / contain no-repeat; }
#chalet-heuvelrug-home .rm-score.is-long { font-size: 30px; }
#chalet-heuvelrug-home .rm-review blockquote { font-size: 22px; font-style: italic; line-height: 1.6; color: var(--ink); font-weight: 400; }
#chalet-heuvelrug-home .rm-rev--3 .rm-review blockquote { font-size: 18px; }
#chalet-heuvelrug-home .rm-src { margin-top: 18px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--mut); }
#chalet-heuvelrug-home .rm-note { margin-top: 8px; font-size: 12.5px; font-style: italic; color: var(--mut); }

#chalet-heuvelrug-home .rm-loc { max-width: 1100px; margin: 110px auto 0; padding: 0 40px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
#chalet-heuvelrug-home .rm-loc--noimg { grid-template-columns: minmax(0, 680px); justify-content: center; }
#chalet-heuvelrug-home .rm-loc__img img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 999px 999px 30px 30px; display: block; box-shadow: 0 30px 60px -34px rgba(60, 20, 30, .6); }
#chalet-heuvelrug-home .rm-loc__card { position: relative; z-index: 2; margin-left: -70px; background: #fff; border: 1px solid var(--soft); border-radius: 30px; padding: 42px 38px; box-shadow: 0 24px 50px -30px rgba(60, 20, 30, .55); }
#chalet-heuvelrug-home .rm-loc--noimg .rm-loc__card { margin: 0; text-align: center; }
#chalet-heuvelrug-home .rm-loc__card h2 { font-size: 56px; color: var(--deep); }
#chalet-heuvelrug-home .rm-loc__card .rm-flourish { margin-left: 0; }
#chalet-heuvelrug-home .rm-loc--noimg .rm-flourish { margin-left: auto; }
#chalet-heuvelrug-home .rm-loc__card p { margin-bottom: 12px; color: color-mix(in srgb, var(--deep2) 82%, #fff); }
#chalet-heuvelrug-home .rm-loc__card ul { margin-top: 18px; }
#chalet-heuvelrug-home .rm-loc__card li { list-style: none; display: flex; align-items: center; gap: 14px; padding: 11px 0; border-top: 1px dashed var(--soft); text-align: left; }
#chalet-heuvelrug-home .rm-loc__card li .rm-ic { font-size: 22px; color: var(--pop); }

#chalet-heuvelrug-home .rm-host .rm-hostimg { width: 150px; height: 190px; border-radius: 50%; object-fit: cover; display: block; margin: 0 auto 26px; border: 5px solid #fff; box-shadow: 0 0 0 1.5px var(--pop), 0 18px 40px -20px rgba(60, 20, 30, .5); }
#chalet-heuvelrug-home .rm-host .rm-hostimg--logo { display: flex; align-items: center; justify-content: center; background: var(--deep); }
#chalet-heuvelrug-home .rm-host .rm-hostimg--logo img { width: 52%; height: auto; }
#chalet-heuvelrug-home .rm-host h2 { margin-bottom: 12px; }
#chalet-heuvelrug-home .rm-host .rm-p { max-width: 640px; margin-left: auto; margin-right: auto; }
#chalet-heuvelrug-home .rm-sign { font-family: 'Amatic SC', cursive; font-weight: 700; font-size: 50px; line-height: 1.1; color: var(--pop); margin-top: 6px; }
#chalet-heuvelrug-home .rm-hostbtns { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 22px; }
#chalet-heuvelrug-home .rm-hostbtns .rm-btn { min-height: 46px; padding: 0 22px; }
#chalet-heuvelrug-home .rm-tips { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; text-align: left; }
#chalet-heuvelrug-home .rm-tips li { display: flex; gap: 14px; background: #fff; border: 1px solid var(--soft); border-radius: 22px; padding: 20px 22px; box-shadow: 0 14px 30px -24px rgba(60, 20, 30, .5); }
#chalet-heuvelrug-home .rm-tips .rm-ic { font-size: 24px; color: var(--pop); margin-top: 2px; }
#chalet-heuvelrug-home .rm-tips h3 { font-size: 16px; color: var(--ink); margin-bottom: 4px; }
#chalet-heuvelrug-home .rm-tips p { font-size: 14.5px; line-height: 1.55; color: var(--mut); }
#chalet-heuvelrug-home .rm-book { margin-top: 120px; padding: 0 24px 100px; }
#chalet-heuvelrug-home .rm-book__in { max-width: 820px; margin: 0 auto; text-align: center; background: linear-gradient(180deg, var(--deep), var(--deep2)); color: #fff; border-radius: 280px 280px 34px 34px; padding: 120px 40px 66px; box-shadow: 0 40px 70px -40px rgba(40, 10, 20, .7); }
#chalet-heuvelrug-home .rm-book h2 { font-size: clamp(54px, 6.5vw, 92px); color: #fff; }
#chalet-heuvelrug-home .rm-book .rm-flourish { color: var(--hl); }
#chalet-heuvelrug-home .rm-book p { opacity: .85; margin: 0 0 30px; }
#chalet-heuvelrug-home .rm-book .rm-btn { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .6); color: #fff; }
#chalet-heuvelrug-home .rm-book .rm-btn--main { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); }
#chalet-heuvelrug-home .rm-book .rm-disc { color: rgba(255, 255, 255, .75); }
#chalet-heuvelrug-home .rm-stick { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 50; gap: 8px; padding: 8px; background: color-mix(in srgb, var(--deep2) 94%, transparent); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-radius: 99px; box-shadow: 0 14px 34px -10px rgba(0, 0, 0, .5); transition: opacity .2s, transform .2s; }
#chalet-heuvelrug-home .rm-stick a { flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 46px; padding: 0 10px; border-radius: 99px; font-weight: 700; font-size: 14px; line-height: 1.15; color: #fff; border: 1.5px solid rgba(255, 255, 255, .5); }
#chalet-heuvelrug-home .rm-stick a.is-main { flex: 1.5; background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); }

@media (max-width: 860px) {
  #chalet-heuvelrug-home .rm-bar { padding: 14px 18px; gap: 8px 16px; }
  #chalet-heuvelrug-home .rm-logo img { height: 32px; }
  #chalet-heuvelrug-home .rm-hero { padding: 22px 20px 0; }
  #chalet-heuvelrug-home .rm-wrap h1 { font-size: 84px; }
  #chalet-heuvelrug-home .rm-tag { font-size: 18px; }
  #chalet-heuvelrug-home .rm-btn { flex: 1; min-height: 48px; padding: 0 12px; font-size: 14px; }
  #chalet-heuvelrug-home .rm-btn--main { flex: 1 1 100%; }
  #chalet-heuvelrug-home .rm-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 44px; padding: 0 18px; }
  #chalet-heuvelrug-home .rm-fact { padding: 18px 10px 16px; }
  #chalet-heuvelrug-home .rm-fact b { font-size: 40px; }
  #chalet-heuvelrug-home .rm-story { grid-template-columns: minmax(0, 1fr); gap: 44px; padding: 76px 22px 0; }
  #chalet-heuvelrug-home .rm-p { font-size: 17px; }
  #chalet-heuvelrug-home .rm-frames { max-width: 420px; width: 100%; margin: 0 auto; }
  #chalet-heuvelrug-home .rm-more { padding: 0 20px; margin-top: 30px; }
  #chalet-heuvelrug-home .rm-strip > div { flex-basis: 78%; }
  #chalet-heuvelrug-home .rm-sec { padding: 76px 20px 0; }
  #chalet-heuvelrug-home .rm-pills > span { padding: 9px 14px; font-size: 14.5px; }
  #chalet-heuvelrug-home .rm-rev--2 .rm-rev__list, #chalet-heuvelrug-home .rm-rev--3 .rm-rev__list { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 14px; margin: 0 -20px; padding: 6px 20px 14px; }
  #chalet-heuvelrug-home .rm-rev__list::-webkit-scrollbar { display: none; }
  #chalet-heuvelrug-home .rm-rev--2 .rm-review, #chalet-heuvelrug-home .rm-rev--3 .rm-review { flex: 0 0 84%; scroll-snap-align: center; }
  #chalet-heuvelrug-home .rm-review { padding: 50px 22px 26px; }
  #chalet-heuvelrug-home .rm-review blockquote, #chalet-heuvelrug-home .rm-rev--3 .rm-review blockquote { font-size: 19px; }
  #chalet-heuvelrug-home .rm-loc { grid-template-columns: minmax(0, 1fr); padding: 0 20px; margin-top: 76px; }
  #chalet-heuvelrug-home .rm-loc__img img { aspect-ratio: 4 / 4.2; }
  #chalet-heuvelrug-home .rm-loc__card { margin: -50px 12px 0; padding: 32px 22px; }
  #chalet-heuvelrug-home .rm-loc--noimg .rm-loc__card { margin: 0; }
  #chalet-heuvelrug-home .rm-host .rm-hostimg { width: 130px; height: 164px; }
  #chalet-heuvelrug-home .rm-tips { grid-template-columns: minmax(0, 1fr); }
  #chalet-heuvelrug-home .rm-book { margin-top: 80px; padding: 0 14px 70px; }
  #chalet-heuvelrug-home .rm-book__in { border-radius: 160px 160px 28px 28px; padding: 90px 20px 44px; }
  #chalet-heuvelrug-home.ch-lay .rm-stick { display: flex; }
  #chalet-heuvelrug-home.ch-lay--romantisch .ch-footer { padding-bottom: 96px; }
}
@media (max-width: 600px) { #chalet-heuvelrug-home .rm-wrap .lay-crumb-cur { display: none; } }
@media (max-width: 350px) {
  #chalet-heuvelrug-home .rm-wrap h1 { font-size: 66px; }
  #chalet-heuvelrug-home .rm-fact b { font-size: 32px; }
  #chalet-heuvelrug-home .rm-btn { padding: 0 8px; }
}


/* ======================================================================
   BOEKKNOPPEN ZOALS OP DE GIDS: elke knop vol in de kleur van zijn platform
   (Airbnb rood, Booking.com blauw, Natuurhuisje.nl paars, de rest oranje)
   ====================================================================== */
#chalet-heuvelrug-home .pn-btn[class*="pl-"], #chalet-heuvelrug-home .rs-btn[class*="pl-"], #chalet-heuvelrug-home .rm-btn[class*="pl-"], #chalet-heuvelrug-home .hf-btn[class*="pl-"],
#chalet-heuvelrug-home .tj-btn[class*="pl-"], #chalet-heuvelrug-home .tj-pick, #chalet-heuvelrug-home .hf-tile, #chalet-heuvelrug-home .hf-tile.is-main,
#chalet-heuvelrug-home .pn-stick a[class*="pl-"], #chalet-heuvelrug-home .tj-stick a[class*="pl-"], #chalet-heuvelrug-home .hf-stick a[class*="pl-"], #chalet-heuvelrug-home .rs-stick a[class*="pl-"], #chalet-heuvelrug-home .rm-stick a[class*="pl-"],
#chalet-heuvelrug-home .rm-book .rm-btn[class*="pl-"] { background: var(--pc, #c96a37); border-color: var(--pc, #c96a37); color: #fff; }
#chalet-heuvelrug-home .pn-btn[class*="pl-"]:hover, #chalet-heuvelrug-home .rs-btn[class*="pl-"]:hover, #chalet-heuvelrug-home .rm-btn[class*="pl-"]:hover, #chalet-heuvelrug-home .hf-btn[class*="pl-"]:hover,
#chalet-heuvelrug-home .tj-btn[class*="pl-"]:hover, #chalet-heuvelrug-home .hf-tile:hover, #chalet-heuvelrug-home .tj-pick:hover { filter: brightness(.92); }
#chalet-heuvelrug-home .tj-pick { border-color: var(--ink); }
#chalet-heuvelrug-home .tj-pick i { background: #fff; }
#chalet-heuvelrug-home .hf-tile i { background: rgba(255, 255, 255, .22); }
#chalet-heuvelrug-home .hf-tile b { color: #fff; }
#chalet-heuvelrug-home .hf-tile span { color: rgba(255, 255, 255, .88); }
#chalet-heuvelrug-home .hf-tile:hover { border-color: var(--pc, #c96a37); }
#chalet-heuvelrug-home .hf-btn[class*="pl-"] { border-color: var(--pc, #c96a37); }

/* Startpagina met regio's (chaletgids.nl): grotere kaarten, gecentreerd */
#chalet-heuvelrug-home .ch-hub-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 400px));
  justify-content: center;
  gap: 24px;
}
#chalet-heuvelrug-home .ch-hub-card .ch-gids-card__body {
  padding-top: 2.4rem;
  min-height: 11rem;
}
#chalet-heuvelrug-home .ch-hub-card__meta {
  margin: 0.6rem 0 0;
  font-size: 0.9rem;
  color: #5c5a4f;
}
#chalet-heuvelrug-home .ch-hub-grid .ch-gids-card__link--top {
  background: #2c4636;
  color: #fff;
  border-bottom-color: #2c4636;
}
#chalet-heuvelrug-home .ch-hub-grid .ch-gids-card__link--top:hover,
#chalet-heuvelrug-home .ch-hub-grid .ch-gids-card__link--top:focus-visible {
  background: #223a2b;
}
@media (max-width: 760px) {
  #chalet-heuvelrug-home .ch-hub-grid {
    grid-template-columns: 1fr;
  }
}

/* ---------- MENUBALK (inc/gids-menu.php) ---------- */

/* De standaard titelbalk van WordPress ("Mijn site") vervalt: de menubalk neemt zijn plaats in. */
body.ch-has-menu #header,
body.ch-has-menu #header + hr {
  display: none;
}

/* De taalschakelaar staat nu in het menu, niet meer in de hero. */
body.ch-has-menu #chalet-heuvelrug-home .ch-lang-switch {
  display: none;
}

/* Smalle extra balk bovenaan; het menu klapt eronder open. */
.ch-menu {
  position: relative;
  z-index: 50;
  background: #1f3328;
  color: #f8f4ec;
  font-family: 'Work Sans', system-ui, sans-serif;
}

.ch-menu__in {
  position: relative;
  max-width: 1140px;
  margin: 0 auto;
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  padding: 0 24px;
}

.ch-menu a {
  color: inherit;
  text-decoration: none;
}

.ch-menu__burger {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  color: #f8f4ec;
  background: none;
  border: 0;
  border-radius: 999px;
  padding: 8px 12px;
  margin-right: -12px;
  cursor: pointer;
}

.ch-menu__burger:hover,
.ch-menu.is-open .ch-menu__burger {
  background: rgba(248, 244, 236, 0.14);
}

.ch-menu__burger:focus-visible,
.ch-menu__nav a:focus-visible {
  outline: 2px solid #d9a866;
  outline-offset: 2px;
}

.ch-menu__nav {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  right: 24px;
  width: 300px;
  max-width: calc(100vw - 32px);
  background: #fffdf8;
  color: #1f3328;
  border-radius: 14px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  padding: 8px;
}

.ch-menu.is-open .ch-menu__nav {
  display: block;
}

.ch-menu__nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ch-menu__nav li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ch-menu__link {
  display: block;
  padding: 11px 14px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 600;
  color: #1f3328;
}

.ch-menu__link:hover {
  background: #eef0e4;
}

.ch-menu__link--sub {
  font-weight: 400;
  padding-left: 28px;
}

.ch-menu__group-label {
  display: block;
  padding: 11px 14px 4px;
  font-size: 16px;
  font-weight: 600;
  color: #1f3328;
}

.ch-menu__nav li.ch-menu__lang {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  padding: 12px 14px 6px;
  border-top: 1px solid #e6e1d3;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.ch-menu__lang a {
  color: #8a8372;
}

.ch-menu__lang a:hover {
  color: #1f3328;
}

.ch-menu__lang a.is-active {
  color: #b9782f;
}

.ch-menu__lang span {
  opacity: 0.4;
}

@media (max-width: 760px) {
  .ch-menu__in {
    padding: 0 20px;
  }

  .ch-menu__nav {
    right: 12px;
    left: 12px;
    width: auto;
    max-width: none;
  }
}
