/* testimonials.css — Reviews page styles */

.page-hero { background: linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%); padding: 56px 0; text-align: center; }
.page-hero h1 { font-size: clamp(1.8rem, 3.5vw, 2.6rem); font-weight: 800; color: var(--white); margin-bottom: 12px; }
.page-hero p { font-size: 1.05rem; color: rgba(255,255,255,0.68); max-width: 500px; margin: 0 auto 24px; }
.rating-summary { display: inline-flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.14); border-radius: 50px; padding: 10px 22px; }
.stars { color: #f59e0b; font-size: 1.1rem; letter-spacing: 2px; }
.rating-text { font-size: 0.92rem; font-weight: 600; color: var(--white); }

.reviews-section { padding: 72px 0; background: var(--offwhite); }
.reviews-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.review-card { background: var(--white); border: 1px solid var(--border); border-radius: 12px; padding: 28px 24px; position: relative; }
.review-card::before { content: '\201C'; position: absolute; top: 16px; right: 20px; font-size: 4rem; color: var(--light-grey); line-height: 1; font-family: Georgia, serif; }
.review-stars { color: #f59e0b; font-size: 0.9rem; letter-spacing: 2px; margin-bottom: 14px; }
.review-text { font-size: 0.92rem; color: var(--text-light); line-height: 1.65; margin-bottom: 20px; }
.review-author { display: flex; align-items: center; gap: 12px; }
.review-avatar { width: 40px; height: 40px; background: var(--navy); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1rem; font-weight: 700; color: var(--gold); flex-shrink: 0; }
.review-author-name { font-size: 0.9rem; font-weight: 700; color: var(--navy); }
.review-author-date { font-size: 0.78rem; color: var(--mid-grey); }

.review-cta { padding: 64px 0; background: var(--navy); text-align: center; }
.review-cta h2 { font-size: 1.8rem; font-weight: 800; color: var(--white); margin-bottom: 12px; }
.review-cta p { font-size: 1rem; color: rgba(255,255,255,0.65); max-width: 480px; margin: 0 auto 28px; }

@media (max-width: 900px) { .reviews-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .reviews-grid { grid-template-columns: 1fr; } }
