

/* Start:/local/components/privilegia/main_hero_block/templates/.default/style.css?17615570004436*/
@charset "UTF-8";
/* ===== HERO (mobile-first) ===== */
.hero {
  background: var(--color_bg);
  color: var(--color_text);
}

/* Медиа сверху (full-bleed, без контейнера) */
.hero__media {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.hero__img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 375px) {
  .hero__img {
    height: 144px;
  }
}
/* Контентная площадка — по контейнеру */
.hero__content {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--container_max);
  margin-inline: auto;
  padding-inline: var(--space_4);
  background: var(--color_bg);
  padding-block: 24px 0;
}

/* Внутренний грид */
.hero__inner {
  position: relative;
  padding: 0 0 0 12px;
}

/* Заголовок — дисплейный шрифт */
.hero__title {
  margin: 0 0 16px 0;
  font-family: var(--font_family_main_banner);
  text-transform: uppercase;
  letter-spacing: 0;
  line-height: 1.65;
  color: var(--color_text);
  font-size: 18px;
  font-weight: 400;
}

/* Описание (по умолчанию скрыто на мобиле) */
.hero__text {
  margin: 10px 0 18px 0;
  font: 400 18px/1.6 var(--font_family_base);
  color: var(--color_text);
  max-width: 36em;
  display: none;
}

/* Ссылка «подробнее» */
.hero__more {
  display: flex;
  justify-content: flex-end;
  font: 500 18px/1 var(--font_family_base);
  color: var(--color_text_muted);
  text-decoration: none;
  text-transform: lowercase;
  font-weight: 300;
  margin-top: 20px;
  position: relative;
  letter-spacing: -0.6px;
  padding-right: 3px;
}
.hero__more:hover {
  color: var(--color_accent_soft);
  opacity: 1;
}

/* Разделитель */
.hero__divider {
  display: block;
  height: 1px;
  width: 100%;
  background: var(--color_border);
  margin-top: 56px;
}

/* === BREAKPOINTS === */
/* ≥768px */
@media (min-width: 768px) {
  .hero__content {
    padding-block: 36px 0;
  }
  .hero__title {
    font-size: 36px;
    text-align: center;
  }
  .hero__text {
    font-size: 18px;
  }
}
/* ≥1024px — центр + точное выравнивание кнопки по правому краю 2-й колонки */
/* ≥1024px */
@media (min-width: 1024px) {
  .hero__media {
    /* адаптивная высота, но не выше 480px */
    /* max-height: 480px;*/
  }
  .hero__media picture {
    display: block;
    height: 100%;
  }
  .hero__img {
    height: 100%; /* растянуть по контейнеру */
    width: 100%;
    object-fit: cover; /* заполняем весь блок с обрезкой */
    object-position: center; /* центрируем кадр */
  }
  .hero__content {
    padding-block: 70px 0;
  }
  .hero__inner {
    /* одна настройка — сколько пикселей должна занимать ОДНА колонка текста
       под твои <br>, подгони при необходимости (340–380 обычно достаточно) */
    --hero-col: 360px;
    --hero-gap: 30px;
    display: grid;
    grid-template-columns: 1.25fr 0.75fr;
    column-gap: 56px;
    align-items: start;
  }
  .hero__title {
    grid-column: 1/3;
    font-size: 48px;
    margin-bottom: 30px;
    line-height: 1.2;
    padding: 0 30px;
  }
  /* Две колонки текста по центру контейнера с фиксированной пиксельной шириной */
  .hero__text {
    grid-column: 1/3;
    margin: 0 auto 18px auto;
    display: flex;
    /* gap: var(--hero-gap);*/
    gap: 10px;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
    width: calc(1.6 * var(--hero-col) + var(--hero-gap));
  }
  .hero__text p {
    margin: 0;
    /*flex: 0 0 var(--hero-col);*/
    flex: auto;
    max-width: var(--hero-col);
    white-space: normal;
    overflow-wrap: break-word;
    word-break: break-word;
    line-height: 1.4;
  }
  /* Кнопка в контейнере той же ширины — правый край совпадает со второй колонкой */
  .hero__more {
    grid-column: 1/3;
    display: flex;
    justify-content: flex-end;
    width: calc(1.6 * var(--hero-col) + var(--hero-gap));
    margin: 0 auto;
  }
  .hero__divider {
    grid-column: 1/3;
    margin-top: 80px;
  }
}
/* legacy */
.middle__wrap {
  /* display: none; */
}

