/* ============================================================
 * Блок отзывов (в стиле 2GIS): лёгкая вёрстка без iframe и внешних скриптов.
 * Разметка — inc/reviews.php (dali_reviews_html).
 * ============================================================ */

.dr { --dr-green: #1db93c; display: flex; flex-direction: column; gap: 22px; }

.dr__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.dr__sum { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.dr__logo {
    display: inline-flex; align-items: center; height: 28px; padding: 0 10px; border-radius: 8px;
    background: var(--dr-green); color: #fff; font: 700 13px/1 var(--font-body); letter-spacing: .02em;
}
.dr__avg { font: 700 28px/1 var(--font-head); color: var(--text); }
.dr__stars { color: #ffb400; letter-spacing: 2px; font-size: 16px; }
.dr__cnt { font-size: 14px; color: var(--text-muted); }

.dr__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.dr__card {
    background: #fff; border: 1px solid var(--border); border-radius: var(--r-lg); padding: 22px;
    display: flex; flex-direction: column; gap: 12px; min-width: 0;
}
.dr__head { display: flex; align-items: center; gap: 12px; }
.dr__ava {
    flex: none; width: 44px; height: 44px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--dv-sky), var(--dv-sea)); color: #fff; font: 700 18px/1 var(--font-body);
}
.dr__name { display: block; font: 600 15px/1.25 var(--font-body); color: var(--text); }
.dr__meta { display: block; font-size: 12.5px; color: var(--text-muted); margin-top: 3px; }
.dr__rate { color: #ffb400; letter-spacing: 2px; font-size: 16px; line-height: 1; }
.dr__text {
    margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--n-700);
    display: -webkit-box; -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden;
}
.dr__src { margin-top: auto; font-size: 13px; color: var(--accent); }

@media (max-width: 1000px) {
    .dr__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
    /* на телефоне — горизонтальная лента, чтобы не удлинять страницу */
    .dr__list {
        display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory;
        margin: 0 -16px; padding: 2px 16px 10px; scrollbar-width: none;
    }
    .dr__list::-webkit-scrollbar { display: none; }
    .dr__card { flex: 0 0 86%; scroll-snap-align: center; }
}

/* Фото автора вместо кружка с буквой */
.dr__ava--img { object-fit: cover; background: var(--n-100); }
