.review-section {
  padding: 60px 8%;
  background: #fff;
}
.review-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: flex-start;
}
@media (max-width: 920px) { .review-layout { grid-template-columns: 1fr; gap: 36px; } }
.rating-display{ text-align:center; margin:20px auto 30px;}
.rating-score{
  font-family:'Rozha One', serif;
  font-size:70px; line-height:1;
  color:var(--mf-primary-dark);
  margin-bottom:8px;
}
.rating-stars{
  display:flex; gap:4px; margin-bottom:12px;
  justify-content:center; align-items: center;
}
.rating-stars i{ color:var(--mf-extra); font-size:20px; }
.rating-text{ font-size:15px; color:#555; font-weight:500; }
.rating-text strong{ color:var(--mf-primary); }
.review-intro h2 {
  font-family: 'Rozha One', serif;
  font-size: 36px;
  color: var(--mf-primary);
  margin: 12px 0 16px;
  line-height: 1.3;
}
.review-intro p { color: #777; line-height: 1.8; font-size: 14.5px; margin-bottom: 24px; }
.review-points { display: flex; flex-direction: column; gap: 16px; }
.review-point { display: flex; align-items: flex-start; gap: 12px; }
.review-point i { color: var(--mf-extra); font-size: 16px; margin-top: 2px; flex-shrink: 0; }
.review-point span { color: #666; font-size: 13.5px; line-height: 1.6; }
/* ── Review card / form ── */
.review-card {
  background: var(--mf-cream);
  border-radius: 20px;
  padding: 36px;
  border: 1px solid #f0e8e3;
}
.review-card h3 {
  font-family: 'Rozha One', serif;
  font-size: 22px;
  color: var(--mf-ink);
  margin-bottom: 6px;
}
.review-card .sub { color: #888; font-size: 13px; margin-bottom: 24px; }
.review-form .form-group { margin-bottom: 18px; }
.review-form label {
  display: block; font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.07em;
  margin-bottom: 8px; color: var(--mf-muted);
}
.review-form input,
.review-form textarea {
  width: 100%;
  border: 1.5px solid var(--mf-border);
  border-radius: 12px;
  padding: 11px 15px;
  font-size: 13.5px;
  font-family: 'DM Sans', sans-serif;
  color: var(--mf-ink);
  outline: none;
  background: white;
  transition: .2s;
  resize: vertical;
}
.review-form input:focus,
.review-form textarea:focus {
  border-color: var(--mf-primary);
  box-shadow: 0 0 0 3px rgba(165,42,42,0.08);
}
/* star rating */
.star-rating {
  display: flex; gap: 6px; flex-direction: row-reverse;
}
.star-rating input { display: none; }
.star-rating label {
  font-size: 26px; color: #ddd;
  cursor: pointer; transition: color 0.15s;
  margin: 0;
}
.star-rating label:hover,
.star-rating label:hover ~ label,
.star-rating input:checked ~ label {
  color: var(--mf-extra);
}
.latest-reviews { margin-top: 60px; }
.latest-reviews h3 {
  font-family:'Rozha One',serif; font-size:22px;
  color:var(--mf-primary-dark); margin-bottom:20px;
}
.review-footer{
  text-align: center;
  margin-top: 30px;
}
.view-all-reviews{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 28px;
  border-radius: 50px;
  border: 2px solid var(--mf-primary);
  color: var(--mf-primary);
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  transition: all .3s ease;
}
.view-all-reviews:hover{
  background: var(--mf-primary);
  color: white;
  transform: translateY(-2px);
}
.view-all-reviews i{
  transition: transform .3s ease;
}
.view-all-reviews:hover i{
  transform: translateX(4px);
}