/* Footer */
.footer-by__parent {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 30px;
  padding: 30px;
}

.footer-by__title {
  color: #0A6B6F;
  font-family: Asap, sans-serif;
  font-size: 1rem;
  font-weight: 600;
}

.footer-by__item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-by__image { width: auto; max-height: 60px; }
.footer-by__image--small { max-height: 45px; }
.footer-by__image--tiny { max-height: 40px; }

@media (max-width: 600px) {
  .footer-by__parent { gap: 20px; padding: 20px; }
  .footer-by__item--ful-mobile { flex: 1 0 100%; display: flex; justify-content: center; }
}

/* Social proof */
.social-proof.social-proof--horizontal,  .social-proof {
  gap: 15px;
  flex-wrap: wrap;
  align-items: center;
}

.social-proof__header,  .social-proof__header-title { margin: 0; }

.social-proof__container {
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 30px;
}

.social-proof__container-score,  .social-proof__stars {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Dark background variant */
.background-color-1.background-color-2 {
  background: #0B6B6F;
}

.background-color-1.background-color-2 .rich-text :where(p, h2, h3, h4, a, .typ-h2-bold, .typ-h3-bold, .typ-h4-bold, .typ-lead-regular, small) {
  color: #FFF !important;
}

/* Hero / breadcrumb / swipe */
.swipecontainer__instructions { display: none !important; }

.hero .hero-container { padding: 0 !important; }
.hero .hero-link a.button.secondary { margin-bottom: 0 !important; }

.breadcrumb.component {
  padding: 15px 0 !important;
  margin: 0 !important;
}
.breadcrumb.component .separator { font-size: 0; }

.columns-component-fullwidth .breadcrumb.col-xs-12 {
  padding-top: 15px;
}

/* Layout fixes */
body .container .columns-component-column .background-color-1,
body .container .row-splitter .columns-component-threethirds {
  margin: 0 -15px;
}

/* Mobile */
@media (max-width: 767px) {
  .social-proof { flex-direction: column; }
  .social-proof__container,
  .social-proof__header { flex: 1 0 100%; }

  .columns-component-fourquarts { text-align: center; }
  .columns-component-fourquarts img {
    width: 100%;
    max-width: 200px;
    margin: 0 auto;
    display: block;
  }
}

/* Desktop */
@media (min-width: 992px) {
  .columns-component-fullwidth.indent-bottom.indent-top { position: relative; }

  .columns-component-fullwidth.indent-bottom.indent-top :where(.row, .rowCustom [class*="col-"], .col-md-6) {
    position: static !important;
  }

  /* Image components */
  .columns-component-fullwidth.indent-bottom.indent-top .component.image {
    position: absolute;
    top: 0; bottom: 0;
    width: 45%;
    height: 100%;
    margin: auto;
    overflow: hidden;
  }

  .columns-component-fullwidth.indent-bottom.indent-top .col-md-6 .component.image { left: 0; }
  .columns-component-fullwidth.indent-bottom.indent-top .col-md-6 + .col-md-6 .component.image {
    right: 0; left: auto;
  }

  .columns-component-fullwidth.indent-bottom.indent-top .component.image .field-image,
  .columns-component-fullwidth.indent-bottom.indent-top .component.image img {
    position: absolute;
    width: 100%;
    height: 100%;
  }

  .columns-component-fullwidth.indent-bottom.indent-top .component.image img {
    object-fit: cover;
    border-radius: 0;
  }

  .swipecontainer { margin-left: -30px; }

  .columns-component-fullwidth.indent-bottom.indent-top .component-content {
    padding: 0 15px;
  }

  .columns-component-fullwidth :where(.columns-component-twothirdsonethird, .columns-component-halfhalf) {
    margin: 0 !important;
  }

  .two-columns {
    column-count: 2;
    column-gap: 30px;
  }

  #sc-filter-filtered-items-wrapper {
    padding: 15px 30px;
    width: 100%;
  }
}

/* Promo */
.promo .field-promoicon { border-radius: 20px 20px 0 0; }

/* Filters */
.sc-filter { margin: 0 -15px; }
.sc-filter__result-count { display: none; }

.sc-filter__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 27px;
  font-size: 12px;
  color: #333;
  background: #f2f2f2;
  border-radius: 8px;
  padding: 0 10px;
}

/* Stappenplan */
.stappenplan_lijst-item::before {
  min-width: 20px;
}
@media (min-width: 768px) {
  .stappenplan_lijst-item::before { min-width: 30px; }
}

/* Column splitter */
.column-splitter .col-xs-6 { width: auto; }

.column-splitter .col-xs-6 + .col-xs-6 .link,  .column-splitter .col-xs-6 + .col-xs-6 .component-content {
  padding: 0;
}

/* Status message */
.statusmessage {
  margin-top: 30px;
  max-width: 96%;
}

/* Related products */
.related-products-header .title,
.related-products-header .subtitle
.related-products-header {
  display: none;
}

