/* Load after the existing homepage styles. Scope: this reviews component only. */
#reviews.hw-reviews {
  color: #272722;
  --hw-review-gap: 24px;
}
#reviews.hw-reviews .hw-reviews-heading {
  margin-bottom: 24px;
}
#reviews.hw-reviews .hw-reviews-viewport {
  display: flex;
  align-items: stretch;
  gap: var(--hw-review-gap);
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 4px 2px 4px;
  margin: 0 -2px;
  outline-offset: 4px;
}
#reviews.hw-reviews .hw-reviews-viewport::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
#reviews.hw-reviews .hw-review-card {
  box-sizing: border-box;
  flex: 0 0 calc((100% - 2 * var(--hw-review-gap)) / 3);
  min-width: 0;
  display: flex;
  scroll-snap-align: start;
  background: #f2efe8;
  color: #272722;
  border: 1px solid #d8d4cc;
  border-top: 3px solid #a9987f;
  border-radius: 8px;
  padding: 26px;
}
#reviews.hw-reviews .hw-review-card blockquote {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
}
#reviews.hw-reviews .hw-review-stars {
  color: #9b722f;
  font-size: 19px;
  line-height: 1.2;
  letter-spacing: 2px;
}
#reviews.hw-reviews .hw-review-quote {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: #272722;
  overflow-wrap: anywhere;
}
#reviews.hw-reviews .hw-review-credit {
  display: grid;
  gap: 5px;
  margin-top: auto;
  padding-top: 8px;
  font-size: 16px;
  line-height: 1.5;
}
#reviews.hw-reviews .hw-review-credit cite {
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  color: #272722;
  overflow-wrap: anywhere;
}
#reviews.hw-reviews .hw-review-source {
  color: #5f4935;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#reviews.hw-reviews .hw-review-source:hover {
  color: #272722;
}
#reviews.hw-reviews .hw-reviews-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
}
#reviews.hw-reviews .hw-reviews-count {
  margin: 0;
  font-size: 16px;
  color: #605d57;
}
#reviews.hw-reviews .hw-reviews-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
#reviews.hw-reviews .hw-reviews-controls[hidden],
#reviews.hw-reviews [data-review-toggle][hidden] {
  display: none;
}
#reviews.hw-reviews .hw-reviews-controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  min-height: 48px;
  margin: 0;
  padding: 10px 16px;
  border: 1px solid #89857c;
  border-radius: 5px;
  background: #fbfaf7;
  color: #272722;
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}
#reviews.hw-reviews [data-review-toggle] {
  min-width: 112px;
}
#reviews.hw-reviews .hw-reviews-controls button:hover:not(:disabled) {
  background: #e8e1d5;
  border-color: #272722;
}
#reviews.hw-reviews .hw-reviews-controls button:disabled {
  opacity: .45;
  cursor: default;
}
#reviews.hw-reviews :is(button, a, .hw-reviews-viewport):focus-visible {
  outline: 3px solid #5f4935;
  outline-offset: 4px;
}
#reviews.hw-reviews .source-note.hw-reviews-note {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.6;
  color: #605d57;
}
@media (max-width: 1023px) {
  #reviews.hw-reviews .hw-review-card {
    flex-basis: calc((100% - var(--hw-review-gap)) / 2);
  }
}
@media (max-width: 639px) {
  #reviews.hw-reviews { --hw-review-gap: 16px; }
  #reviews.hw-reviews .hw-review-card {
    flex-basis: 100%;
    padding: 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #reviews.hw-reviews .hw-reviews-viewport { scroll-behavior: auto; }
}

/* Approved icon-only controls. Lucide pause/play: commit81875c8c42d2320fa5123b37fee3554f4ca2bddc.
 * Full license: assets/licenses/lucide-process-LICENSE.txt. Existing chevrons retain their geometry. */
#reviews.hw-reviews .hw-reviews-bottom{justify-content:flex-end}
#reviews.hw-reviews .hw-reviews-controls button{box-sizing:border-box;width:48px;height:48px;min-width:48px;min-height:48px;padding:10px}
#reviews.hw-reviews [data-review-icon]{display:flex;align-items:center;justify-content:center}
#reviews.hw-reviews [data-review-icon][hidden]{display:none}
#reviews.hw-reviews .hw-review-control-icon{display:block;width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;color:#705c3e}
