/*
 * Rijmaatje zoeken v2
 * Een enkele, zelfstandige presentatielaag bovenop de bestaande
 * server-rendered FacetWP/AJAX-zoekmachine.
 */

body.page-id-1867 {
  background:#f7f8fb;
}

body.page-id-1867 .site-content > .ast-container,
body.page-id-1867 .site-content .ast-container,
body.page-id-1867 #primary,
body.page-id-1867 .site-main,
body.page-id-1867 article.ast-article-single,
body.page-id-1867 .entry-content {
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

.rm-search-v3 {
  --rm-search-blue:#2864e8;
  --rm-search-blue-dark:#1f52c5;
  --rm-search-blue-soft:#eef4ff;
  --rm-search-ink:#172033;
  --rm-search-muted:#68758b;
  --rm-search-line:#dfe6f0;
  --rm-search-surface:#fff;
  --rm-search-soft:#f7f9fc;
  --rm-search-green:#15824b;
  --rm-search-green-soft:#eaf8f0;
  --rm-search-amber:#b96b00;
  --rm-search-radius:16px;
  --rm-search-shadow:0 10px 30px rgba(22,32,51,.06);
  box-sizing:border-box;
  width:min(1240px,calc(100% - 48px));
  margin:22px auto 72px;
  color:var(--rm-search-ink);
  font-family:inherit;
}

.rm-search-v3 *,
.rm-search-v3 *::before,
.rm-search-v3 *::after {
  box-sizing:border-box;
}

.rm-search-v3 a {
  color:inherit;
  text-decoration:none;
}

.rm-search-v3 button,
.rm-search-v3 input,
.rm-search-v3 select {
  font:inherit;
}

/* Intro */
.rm-search-v3-hero {
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "brand title"
    "brand copy";
  align-items:center;
  column-gap:18px;
  width:100%!important;
  max-width:none!important;
  min-height:138px;
  margin:0 0 22px!important;
  padding:26px 30px;
  overflow:hidden;
  border:1px solid var(--rm-search-line);
  border-radius:22px;
  background:var(--rm-search-surface);
  box-shadow:0 8px 28px rgba(22,32,51,.045);
}

.rm-search-v3-brand {
  grid-area:brand;
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  border-radius:21px;
  background:var(--rm-search-blue-soft);
}

.rm-search-v3-brand img {
  display:block;
  width:60px;
  height:60px;
  object-fit:contain;
}

.rm-search-v3-brand span {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
}

.rm-search-v3-hero h1 {
  grid-area:title;
  max-width:880px;
  margin:0;
  color:var(--rm-search-ink);
  font-size:clamp(32px,3.4vw,45px);
  font-weight:850;
  line-height:1.06;
  letter-spacing:0;
}

.rm-search-v3-hero h1 mark {
  padding:0;
  color:var(--rm-search-blue);
  background:transparent;
}

.rm-search-v3-hero p {
  grid-area:copy;
  margin:8px 0 0;
  color:var(--rm-search-muted);
  font-size:16px;
  line-height:1.5;
}

/* Desktop layout */
.rm-search-v3-layout {
  display:grid;
  grid-template-columns:276px minmax(0,1fr);
  align-items:start;
  gap:22px;
  width:100%;
  margin:0;
}

.rm-search-v3-filters {
  position:sticky;
  top:92px;
  min-width:0;
}

.rm-filter-wrapper {
  display:block;
  margin:0;
}

.rm-filter-mobile-toggle {
  display:none;
  list-style:none;
}

.rm-filter-mobile-toggle::-webkit-details-marker,
.rm-filter-block > summary::-webkit-details-marker {
  display:none;
}

.rm-filter-panel {
  overflow:hidden;
  border:1px solid var(--rm-search-line);
  border-radius:var(--rm-search-radius);
  background:var(--rm-search-surface);
  box-shadow:var(--rm-search-shadow);
}

.rm-filter-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:62px;
  padding:14px 17px;
  border-bottom:1px solid var(--rm-search-line);
}

.rm-filter-header h2,
.rm-filter-header h3 {
  margin:0;
  color:var(--rm-search-ink);
  font-size:18px;
  font-weight:800;
  line-height:1.2;
}

.rm-filter-sheet-close {
  display:none;
}