/* End */


/* Start:/local/templates/privilegia/components/bitrix/news.list/news_index/style.css?17619744725474*/
@charset "UTF-8";
/* ===== NEWS (mobile-first) ===== */
.section.news {
  margin-top: 0;
  margin-block: 0;
}
.section.news .h-big {
  letter-spacing: 0;
  margin-bottom: 3px;
  margin-top: 13px;
}
.section.news .section__title + * {
  margin-top: 0;
}

/* убираем дублирующийся контейнер, если секция внутри .middle__wrap */
.middle__wrap:not(.is-bleed) .section.news > .section__inner {
  padding-left: 0;
  padding-right: 0;
}

/* header: заголовок + кнопка-алерт + "все новости" */
.news__header {
  display: grid;
  grid-template-columns: 1fr; /* mobile: в столбик, как в ТЗ */
  gap: var(--space_4);
}

/* «все новости» под заголовком на мобилке */
.news__more {
  color: var(--color_text_muted);
  width: max-content;
}
.news__more:hover {
  color: var(--color_text_muted);
}

/* кнопка-алерт */
.news__alert {
  display: flex;
  align-items: center;
  gap: var(--space_3);
  padding: 13px 5px 13px 14px;
  border-radius: 5px;
  background: var(--color_primary);
  color: var(--color_button_text);
  line-height: 1;
  transition: opacity var(--transition_fast) ease;
  width: 100%;
  max-width: 280px;
}

@media (min-width: 375px) {
  .news__alert {
    max-width: 308px;
    justify-content: center;
  }
}
.news__alert:hover {
  opacity: 0.85;
}

@media (max-width: 374px) {
  .news__alert svg {
   display:none;
  }
}

/* список карточек */
.news__list {
  margin-top: 17px;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space_6);
  padding-bottom: 72px;
  border-bottom: 1px solid var(--color_border);
}

/* карточка */
.news-card {
  position: relative;
  background: var(--color_surface);
  padding: 16px 24px;
  transition: transform var(--transition_base) ease;
}

/* hover: подскакивает на 5px */
@media (hover: hover) {
  .news-card:hover {
    transform: translateY(-5px);
  }
}
.news-card:nth-child(3) {
  display: none;
}

/* кликабельна вся карточка */
.news-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* заголовок */
.news-card__title {
  margin: 0;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.4;
  color: var(--color_text);
  font-size: 18px;
}

/* краткое описание: на мобилке скрыто */
.news-card__excerpt {
  display: none;
  margin: var(--space_6) 0 0;
  color: var(--color_text_muted);
}

/* подвал карточки */
.news-card__footer {
  margin-top: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.news-card__date {
  color: var(--color_accent_soft);
  font-size: 16px;
  letter-spacing: -0.6px;
}

/* стрелка */
.news-card__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color_accent_soft);
  z-index: 2; /* поверх overlay, чтобы SVG не блокировался */
}

