/* Homepage only: full customer quotations and compact map ratings. */
main section.sc-reviews-home .hrv-footer {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end;
  gap:12px 20px; margin-top:22px;
}
main section.sc-reviews-home .hrv-footer>.sc-text-link {
  width:fit-content; min-height:44px; margin:0; padding:8px 0;
  color:#37566d; font-size:15px; line-height:1.4;
}
main section.sc-reviews-home .hrv-controls { display:none; }
main section.sc-reviews-home .hrv-controls[hidden] { display:none!important; }
main section.sc-reviews-home .reviews-list:focus-visible {
  outline:2px solid #37566d; outline-offset:5px;
}

@media (max-width:959px) {
  main section.sc-reviews-home .reviews-list {
    grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px;
  }
  main section.sc-reviews-home .reviews-list .reviews-item.sc-review-card {
    padding:20px;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .head {
    order:0; grid-template-columns:36px minmax(0,1fr); gap:10px;
    margin:0 0 12px; padding:0; border:0;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .head img,
  main section.sc-reviews-home .reviews-list .sc-avatar-initials {
    width:36px; height:36px;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .head .name {
    font-size:15px; line-height:1.35;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .head .status {
    font-size:11px; line-height:1.4;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .stars {
    order:1; margin:0 0 12px;
  }
  main section.sc-reviews-home .reviews-list .reviews-item .desc.sc-review-quote {
    display:block; order:2; margin:0; padding:0;
    height:auto; max-height:none; overflow:visible;
    font-size:15px; line-height:1.55; -webkit-line-clamp:unset;
  }
}

@media (max-width:599px) {
  main section.sc-reviews-home .sc-section-heading { margin-bottom:18px; }
  main section.sc-reviews-home .sc-section-heading .sc-lead {
    font-size:15px; line-height:1.5;
  }
  main section.sc-reviews-home .rr-map-sources {
    grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:18px;
  }
  main section.sc-reviews-home .rr-map-source {
    gap:10px; padding:12px 10px; border-radius:12px; box-shadow:none;
  }
  main section.sc-reviews-home .rr-rating-heading { gap:6px; }
  main section.sc-reviews-home .rr-service-icon {
    width:20px; height:20px; font-size:16px;
  }
  main section.sc-reviews-home .rr-service-icon svg { width:18px; height:18px; }
  main section.sc-reviews-home .rr-map-name { font-size:12px; line-height:1.35; }
  main section.sc-reviews-home .rr-rating-line { gap:8px; }
  main section.sc-reviews-home .rr-rating-value { font-size:34px; }
  main section.sc-reviews-home .rr-rating-detail { gap:0; }
  main section.sc-reviews-home .rr-rating-stars {
    font-size:12px; line-height:1.15; letter-spacing:0;
  }
  main section.sc-reviews-home .rr-map-source .rr-source-caption { display:none; }
  main section.sc-reviews-home .rr-map-source .rr-source-link {
    min-height:32px; margin:0; padding:4px 0; border:0; border-radius:0;
    background:transparent; color:#37566d; font-size:12px; line-height:1.4;
    text-decoration:underline; text-decoration-color:#aabeca; text-underline-offset:3px;
  }
  main section.sc-reviews-home .reviews-list {
    display:grid; grid-template-columns:none; grid-auto-flow:column;
    grid-auto-columns:91%; align-items:stretch; gap:12px;
    overflow-x:auto; overflow-y:hidden; max-width:100%;
    margin:0; padding:0 0 6px; scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#c8d1d8 transparent;
  }
  main section.sc-reviews-home .reviews-list>.reviews-item.sc-review-card {
    width:auto; min-width:0; height:auto; padding:18px;
    scroll-snap-align:start; scroll-snap-stop:always;
  }
  main section.sc-reviews-home .hrv-footer { justify-content:flex-start; gap:12px; margin-top:14px; }
  main section.sc-reviews-home .hrv-footer>.sc-text-link { font-size:14px; }
  main section.sc-reviews-home .hrv-controls:not([hidden]) {
    display:flex; align-items:center; flex:none; gap:8px;
  }
  main section.sc-reviews-home .hrv-control {
    display:grid; place-items:center; flex:none; width:44px; min-width:44px; height:44px;
    margin:0; padding:0; border:1px solid #cbd5de; border-radius:50%;
    background:#fff; color:#37566d; font:22px/1 Arial,sans-serif; cursor:pointer;
  }
  main section.sc-reviews-home .hrv-control:disabled {
    border-color:#e0e5e9; background:transparent; color:#99a4ad; cursor:default;
  }
  main section.sc-reviews-home .hrv-control:focus-visible {
    outline:2px solid #37566d; outline-offset:3px;
  }
  main section.sc-reviews-home .hrv-count {
    min-width:38px; color:#53616a; font-size:13px; line-height:1.4;
    font-variant-numeric:tabular-nums; text-align:center;
  }
}

@media (max-width:359px) {
  main section.sc-reviews-home .hrv-footer { flex-direction:column; align-items:flex-start; gap:6px; }
}
