/* ========================================================
   ОТЗЫВЫ
   Сетка отзывов, карточки отзывов
======================================================== */

.reviews-grid { 
    display: grid; 
    grid-template-columns: repeat(2, 1fr); 
    gap: var(--spacing-2xl); 
}

/* ========================================================
   КАРТОЧКИ ОТЗЫВОВ
======================================================== */

.review-card { 
    background: white; 
    padding: var(--spacing-3xl) var(--spacing-2xl); 
    border-radius: var(--radius); 
    box-shadow: var(--shadow-sm); 
    border: 2px solid var(--border-color); 
    position: relative; 
}

/* .review-card::before { 
    content: '"'; 
    position: absolute; 
    bottom: var(--spacing-md); 
    right: var(--spacing-md); 
    font-size: 90px; 
    color: var(--border-color); 
    font-family: serif; 
    line-height: 1; 
} */

.review-rating { 
    color: var(--primary); 
    font-size: var(--font-size-xl); 
    margin-bottom: var(--spacing-lg); 
}

.review-text { 
    font-style: italic; 
    color: #475569; 
    margin-bottom: var(--spacing-lg); 
    line-height: 1.6; 
}

.review-author { 
    font-weight: 800; 
    font-family: 'Montserrat', sans-serif; 
    color: var(--dark-bg); 
    text-transform: uppercase; 
}

.review-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.review-rating-stars {
    display: inline-flex;
    gap: 1px;
}

.review-rating-stars svg {
    display: inline-block;
    vertical-align: middle;
}

.review-rating-stars svg:first-child,
.review-rating-stars svg[style*="f39c12"] {
    color: #f39c12;
}

.review-rating-stars svg[style*="cbd5e1"] {
    color: #cbd5e1;
}

.review-meta {
    font-size: 12px;
    color: #94a3b8;
    margin: 5px 0;
}

.review-date {
    font-size: 12px;
    color: #94a3b8;
    margin-top: 4px;
}

.review-entity {
    font-size: 11px;
    color: #64748b;
    margin-bottom: 8px;
    padding: 4px 8px;
    background: #f8fafc;
    border-radius: 4px;
    display: inline-block;
}

.review-photos {
    display: flex;
    gap: 8px;
    margin-top: 12px;
    flex-wrap: wrap;
}

.review-photo-thumb {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 8px;
    cursor: pointer;
    border: 1px solid var(--border-color);
    transition: var(--transition);
}

.review-photo-thumb:hover {
    transform: scale(1.05);
    border-color: var(--primary);
    box-shadow: var(--shadow-md);
}

/* ========================================================
   МОБИЛЬНАЯ АДАПТАЦИЯ
======================================================== */

@media (max-width: 768px) {
    .reviews-grid {
        grid-template-columns: 1fr !important;
        gap: var(--spacing-xl);
    }

    .review-card {
        padding: var(--spacing-xl) var(--spacing-lg);
    }

    .review-rating {
        font-size: var(--font-size-lg);
    }

    .review-header {
        flex-direction: column;
        gap: 8px;
        align-items: flex-start;
    }

    .review-meta,
    .review-date {
        font-size: 11px;
    }

    .review-rating-stars svg {
        width: 12px;
        height: 12px;
    }

    .review-photos {
        gap: 6px;
    }

    .review-photo-thumb {
        width: 50px !important;
        height: 50px !important;
    }
}

@media (max-width: 480px) {
    .review-card {
        padding: var(--spacing-md);
    }

    .review-author {
        font-size: 13px;
    }

    .review-text {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    .review-entity {
        font-size: 10px;
        padding: 3px 6px;
    }

    .review-photo-thumb {
        width: 45px !important;
        height: 45px !important;
    }
}