/* ===== DESKTOP ≥1024px ===== */
@media (min-width: 1024px) {
  .section.news .section__inner {
    padding-top: 51px;
  }
  .section.news .news__title {
    margin-top: 0;
  }
  .news__header {
    grid-template-columns: 1fr auto auto; /* ← алерт и ссылка становятся справа */
    grid-template-areas: "title alert more";
    align-items: center;
    column-gap: 46px;
  }
  .news__title {
    grid-area: title;
  }
  .news__alert {
    grid-area: alert;
    justify-self: end; /* прижимаем ближе к ссылке */
    max-width: 560px;
    padding: 20px 8px;
    font-size: 32px;
  }
  .news__more {
    grid-area: more;
    justify-self: end;
    font-size: 32px;
    color: var(--color_text);
  }
  .news__alert-icon {
    width: 40px;
    height: 40px;
  }
  .news__list {
    margin-top: 27px;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space_6);
    padding-bottom: 120px;
  }
  .news-card {
    padding: 43px 48px 31px 48px;
  }
  .news-card__title {
    max-width: 83%;
    line-height: 1.45;
  }
  .news-card__excerpt {
    display: block;
    margin: 39px 0 0;
    line-height: 1.4;
  }
  .news-card:nth-child(3) {
    display: block;
  }
  .news-card__footer {
    margin-top: 38px;
  }
  .news-card__arrow svg {
    width: 58px;
    height: 38px;
  }
  .news-card__date {
    font-size: 18px;
    letter-spacing: 0px;
  }
  .news-card__arrow {
    margin-top: 3px;
  }
}
/* ===== DESKTOP 1024–1199px ===== */
@media (min-width: 1024px) and (max-width: 1199px) {
  .news__header {
    /* 2 колонки, ссылка уходит на строку ниже, вправо */
    grid-template-columns: 1fr auto;
    grid-template-areas: "title alert" ".     more";
    align-items: center;
    column-gap: 46px;
    row-gap: var(--space_4);
  }
  .news__title {
    grid-area: title;
  }
  .news__alert {
    grid-area: alert;
    justify-self: end;
  }
  .news__more {
    grid-area: more;
    justify-self: end;
  }
}
/* ===== DESKTOP ≥1200px — как было раньше (3 колонки в одну строку) ===== */
@media (min-width: 1200px) {
  .news__header {
    grid-template-columns: 1fr auto auto;
    grid-template-areas: "title alert more";
    align-items: center;
    column-gap: 46px;
  }
  .news__title {
    grid-area: title;
  }
  .news__alert {
    grid-area: alert;
    justify-self: end;
  }
  .news__more {
    grid-area: more;
    justify-self: end;
  }
}

/* End */


/* Start:/local/components/privilegia/main_app/templates/.default/style.css?17615625835423*/
@charset "UTF-8";
/* ===== APP (mobile-first) ===== */
.section.app {
  margin-top: 0;
}

.middle__wrap:not(.is-bleed) .section.app > .section__inner {
  padding: 28px 0 64px 0;
}

/* Заголовок */
.h-big.app__title {
  text-transform: uppercase;
  letter-spacing: 0;
  color: var(--color_heading);
  text-align: right;
  margin-top: 0;
  line-height: 1.3;
}

/* Сетка содержимого */
.app__grid {
  margin-top: var(--space_6);
  display: block; /* мобайл — поток */
}

/* Стек: подложка-телефон + overlay */
.app__stack {
  position: relative;
  width: 100%;
  margin-left: 0;
}

.app__phone-edge {
  display: block;
  width: 100%;
  height: auto;
}

/* === Overlay элементы === */
/* Маркеты (мобайл) поверх телефона */
.app__stores {
  position: absolute;
  left: var(--space_6);
  top: var(--space_12);
  display: flex;
  flex-direction: column;
  gap: var(--space_5);
  z-index: 2;
}

.app__store img {
  display: block;
  height: 40px;
}

/* QR по умолчанию скрыт на мобайл */
.app__qr {
  display: none;
  position: absolute;
  left: 49px;
  top: 49px;
  width: 135px;
  z-index: 2;
}

/* Центр/право (как было) */
.app__phone-main {
  display: none; /* показываем только с 1200px */
}

.app__info {
  margin: var(--space_6) auto 0 auto;
  max-width: 420px;
}

