/* Объекты компании (офисы, терминалы). Карточки из шаблона:
     .location-list__items > .location-list__card > .location-list__title + .location-list__address
   или, если задан slot, разметка движка (resource-view.v1):
     .resource-view--collection > .resource-view__item > .resource-view__title + p
   Карточка растянута на всю ширину: слева название и текст, справа карта объекта
   (Яндекс-карта, её строит движок тегом location_map). Без карты справа остаётся
   спокойная заглушка того же размера. */
@layer theme.components {

/* Вторая группа идёт сразу под первой, без полного отступа секции */
.location-list--continued > .container--section { padding-block-start: 0; }

.location-list__group {
  margin-block: 0 16px;
  color: var(--color-text);
  font-size: var(--font-size-h3); font-weight: 600; line-height: var(--line-height-heading);
}
.location-list .section__title + .location-list__group { margin-block-start: 8px; }

/* Список: одна карточка в строку */
.location-list .resource-view--collection,
.location-list .location-list__items {
  margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr; gap: 16px; }

/* Карточка: две колонки — текст и место под карту */
.location-list .resource-view__item,
.location-list .location-list__card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  grid-template-rows: auto 1fr;
  column-gap: 32px;
  min-block-size: 200px;
  padding: 24px;
  border: 1px solid var(--color-border-card);
  border-radius: var(--radius-lg);
  background: var(--color-bg-page);
  box-shadow: var(--shadow-card);
}
.location-list .resource-view__item::after,
.location-list .location-list__card::after {
  content: "";
  grid-column: 2; grid-row: 1 / -1;
  min-block-size: 152px;
  border-radius: var(--radius-md);
  background: var(--color-bg-section-alt);
}

/* Карта объекта на месте заглушки */
.location-list .location-list__card--map::after { content: none; }
.location-list__map {
  grid-column: 2; grid-row: 1 / -1;
  min-block-size: 220px;
  overflow: hidden;
  border-radius: var(--radius-md);
  background: var(--color-bg-section-alt);
}
.location-list__map .location-map { display: block; inline-size: 100%; block-size: 100%; min-block-size: 220px; border: 0; }

/* Название */
.location-list .resource-view__title,
.location-list .location-list__title {
  grid-column: 1; align-self: start;
  color: var(--color-text);
  font-size: var(--font-size-h3); font-weight: 600; line-height: var(--line-height-heading);
  text-decoration: none;
}
.location-list a.resource-view__title:hover { color: var(--color-accent-text); }
.location-list a.resource-view__title:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 3px; }

/* Под названием — полный адрес */
.location-list .resource-view__item p,
.location-list .location-list__address {
  grid-column: 1; align-self: start;
  margin-block: 10px 0;
  color: var(--color-text-body);
}

/* Мобильные: карта уходит под текст */
@media (max-width: 640px) {
  .location-list .resource-view__item,
  .location-list .location-list__card {
    grid-template-columns: 1fr; grid-template-rows: auto;
    padding: 18px; min-block-size: 0;
  }
  .location-list .resource-view__item::after,
  .location-list .location-list__card::after { grid-column: 1; grid-row: auto; margin-block-start: 16px; min-block-size: 160px; }
  .location-list__map { grid-column: 1; grid-row: auto; margin-block-start: 16px; min-block-size: 200px; }
}

}
