:root{
  --reviews-bg:#FAFAF9;
  --reviews-surface:#ffffff;
  --reviews-text:#1C1917;
  --reviews-muted:#78716C;
  --reviews-line:#F0EEEC;
  --reviews-orange:#F37A1F;
  --reviews-yellow:#f59e0b;
  --reviews-navy:#061B4E;
  --reviews-navy-soft:#eef1fa;
  --reviews-shadow:0 18px 42px rgba(28, 25, 23, .08);
}

body{
  background:var(--reviews-bg);
  color:var(--reviews-text);
}

.reviews-page{
  width:min(980px,100%);
  margin:0 auto 56px;
}

.reviews-hero,
.reviews-summary,
.review-card,
.reviews-empty{
  border:1px solid var(--reviews-line);
  border-radius:24px;
  background:var(--reviews-surface);
  box-shadow:var(--reviews-shadow);
}

.reviews-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding:22px;
  margin-bottom:16px;
}

.reviews-kicker{
  display:block;
  margin-bottom:4px;
  color:#D9660F;
  font-size:.74rem;
  font-weight:900;
  text-transform:uppercase;
}

.reviews-hero h1{
  margin:0 0 6px;
  font-size:clamp(1.45rem,2.5vw,2rem);
  font-weight:900;
}

.reviews-hero p{
  margin:0;
  color:var(--reviews-muted);
  line-height:1.6;
}

.reviews-back{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 16px;
  border-radius:999px;
  color:var(--reviews-navy)!important;
  background:var(--reviews-navy-soft);
  font-weight:850;
  white-space:nowrap;
}

.reviews-summary{
  padding:18px 22px;
  margin-bottom:16px;
}

.reviews-score{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}

.reviews-score strong{
  font-size:2rem;
  font-weight:900;
  color:var(--reviews-yellow);
}

.reviews-score span:last-child{
  color:var(--reviews-muted);
  font-weight:800;
}

.reviews-stars{
  display:inline-flex;
  gap:2px;
}

.reviews-stars span{
  color:#D6D3D1;
  font-size:1rem;
}

.reviews-stars .is-filled{
  color:var(--reviews-yellow);
}

.reviews-list{
  display:grid;
  gap:12px;
}

.review-card{
  padding:18px;
}

.review-head{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.review-avatar{
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:grid;
  place-items:center;
  border-radius:20px;
  color:var(--reviews-navy);
  background:var(--reviews-navy-soft);
  font-weight:900;
}

.review-meta{
  min-width:0;
  flex:1;
}

.review-topline{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:4px;
}

.review-topline strong{
  font-size:.95rem;
}

.review-topline span{
  color:var(--reviews-muted);
  font-size:.82rem;
  font-weight:700;
  white-space:nowrap;
}

.review-comment{
  margin:10px 0 0 50px;
  color:#5f6b7c;
  line-height:1.65;
}

.reviews-empty{
  padding:34px 20px;
  text-align:center;
}

.reviews-empty-icon{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  margin:0 auto 14px;
  border-radius:32px;
  color:#E7E5E4;
  background:#FAFAF9;
  font-size:1.4rem;
}

.reviews-empty strong{
  display:block;
  font-size:1rem;
}

.reviews-empty p{
  margin:6px 0 0;
  color:var(--reviews-muted);
}

@media (max-width:640px){
  .reviews-hero{
    flex-direction:column;
    align-items:flex-start;
  }

  .reviews-back{
    width:100%;
  }
}