.app__subtitle {
  color: var(--color_text);
  font-weight: 500;
  letter-spacing: -0.5px;
  margin-bottom: 20px;
}

.app__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.app__list li {
  color: var(--color_text_muted);
  margin-bottom: 8px;
  border-top: 1px solid var(--color_border);
  padding-top: 4px;
  letter-spacing: -1px;
}

.app__list li:first-child {
  border: none;
  padding: 0;
}

/* CTA */
.app__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space_8);
  margin-top: var(--space_4);
  color: var(--color_text_muted);
  text-decoration: none;
  position: relative;
}

.app__cta-circle {
  width: 75px;
  height: 75px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  transition: transform var(--transition_base) ease;
}

@media (hover: hover) {
  .app__cta:hover {
    color: var(--color_accent_soft);
    opacity: 1;
  }
  .app__cta:hover .app__cta-circle {
    transform: translateX(4px);
  }
}
.app__cta-text {
  letter-spacing: -0.9px;
}

/* ===== DESKTOP ≥1024px ===== */
@media (min-width: 1024px) {
  .section.app {
    margin-bottom: 55px;
  }
  .section.app .section__title + * {
    margin-top: 0;
  }
  .section.app > .section__inner {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: clamp(16px, 2.5vw, 32px);
    align-items: start;
    margin-top: 18px;
  }
  .h-big.app__title {
    grid-column: 1/9; /* с 1 по 8 колонку */
    /* если нужно, чтобы текст был у правого края своей области — оставь выравнивание */
    text-align: right;
    margin-bottom: var(--space_9);
    /* убираем «прижатие» самого блока, чтобы он занимал всю область 1–8 */
    justify-self: stretch;
    line-height: 1.2;
  }
  /* убираем зазор после заголовка, как и было */
  .section.app .section__title + * {
    margin-top: 0;
  }
  .app__title {
    text-align: center;
    margin-bottom: var(--space_8);
  }
  /* 1024–1199px: две колонки — stack | info */
  .app__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "stack info";
    column-gap: var(--space_6);
    row-gap: var(--space_8);
    align-items: start;
    grid-column: 1/-1;
  }
  .app__stack {
    grid-area: stack;
    width: 100%;
    margin: 0;
    align-self: end;
    justify-self: stretch;
  }
  .app__info {
    grid-area: info;
    margin-top: 0;
    align-self: end;
    justify-self: stretch;
    padding: 0px 11px;
  }
  /* На десктопе скрываем маркеты и показываем QR — оба поверх телефона */
  .app__stores {
    display: none;
  }
  .app__qr {
    display: block;
  }
  /* Правая колонка */
  .app__subtitle {
    margin-top: 0;
    margin-bottom: 0;
    letter-spacing: 0;
  }
  .app__list {
    margin-top: 39px;
    margin-bottom: 11px;
  }
  .app__list li {
    text-transform: uppercase;
    letter-spacing: -0.1px;
    margin-bottom: 11px;
    padding-top: 11px;
  }
  .app__list li:first-child {
    padding-top: 0;
  }
  .app__list li:last-child {
    border-bottom: 0;
  }
  /* CTA: линия слева и крупнее круг */
  .app__cta {
    margin-top: var(--space_8);
  }
  .app__cta-circle {
    width: 78px;
    height: 78px;
  }
  .app__cta-text {
    letter-spacing: 0.5px;
    font-size: 18px;
  }
}
/* ===== DESKTOP ≥1200px: три колонки — stack | main | info ===== */
@media (min-width: 1200px) {
  .app__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-areas: "stack main info";
  }
  /* Центр */
  .app__phone-main {
    display: block;
    background: var(--color_background_list);
    padding: 0;
    align-self: end;
    justify-self: stretch;
    grid-area: main;
  }
  .app__phone-main img {
    width: 100%;
    height: auto;
    display: block;
  }
}

/* End */


