/* ══ Страница «Отзывы» (макет 05.10.2026) ═══════════════════════════
   Классы ds-otzyvy__*. Форма отзыва — на самой странице. */

.ds-otzyvy{padding-bottom:88px}
.ds-otzyvy .ds-page__title{font-size:clamp(72px,11.67vw,168px)}
.ds-otzyvy .ds-kroshki{margin-bottom:0}

/* шапка: слова слева, персонаж со звёздами правее середины */
.ds-otzyvy__head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:end;
  gap:24px;padding:20px 150px 0 56px;border-bottom:1px solid var(--ds-line)}
.ds-otzyvy__head-text{align-self:start;padding-bottom:40px}
.ds-otzyvy__lead{margin:14px 0 0;max-width:580px;color:var(--ds-gray);font:400 19px/1.55 var(--ds-font-text)}
.ds-otzyvy__intro{margin:24px 0 0;max-width:600px;color:var(--ds-gray);font:400 16px/1.5 var(--ds-font-text)}
.ds-otzyvy__lead + .ds-otzyvy__intro{margin-top:19px}
.ds-otzyvy__lico{display:block;width:100%;height:auto;margin-bottom:0}

/* строка «пока отзывов нет» */
.ds-otzyvy__verh{display:grid;gap:16px;padding:28px 28px 0}
.ds-otzyvy__poka{display:flex;align-items:center;gap:16px;margin:0;padding:20px 24px;border-radius:24px;
  background:var(--ds-tile);font:400 19px/1.5 var(--ds-font-text)}
.ds-otzyvy__poka-znak{flex:none;color:var(--ds-blue)}

/* настоящие отзывы — когда они появятся */
.ds-otzyvy__spisok{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.ds-otzyvy__otzyv{display:flex;flex-direction:column;gap:12px;margin:0;padding:24px;border-radius:24px;background:var(--ds-tile)}
.ds-otzyvy__tekst{margin:0;font:400 17px/1.5 var(--ds-font-text)}
.ds-otzyvy__avtor{display:grid;gap:2px;color:var(--ds-gray);font:400 14px/1.4 var(--ds-font-text)}
.ds-otzyvy__avtor b{color:var(--ds-ink);font-weight:600}

.ds-otzyvy__zag{margin:0;font:600 64px/1 var(--ds-font-display);text-transform:uppercase;letter-spacing:-.005em}

/* работы: три плиты с мокапами */
.ds-otzyvy__raboty{padding-top:56px}
.ds-otzyvy__raboty-shapka{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px 24px}
.ds-otzyvy__vse--nizhnyaya{display:none}
.ds-otzyvy__lenta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ds-line)}
.ds-otzyvy__rabota{display:flex;flex-direction:column;gap:20px;padding:28px 28px 32px;
  border-right:1px solid var(--ds-line);transition:background .18s ease}
.ds-otzyvy__rabota:last-child{border-right:0}
.ds-otzyvy__rabota:hover{background:var(--ds-tile)}
.ds-otzyvy__shot{display:block;overflow:hidden;border-radius:20px;background:var(--ds-tile)}
.ds-otzyvy__img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.ds-otzyvy__rabota-tekst{display:grid;gap:12px}
.ds-otzyvy__rabota-nazv{font:600 24px/1.1 var(--ds-font-display);text-transform:uppercase}
.ds-otzyvy__rabota-opis{color:var(--ds-gray);font:400 16px/1.5 var(--ds-font-text)}
.ds-otzyvy__rabota-go{display:none}

