/* Testimonials: shared by the central directory and course-specific pages */
.fc-review-intro{max-width:780px;margin:0 auto 30px;text-align:center}
.fc-review-label{font-weight:800;letter-spacing:.09em;font-size:13px;text-transform:uppercase;color:#147557;margin-bottom:12px}
.fc-review-intro p{color:#536477;line-height:1.7}
.fc-review-stage{background:#f8fafc}
.fc-review-hero{padding:38px 0 25px}
.fc-review-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;align-items:end;margin:25px 0}
.fc-review-controls label{display:block;font-weight:700;margin-bottom:8px;color:#304254}
.fc-review-controls input,.fc-review-controls select{display:block;width:100%;padding:12px 14px;border:1px solid #ccd7e0;border-radius:10px;background:#fff;min-height:48px}
.fc-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.fc-review-card{min-width:0;display:flex;flex-direction:column;padding:26px;border:1px solid #e4eaf0;border-radius:18px;background:white;box-shadow:0 10px 24px rgba(16,38,60,.05)}
.fc-review-score{display:flex;align-items:center;gap:12px;min-height:27px;font-size:13px;color:#394b60}
.fc-review-stars{color:#d69a18;font-size:21px;letter-spacing:2px}
.fc-review-unrated{font-size:12px;color:#67778a}
.fc-review-card h3{font-size:21px;line-height:1.4;margin:14px 0 10px}
.fc-review-card>p:not(.fc-review-course){line-height:1.8;color:#4c5c6c;margin-bottom:20px}
.fc-review-person{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid #edf1f5}
.fc-review-initials{flex:0 0 46px;height:46px;width:46px;display:grid;place-items:center;border-radius:50%;background:#e3f2eb;color:#156f52;font-weight:800}
.fc-review-photo{width:46px;height:46px;margin:0;flex:0 0 46px}
.fc-review-photo img{border-radius:50%;width:46px;height:46px;object-fit:cover}
.fc-review-person-info{display:flex;flex:1;min-width:0;flex-direction:column;line-height:1.35}
.fc-review-person-info strong{font-size:14px;color:#253747}
.fc-review-person-info small{font-size:12px;color:#728196;margin-top:3px}
.fc-review-person a{color:#146b51;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.fc-review-course{font-size:12px;color:#66778b;border-top:1px solid #edf1f5;margin:13px 0 0;padding-top:11px}
.fc-review-course a{color:#156c53;font-weight:700}
.fc-review-notice{font-size:13px;color:#5d6d7f;line-height:1.75;margin:20px 0}
.fc-review-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0}
.fc-review-directory li{margin:0}
.fc-review-directory a{display:flex;flex-direction:column;gap:6px;min-height:80px;padding:13px 16px;border-radius:12px;border:1px solid #dce5ec;background:#fff;color:#263747}
.fc-review-directory a:hover,.fc-review-directory a:focus{border-color:#177558;color:#116c4d}
.fc-review-directory small{color:#627385;font-size:12px}
.fc-review-empty{padding:22px;border:1px dashed #cbd6df;border-radius:12px;background:#fff;color:#546778}
.fc-review-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.fc-review-link{display:inline-flex;align-items:center;padding:11px 18px;border:1px solid #147354;border-radius:10px;color:#136f52;font-weight:700}
.fc-review-link:hover{background:#147354;color:#fff}
.fc-review-section-subtitle{margin:40px 0 22px}
.fc-review-directory-filter{max-width:470px;margin-bottom:20px}
.fc-review-directory-filter label{display:block;margin-bottom:8px;font-weight:700}
.fc-review-directory-filter input{width:100%;padding:12px;border:1px solid #ccd7e0;border-radius:10px}
@media(max-width:991px){.fc-review-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.fc-review-controls{grid-template-columns:1fr}.fc-review-grid,.fc-review-directory{grid-template-columns:1fr}.fc-review-card{padding:20px}.fc-review-hero{padding-top:23px}}