/* Filter component */
.c-filter__label {
  display: block;
  width: 100%;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.c-filter__options {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  border: 1px solid #969696;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 0.5rem;
}

.c-filter__options--input {
  padding: 0.75rem !important;
  height: auto !important;
}

select.c-filter__options {
  font-size: 15px;
  padding: 0.75rem 0.875rem;
}

.c-filter__option {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid #969696;
  color: #333;
  text-decoration: none;
  padding: 0.75rem;
  margin-left: -1px;
  font-size: 15px;
  cursor: pointer;
}

.c-filter__options input:checked + .c-filter__option {
  color: #006fce;
  background: #E5F0FA;
  text-decoration: underline;
}

.c-filter__options input[type="radio"]:focus + .c-filter__option, .c-filter__options input[type="checkbox"]:focus + .c-filter__option {
  box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px #ca771b inset, 0 0 0 4px #000 inset;
}

.c-filter__option:hover {
  color: #006fce;
  text-decoration: underline;
}

.c-filter__search {
  padding: 0 15px;
}

/* Column spacing — half-half layout */
.columns-component-halfhalf .col-xs-12.col-md-6 .component.plain-html {
  margin: 10px 0 10px -15px;
  width: calc(100% + 15px);
}

.columns-component-halfhalf .col-xs-12.col-md-6 + .col-xs-12.col-md-6 .component.plain-html {
  margin: 10px -15px 10px 0;
}

.columns-component-halfhalf .col-xs-12.col-md-3 .component.plain-html {
  margin: 10px 0 10px -15px;
  width: calc(100% + 15px);
}

.columns-component-halfhalf .col-xs-12.col-md-3 + .col-xs-12.col-md-3 .component.plain-html {
  margin: 10px 0;
}

.columns-component-halfhalf .col-xs-12.col-md-3 + .col-xs-12.col-md-3 + .col-xs-12.col-md-3 .component.plain-html {
  margin: 10px -15px 10px 0;
}

/* Mobile */
@media only screen and (max-width: 768px) {
  .columns-component-halfhalf .col-xs-12.col-md-6 .component.plain-html {
    margin: 5px -15px !important;
    width: 100%;
  }

  .c-filter__options {
    width: calc(100% + 30px);
  }

  body .title h1, main .title h1 {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}

/* Intervention cards */
body .intervention .intervention__content-title {
  height: auto;
  overflow: visible;
}

body .intervention__content-interaction {
  margin-top: auto;
  align-items: center;
}

body .intervention .intervention__content-description {
  min-height: 0;
  height: auto;
  overflow: visible;
  white-space: normal;
  -webkit-line-clamp: none;
  font-size: 15px;
  line-height: 23px;
}

body .intervention {
  box-shadow: none;
}

body .intervention .intervention__content-interaction-action.button-primary {
  font-family: 'Asap', 'Roboto', sans-serif;
  font-size: 15px;
}

body .intervention .intervention__content-read-more, .intervention .intervention__content-interaction-price {
  font-size: 15px;
}

/* Reviews */

.intervention__review {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.intervention__rating {
    position: relative;
    display: inline-flex;
}

.intervention__rating::before {
    content: '★★★★★';
    font-size: 16px;
    color: #D8D8D8;
    background: linear-gradient(90deg, #F4C840 var(--percent, 0%), #D8D8D8 var(--percent, 0%));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.rating-70 { --percent: calc(7.0 / 10 * 100%); }
.rating-71 { --percent: calc(7.1 / 10 * 100%); }
.rating-72 { --percent: calc(7.2 / 10 * 100%); }
.rating-73 { --percent: calc(7.3 / 10 * 100%); }
.rating-74 { --percent: calc(7.4 / 10 * 100%); }
.rating-75 { --percent: calc(7.5 / 10 * 100%); }
.rating-76 { --percent: calc(7.6 / 10 * 100%); }
.rating-77 { --percent: calc(7.7 / 10 * 100%); }
.rating-78 { --percent: calc(7.8 / 10 * 100%); }
.rating-79 { --percent: calc(7.9 / 10 * 100%); }
.rating-80 { --percent: calc(8.0 / 10 * 100%); }
.rating-81 { --percent: calc(8.1 / 10 * 100%); }
.rating-82 { --percent: calc(8.2 / 10 * 100%); }
.rating-83 { --percent: calc(8.3 / 10 * 100%); }
.rating-84 { --percent: calc(8.4 / 10 * 100%); }
.rating-85 { --percent: calc(8.5 / 10 * 100%); }
.rating-86 { --percent: calc(8.6 / 10 * 100%); }
.rating-87 { --percent: calc(8.7 / 10 * 100%); }
.rating-88 { --percent: calc(8.8 / 10 * 100%); }
.rating-89 { --percent: calc(8.9 / 10 * 100%); }
.rating-90 { --percent: calc(9.0 / 10 * 100%); }

.intervention__score {
    color: rgba(51,51,51,0.7);
    font-size: 14px;
}

.intervention .intervention__content-description {
    font-size: 16px;
    line-height: 1.6;
    min-height: 72px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    white-space: pre-wrap;
}

.intervention .intervention__content.active .intervention__content-title {
    max-height: 55px;
}

/* USP list */

.usp__list {
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 30px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.usp__list li {
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    gap: 10px;
    text-align: center;
    background: #FFF;
    padding: 20px;
    border-radius: 10px;
    flex: 1 0 20%;
    max-width: 200px;
    margin: 0;
}

.usp__list li em.fa-check {
    color: #009d30;
    font-size: 1.2rem;
}

/* Hero */

.hero-title h1 {max-width: 22ch;}
.hero-subtitle p {max-width: 55ch;}

/* Tooltip slider */

.btn-tooltip-slider {
  cursor: pointer;
  color: rgba(0, 111, 206, 1);
}
.btn-tooltip-slider:after {
  content: none;
}

.btn-tooltip-slider:hover {
  color: rgba(0, 111, 206, .8);
}

.tooltip-slider__section {
  max-width: 640px;
}
.tooltip-slider__section-content + .tooltip-slider__section-divider,
.tooltip-slider__section-footer {
  display: none;
}