.rm-filter-reset {
  min-height:34px;
  padding:0 9px;
  border:0;
  border-radius:9px;
  color:var(--rm-search-blue);
  background:transparent;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.rm-filter-reset:hover,
.rm-filter-reset:focus-visible {
  background:var(--rm-search-blue-soft);
}

.rm-filter-body {
  padding:0 17px 12px;
}

.rm-filter-block {
  margin:0;
  padding:14px 0;
  border-bottom:1px solid var(--rm-search-line);
}

.rm-filter-block:last-child {
  border-bottom:0;
}

.rm-filter-block > summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:30px;
  color:var(--rm-search-ink);
  font-size:14px;
  font-weight:750;
  line-height:1.25;
  list-style:none;
  cursor:pointer;
}

.rm-filter-block > summary::after {
  content:"+";
  display:grid;
  place-items:center;
  flex:0 0 26px;
  width:26px;
  height:26px;
  border:1px solid var(--rm-search-line);
  border-radius:50%;
  color:var(--rm-search-muted);
  font-size:18px;
  font-weight:600;
  line-height:1;
}

.rm-filter-block[open] > summary::after {
  content:"−";
}

.rm-filter-block .facetwp-facet {
  margin:11px 0 0;
  color:var(--rm-search-muted);
  font-size:13px;
}

.rm-filter-block-scroll .facetwp-facet {
  max-height:220px;
  padding-right:5px;
  overflow:auto;
  scrollbar-width:thin;
}

.rm-search-v3-filters input[type="text"],
.rm-search-v3-filters input[type="search"],
.rm-search-v3-filters input[type="number"],
.rm-search-v3-filters select {
  width:100%;
  min-height:44px;
  margin:0;
  padding:0 12px;
  border:1px solid var(--rm-search-line);
  border-radius:11px;
  color:var(--rm-search-ink);
  background:#fff;
  box-shadow:none;
  font-size:14px;
  line-height:1.2;
  outline:none;
}

.rm-search-v3-filters input:focus,
.rm-search-v3-filters select:focus {
  border-color:var(--rm-search-blue);
  box-shadow:0 0 0 3px rgba(40,100,232,.11);
}

.rm-search-v3-filters .facetwp-type-autocomplete {
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px;
  gap:7px;
}

.rm-search-v3-filters .facetwp-type-autocomplete .facetwp-autocomplete-update,
.rm-search-v3-filters .facetwp-type-autocomplete .rm-search-city-submit,
.rm-search-v3-filters .facetwp-submit,
.rm-search-v3-filters .facetwp-btn {
  min-height:44px;
  padding:0 11px;
  border:0;
  border-radius:11px;
  color:#fff;
  background:var(--rm-search-blue);
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}

.rm-search-v3-filters .facetwp-type-number_range {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}

.rm-search-v3-filters .facetwp-type-number_range .facetwp-submit {
  grid-column:1/-1;
}

.rm-search-v3-filters .facetwp-checkbox,
.rm-search-v3-filters .facetwp-radio {
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:8px;
  min-height:32px;
  margin:0;
  padding:7px 28px 7px 29px;
  color:var(--rm-search-muted);
  background:none;
  font-size:13px;
  line-height:1.35;
  cursor:pointer;
}

.rm-search-v3-filters .facetwp-checkbox::before,
.rm-search-v3-filters .facetwp-radio::before {
  content:"";
  position:absolute;
  top:7px;
  left:0;
  width:19px;
  height:19px;
  border:1.5px solid #c9d3e1;
  border-radius:6px;
  background:#fff;
}

.rm-search-v3-filters .facetwp-radio::before {
  border-radius:50%;
}

.rm-search-v3-filters .facetwp-checkbox.checked,
.rm-search-v3-filters .facetwp-radio.checked {
  color:var(--rm-search-ink);
  font-weight:700;
}

.rm-search-v3-filters .facetwp-checkbox.checked::before,
.rm-search-v3-filters .facetwp-radio.checked::before {
  border-color:var(--rm-search-blue);
  background:var(--rm-search-blue);
  box-shadow:inset 0 0 0 4px #fff;
}

.rm-search-v3-filters .facetwp-counter {
  position:absolute;
  right:0;
  color:#95a0b3;
  font-size:12px;
}

