/* 2026-10-26: Сетка оставляет галереям размеры предыдущей сборки, а цене,
   бронированию и двум коротким статусам — отдельные общие строки. */
@media (max-width:768px) {
  .flats_objects_items { grid-template-columns:minmax(0,1fr); width:84vw; margin-left:auto; margin-right:auto; column-gap:0; }
  .flats_objects_items > .flats_objects_item[data-flat-id] { margin-left:0!important; margin-right:0!important; }
}
@media (min-width:769px) and (max-width:1024px) {
  .flats_objects_items { grid-template-columns:repeat(2,minmax(0,1fr)); width:84vw; margin-left:auto; margin-right:auto; column-gap:2vw; }
  .flats_objects_items > .flats_objects_item[data-flat-id] { margin-left:0!important; margin-right:0!important; }
}
@media (min-width:1025px) and (max-width:1399px) {
  .flats_objects_items { grid-template-columns:repeat(3,minmax(0,1fr)); width:83.8vw; margin-left:auto; margin-right:auto; column-gap:2vw; }
  .flats_objects_items > .flats_objects_item[data-flat-id] { margin-left:0!important; margin-right:0!important; }
}
.flats_objects_items > .flats_objects_item[data-flat-id] { box-sizing:border-box; min-width:0; }
.flats_objects_items > .flats_objects_item[data-flat-id] > .flat_title_container { box-sizing:border-box; height:auto; min-height:34px; }
.flats_objects_items > .flats_objects_item[data-flat-id] > .flat_text_container { width:100%; min-width:0; }
/* 2026-10-26: Описание ограничено тремя целыми строками вместо высоты
   в vw; обычный блочный родитель сохраняет работу обрезки с многоточием. */
.flats_objects_item[data-flat-id] > .flat_text_container { display:block; }
.flats_objects_item[data-flat-id] .flat_text {
  height:auto; max-height:3lh; display:-webkit-box;
  -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden;
}
.flats_objects_items > .flats_objects_item[data-flat-id] > .flat_tags_container { box-sizing:border-box; width:100%; min-height:0; }
.flats_objects_item[data-flat-id] .flat_tags {
  box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.03fr) minmax(0,1.25fr);
  align-items:center; gap:6px; width:100%; padding:0 8px;
}
.flats_objects_item[data-flat-id] .flat_tag {
  min-width:0; padding:0; justify-content:center; align-items:center;
  font-size:clamp(12px,1.2vw,15px); line-height:1.35; white-space:nowrap;
}
.flats_objects_item[data-flat-id] .flat_tag img {
  flex:0 0 auto; width:clamp(18px,1.9vw,24px); height:clamp(18px,1.9vw,24px);
  max-width:24px; max-height:24px; margin-right:5px; object-fit:contain;
}
.flats_objects_item[data-flat-id] > .flat_info {
  box-sizing:border-box; display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,48%);
  grid-template-rows:auto minmax(46px,auto) auto;
  align-items:center; gap:0 8px; width:100%; min-height:0;
  margin-top:0!important; padding:38px 12px 0;
}
.flats_objects_item[data-flat-id] .flat_prices,
.flats_objects_item[data-flat-id] .flat_price { display:contents; }
.flats_objects_item[data-flat-id] .flat_price_label {
  grid-column:1/-1; grid-row:1; align-self:end;
  font-size:13px; line-height:1.35; margin:0; white-space:pre-line;
}
.flats_objects_item[data-flat-id] .flat_price > strong {
  grid-column:1; grid-row:2; align-self:center;
  display:block; font-size:23px; line-height:1.25; white-space:nowrap;
}
.flats_objects_item[data-flat-id] .price-promotion {
  grid-column:1/-1; grid-row:3; align-self:start;
  min-width:0; max-width:none; padding-bottom:5px; line-height:1.45;
}
.flats_objects_item[data-flat-id] .flat_reservation { grid-column:2; grid-row:2; align-self:center; width:100%; min-width:0; }
.flats_objects_item[data-flat-id] .button_flat_reservation {
  box-sizing:border-box; width:100%; max-width:100%; min-height:46px;
  padding:7px 5px; font-size:14px; line-height:1.2; white-space:nowrap;
}
.flats_objects_item[data-flat-id] .button_flat_reservation a { box-sizing:border-box; width:100%; min-width:0; font-size:inherit; white-space:nowrap; }
/* 2026-10-26: У «i» собственное место над ценой; длинная подпись дат
   растёт вниз и не пересекается со значком или кнопкой бронирования. */
.flats_objects_item[data-flat-id] .flat-info-link { top:0!important; }
.flats_objects_item[data-flat-id] > .flat_status_container {
  box-sizing:border-box; display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch; gap:0; width:100%; min-height:0;
  margin:7px 0 0; padding:0 1px 8px;
  font-size:clamp(12px,1.17vw,15px); line-height:1.4;
}
.flats_objects_item[data-flat-id] .flat_status_yes,
.flats_objects_item[data-flat-id] .flat_early_access_yes {
  box-sizing:border-box; display:flex; justify-content:center; align-items:center;
  min-width:0; min-height:60px; padding:6px 4px; text-align:center;
}
.flats_objects_item[data-flat-id] .flat_status_yes a { font-size:inherit; line-height:1.4; }
.flats_objects_item[data-flat-id] .flat_status_yes.flat_status_available { padding-left:7px; padding-right:4px; }
.flats_objects_item[data-flat-id] .flat_early_access_yes { padding-left:0; padding-right:0; }
.flats_objects_item[data-flat-id] .flat_status_yes.flat_status_available::before { inset:0 3px 0 0; }
body.stay-search-filtered .flats_objects_item[data-flat-id] > .flat_status_container { grid-template-columns:minmax(0,1fr); }
body.stay-search-filtered .flats_objects_item[data-flat-id] .flat_early_access_yes { display:none; }
@media (max-width:768px) {
  .flats_objects_item[data-flat-id] .flat_tag { font-size:clamp(11px,3.1vw,16px); }
  .flats_objects_item[data-flat-id] .flat_tag img { width:20px; height:20px; }
  .flats_objects_item[data-flat-id] > .flat_status_container { font-size:clamp(12px,3.4vw,16px); }
}
@media (min-width:1400px) {
  .flats_objects_item[data-flat-id] > .flat_status_container { font-size:13px; }
}
@media (min-width:1400px) and (max-width:1599px) {
  .flats_objects_item[data-flat-id] .flat_tag { font-size:14px; }
  .flats_objects_item[data-flat-id] .flat_tag img { width:22px; height:22px; }
}
/* 2026-10-26: Только вертикальные дорожки общие для соседних карточек.
   Ширину, высоту и кадрирование Swiper определяют прежние style2.css/
   stay-search.css; поэтому фото не уменьшаются из-за новой сетки. */
@supports (grid-template-rows:subgrid) {
  .flats_objects_items > .flats_objects_item[data-flat-id]:not([hidden]) {
    display:grid!important; grid-template-columns:minmax(0,1fr);
    grid-template-rows:subgrid; grid-row:span 8; row-gap:0;
    justify-items:center; align-items:start; align-content:start;
  }
  .flats_objects_items > .flats_objects_item[data-flat-id] > .flat_info { grid-row:span 3; grid-template-rows:subgrid; row-gap:0; align-self:stretch; }
  .flats_objects_items > .flats_objects_item[data-flat-id] > .flat_status_container { align-self:stretch; }
}
/* 2026-10-26: Конец компоновки карточек без изменения расчёта цен и дат. */
