/* ==========================================================================
   Testimonials: Trustindex Google reviews styled like .grid--testimonials-item
   Wrapper #rm-ti-reviews is added by rm-site-customizations.php.
   ========================================================================== */
#rm-ti-reviews { width: 100%; }
#rm-ti-reviews .ti-widget .ti-widget-container { margin-bottom: 0; }

/* Masonry columns: 3 / 2 (<=767px) / 1 (<=479px), same as the native grid */
#rm-ti-reviews .ti-widget .ti-reviews-container-wrapper {
  display: block !important;
  column-count: 3;
  column-gap: 0 !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
#rm-ti-reviews .ti-widget .ti-review-item {
  display: block;
  flex: none !important;
  max-width: none !important;
  width: auto !important;
  padding: 10px !important;
  transform: none !important;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
}
@media (max-width: 767px) {
  #rm-ti-reviews .ti-widget .ti-reviews-container-wrapper { column-count: 2; }
}
@media (max-width: 479px) {
  #rm-ti-reviews .ti-widget .ti-reviews-container-wrapper { column-count: 1; }
}

/* Card */
#rm-ti-reviews .ti-widget .ti-review-item > .ti-inner {
  display: flex !important;
  flex-direction: column;
  gap: 24px !important;
  position: relative;
  box-sizing: border-box;
  padding: 74px 32px 54px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: #fff !important;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  color: #000;
  transition: none;
}

/* Stars first, in the site's gold */
#rm-ti-reviews .ti-widget .ti-review-item .ti-inner > .ti-stars {
  order: -1;
  display: block;
  width: 310px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 310 / 44;
  margin: 0 !important;
  line-height: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 62 44'%3E%3Cpath d='M22.8252 0L28.2135 16.5836H45.6506L31.5437 26.8328L36.932 43.4164L22.8252 33.1672L8.71835 43.4164L14.1067 26.8328L-0.000160217 16.5836H17.4369L22.8252 0Z' fill='%23D2B281'/%3E%3C/svg%3E") left top / 20% 100% repeat-x;
}
#rm-ti-reviews .ti-widget .ti-review-item .ti-inner > .ti-stars > * {
  display: none !important;
}

/* Reviewer name as the card title */
#rm-ti-reviews .ti-widget .ti-review-item .ti-review-header {
  align-items: center;
}
#rm-ti-reviews .ti-widget .ti-widget-container .ti-name {
  font-family: FrankRuhlLibre, serif;
  font-weight: 700;
  font-size: var(--step-2);
  line-height: 1.6;
  color: #000;
  white-space: normal;
}
#rm-ti-reviews .ti-widget .ti-widget-container .ti-date {
  font-family: Montserrat, sans-serif;
  font-size: var(--step--1);
  color: #000;
  opacity: .6;
}

/* Review text: full text, like the native cards */
#rm-ti-reviews .ti-widget .ti-review-item .ti-review-content {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  font-family: Montserrat, sans-serif;
  font-size: var(--step-0);
  font-weight: 400;
  line-height: 1.6;
  color: #000;
}
#rm-ti-reviews .ti-widget .ti-read-more { display: none !important; }

/* Hover: navy card, white text, gold bars on top (same as the native cards) */
#rm-ti-reviews .ti-widget .ti-review-item:hover > .ti-inner {
  background-color: #061a3d !important;
  background-image: linear-gradient(#fff, #fff) !important;
  background-size: 100% 36px !important;
  background-repeat: no-repeat !important;
  box-shadow: none;
  color: #fff;
}
#rm-ti-reviews .ti-widget .ti-review-item:hover > .ti-inner::before,
#rm-ti-reviews .ti-widget .ti-review-item:hover > .ti-inner::after {
  content: '';
  display: block !important;
  position: absolute;
  left: 0;
  height: 18px;
  clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}
#rm-ti-reviews .ti-widget .ti-review-item:hover > .ti-inner::before {
  top: 0;
  width: 100%;
  background-color: #d2b281;
}
#rm-ti-reviews .ti-widget .ti-review-item:hover > .ti-inner::after {
  top: 18px;
  width: 70%;
  background-color: #e3d9ca;
}
#rm-ti-reviews .ti-widget .ti-review-item:hover .ti-name,
#rm-ti-reviews .ti-widget .ti-review-item:hover .ti-date,
#rm-ti-reviews .ti-widget .ti-review-item:hover .ti-review-content {
  color: #fff;
}

/* Load more button, same look as the site's gold buttons */
#rm-ti-reviews .ti-widget .ti-load-more-reviews-container {
  text-align: center;
  margin: 40px 0 0;
}
#rm-ti-reviews .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button {
  margin-top: 0;
  padding: 21px 48px;
  border: 1px solid #D2B281 !important;
  border-radius: 0;
  background-color: #D2B281 !important;
  color: #fff !important;
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  text-transform: uppercase;
  transition: background-color .3s ease, border-color .3s ease;
}
#rm-ti-reviews .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button:hover {
  background-color: #061a3d !important;
  border-color: #061a3d !important;
  color: #fff !important;
}
@media (max-width: 767px) {
  #rm-ti-reviews .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button {
    padding: 16px 32px;
    font-size: 16px;
  }
}
