/* Reviews feed from Figma 3:1482: 692 px cards on 1710, gap 10, brand bar at the bottom. */
.reviews { margin:0 var(--page-gutter) var(--section-gap); scroll-margin-top:calc(var(--topbar-h) + var(--space-24)); }
.reviews-heading { display:flex; align-items:center; justify-content:space-between; gap:var(--space-16); margin-bottom:var(--space-32); }
.reviews-heading h2 { margin:0; font-weight:400; }
.review-track { gap:10px; }
.review-card { --review-brand:var(--color-accent); flex:0 0 88%; display:flex; flex-direction:column; border-radius:4px; overflow:hidden; color:var(--color-ink); background:var(--color-review-surface); }
.review-body { flex:1 1 auto; display:flex; flex-direction:column; gap:var(--space-32); padding:var(--space-48) var(--space-24) var(--space-32); border-bottom:1px solid var(--color-steel); }
.review-mark { display:block; width:40px; height:40px; background:var(--color-accent); mask:url('/assets/figma-mm2/quote-mark.svg') center/contain no-repeat; }
.review-card blockquote { margin:0; text-wrap:pretty; font-weight:400; }
.review-full { display:inline-flex; align-items:center; gap:var(--space-12); align-self:flex-start; margin:0; padding:0; min-height:22px; border:0; background:none; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.review-full i { font-size:18px; }
.review-author-row { display:grid; grid-template-columns:minmax(0,1fr) 112px; border-bottom:1px solid var(--color-steel); }
.review-author { display:grid; align-content:center; gap:5px; padding:var(--space-24); }
.review-author-row img { display:block; width:100%; height:100%; aspect-ratio:1; object-fit:cover; object-position:var(--review-photo-position,center); }
.review-brand-bar { display:block; height:20px; background:var(--review-brand); }
.reviews-draft { margin:var(--space-16) 0 0; color:var(--color-muted); }
@media (max-width:599px) {
  .review-card { flex-basis:100%; }
  .review-body { gap:var(--space-24); padding:var(--space-24) var(--space-20); }
  .review-mark { width:28px; height:28px; }
  .review-full { min-height:44px; }
  .review-author-row { grid-template-columns:minmax(0,1fr) 64px; align-items:center; }
  .review-author { padding:var(--space-20); }
  .review-avatar i { font-size:var(--text-28); }
  .review-brand-bar { height:8px; }
  .review-dialog { padding:var(--space-24) var(--space-20); }
}
@media (min-width:600px) { .review-card { flex-basis:calc((100% - 10px) / 1.5); } }
@media (min-width:1100px) {
  .reviews-heading { margin-bottom:var(--space-48); }
  .review-card { flex-basis:calc((100% - 10px) / 2.4); }
  .review-body { min-height:414px; padding:var(--space-64) var(--space-32) var(--space-32); }
  .review-mark { width:48px; height:48px; }
  .review-author-row { grid-template-columns:minmax(0,1fr) 149px; }
  .review-author { padding:var(--space-40) var(--space-32); }
}
@media (min-width:1400px) { .reviews-heading { margin-bottom:70px; } }
.review-dialog { width:min(740px,calc(100% - 24px)); max-height:calc(100dvh - 48px); padding:var(--space-32); border:0; border-radius:var(--radius-panel); color:var(--color-ink); background:var(--color-paper); overflow-y:auto; }
.review-dialog::backdrop { background:rgb(31 29 28 / .35); backdrop-filter:blur(8px); }
.review-dialog h2 { margin:0 56px var(--space-24) 0; font-weight:400; }
.review-close { position:absolute; top:var(--space-16); right:var(--space-16); display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--color-border); border-radius:50%; background:none; cursor:pointer; color:inherit; }
.review-dialog-author { display:flex; align-items:center; gap:var(--space-16); margin-bottom:var(--space-32); }
.review-dialog-author img { width:64px; height:64px; object-fit:cover; border-radius:50%; }
.review-dialog-author .review-author { padding:0; }
.review-dialog-copy p { margin:0 0 var(--space-24); }
.review-avatar { display:grid; place-items:center; aspect-ratio:1; color:var(--color-muted); background:var(--color-review-surface); }
.review-avatar i { font-size:var(--type-metric); }
.review-dialog-author .review-avatar { flex:none; width:64px; height:64px; }
.review-case-link { display:inline-flex; align-items:center; gap:var(--space-12); margin-top:var(--space-8); font-size:var(--type-body); color:var(--color-ink); }
.review-case-link[hidden] { display:none; }
.review-dialog button:focus-visible { outline:2px solid var(--color-ink); outline-offset:3px; }

/* Open editorial reviews: author at left, shared rules, no enclosing panel. */
.review-track { gap:var(--space-24); }
.review-card { flex-basis:100%; min-width:0; background:transparent; border-top:1px solid var(--color-border); }
.review-body { min-height:0; gap:var(--space-24); padding:var(--space-32) 0; border-bottom:1px solid var(--color-border); }
.review-mark { width:24px; height:24px; background:var(--color-muted); }
.review-full { margin-top:auto; min-height:44px; }
.review-author-row { grid-template-columns:64px minmax(0,1fr); align-items:center; gap:var(--space-24); padding-block:var(--space-24); border:0; }
.review-author-row > :is(img,.review-avatar) { grid-column:1; grid-row:1; width:64px; height:64px; }
.review-author-row > .review-author { grid-column:2; grid-row:1; padding:0; }
.review-author span + span { color:var(--color-muted); }
.review-brand-bar { height:2px; }
.review-card[data-review-id="renard-yandex"] { --review-brand:var(--color-case-euphoria) !important; }
.landing-page .review-card blockquote { margin-top:auto; }
.landing-page .review-full { margin-top:0; }
@media(min-width:600px) {
  .review-card { flex-basis:calc((100% - var(--space-24)) / 2); }
  .review-body { gap:var(--space-32); padding-block:var(--space-40); }
  .landing-page .review-body { min-height:320px; }
}
