/* CPMO-918 reviews spike overrides — поверх reviews.css, дизайн по позиции */
:root{--ease-out-quint:cubic-bezier(.23,1,.32,1);--global-scale:1}

/* 3-up, без торчащей 4-й */
.section-reviews .reviews__slider .swiper{overflow:hidden;margin:0}
/* слайды всегда видимы (не зависим от swiper-slide-visible — иначе белый экран при
   динамической смене табов/быстрой навигации); лишние прячет overflow:hidden */
.section-reviews .reviews__slider .swiper-slide{opacity:1;padding:1.6rem 1rem;height:auto}
.section-reviews .reviews__slider .swiper-slide .review{height:100%;
  transition:background-color .45s var(--ease-out-quint),border-color .45s var(--ease-out-quint),border-radius .45s var(--ease-out-quint),transform .25s var(--ease-out-quint),box-shadow .25s var(--ease-out-quint)}

/* дизайн по ПОЗИЦИИ: нейтрализуем исходные nth-child(odd/even) равной специфичностью */
.section-reviews .reviews__slider .swiper-slide:nth-child(odd) .review,
.section-reviews .reviews__slider .swiper-slide:nth-child(2n+2) .review{padding:4.8rem 3.2rem 3.6rem;border:1px solid var(--color-black-primary);background:transparent;border-radius:0}
.section-reviews .reviews__slider .swiper-slide.is-active .review{background-color:var(--color-milk-light);border-color:transparent;border-radius:4rem}

/* «Читать отзыв» — компактнее */
.section-reviews .reviews__slider .review__text{margin-top:2.4rem}
.section-reviews .reviews__slider .review__more{margin-top:.8rem}
.section-reviews .reviews__slider .review__more .arrow-button{align-items:center}