.rm-search-v3-filters .fcomplete-wrap {
  position:relative;
  grid-column:1/-1;
  min-width:100%!important;
}

.rm-search-v3-filters .fcomplete-status {
  min-height:0;
  color:#8a95a8;
  font-size:11px;
  line-height:1.35;
}

.rm-search-v3-filters .fcomplete-results {
  position:absolute;
  z-index:20;
  top:calc(100% + 6px);
  left:0;
  width:100%;
  max-height:235px;
  overflow:auto;
  border:1px solid var(--rm-search-line);
  border-radius:11px;
  background:#fff;
  box-shadow:0 14px 36px rgba(22,32,51,.14);
}

.rm-search-v3-filters .fcomplete-results:empty {
  display:none!important;
}

.rm-search-v3-filters .fcomplete-result {
  display:block;
  width:100%;
  padding:10px 12px;
  border:0;
  border-bottom:1px solid #edf1f6;
  color:var(--rm-search-ink);
  background:#fff;
  font-family:inherit;
  font-size:13px;
  line-height:1.35;
  text-align:left;
  cursor:pointer;
}

.rm-search-v3-filters .fcomplete-result:last-child {
  border-bottom:0;
}

.rm-search-v3-filters .fcomplete-result:hover,
.rm-search-v3-filters .fcomplete-result:focus {
  background:var(--rm-search-blue-soft);
}

.rm-filter-actions {
  display:none;
}

/* Results header */
.rm-search-v3-results {
  min-width:0;
}

.rm-search-v3-toolbar {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  min-height:66px;
  margin:0 0 13px;
  padding:0 2px 13px;
  border-bottom:1px solid var(--rm-search-line);
}

.rm-search-v3-title {
  min-width:0;
}

