/* Страницы объектов /obekty/* и хаб /obekty — подключается после stati.css.
   Префикс ob-. Галерея — ряды одной высоты: ширина фото = --r (ширина/высота кадра) × --h,
   остаток ряда делится пропорционально --g = --r × 100, поэтому высота в ряду не ломается.
   Рост именно ×100: если сумма flex-grow в ряду меньше 1, ряд не дотягивается до края
   (одно вертикальное фото в ряду на телефоне). Раскладку для sizes повторяет build_obekty.py. */

/* ── галерея объекта ── */
.ob-grid{--h:320px;display:flex;flex-wrap:wrap;gap:22px 12px}
.ob-grid::after{content:"";flex-grow:999999}
.ob-fig{flex:var(--g) 1 calc(var(--r) * var(--h));margin:0;min-width:0}
.ob-fig-b{display:block;width:100%;padding:0;border:0;border-radius:14px;overflow:hidden;cursor:zoom-in;
  background:var(--tint)}
.ob-fig-b img{display:block;width:100%;height:auto;transition:transform .5s var(--ease-soft)}
.ob-fig-b:hover img{transform:scale(1.02)}
.ob-fig-b:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.ob-fig figcaption{font-size:13.5px;line-height:1.45;color:#6B6760;margin-top:8px;max-width:36em}
.ob-count{margin-top:14px}

/* ── карточки объектов (хаб и «Другие объекты») ── */
.ob-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:26px}
.ob-cards-3{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.ob-card .s-pic{height:190px}
.ob-card .s-body{gap:6px;padding:16px 18px 18px}
.ob-card .s-body b{font-size:16px;line-height:1.3;color:var(--ink);text-wrap:balance}
.ob-card-d{font-size:13.5px;line-height:1.5;color:#5B5F66;margin-bottom:6px}
.ob-more{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}   /* кнопки под блоком на страницах «Работы» (там нет stati.css) */

/* ── переход к группам на хабе ── */
.ob-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.ob-chips a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--line);
  border-radius:999px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;text-decoration:none;
  transition:border-color .2s,color .2s}
.ob-chips a:hover{border-color:var(--accent);color:#9E4F0C}
.ob-chips a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.ob-chips i{font-style:normal;font-weight:500;color:#8A8680;font-variant-numeric:tabular-nums}

@media (max-width:900px){.ob-grid{--h:240px}}
@media (max-width:640px){
  .ob-grid{--h:200px;gap:18px 10px}
  .ob-fig-b{border-radius:12px}
  .ob-fig figcaption{font-size:13px}
  .ob-cards,.ob-cards-3{grid-template-columns:1fr}
  .ob-card .s-pic{height:auto}       /* как у всех карточек сайта на телефоне (main.css): фото целиком, без обрезки */
}
@media (prefers-reduced-motion:reduce){
  .ob-fig-b img{transition:none}
  .ob-fig-b:hover img{transform:none}
}
