/* The first scroll reveals the reviews immediately below the opening screen. */
.pianola-premium .hero.editorial-hero {
  min-height: 100vh;
  min-height: 100svh;
}

.pianola-premium .reviews-section {
  padding: 25px 0 34px;
  border-bottom: 1px solid #e9e9e9;
  background: #fafafa;
}

.reviews-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 clamp(28px, 5.8vw, 96px) 18px;
}

.reviews-heading h2 {
  margin: 0 0 5px;
  color: #171717;
  font-size: clamp(23px, 2.2vw, 32px);
  font-weight: 550;
  line-height: 1.15;
  letter-spacing: -.045em;
}

.reviews-heading p {
  margin: 0;
  color: #686868;
  font-size: 11px;
  line-height: 1.5;
}

.reviews-section .loop-window { padding: 2px clamp(20px, 5.8vw, 96px) 6px; }
.reviews-section .review-list { gap: 16px; padding-right: 16px; }

.review-card {
  display: flex;
  flex-direction: column;
  flex: 0 0 340px;
  width: 340px;
  min-height: 238px;
  padding: 21px 25px 23px;
  border: 1px solid #dfdfdf;
  border-radius: 12px;
  background: #fff;
  color: #242424;
}

.review-quote-mark {
  height: 33px;
  color: #909090;
  font: 48px/1 Georgia, serif;
}

.review-card blockquote { margin: 0 0 22px; }
.review-card blockquote p { margin: 0; font-size: 14px; line-height: 1.65; text-wrap: pretty; }
.review-author { display: flex; align-items: center; gap: 11px; margin-top: auto; }
.review-avatar { display: grid; place-items: center; flex: none; width: 37px; height: 37px; border-radius: 50%; background: #eeeeee; color: #424242; font-size: 11px; font-weight: 550; }
.review-name { display: block; color: #202020; font-size: 12px; font-weight: 650; line-height: 1.5; }
.review-profile { display: block; color: #717171; font-size: 10px; line-height: 1.5; }

@media (max-width: 650px) {
  .pianola-premium .hero.editorial-hero { padding-top: clamp(110px, 18svh, 152px); }
  .pianola-premium .reviews-section { padding: 20px 0 25px; }
  .reviews-heading { gap: 12px; margin: 0 6% 16px; }
  .reviews-heading h2 { font-size: clamp(20px, 5.2vw, 23px); }
  .reviews-heading p { max-width: 240px; font-size: 10px; }
  .reviews-section .review-list { gap: 12px; padding-right: 12px; }
  .review-card { flex-basis: 290px; width: 290px; min-height: 238px; padding: 20px 22px; }
  .review-card blockquote p { font-size: 13px; }
}

/* Portraits are local, small and circular; numbered advice cards stay unchanged. */
#avis .review-avatar--portrait { width: 48px; height: 48px; overflow: hidden; box-shadow: 0 0 0 1px #8884; }
#avis .review-avatar--portrait img { display: block; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); }
.reviews-illustration-note { margin: 14px clamp(28px, 5.8vw, 96px) 0; color: #717171; font-size: 10px; line-height: 1.6; }
@media (max-width: 650px) { .reviews-illustration-note { margin-inline: 6%; } }
