:root{--primary:#4285F4;--star-color:#FBBC05;--text-dark:#1a1a2e;--text-medium:#555;--text-light:#888;--bg-white:#ffffff;--bg-light:#f8f9fa;--border:#e0e0e0;--shadow:0 4px 20px rgba(0,0,0,.08);--shadow-hover:0 8px 30px rgba(0,0,0,.15);--radius:16px;--transition:all .3s ease}*{box-sizing:border-box;margin:0;padding:0}.reviews-section{padding:80px 20px;background:var(--bg-light)}.container{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:50px}.section-header h2{font-size:clamp(28px,4vw,42px);font-weight:700;color:var(--text-dark);margin-bottom:10px}.section-subtitle{color:var(--text-light);font-size:16px;margin-bottom:30px}.overall-rating{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:20px}.rating-score{font-size:64px;font-weight:800;color:var(--text-dark);line-height:1}.rating-info{text-align:left}.rating-stars-big{display:flex;gap:4px;margin-bottom:5px}.rating-stars-big .star{font-size:28px;color:#ddd;transition:var(--transition)}.rating-stars-big .star.filled{color:var(--star-color)}.rating-stars-big .star.half-filled{background:linear-gradient(90deg,var(--star-color) 50%,#ddd 50%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rating-count{color:var(--text-light);font-size:14px}.google-badge{display:flex;align-items:center;gap:6px;background:white;border:1px solid var(--border);border-radius:20px;padding:6px 14px;font-size:13px;color:var(--text-medium);font-weight:500}.rating-loading{color:var(--text-light);font-size:16px;animation:pulse 1.5s infinite}.reviews-filters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:40px}.filter-btn{padding:8px 20px;border:2px solid var(--border);border-radius:25px;background:white;color:var(--text-medium);font-size:14px;cursor:pointer;transition:var(--transition);font-weight:500}.filter-btn:hover,.filter-btn.active{border-color:var(--primary);color:var(--primary);background:rgba(66,133,244,.05)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-bottom:50px}.review-card{background:var(--bg-white);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);transition:var(--transition);border:1px solid transparent;position:relative;overflow:hidden;animation:fadeInUp .5s ease forwards;opacity:0}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:rgba(66,133,244,.2)}.review-card::before{content:'"';position:absolute;top:10px;right:20px;font-size:80px;color:rgba(66,133,244,.08);font-family:Georgia,serif;line-height:1;font-weight:bold}.review-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.reviewer-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--border);flex-shrink:0}.reviewer-avatar-placeholder{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:white;flex-shrink:0}.reviewer-info{flex:1;min-width:0}.reviewer-name{font-size:15px;font-weight:600;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-date{font-size:12px;color:var(--text-light);margin-top:2px}.review-stars{display:flex;gap:2px;margin-bottom:12px}.review-stars .star{font-size:16px;color:#ddd}.review-stars .star.filled{color:var(--star-color)}.review-text{font-size:14px;line-height:1.7;color:var(--text-medium)}.review-text.collapsed{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.btn-read-more{background:none;border:none;color:var(--primary);font-size:13px;cursor:pointer;padding:4px 0;margin-top:6px;font-weight:500;transition:var(--transition)}.btn-read-more:hover{opacity:.7}.google-icon{position:absolute;top:20px;right:20px;width:20px;height:20px;opacity:.7}.review-card.hidden{display:none}.reviews-footer{text-align:center;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.btn-more-reviews{display:inline-flex;align-items:center;gap:8px;background:var(--primary);color:white;padding:14px 28px;border-radius:50px;text-decoration:none;font-weight:600;font-size:15px;transition:var(--transition);box-shadow:0 4px 15px rgba(66,133,244,.3)}.btn-more-reviews:hover{background:#3574e2;transform:translateY(-2px);box-shadow:0 6px 20px rgba(66,133,244,.4)}.btn-all-reviews{display:inline-flex;align-items:center;gap:8px;background:white;color:var(--primary);padding:14px 28px;border-radius:50px;text-decoration:none;font-weight:600;font-size:15px;border:2px solid var(--primary);transition:var(--transition)}.btn-all-reviews:hover{background:rgba(66,133,244,.05);transform:translateY(-2px)}.review-card.skeleton{pointer-events:none;opacity:1;animation:none}.skeleton-avatar{width:48px;height:48px;border-radius:50%;background:#e0e0e0;margin-bottom:16px}.skeleton-line{height:12px;background:#e0e0e0;border-radius:6px;margin-bottom:10px;animation:shimmer 1.5s infinite}.skeleton-line.short{width:60%}@keyframes shimmer{0%{background-color:#e0e0e0}50%{background-color:#f0f0f0}100%{background-color:#e0e0e0}}.error-message{text-align:center;padding:60px 20px;color:var(--text-medium)}.error-icon{font-size:48px;margin-bottom:16px}.btn-retry{margin-top:16px;padding:10px 24px;background:var(--primary);color:white;border:none;border-radius:25px;cursor:pointer;font-size:14px;font-weight:500}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}@media (max-width:768px){.reviews-section{padding:50px 15px}.reviews-grid{grid-template-columns:1fr;gap:16px}.overall-rating{flex-direction:column;gap:12px}.rating-info{text-align:center}.reviews-footer{flex-direction:column;align-items:center}}@media (max-width:480px){.review-card{padding:20px}.rating-score{font-size:48px}}