/* Блок «Первый экран» — каркас (раскладка). Оформление — в скине. */

.cab-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: var(--cab-space-7);
}

.cab-hero__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--cab-space-4);
  max-width: 760px;
}

.cab-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cab-space-3);
  margin-top: var(--cab-space-2);
}

/* --- centered --- */
.cab-hero--centered .cab-hero__body {
  align-items: center;
  margin-inline: auto;
  text-align: center;
}
.cab-hero--centered .cab-hero__actions {
  justify-content: center;
}

/* --- split --- */
.cab-hero--split .cab-hero__media {
  aspect-ratio: 4 / 3;
}
.cab-hero--split .cab-hero__media .cab-media__placeholder {
  height: 100%;
  aspect-ratio: auto;
}
@media (min-width: 960px) {
  .cab-hero--split .cab-hero__inner {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  }
}

/* --- cover: картинка под текстом, высота экрана --- */
.cab-hero--cover {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: clamp(440px, 72vh, 760px);
}
.cab-hero--cover .cab-hero__bg,
.cab-hero--cover .cab-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.cab-hero--cover .cab-hero__bg .cab-media__img,
.cab-hero--cover .cab-hero__bg .cab-media__placeholder {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}
/* Затемнение гарантирует читаемость текста поверх фото; цвет текста — инверсный (base.css). */
.cab-hero--cover .cab-hero__overlay {
  background-color: var(--cab-overlay);
}