/* Start:/local/components/privilegia/main_services/templates/.default/style.css?17615644765149*/
@charset "UTF-8";
/* ===== SERVICES (mobile-first) ===== */
.section.main-services {
  margin-top: 0;
}
.section.main-services .section__inner {
  padding-top: 0;
}
.section.main-services .divider {
  padding-top: var(--space_block_top);
}

.middle__wrap:not(.is-bleed) .section.main-services > .section__inner {
  padding-left: 0;
  padding-right: 0;
}

/* Заголовок */
.main-services__title {
  text-transform: uppercase;
  letter-spacing: 0;
  color: var(--color_heading);
  text-align: right;
  margin: 0;
}

.section.main-services {
  /* Лэйаут */
}
.section.main-services .main-services__grid {
  margin-top: var(--space_7);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space_6);
  /* порядок для мобилки: картинка → текст */
  grid-template-areas: "card" "lead";
}

.main-services__card {
  grid-area: card;
  margin: 0;
}

.main-services__lead {
  grid-area: lead;
  color: var(--color_text_muted);
}

/* Текст */
.main-services__lead p {
  margin: 0;
  color: var(--color_text);
  letter-spacing: -0.8px;
  line-height: 1.4;
}

/* Изображение — квадрат на всех размерах */
.main-services__img {
  width: 100%;
  aspect-ratio: 1/1; /* квадрат */
  height: auto;
  display: block;
  object-fit: cover;
}

/* Подпись (мобилка скрыта) */
.main-services__caption {
  display: none;
  margin-top: var(--space_3);
  color: var(--color_text_muted);
  font-size: 16px;
  text-transform: lowercase;
  letter-spacing: -0.5px;
  text-transform: lowercase;
}

/* CTA */
.main-services__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space_8);
  margin-top: var(--space_6);
  color: var(--color_text_muted);
  text-decoration: none;
  position: relative;
}

.main-services__cta-circle {
  width: 75px;
  height: 75px;
  /*border-radius: 50%;*/
  /*background: var(--color_accent_soft);*/
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  transition: transform var(--transition_base) ease;
}

@media (max-width: 1023.98px) {
  .section.main-services .main-services__grid {
    grid-template-areas: "card" "lead";
  }
  .main-services__card {
    grid-area: card;
  }
  .main-services__lead {
    grid-area: lead;
  }
}
@media (hover: hover) {
  .main-services__cta:hover {
    color: var(--color_accent_soft);
    opacity: 1;
  }
  .main-services__cta:hover .main-services__cta-circle {
    transform: translateX(4px);
  }
}
/* Вторую карточку прячем на мобилке */
.main-services__card--alt {
  display: none;
}

.main-services__cta-text {
  letter-spacing: -0.9px;
}

/* ===== DESKTOP ≥1024px (12 cols) ===== */
@media (min-width: 1024px) {
  /* переменные сетки */
  .section.main-services {
    margin-bottom: 0;
  }
  .section.main-services .section__inner {
    --col-gap: var(--space_8);
    --col-unit: calc((100% - (11 * var(--col-gap))) / 12);
  }
  .section.main-services .main-services__title {
    width: calc(8 * var(--col-unit) + 7 * var(--col-gap));
    text-align: right;
    letter-spacing: 0;
    line-height: 1.1;
    margin: 3px auto var(--space_8) 0;
  }
  .section.main-services .divider {
    padding-top: 50px;
  }
  /* Грид 12 колонок, второй ряд 1/3–1/3–1/3 */
  /* ↑ увеличили специфичность, чтобы перекрыть мобильное правило */
  .section.main-services .main-services__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: var(--space_8);
    align-items: start;
    grid-template-areas: none; /* уберём areas, используем явные колонки */
    margin-top: 41px;
  }
  /* сбрасываем именованные области с мобилки (card/lead) */
  .section.main-services .main-services__lead,
  .section.main-services .main-services__card {
    grid-area: auto;
  }
  .main-services__lead {
    grid-column: 1/span 4;
    align-self: end;
    justify-self: stretch;
    padding-bottom: 65px;
  }
  .main-services__card {
    grid-column: 5/span 4;
  }
  .main-services__card--alt {
    grid-column: 9/span 4;
    display: block;
  }
  /* текст слева */
  .main-services__lead p {
    max-width: 520px;
    margin-bottom: 16px;
    letter-spacing: -0.4px;
  }
  /* CTA с линией слева */
  .main-services__cta {
    margin-top: var(--space_8);
  }
  /* подписи под фото */
  .main-services__caption {
    display: block;
    text-align: left;
    margin-top: 15px;
    font-size: 18px;
    letter-spacing: 0;
  }
  /* изображения остаются квадратными и на ПК */
  .main-services__img {
    aspect-ratio: 1/1;
  }
}
/* Узкие “якоря” для включаемых областей, чтобы overlay не расползался */
.ia {
  display: inline;
}

