/* Reviews page styles (keeps to base.css conventions) */
.section { padding-block: var(--space-12); }
.muted { color: var(--gray-600); }
.muted-bg { background: var(--color-muted); }

/* Hero */
.reviews-hero { padding-block: var(--space-12) var(--space-10); background: linear-gradient(180deg, rgba(37,99,235,.06), transparent); }
.hero-grid { grid-template-columns: 1.1fr .9fr; gap: var(--space-9); align-items: center; }
.hero-copy p { margin-block-end: var(--space-7); }
.hero-media img { border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); border: 1px solid var(--color-border); }
@media (max-width: 900px) { .hero-grid { grid-template-columns: 1fr; } }

/* Breadcrumbs */
.breadcrumbs { margin-bottom: var(--space-5); color: var(--gray-600); }
.crumbs { display: inline-flex; gap: var(--space-4); align-items: center; }
.crumbs li+li::before { content: "/"; margin-inline: var(--space-4); color: var(--gray-400); }

/* Controls */
.controls { display: grid; grid-auto-flow: column; align-items: end; gap: var(--space-7); }
.sort-row { display: grid; grid-template-columns: auto minmax(160px, 1fr); align-items: center; gap: var(--space-4); }
@media (max-width: 800px) { .controls { grid-auto-flow: row; justify-items: start; } }

/* Review cards */
.review-card .card-media img { border-radius: var(--radius-md); border: 1px solid var(--color-border); }
.rating-row { display: inline-flex; gap: var(--space-4); align-items: center; margin-top: var(--space-3); }
.rating-number { color: var(--gray-600); font-weight: 600; }

/* Stars */
.star-rating { display: inline-flex; align-items: center; gap: 2px; line-height: 1; }
.star { font-size: 18px; color: var(--gray-300); }
.star.filled { color: #f59e0b; }
.star.half { background: linear-gradient(90deg, #f59e0b 50%, var(--gray-300) 50%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; color: #f59e0b; }
.star-rating.small .star { font-size: 14px; }

/* Top rated list */
.top-rated-list { display: grid; gap: var(--space-4); margin-top: var(--space-6); }
.top-rated-item { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: var(--space-5); padding: var(--space-5) var(--space-6); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); }

/* Testimonials & Experts */
.testimonials-grid, .experts-grid, .compare-grid, .picks-grid { grid-template-columns: repeat(3, 1fr); gap: var(--space-8); }
@media (max-width: 1000px) { .testimonials-grid, .experts-grid, .compare-grid, .picks-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .testimonials-grid, .experts-grid, .compare-grid, .picks-grid { grid-template-columns: 1fr; } }

/* Compare */
.compare-card ul { margin: 0 0 var(--space-5) 1.1em; }

/* Trending */
.trends { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-6); }

/* Ratings summary */
.ratings-summary { display: grid; grid-template-columns: .6fr 1fr; gap: var(--space-9); align-items: start; }
.avg-score { display: grid; gap: var(--space-3); align-items: start; }
.avg-number { font-size: var(--fs-5xl); font-weight: 800; }
.bars { display: grid; gap: var(--space-3); }
.bar-row { display: grid; grid-template-columns: 100px 1fr 50px; align-items: center; gap: var(--space-4); }
.bar { background: var(--gray-100); border: 1px solid var(--color-border); border-radius: var(--radius-full); overflow: hidden; height: 10px; }
.bar .fill { display: block; height: 100%; width: 0%; background: linear-gradient(90deg, #22c55e, #2563eb); transition: width var(--duration-slow) var(--ease-standard); }
@media (max-width: 900px) { .ratings-summary { grid-template-columns: 1fr; } .bar-row { grid-template-columns: 90px 1fr 40px; } }

/* CTA Row */
.cta-row { margin-top: var(--space-8); display: flex; gap: var(--space-5); flex-wrap: wrap; }