.rm-search-v3-title > span {
  display:block;
  margin-bottom:4px;
  color:var(--rm-search-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1.2;
  text-transform:uppercase;
}

.rm-search-v3-title h2 {
  margin:0;
  color:var(--rm-search-ink);
  font-size:25px;
  font-weight:850;
  line-height:1.13;
  letter-spacing:0;
}

.rm-search-v3-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.rm-search-v3-count {
  color:var(--rm-search-muted);
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}

.rm-search-v3-sort {
  display:flex;
  align-items:center;
  gap:7px;
  margin:0;
  color:var(--rm-search-muted);
  font-size:12px;
  font-weight:700;
}

.rm-search-v3-sort .facetwp-facet {
  margin:0;
}

.rm-search-v3-sort select,
.rm-search-v3-sort .facetwp-sort-select {
  width:158px;
  min-height:42px;
  margin:0;
  padding:0 34px 0 12px;
  border:1px solid var(--rm-search-line);
  border-radius:11px;
  color:var(--rm-search-ink);
  background-color:#fff;
  box-shadow:none;
  font-size:13px;
  font-weight:700;
}

.rm-search-v3-active-filters {
  display:flex;
  align-items:center;
  gap:7px;
  max-width:100%;
  margin:-2px 0 13px;
  overflow-x:auto;
  padding:1px 1px 3px;
  scrollbar-width:none;
}

.rm-search-v3-active-filters::-webkit-scrollbar {
  display:none;
}

.rm-search-v3-active-filter {
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  gap:7px;
  min-height:34px;
  padding:0 9px 0 11px;
  border:1px solid #cfdcf3;
  border-radius:999px;
  color:var(--rm-search-blue-dark);
  background:var(--rm-search-blue-soft);
  font-size:12px;
  font-weight:750;
  line-height:1;
  cursor:pointer;
}

.rm-search-v3-active-filter:hover,
.rm-search-v3-active-filter:focus-visible {
  border-color:var(--rm-search-blue);
  background:#e4edff;
}

.rm-search-v3-active-filter i {
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  color:#fff;
  background:var(--rm-search-blue);
  font-size:15px;
  font-style:normal;
  font-weight:500;
  line-height:1;
}

/* Cards */
.rm-search-v3-list {
  position:relative;
  display:grid;
  gap:14px;
  min-width:0;
}

.rm-search-v3-card {
  position:relative;
  display:grid;
  grid-template-columns:220px minmax(0,1fr) 174px;
  min-width:0;
  min-height:224px;
  overflow:hidden;
  border:1px solid var(--rm-search-line);
  border-radius:var(--rm-search-radius);
  background:var(--rm-search-surface);
  box-shadow:0 6px 22px rgba(22,32,51,.045);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.rm-search-v3-card:hover {
  border-color:#c9d7ea;
  box-shadow:0 14px 34px rgba(22,32,51,.085);
  transform:translateY(-1px);
}

.rm-search-v3-photo {
  position:relative;
  display:block;
  min-width:0;
  min-height:224px;
  overflow:hidden;
  background:#edf2f8;
}

.rm-search-v3-photo img {
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:center;
  transition:transform .35s ease;
}

.rm-search-v3-card:hover .rm-search-v3-photo img {
  transform:scale(1.025);
}

.rm-search-v3-photo > span {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-height:0;
  color:var(--rm-search-blue);
  background:var(--rm-search-blue-soft);
  font-size:40px;
  font-weight:900;
}

.rm-search-v3-photo em {
  position:absolute;
  left:12px;
  top:12px;
  padding:7px 10px;
  border-radius:999px;
  color:#fff;
  background:var(--rm-search-blue);
  box-shadow:0 6px 18px rgba(40,100,232,.22);
  font-size:10px;
  font-style:normal;
  font-weight:850;
  letter-spacing:.03em;
}

.rm-search-v3-card-main {
  min-width:0;
  padding:22px 20px 18px;
}

.rm-search-v3-meta {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  min-height:23px;
  margin:0 42px 7px 0;
  color:var(--rm-search-muted);
  font-size:12px;
  font-weight:750;
}

.rm-search-v3-meta strong {
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 8px;
  border-radius:999px;
  color:var(--rm-search-blue);
  background:var(--rm-search-blue-soft);
  font-size:10px;
  font-weight:850;
}

.rm-search-v3-meta strong::before {
  content:"✓";
  margin-right:4px;
}

.rm-search-v3-card h3 {
  margin:0 44px 7px 0;
  color:var(--rm-search-ink);
  font-size:20px;
  font-weight:850;
  line-height:1.2;
  letter-spacing:0;
}

.rm-search-v3-card h3 a {
  color:inherit;
}

.rm-search-v3-rating {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  min-height:22px;
  margin-bottom:10px;
}

.rm-search-v3-rating b {
  color:var(--rm-search-ink);
  font-size:13px;
}

.rm-search-v3-rating > span {
  color:#f2ad1f;
  font-size:12px;
  letter-spacing:1px;
  line-height:1;
}

.rm-search-v3-rating > span.is-muted {
  color:#cdd5e1;
}

.rm-search-v3-rating small {
  color:var(--rm-search-muted);
  font-size:12px;
  font-weight:650;
}

.rm-search-v3-card-main > p {
  display:-webkit-box;
  max-width:560px;
  margin:0 0 13px;
  overflow:hidden;
  color:var(--rm-search-muted);
  font-size:13px;
  line-height:1.52;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.rm-search-v3-chips {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
}

.rm-search-v3-chips span {
  display:inline-flex;
  align-items:center;
  min-height:27px;
  max-width:100%;
  padding:0 9px;
  overflow:hidden;
  border:1px solid #e5eaf2;
  border-radius:999px;
  color:#526078;
  background:#f7f9fc;
  font-size:10px;
  font-weight:750;
  line-height:1;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.rm-search-v3-side {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-width:0;
  padding:48px 16px 16px;
  border-left:1px solid var(--rm-search-line);
  background:#fbfcfe;
}

.rm-search-v3-pass {
  position:absolute;
  top:14px;
  right:auto;
  left:14px;
  display:flex;
  justify-content:flex-start;
  min-height:28px;
}

.rm-search-v3-pass small {
  font-size:0;
  line-height:1;
}

.rm-search-v3-cbr-badge {
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  margin:0;
  padding:0;
  border:1px solid #bde5cc;
  border-radius:50%;
  color:var(--rm-search-green);
  background:var(--rm-search-green-soft);
  box-shadow:none;
  font-size:0!important;
  font-weight:850;
  line-height:1;
  cursor:pointer;
}

.rm-search-v3-cbr-badge::before {
  content:"i";
  display:block;
  color:currentColor;
  font-family:Arial,sans-serif;
  font-size:13px;
  font-style:normal;
  font-weight:850;
  line-height:1;
}

.rm-search-v3-cbr-badge.no-cbr {
  border-color:#d8e0eb;
  color:#8793a7;
  background:#f2f5f9;
}

.rm-search-v3-price {
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:58px;
  margin-bottom:13px;
}

.rm-search-v3-price small,
.rm-search-v3-price span {
  color:var(--rm-search-muted);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
}

.rm-search-v3-price strong {
  display:block;
  color:var(--rm-search-ink);
  font-size:22px;
  font-weight:850;
  line-height:1.05;
}

.rm-search-v3-price.is-empty strong {
  font-size:16px;
  line-height:1.2;
}

.rm-search-v3-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  padding:0 12px;
  border-radius:11px;
  color:#fff!important;
  background:var(--rm-search-blue);
  box-shadow:0 8px 20px rgba(40,100,232,.18);
  font-size:12px;
  font-weight:850;
  line-height:1.2;
  text-align:center;
  transition:background .2s ease,transform .2s ease;
}

.rm-search-v3-button:hover,
.rm-search-v3-button:focus-visible {
  color:#fff!important;
  background:var(--rm-search-blue-dark);
  transform:translateY(-1px);
}

.rm-search-v3-card .rm-favorite-button {
  position:absolute;
  z-index:4;
  top:12px;
  right:12px;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  margin:0;
  padding:0;
  border:1px solid rgba(215,224,236,.95);
  border-radius:50%;
  color:#526078;
  background:rgba(255,255,255,.95);
  box-shadow:0 7px 20px rgba(22,32,51,.11);
}

.rm-search-v3-card .rm-favorite-button svg {
  display:block;
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

.rm-search-v3-card .rm-favorite-button[aria-pressed="true"] {
  color:var(--rm-search-blue);
  border-color:#bed2ff;
  background:var(--rm-search-blue-soft);
}

.rm-search-v3-card .rm-favorite-button[aria-pressed="true"] svg {
  fill:currentColor;
}

/* Empty and loading states */
.rm-search-v3-empty {
  padding:52px 28px;
  border:1px solid var(--rm-search-line);
  border-radius:var(--rm-search-radius);
  background:#fff;
  text-align:center;
}

.rm-search-v3-empty::before {
  content:"";
  display:block;
  width:54px;
  height:54px;
  margin:0 auto 16px;
  border-radius:17px;
  background:var(--rm-search-blue-soft);
}

.rm-search-v3-empty h3 {
  margin:0 0 8px;
  color:var(--rm-search-ink);
  font-size:22px;
  font-weight:850;
}

.rm-search-v3-empty p {
  max-width:560px;
  margin:0 auto;
  color:var(--rm-search-muted);
  font-size:14px;
  line-height:1.55;
}

.rm-search-v3-empty-actions {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:20px;
}

.rm-search-v3-empty-actions button,
.rm-search-v3-empty-actions a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
  border:1px solid var(--rm-search-blue);
  border-radius:11px;
  color:var(--rm-search-blue);
  background:#fff;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}

.rm-search-v3-empty-actions button {
  color:#fff;
  background:var(--rm-search-blue);
}

.rm-search-v3-load {
  display:flex;
  justify-content:center;
  padding:24px 0 4px;
}

.rm-search-v3-load button {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  min-width:230px;
  min-height:52px;
  padding:8px 20px;
  border:1px solid #cbd8ea;
  border-radius:12px;
  color:var(--rm-search-blue);
  background:#fff;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.rm-search-v3-load button small {
  color:var(--rm-search-muted);
  font-size:10px;
  font-weight:650;
}

.rm-search-v3-load button.is-loading {
  opacity:.7;
  cursor:wait;
}

.rm-search-v3-loading {
  position:absolute;
  z-index:8;
  top:18px;
  left:50%;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 15px;
  border:1px solid var(--rm-search-line);
  border-radius:999px;
  color:var(--rm-search-ink);
  background:#fff;
  box-shadow:0 12px 30px rgba(22,32,51,.13);
  font-size:12px;
  font-weight:800;
  transform:translateX(-50%);
}

.rm-search-v3-loading::before {
  content:"";
  width:16px;
  height:16px;
  border:2px solid #cbd8f9;
  border-top-color:var(--rm-search-blue);
  border-radius:50%;
  animation:rm-search-spin .75s linear infinite;
}

.rm-search-v3.is-ajax-loading .rm-search-v3-list {
  min-height:280px;
  opacity:.45;
  pointer-events:none;
}

@keyframes rm-search-spin {
  to { transform:rotate(360deg); }
}

@media (prefers-reduced-motion:reduce) {
  .rm-search-v3-card,
  .rm-search-v3-photo img,
  .rm-search-v3-button,
  .rm-search-v3-loading::before {
    animation:none!important;
    transition:none!important;
  }
}

/* Tablet */
@media (max-width:1050px) and (min-width:821px) {
  .rm-search-v3 {
    width:min(100% - 32px,1100px);
  }

  .rm-search-v3-layout {
    grid-template-columns:240px minmax(0,1fr);
    gap:16px;
  }

  .rm-search-v3-card {
    grid-template-columns:188px minmax(0,1fr);
  }

  .rm-search-v3-photo,
  .rm-search-v3-photo img {
    min-height:210px;
  }

  .rm-search-v3-side {
    grid-column:2;
    display:grid;
    grid-template-columns:minmax(100px,.65fr) minmax(130px,1fr) 28px;
    align-items:center;
    gap:10px;
    padding:13px 16px 16px;
    border-top:1px solid var(--rm-search-line);
    border-left:0;
  }

  .rm-search-v3-pass {
    position:static!important;
    grid-column:3;
    grid-row:1;
  }

  .rm-search-v3-price {
    grid-column:1;
    grid-row:1;
    min-height:46px;
    margin:0;
  }

  .rm-search-v3-button {
    grid-column:2;
    grid-row:1;
  }
}

/* Keep the help mascot available without covering search controls or cards. */
body.page-id-1867 .rm-chat-prompt {
  display:none!important;
}

/* Mobile */
@media (max-width:820px) {
  body.page-id-1867 {
    background:#f6f8fb;
  }

  .rm-search-v3 {
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin:14px auto 52px!important;
  }

  .rm-search-v3-hero {
    grid-template-columns:50px minmax(0,1fr);
    column-gap:12px;
    min-height:0;
    margin-bottom:14px;
    padding:18px;
    border-radius:18px;
  }

  .rm-search-v3-brand {
    width:50px;
    height:50px;
    border-radius:14px;
  }

  .rm-search-v3-brand img {
    width:38px;
    height:38px;
  }

  .rm-search-v3-hero h1 {
    font-size:27px!important;
    line-height:1.08!important;
  }

  .rm-search-v3-hero p {
    margin-top:5px;
    font-size:13px!important;
    line-height:1.45!important;
  }

  .rm-search-v3-layout {
    display:block;
    width:100%!important;
  }

  .rm-search-v3-filters {
    position:static;
    width:100%;
    margin:0 0 12px;
  }

  .rm-filter-wrapper {
    display:block;
    width:100%;
  }

  .rm-filter-mobile-toggle {
    display:grid;
    grid-template-columns:minmax(0,1fr) 40px;
    grid-template-rows:auto auto;
    align-items:center;
    width:100%;
    min-height:58px;
    padding:10px 11px 10px 15px;
    border:1px solid var(--rm-search-line);
    border-radius:15px;
    color:var(--rm-search-ink);
    background:#fff;
    box-shadow:0 7px 22px rgba(22,32,51,.055);
    list-style:none;
    cursor:pointer;
  }

  .rm-filter-mobile-toggle span {
    font-size:13px;
    font-weight:850;
    line-height:1.2;
  }

  .rm-filter-mobile-toggle small {
    color:var(--rm-search-muted);
    font-size:10px;
    font-weight:650;
    line-height:1.25;
  }

  .rm-filter-mobile-toggle::after {
    content:"☷";
    grid-column:2;
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    color:var(--rm-search-blue);
    background:var(--rm-search-blue-soft);
    font-size:18px;
  }

  .rm-filter-wrapper[open]::before {
    content:"";
    position:fixed;
    z-index:999997;
    inset:0;
    background:rgba(15,23,42,.38);
    -webkit-backdrop-filter:blur(2px);
    backdrop-filter:blur(2px);
  }

  .rm-filter-panel {
    position:fixed;
    z-index:999998;
    right:0;
    bottom:0;
    left:0;
    display:none;
    max-height:min(82dvh,760px);
    overflow:hidden;
    border:0;
    border-radius:22px 22px 0 0;
    background:#fff;
    box-shadow:0 -18px 50px rgba(15,23,42,.18);
  }

  .rm-filter-wrapper[open] .rm-filter-panel {
    display:flex;
    flex-direction:column;
  }

  .rm-filter-header {
    grid-template-columns:38px minmax(0,1fr) auto;
    min-height:62px;
    padding:10px 14px;
    background:#fff;
  }

  .rm-filter-sheet-close {
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:1px solid var(--rm-search-line);
    border-radius:50%;
    color:var(--rm-search-ink);
    background:#fff;
    font-size:22px;
    line-height:1;
    cursor:pointer;
  }

  .rm-filter-header h2,
  .rm-filter-header h3 {
    text-align:center;
  }

  .rm-filter-body {
    flex:1 1 auto;
    padding:0 18px 16px;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .rm-filter-block {
    padding:14px 0;
  }

  .rm-filter-block > summary {
    min-height:34px;
    font-size:15px;
  }

  .rm-filter-block .facetwp-facet {
    font-size:14px;
  }

  .rm-search-v3-filters input[type="text"],
  .rm-search-v3-filters input[type="search"],
  .rm-search-v3-filters input[type="number"],
  .rm-search-v3-filters select {
    min-height:48px;
    font-size:16px!important;
  }

  .rm-search-v3-filters .facetwp-type-autocomplete .facetwp-autocomplete-update,
  .rm-search-v3-filters .facetwp-type-autocomplete .rm-search-city-submit,
  .rm-search-v3-filters .facetwp-submit,
  .rm-search-v3-filters .facetwp-btn {
    min-height:48px;
  }

  .rm-filter-actions {
    display:block;
    flex:0 0 auto;
    padding:12px 16px max(12px,env(safe-area-inset-bottom));
    border-top:1px solid var(--rm-search-line);
    background:#fff;
  }

  .rm-filter-show-results {
    width:100%;
    min-height:50px;
    padding:0 16px;
    border:0;
    border-radius:13px;
    color:#fff;
    background:var(--rm-search-blue);
    font-size:14px;
    font-weight:850;
  }

  html.rm-search-v3-filter-open,
  html.rm-search-v3-filter-open body {
    overflow:hidden!important;
  }

  .rm-search-v3-toolbar {
    align-items:center;
    min-height:62px;
    margin-bottom:11px;
    padding:0 2px 11px;
  }

  .rm-search-v3-active-filters {
    width:calc(100% + 16px);
    margin:-3px -16px 12px 0;
    padding:1px 16px 4px 0;
  }

  .rm-search-v3-active-filter {
    min-height:32px;
    font-size:11px;
  }

  .rm-search-v3-title > span {
    font-size:9px;
  }

  .rm-search-v3-title h2 {
    max-width:220px;
    font-size:18px!important;
    line-height:1.18!important;
  }

  .rm-search-v3-actions {
    flex:0 0 auto;
  }

  .rm-search-v3-count,
  .rm-search-v3-sort > span {
    display:none;
  }

  .rm-search-v3-sort select,
  .rm-search-v3-sort .facetwp-sort-select {
    width:116px;
    min-height:40px;
    padding:0 28px 0 10px;
    border-radius:10px;
    font-size:12px;
  }

  .rm-search-v3-list {
    gap:13px;
    width:100%;
  }

  .rm-search-v3-card {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    width:100%;
    min-width:0;
    min-height:0;
    overflow:hidden;
    border-radius:17px;
  }

  .rm-search-v3-card:hover {
    transform:none;
  }

  .rm-search-v3-photo {
    width:100%;
    min-height:0;
    aspect-ratio:16/10;
  }

  .rm-search-v3-photo img,
  .rm-search-v3-photo > span {
    width:100%;
    height:100%;
    min-height:0;
    aspect-ratio:auto;
  }

  .rm-search-v3-card-main {
    min-width:0;
    padding:16px 16px 13px;
  }

  .rm-search-v3-meta {
    margin-right:0;
    margin-bottom:6px;
    font-size:11px;
  }

  .rm-search-v3-card h3 {
    margin-right:0;
    font-size:19px!important;
    line-height:1.2!important;
  }

  .rm-search-v3-rating {
    margin-bottom:9px;
  }

  .rm-search-v3-card-main > p {
    margin-bottom:11px;
    font-size:13px;
    line-height:1.48;
    -webkit-line-clamp:2;
  }

  .rm-search-v3-chips {
    flex-wrap:nowrap;
    max-width:100%;
    overflow-x:auto;
    scrollbar-width:none;
  }

  .rm-search-v3-chips::-webkit-scrollbar {
    display:none;
  }

  .rm-search-v3-chips span {
    flex:0 0 auto;
  }

  .rm-search-v3-side {
    display:grid;
    grid-template-columns:minmax(76px,.58fr) minmax(126px,1fr) 28px;
    align-items:center;
    gap:9px;
    width:100%;
    min-width:0;
    padding:13px 16px 16px;
    border-top:1px solid var(--rm-search-line);
    border-left:0;
  }

  .rm-search-v3-pass {
    position:static;
    grid-column:3;
    grid-row:1;
    align-items:center;
    justify-content:center;
    width:28px;
    min-width:28px;
  }

  .rm-search-v3-price {
    grid-column:1;
    grid-row:1;
    min-width:0;
    min-height:44px;
    margin:0;
  }

  .rm-search-v3-price strong {
    font-size:19px;
  }

  .rm-search-v3-price.is-empty strong {
    font-size:14px;
  }

  .rm-search-v3-button {
    grid-column:2;
    grid-row:1;
    min-width:0;
    min-height:46px;
    font-size:12px;
  }

  .rm-search-v3-card .rm-favorite-button {
    top:11px;
    right:11px;
    width:40px;
    height:40px;
  }

  .rm-search-v3-empty {
    padding:36px 18px;
  }

  .rm-search-v3-empty h3 {
    font-size:19px;
  }

  .rm-search-v3-empty p {
    font-size:13px;
  }

  .rm-search-v3-empty-actions {
    display:grid;
    grid-template-columns:1fr;
  }

  .rm-search-v3-empty-actions button,
  .rm-search-v3-empty-actions a {
    width:100%;
  }
}

@media (max-width:360px) {
  .rm-search-v3 {
    width:calc(100% - 24px)!important;
  }

  .rm-search-v3-hero {
    grid-template-columns:42px minmax(0,1fr);
    padding:15px;
  }

  .rm-search-v3-brand {
    width:42px;
    height:42px;
  }

  .rm-search-v3-brand img {
    width:32px;
    height:32px;
  }

  .rm-search-v3-hero h1 {
    font-size:24px!important;
  }

  .rm-search-v3-title h2 {
    max-width:175px;
    font-size:16px!important;
  }

  .rm-search-v3-sort select,
  .rm-search-v3-sort .facetwp-sort-select {
    width:105px;
  }

  .rm-search-v3-side {
    grid-template-columns:1fr 28px!important;
  }

  .rm-search-v3-price {
    grid-column:1;
  }

  .rm-search-v3-pass {
    grid-column:2!important;
  }

  .rm-search-v3-button {
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%;
  }
}

/* De zoekmodule beheert haar eigen responsieve raster binnen het centrale systeem. */
.rm-search-v3-pass {
  right:auto!important;
  left:14px!important;
  justify-content:flex-start!important;
}

@media (max-width:820px) {
  .rm-search-v3-side {
    grid-template-columns:minmax(76px,.58fr) 28px minmax(126px,1fr)!important;
  }

  .rm-search-v3-pass {
    grid-column:2!important;
    top:auto!important;
    right:auto!important;
    left:auto!important;
    width:28px!important;
  }

  .rm-search-v3-button {
    grid-column:3!important;
  }
}

@media (max-width:360px) {
  .rm-search-v3-side {
    grid-template-columns:1fr 28px!important;
  }

  .rm-search-v3-pass {
    grid-column:2!important;
  }

  .rm-search-v3-button {
    grid-column:1/-1!important;
    grid-row:2!important;
  }
}