/* Яндекс-бейдж НАД звёздами, Ч/Б → красный на hover */
.section-reviews .reviews__slider .review__name{margin-top:1.6rem}
.review__source{display:inline-flex;align-items:center;gap:.7rem;margin:1.4rem 0 0;text-decoration:none;font-family:HelveticaNeueCyr,Arial,sans-serif;font-size:1.2rem;color:var(--color-grey-medium)}
.review__source .rv-ya{flex:none;border-radius:50%}
.review__source .rv-ya circle{fill:#303030;transition:fill .2s var(--ease-out-quint)}
.review__source:hover .rv-ya circle{fill:#FC3F1D}
.review__source:hover{color:var(--color-grey-dark)}
.section-reviews .reviews__slider .review__stars{margin-top:1.6rem}

/* заголовок → табы → слайдер: крупные равные отступы; анимация табов = нативный data-scroll-fx (весь ряд разом) */
.section-reviews .reviews__tabs{margin-top:4rem;margin-bottom:2.4rem}
.section-reviews .reviews__slider{margin-top:0}

/* стрелки сайта — по центру снизу; на десктопе только ← →, цифры скрыты (reviews.css) */
.rv-arrows{display:flex;justify-content:center;align-items:center;gap:2.4rem;margin-top:3.2rem}
.rv-arrows .slider__arrow{position:static;margin:0;left:auto;right:auto;top:auto;transform:none;border-radius:0;width:4.6rem;height:2.8rem;overflow:hidden;color:var(--color-black-primary);cursor:pointer;transition:color .25s ease-out}
.rv-arrows .slider__arrow svg{transform:none;stroke:currentColor;stroke-width:1px;fill:none;display:block;width:100%;height:100%}
.rv-arrows .swiper-button-prev svg{transform:scaleX(-1)}
.rv-arrows .slider__arrow:hover{color:var(--color-orange-primary)}
.rv-arrows .slider__arrow.swiper-button-disabled{opacity:.3;pointer-events:none}

/* hover-lift (только десктоп-указатель) */
@media (any-pointer:fine){ .section-reviews .reviews__slider .swiper-slide:hover .review{transform:translateY(-6px);box-shadow:0 18px 40px rgba(48,48,48,.10)} }

/* ================= MOBILE: компактно, всё в высоту экрана ================= */
@media (max-width:1100px){
  .section-reviews{margin-top:4rem}
  .section-reviews .reviews__tabs{margin-top:2.4rem;margin-bottom:1.6rem}
  /* убрать «хвост» под старую пагинацию (это и был большой отступ отзыв→стрелки) */
  .section-reviews .reviews__slider .swiper{padding-bottom:0}
  .section-reviews .reviews__slider .swiper-slide{padding:.4rem 0}
  /* карточка — по контенту, поджата по высоте */
  .section-reviews .reviews__slider .swiper-slide .review,
  .section-reviews .reviews__slider .swiper-slide:nth-child(odd) .review,
  .section-reviews .reviews__slider .swiper-slide:nth-child(2n+2) .review{min-height:0;justify-content:center;border-radius:3rem;padding:2.4rem 2.4rem}
  /* внутренние отступы карточки — компактнее */
  .section-reviews .reviews__slider .review__name{margin-top:1.2rem}
  .section-reviews .reviews__slider .review__source{margin-top:1rem}
  .section-reviews .reviews__slider .review__stars{margin-top:1.2rem}
  .section-reviews .reviews__slider .review__text{margin-top:1.6rem}
  .section-reviews .reviews__slider .review__more{margin-top:1.2rem}
  /* контролы в одну строку: ← 2/14 →, ближе к карточке */
  .rv-arrows{margin-top:.8rem;gap:2rem}
  .rv-arrows .swiper-pagination{position:static;width:auto;left:auto;right:auto;bottom:auto;top:auto;margin:0;padding:0;letter-spacing:0;font-family:var(--header-text-font-family),sans-serif;font-size:1.8rem;line-height:1;color:var(--color-black-primary)}
}
@media (prefers-reduced-motion:reduce){ .section-reviews *{transition:none!important} }

/* Шапка: панорамный кадр экстерьера. Кадрируем по зданию (низ снимка — светлый
   газон, на нём белый заголовок терялся) и усиливаем затемнение, чтобы текст
   читался на любой ширине. */
.section-heading .heading__background{object-position:50% 34%}
.section-heading .heading:after{opacity:.42}
@media (max-width:1100px){
  /* на узких экранах заголовок стоит внизу — притеняем низ кадра сильнее */
  .section-heading .heading:after{background:linear-gradient(180deg,rgba(37,37,37,.28) 0%,rgba(37,37,37,.62) 100%);opacity:1}
}

/* /reviews/ — блок «Оставьте свой отзыв»: логотипы Яндекс/2ГИС/Zoon выровнены, крупные, цветные, кликабельные */
.section-stars .stars__services-list{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:4rem;row-gap:1.6rem}
.section-stars .stars__services-list a{display:inline-flex;align-items:center;height:4rem}
.section-stars .stars__services-list a img{filter:none;opacity:1;width:auto;height:3rem;max-width:20rem}
.section-stars .stars__services-list a:hover img{opacity:.65}
@media (max-width:1100px){
  .section-stars .stars__services-list{column-gap:3rem}
  .section-stars .stars__services-list a{height:3.2rem}
  .section-stars .stars__services-list a img{height:2.6rem;max-width:16rem}
}
/* автор отзыва как H3 — без браузерных отступов */
.section-reviews .reviews__slider h3.review__name{margin:1.6rem 0 0}

/* CPMO-918 (Роман): при ховере тень карточки обрезалась клипом слайдера — снизу у всех,
   по бокам у крайних. Даём запас внутри .swiper (клип уезжает за тень), не раскрывая 4-ю
   карточку: снизу — padding-bottom, по бокам — более широкие отступы слайдов (slidesPerView=3
   продолжает клипить 4-ю целиком). Только там, где есть ховер (десктопный указатель). */
@media (any-pointer:fine){
  /* запас под hover-тень, но небольшой — иначе всегда-видимый зазор слайдер→стрелки велик */
  .section-reviews .reviews__slider .swiper{padding-bottom:2rem}
  .section-reviews .reviews__slider .swiper-slide{padding-left:2.6rem;padding-right:2.6rem}
  /* тень компактнее (в 2rem-запас) — чтобы не резалась и не раздувала зазор */
  .section-reviews .reviews__slider .swiper-slide:hover .review{box-shadow:0 8px 18px rgba(48,48,48,.12)}
}

/* CPMO-918: десктопные стрелки отзывов были слишком низко + без цифр.
   Цифры (2/14) переносятся render.js в .rv-arrows, но статично стилизовались только в
   мобильном медиа — на десктопе оставались в дефолтном absolute и не были видны.
   Стилизуем на всех ширинах + уменьшаем зазор слайдер→стрелки на десктопе. */
.rv-arrows .swiper-pagination{position:static;width:auto;left:auto;right:auto;top:auto;bottom:auto;margin:0;padding:0;letter-spacing:0;font-family:var(--header-text-font-family),sans-serif;font-size:1.8rem;line-height:1;color:var(--color-black-primary)}
@media (min-width:1101px){
  .section-reviews .reviews__slider .rv-arrows{margin-top:1.6rem}
}


/* CPMO-918: зазоры отзывов на десктопе поменьше — стрелки к слайдеру, кнопка к стрелкам */
@media (min-width:1101px){
  .section-reviews .reviews__slider .rv-arrows{margin-top:.8rem}
  .section-reviews .reviews__more{margin-top:1.6rem}
}