/* форма отзыва: слева слова и персонаж за столом, справа белая карточка с полями */
.ds-otzyvy__forma{display:flex;gap:28px;margin:30px 28px 0;padding:36px;border-radius:28px;background:var(--ds-tile)}
.ds-otzyvy__slova{display:flex;flex-direction:column;gap:16px;flex:1 1 0;min-width:0}
.ds-otzyvy__forma-lid{margin:0;max-width:34em;color:var(--ds-gray);font:400 17px/1.55 var(--ds-font-text)}
.ds-otzyvy__forma-lico{display:block;width:300px;max-width:100%;height:auto;margin-top:8px}
.ds-otzyvy__karta{flex:none;width:600px;max-width:100%;padding:24px;border-radius:20px;background:var(--ds-bg-card,#fff)}
.ds-otzyvy__form{display:flex;flex-direction:column;gap:14px}
.ds-otzyvy__form[hidden]{display:none}
.ds-otzyvy__form .ds-field__input--area{resize:none;min-height:100px}
.ds-otzyvy__form .ds-check__text{font-size:13px}
.ds-otzyvy__deystvie{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:4px}

/* оценка: пять контурных звёзд, выбранные и все левее — залиты */
.ds-otzyvy__ocenka{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}
.ds-otzyvy__ocenka .ds-field__label{padding:0;color:var(--ds-ink)}
.ds-otzyvy__zvezdy{display:flex;gap:8px}
.ds-otzyvy__zvezda{display:inline-flex;color:var(--ds-blue);cursor:pointer;transition:transform .18s ease}
.ds-otzyvy__zvezda svg{fill:none;transition:fill .18s ease}
.ds-otzyvy__zvezda:hover{transform:translateY(-2px)}
.ds-otzyvy__zvezdy:has(.ds-rating__radio:nth-of-type(1):checked) .ds-otzyvy__zvezda:nth-of-type(-n+1) svg,
.ds-otzyvy__zvezdy:has(.ds-rating__radio:nth-of-type(2):checked) .ds-otzyvy__zvezda:nth-of-type(-n+2) svg,
.ds-otzyvy__zvezdy:has(.ds-rating__radio:nth-of-type(3):checked) .ds-otzyvy__zvezda:nth-of-type(-n+3) svg,
.ds-otzyvy__zvezdy:has(.ds-rating__radio:nth-of-type(4):checked) .ds-otzyvy__zvezda:nth-of-type(-n+4) svg,
.ds-otzyvy__zvezdy:has(.ds-rating__radio:nth-of-type(5):checked) .ds-otzyvy__zvezda:nth-of-type(-n+5) svg{fill:currentColor}
.ds-otzyvy__zvezdy .ds-rating__radio:focus-visible + .ds-otzyvy__zvezda{outline:2px solid var(--ds-blue);outline-offset:3px;border-radius:6px}

@media (max-width:1199px){
  .ds-otzyvy .ds-page__title{font-size:72px}
  .ds-otzyvy .ds-kroshki{margin-bottom:24px}
  .ds-otzyvy__head{grid-template-columns:minmax(0,1fr) 155px;padding:28px 70px 0 28px}
  .ds-otzyvy__lead{margin-top:18px;max-width:440px;font-size:17px}
  .ds-otzyvy__intro{max-width:440px;font-size:15px;line-height:1.5}
  .ds-otzyvy__zag{font-size:50px}
  .ds-otzyvy__raboty{padding-top:40px}
  .ds-otzyvy__rabota{gap:14px;padding:20px 20px 24px}
  .ds-otzyvy__shot{border-radius:18px}
  .ds-otzyvy__img{aspect-ratio:1.05;object-fit:contain}
  .ds-otzyvy__rabota-nazv{font-size:25px}
  .ds-otzyvy__rabota-opis{font-size:16px}
  .ds-otzyvy__forma{margin:28px 28px 0;padding:24px;gap:20px}
  .ds-otzyvy__forma-lid{font-size:17px}
  .ds-otzyvy__forma-lico{width:260px}
  .ds-otzyvy__karta{width:400px;padding:24px}
}

@media (max-width:809px){
  .ds-otzyvy .ds-page__title{font-size:52px}
  .ds-otzyvy .ds-kroshki{margin-bottom:12px}
  .ds-otzyvy__head{display:block;padding:28px 20px 0}
  .ds-otzyvy__head-text{padding-bottom:28px}
  .ds-otzyvy__lead{margin-top:14px;font-size:16px;line-height:1.4;max-width:none}
  .ds-otzyvy__lead + .ds-otzyvy__intro{margin-top:16px}
  .ds-otzyvy__intro{margin-top:16px;font-size:15px;line-height:1.4;max-width:none}
  .ds-otzyvy__lico{display:none}
  .ds-otzyvy__verh{padding:20px 20px 0;gap:12px}
  .ds-otzyvy__poka{padding:20px;font-size:15px;line-height:1.4}
  .ds-otzyvy__zag{font-size:42px}
  .ds-otzyvy__raboty{padding-top:32px}
  .ds-otzyvy__raboty-shapka{padding:0 20px 16px}
  .ds-otzyvy__raboty-shapka .ds-otzyvy__vse{display:none}
  .ds-otzyvy__lenta{grid-template-columns:1fr}
  .ds-otzyvy__rabota{display:grid;grid-template-columns:108px minmax(0,1fr) 44px;align-items:center;gap:14px;
    padding:16px 20px;border-right:0;border-bottom:1px solid var(--ds-line)}
  .ds-otzyvy__shot{border-radius:12px}
  .ds-otzyvy__img{aspect-ratio:108/84}
  .ds-otzyvy__rabota-tekst{gap:4px}
  .ds-otzyvy__rabota-nazv{font-size:22px}
  .ds-otzyvy__rabota-opis{font-size:13px;line-height:1.4}
  .ds-otzyvy__rabota-go{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ds-line);
    border-radius:50%;color:var(--ds-ink)}
  .ds-otzyvy__vse--nizhnyaya{display:flex;justify-content:center;margin:16px 20px 0}
  .ds-otzyvy__forma{flex-direction:column;margin:20px 20px 0;padding:24px 20px;gap:16px}
  .ds-otzyvy__forma-lid{font-size:15px;line-height:1.4}
  .ds-otzyvy__forma-lico{width:250px;margin:4px 0 0}
  .ds-otzyvy__karta{width:auto;padding:16px}
  .ds-otzyvy__deystvie .ds-btn{width:100%;justify-content:center}
}

/* ── тёмная тема: персонаж стоит на белой скруглённой плашке, как на главной ── */
:root[data-theme="dark"] .ds-otzyvy__lico{box-sizing:border-box;padding:16px 16px 0;background:var(--ds-кадр);border-radius:20px 20px 0 0}
:root[data-theme="dark"] .ds-otzyvy__forma-lico{box-sizing:border-box;padding:12px;background:var(--ds-кадр);border-radius:20px}

.ds-otzyvy__form .ds-field__input:not(textarea){text-overflow:ellipsis}
