.reviews-2gis-section{background:var(--bg-secondary,#f8fafc);padding:5rem 0}.reviews-2gis-section .container{max-width:1200px;margin:0 auto;padding:0 1rem}.reviews-2gis-section .section-header{text-align:center;margin-bottom:3rem}.reviews-2gis-section .section-title{font-size:2.5rem;font-weight:var(--font-weight-extrabold,800);color:var(--text-primary,#1a252f);margin-bottom:1rem}.reviews-2gis-section .section-description{color:var(--text-secondary,#495057);max-width:600px;margin:0 auto;font-size:1.1rem}.reviews-stats-block{background:var(--bg-card,#fff);border-radius:var(--radius-xl,20px);box-shadow:var(--shadow-lg,0 10px 30px #0000001a);align-items:center;gap:3rem;margin-bottom:3rem;padding:2rem;display:flex}.stats-main{flex-direction:column;align-items:center;min-width:200px;display:flex}.average-rating{flex-direction:column;align-items:center;gap:.5rem;display:flex}.rating-number{font-size:4rem;font-weight:var(--font-weight-extrabold,800);color:var(--primary-color,#00a33e);line-height:1}.total-reviews{color:var(--text-tertiary,#6b7280);margin-top:.25rem;font-size:.95rem}.rating-source{background:var(--bg-secondary,#f8fafc);border-radius:var(--radius-md,8px);color:var(--text-secondary,#495057);align-items:center;gap:.5rem;margin-top:1rem;padding:.5rem 1rem;font-size:.85rem;display:flex}.source-logo{color:var(--primary-color,#00a33e)}.star-rating{gap:4px;display:flex}.star-rating--sm{font-size:.85rem}.star-rating--md{font-size:1rem}.star-rating--lg{font-size:1.5rem}.star-filled{color:gold}.star-empty{color:#e0e0e0}.rating-distribution{flex-direction:column;flex:1;gap:8px;display:flex}.rating-bar{align-items:center;gap:8px;display:flex}.rating-label{width:16px;font-weight:var(--font-weight-semibold,600);color:var(--text-primary,#1a252f);text-align:right}.star-icon{color:gold;font-size:.85rem}.bar-container{background:#e0e0e0;border-radius:4px;flex:1;height:8px;overflow:hidden}.bar-fill{background:var(--primary-gradient,linear-gradient(135deg,#2fa838 0%,#eaea33 100%));border-radius:4px;height:100%;transition:width .5s}.rating-count{width:30px;color:var(--text-tertiary,#6b7280);text-align:right;font-size:.85rem}.reviews-grid{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.review-card{background:var(--bg-card,#fff);border-radius:var(--radius-xl,20px);box-shadow:var(--shadow-lg,0 10px 30px #0000001a);transition:var(--transition-bounce,all .4s cubic-bezier(.68,-.55,.265,1.55));border:2px solid #0000;padding:1.5rem;position:relative}.review-card:before{content:"";background:var(--primary-gradient,linear-gradient(135deg,#2fa838 0%,#eaea33 100%));border-radius:20px 20px 0 0;height:4px;transition:transform .4s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.review-card:hover{box-shadow:var(--shadow-2xl,0 30px 60px #0003);border-color:#00a33e26;transform:translateY(-8px)scale(1.01)}.review-card:hover:before{transform:scaleX(1)}.review-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.review-author{align-items:center;gap:12px;display:flex}.author-avatar,.author-avatar-placeholder{object-fit:cover;border-radius:50%;flex-shrink:0;width:48px;height:48px}.author-avatar-placeholder{background:var(--primary-gradient,linear-gradient(135deg,#2fa838 0%,#eaea33 100%));color:#fff;font-weight:var(--font-weight-bold,700);justify-content:center;align-items:center;font-size:1.2rem;display:flex}.author-avatar-placeholder.hidden{display:none}.author-info{flex-direction:column;gap:2px;display:flex}.author-name{font-weight:var(--font-weight-semibold,600);color:var(--text-primary,#1a252f);font-size:1rem}.review-date{color:var(--text-tertiary,#6b7280);font-size:.85rem}.review-text{color:var(--text-secondary,#495057);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin-bottom:.5rem;line-height:1.6;display:-webkit-box;overflow:hidden}.review-text.expanded{-webkit-line-clamp:unset;display:block}.expand-btn{color:var(--primary-color,#00a33e);cursor:pointer;font-weight:var(--font-weight-medium,500);background:0 0;border:none;padding:0;font-size:.9rem;transition:color .2s}.expand-btn:hover{color:var(--primary-dark,#008c35)}.review-photos{flex-wrap:wrap;gap:8px;margin-top:1rem;display:flex}.review-photo{object-fit:cover;border-radius:var(--radius-md,8px);cursor:pointer;width:80px;height:80px;transition:transform .2s,box-shadow .2s}.review-photo:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.company-response{background:var(--bg-secondary,#f8fafc);border-radius:var(--radius-md,8px);border-left:3px solid var(--primary-color,#00a33e);margin-top:1rem;padding:1rem}.response-header{color:var(--primary-color,#00a33e);font-weight:var(--font-weight-semibold,600);align-items:center;gap:8px;margin-bottom:.5rem;font-size:.9rem;display:flex}.company-response p{color:var(--text-secondary,#495057);margin:0;font-size:.95rem;line-height:1.5}.reviews-pagination{justify-content:center;align-items:center;gap:.5rem;margin-top:3rem;display:flex}.pagination-btn{border-radius:var(--radius-md,8px);background:var(--bg-card,#fff);width:40px;height:40px;color:var(--text-primary,#1a252f);font-weight:var(--font-weight-semibold,600);cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;transition:all .2s;display:flex;box-shadow:0 2px 8px #00000014}.pagination-btn:hover:not(:disabled){border-color:var(--primary-color,#00a33e);color:var(--primary-color,#00a33e)}.pagination-btn.active{background:var(--primary-gradient,linear-gradient(135deg,#2fa838 0%,#eaea33 100%));color:#fff;border-color:#0000}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-ellipsis{color:var(--text-tertiary,#6b7280);padding:0 .5rem}.reviews-loading,.reviews-empty,.reviews-error{text-align:center;color:var(--text-secondary,#495057);padding:4rem 2rem}.reviews-loading i,.reviews-empty i,.reviews-error i{color:var(--text-tertiary,#6b7280);margin-bottom:1rem;font-size:3rem}.reviews-error i{color:#ef4444}.loading-spinner{border:4px solid #e0e0e0;border-top-color:var(--primary-color,#00a33e);border-radius:50%;width:48px;height:48px;margin:0 auto 1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.photo-lightbox{z-index:9999;cursor:pointer;background:#000000e6;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.photo-lightbox img{object-fit:contain;border-radius:var(--radius-md,8px);max-width:90vw;max-height:90vh;box-shadow:0 20px 60px #00000080}.lightbox-close{cursor:pointer;width:48px;height:48px;color:var(--text-primary,#1a252f);background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;transition:transform .2s;display:flex;position:absolute;top:20px;right:20px}.lightbox-close:hover{transform:scale(1.1)}@media (max-width:992px){.reviews-stats-block{text-align:center;flex-direction:column;gap:2rem}.stats-main{min-width:auto}.rating-distribution{width:100%;max-width:400px}}@media (max-width:768px){.reviews-2gis-section{padding:3rem 0}.reviews-2gis-section .section-title{font-size:1.75rem}.reviews-grid{grid-template-columns:1fr;gap:1.5rem}.reviews-stats-block{margin-bottom:2rem;padding:1.5rem}.rating-number{font-size:3rem}.review-card{padding:1.25rem}.review-header{flex-direction:column;gap:.75rem}.author-avatar,.author-avatar-placeholder{width:40px;height:40px}.review-photo{width:60px;height:60px}.pagination-btn{width:36px;height:36px;font-size:.9rem}}@media (max-width:480px){.reviews-2gis-section .container{padding:0 .75rem}.rating-number{font-size:2.5rem}.star-rating--lg{font-size:1.25rem}.review-photos{gap:6px}.review-photo{width:50px;height:50px}}