.main-services__title .ia {
  display: inline-block;
}

/* заголовок — безопаснее как inline-block */
.main-services__caption .ia,
.main-services__lead .ia {
  display: inline;
}

/* End */


/* Start:/local/templates/privilegia/components/bitrix/news.list/main_complexes/style.css?17615647906159*/
@charset "UTF-8";
/* ===== main-houses (mobile-first) ===== */
.section.main-houses {
  margin-top: 61px;
  padding-bottom: 66px;
  /* SVG-стрелки в кнопках */
  /* Пагинация — внутри картинки, 24px слева и снизу */
}
.section.main-houses .section__inner {
  padding-top: 0;
}
.section.main-houses .h-big {
  margin-bottom: 3px;
}
.section.main-houses .main-houses__all {
  margin-top: 0;
  letter-spacing: -0.3px;
}
.section.main-houses .swiper-button-prev:after,
.section.main-houses .swiper-rtl .swiper-button-prev:after {
  color: white;
  font-size: 18px;
  content: url("data:image/svg+xml,%3Csvg width='12' height='20' viewBox='0 0 12 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.25 1.5L1.75 10L10.25 18.5' stroke='%23F8F8F8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.section.main-houses .swiper-button-next:after,
.section.main-houses .swiper-rtl .swiper-button-prev:after {
  color: white;
  font-size: 18px;
  content: url("data:image/svg+xml,%3Csvg width='12' height='20' viewBox='0 0 12 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.75 18.5L10.25 10L1.75 1.5' stroke='%23F8F8F8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.section.main-houses .main-houses__pagination {
  position: absolute;
  z-index: 5;
  pointer-events: auto;
  /* переопределяем дефолты Swiper */
  width: auto !important; /* важно: иначе контейнер 100% ширины */
  text-align: left !important; /* не центрируем */
  display: flex !important; /* аккуратнее расстояния между точками */
}
.section.main-houses .main-houses__slider .swiper-pagination-bullet {
  background: #FFFFFF;
  opacity: 0.5;
}
.section.main-houses .main-houses__slider .swiper-pagination-bullet-active {
  opacity: 1;
}
.section.main-houses .swiper-slide:hover {
  text-decoration: none;
  opacity: 1;
}

/* убираем двойной внутренний отступ, если блок внутри .middle__wrap */
.middle__wrap:not(.is-bleed) .section.main-houses > .section__inner {
  padding-left: 0;
  padding-right: 0;
}

/* Header */
.main-houses__header {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space_3);
  align-items: center;
}

.main-houses__title {
  margin: 0;
  text-transform: uppercase;
  color: var(--color_heading);
}

.main-houses__all {
  color: var(--color_text_muted);
  width: max-content;
  text-decoration: none;
}
.main-houses__all:hover {
  color: var(--color_text_muted);
  opacity: 0.85;
}

/* Slider container */
.main-houses__slider {
  margin-top: 17px;
  position: relative;
  /* общие переменные управления */
  --btn: 40px; /* размер кружка стрелок */
  --gap: 12px; /* расстояние между стрелками */
  --controls-offset: 24px; /* от правого/левого края */
  --controls-bottom: 75px; /* от нижнего края (и стрелки, и точки) */
}

/* Card */
.main-houses-card {
  margin: 0;
}

.main-houses-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9; /* прямоугольник как в макете */
  background: #EDEDED;
  overflow: hidden;
  min-height: 273px;
}

.main-houses-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.main-houses-card--locked .main-houses-card__media {
  display: grid;
  place-items: center;
  background: #ECECEC;
}

.main-houses-card__caption {
  margin-top: var(--space_6);
  text-transform: uppercase;
  color: var(--color_text_muted);
  font-size: 18px;
}

/* === NAV buttons (mobile) === */
/* Стрелки */
.main-houses__nav .swiper-button-prev,
.main-houses__nav .swiper-button-next {
  position: absolute;
  width: var(--btn);
  height: var(--btn);
  border-radius: 50%;
  top: auto;
  bottom: var(--controls-bottom);
  right: var(--controls-offset);
  border: 0;
  box-shadow: none;
  outline: none;
  background: rgba(235, 235, 235, 0.3);
  z-index: 6; /* чтобы были выше пагинации */
}

/* правая кнопка — у правого края */
.main-houses__nav .swiper-button-next {
  right: var(--controls-offset);
}

/* левая кнопка — сразу слева от правой */
.main-houses__nav .swiper-button-prev {
  left: auto; /* важно: сбрасываем дефолт Swiper */
  right: calc(var(--controls-offset) + var(--btn) + var(--gap) * 2);
}

/* на случай фокуса с клавиатуры */
.main-houses__nav .swiper-button-prev:focus,
.main-houses__nav .swiper-button-next:focus {
  outline: none;
  box-shadow: none;
}

/* ===== DESKTOP ≥1024px ===== */
@media (min-width: 1024px) {
  .section.main-houses {
    padding-bottom: 0;
    margin-top: 45px;
    margin-bottom: 105px;
  }
  .main-houses__header {
    grid-template-columns: 1fr auto; /* заголовок слева, ссылка справа */
    align-items: baseline;
    margin-bottom: var(--space_10);
  }
  .main-houses__title {
    letter-spacing: 0; /* как в макете для крупных размеров */
  }
  /* На десктопе управление скрыто */
  .main-houses__nav,
  .main-houses__pagination {
    display: none;
  }
  .main-houses-card {
    min-height: 320px;
  }
  .main-houses-card__caption {
    margin-top: 28px;
  }
  .main-houses__all {
    font-size: 32px;
    color: var(--color_text);
  }
  .main-houses__all:hover {
    color: var(--color_text_muted);
    opacity: 1;
  }
  .main-houses__slider,
  .main-houses__slider .swiper,
  .main-houses__slider .swiper-wrapper,
  .main-houses__slider .swiper-slide {
    overflow: visible !important;
  }
  .main-houses-card__media {
    min-height: 320px;
  }
  /* PC: hover lift */
}
@media (min-width: 1024px) and (hover: hover) {
  .main-houses-card {
    transition: transform var(--transition_base, 0.2s) ease;
    will-change: transform;
  }
  .main-houses-card:hover {
    transform: translateY(-5px);
  }
}

/* End */
/* /local/components/privilegia/main_hero_block/templates/.default/style.css?17615570004436 */
/* /local/templates/privilegia/components/bitrix/news.list/news_index/style.css?17619744725474 */
/* /local/components/privilegia/main_app/templates/.default/style.css?17615625835423 */
/* /local/components/privilegia/main_services/templates/.default/style.css?17615644765149 */
/* /local/templates/privilegia/components/bitrix/news.list/main_complexes/style.css?17615647906159 */
