/* King Transport - Google reviews section at the bottom of the Services page */
#ktReviewsCell {
  -ms-grid-column: 3; -ms-grid-column-span: 24; grid-column: 3 / 27;
  -ms-grid-row: 6; grid-row: 6 / 7;
  position: relative; box-sizing: border-box;
  padding: 60px 50px 70px;
  background: linear-gradient(180deg, #2a2d30 0%, #1b1d1f 100%);
  border-top: 1px solid rgba(212, 175, 55, 0.35);
  margin: 0 -5px 0 -50px; /* line up with the full-width page bands above */
}
@media (max-width: 719.9px) and (min-width: 480px) {
  #ktReviewsCell { grid-column: 2 / 26; grid-row: 9 / 10; margin: 0; padding: 40px 20px 50px; }
}
@media (max-width: 479.9px) {
  #ktReviewsCell { grid-column: 2 / 26; grid-row: 8 / 9; margin: 0; padding: 34px 14px 44px; }
}

#ktReviews { max-width: 880px; margin: 0 auto; font-family: 'Prompt', Arial, sans-serif; color: #eee; }
#ktReviews .kt-rev-title {
  margin: 0 0 8px; text-align: center;
  font: normal 30px/1.25 Georgia, 'Times New Roman', serif; letter-spacing: 1px; text-transform: uppercase;
  color: #d4af37; text-shadow: 0 1px 0 #8a6d1d, 0 2px 4px rgba(0, 0, 0, 0.45);
}
#ktReviews .kt-rev-summary {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px;
  margin: 0 0 22px; font-size: 15px; color: #ddd;
}
#ktReviews .kt-rev-score { font-size: 26px; font-weight: bold; color: #fff; }
#ktReviews .kt-rev-stars { color: #fbbc04; font-size: 20px; letter-spacing: 1px; }
#ktReviews .kt-rev-stars .off { color: #555; }
#ktReviews .kt-rev-stars.small { font-size: 14px; }

/* the scrolling box */
#ktReviews .kt-rev-viewport {
  position: relative; height: 420px; overflow: hidden;
  border: 1px solid rgba(212, 175, 55, 0.45); border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 36px, #000 calc(100% - 36px), transparent 100%);
          mask-image: linear-gradient(to bottom, transparent 0, #000 36px, #000 calc(100% - 36px), transparent 100%);
}
#ktReviews .kt-rev-track { padding: 16px 18px 0; }
#ktReviews.kt-rev-moving .kt-rev-track { animation: ktRevScroll linear infinite; will-change: transform; }
#ktReviews.kt-rev-moving .kt-rev-viewport:hover .kt-rev-track,
#ktReviews.kt-rev-moving .kt-rev-viewport:focus-within .kt-rev-track { animation-play-state: paused; }
#ktReviews.kt-rev-static .kt-rev-viewport { height: auto; max-height: 420px; overflow-y: auto; -webkit-mask-image: none; mask-image: none; }
@keyframes ktRevScroll { from { transform: translateY(0); } to { transform: translateY(-50%); } }

#ktReviews .kt-rev-card {
  background: #fff; color: #222; border-radius: 10px;
  padding: 16px 18px; margin: 0 0 16px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}
#ktReviews .kt-rev-head { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
#ktReviews .kt-rev-avatar {
  flex: none; width: 38px; height: 38px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: #d4af37; color: #1b1d1f; font-weight: bold; font-size: 17px;
}
#ktReviews .kt-rev-name { font-weight: bold; font-size: 14px; }
#ktReviews .kt-rev-meta { font-size: 12px; color: #777; }
#ktReviews .kt-rev-g {
  margin-left: auto; font: bold 20px Arial, sans-serif;
  background: conic-gradient(from -45deg, #ea4335 0 25%, #4285f4 0 50%, #34a853 0 75%, #fbbc04 0);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
#ktReviews .kt-rev-text { margin: 0; font: 14.5px/1.55 Georgia, 'Times New Roman', serif; color: #333; }

#ktReviews .kt-rev-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 22px; }
#ktReviews .kt-rev-btn {
  display: inline-block; padding: 11px 22px; border-radius: 26px; text-decoration: none;
  font: bold 14px 'Prompt', Arial, sans-serif; letter-spacing: 0.3px;
  transition: transform 150ms ease, background-color 150ms ease;
}
#ktReviews .kt-rev-btn:hover { transform: translateY(-2px); }
#ktReviews .kt-rev-btn.gold { background: #d4af37; color: #1b1d1f !important; }
#ktReviews .kt-rev-btn.gold:hover { background: #e2c25a; }
#ktReviews .kt-rev-btn.ghost { border: 1px solid #d4af37; color: #d4af37 !important; }
#ktReviews .kt-rev-btn.ghost:hover { background: rgba(212, 175, 55, 0.12); }

@media (max-width: 479.9px) {
  #ktReviews .kt-rev-title { font-size: 23px; }
  #ktReviews .kt-rev-viewport { height: 380px; }
  #ktReviews .kt-rev-track { padding: 12px 10px 0; }
}
