@charset "UTF-8";
/* Карточка локации (Figma: Location card). Размер задаёт родитель.
   Ссылка на площадку растянута на всю карточку (::after), кнопка «Забронировать» — поверх неё.
   API: --location-card-button-visibility (visible | hidden) — родитель прячет кнопку (без фокуса и клика);
   --location-card-link-events (auto | none) — карточка не кликается (без pointer и перехода; из Tab-порядка
   ссылку убирает родитель — tabindex). */
.location-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: flex-end;
  height: 100%;
  padding: 0.5rem;
  overflow: hidden;
  background-color: var(--color-white);
  border-radius: var(--radius-16);
}
@media (hover: hover) {
  .location-card:hover {
    --details-button-open: 1;
  }
}
.location-card:focus-within {
  --details-button-open: 1;
}
@media (min-width: 768px) {
  .location-card {
    padding: 0.75rem;
  }
}
.location-card__media {
  flex: 1 1 0;
  width: 100%;
  min-height: 0;
  object-fit: cover;
}
.location-card__media--video {
  object-fit: contain;
}
.location-card--video {
  background-color: var(--color-gray-light);
}
.location-card__link {
  pointer-events: var(--location-card-link-events, auto);
}
.location-card__link::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  content: "";
}
.location-card__link:focus-visible {
  outline: none;
}
.location-card__link:focus-visible::after {
  outline: 0.125rem solid var(--color-blue);
  outline-offset: -0.125rem;
}
.location-card__label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.location-card__button {
  z-index: 2;
  visibility: var(--location-card-button-visibility, visible);
}
