/* Reviews component styles: canonical version shared across pages */
:root {
  --review-small-w: 244px;
  --review-small-h: 290px;
  --review-main-w-lg: 320px;
  --review-main-h-lg: 360px;
  --review-main-w-md: 280px;
  --review-main-h-md: 320px;
  --review-main-w-sm: 220px;
  --review-main-h-sm: 260px;
  --review-avatar-lg: 66px;
  --review-avatar-sm: 55px;
  --review-quote-icon-w: 34px;
  --review-quote-icon-h: 22px;
  --review-gap: 32px;
  --review-content-gap: calc(var(--section-vertical, 45px) * 0.35);
}

.reviews {
  padding-top: var(--section-vertical, 45px);
  padding-bottom: var(--section-vertical, 45px);
  background-color: transparent;
  position: relative;
}

.reviews__header {
  text-align: center;
  margin-bottom: 5px; /* уменьшено для ПК */
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.reviews__title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 40px;
  line-height: 1.22;
  letter-spacing: -3.2px;
  color: #343434;
  margin-bottom: 20px;
}

.reviews__subtitle {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(52, 52, 52, 0.9);
  max-width: 444px;
  margin: 0 auto 40px;
  text-align: center;
}

.reviews__nav { 
  display: flex; 
  gap: 10px; 
}
.reviews__nav-btn {
  width: 40px; height: 40px; border: 1px solid #194896; border-radius: 50%; background: transparent; color: #000;
  display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease;
}
.reviews__nav-btn:hover { background: #194896; color: #fff; transform: none; }

.reviews__slider { position: relative; overflow: visible; padding: 0; display: flex; justify-content: center; align-items: center; }
.reviews__track { display: flex; justify-content: center; align-items: center; position: relative; width: 100%; height: 100%; max-width: var(--container-max, 1440px); margin: 0 auto; }

/* Cards */
.review-card { background: #F5F5F5; border-radius: 20px; padding: 20px; position: absolute; box-shadow: 0 -6px 24px rgba(59,61,78,0.05); display: flex; flex-direction: column; transition: all .3s ease; }
.review-card--main.review-card--center { width: 290px; height: 320px; z-index: 5; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.review-card--small { width: var(--review-small-w); height: var(--review-small-h); z-index: 3; top: 50%; transform: translateY(-50%); }

/* positions */
.review-card--1 { left: 0%; filter: blur(4px); opacity: .6; }
.review-card--5 { right: 0%; filter: blur(4px); opacity: .6; }
.review-card--2 { left: 20%; filter: blur(2px); opacity: .82; }
.review-card--4 { right: 20%; filter: blur(2px); opacity: .82; }

.review-card__quote { margin-bottom: var(--review-content-gap); }
.review-card__quote-icon { width: var(--review-quote-icon-w); height: var(--review-quote-icon-h); object-fit: contain; }
.review-card__author { display: flex; align-items: center; margin-bottom: var(--review-content-gap); }
.review-card__avatar { width: var(--review-avatar-lg); height: var(--review-avatar-lg); border-radius: 50%; object-fit: cover; margin-right: 12px; }
.review-card--small .review-card__avatar { width: var(--review-avatar-sm); height: var(--review-avatar-sm); }
.review-card__name { font-family: 'Montserrat', sans-serif; font-weight: 500; font-size: 13px; line-height: 1.22; letter-spacing: -1.1px; color: #343434; }
.review-card--small .review-card__name { font-size: 11px; }
.review-card__text { font-family: var(--font-sans, 'Montserrat', sans-serif); font-weight: 500; font-size: 12px; line-height: 1.5; color: rgba(52, 52, 52, 0.9); margin-bottom: var(--review-content-gap); flex-grow: 1; }
.review-card--small .review-card__text { font-size: 10px; }
.review-card__date { font-family: var(--font-sans, 'Montserrat', sans-serif); font-weight: 500; font-size: 13px; line-height: 1.22; letter-spacing: -1.1px; color: #343434; opacity: .5; margin-top: var(--review-content-gap); }
.review-card--small .review-card__date { font-size: 11px; }

/*============================================================================
NEW SLIDER GALLERY
============================================================================*/
/* Swiper container */
.swiper.reviewsSwiper {
  height: 400px;
  width: 100%;
  padding: 10px 10px;
}

/* Swiper wrapper */
.swiper-wrapper {
  display: flex;
}

/* Individual slides */
.swiper-slide {
  display: flex;
  justify-content: center;
  height: auto;
}

/* Review card styling */
.review-card {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  background: white;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .review-card {
    width: 85vw;
  }
}
/*============================================================================
RESPONSIVE
============================================================================*/
@media (max-width: 1200px) {
  .reviews__track { max-width: 1100px; }
  .review-card--1 { left: -2%; }
  .review-card--2 { left: 12%; }
  .review-card--4 { right: 12%; }
  .review-card--5 { right: -2%; }
}

@media (max-width: 1024px) {
  .reviews__track { max-width: calc(var(--container-max, 1440px) * 0.625); }
  .reviews__slider { height: 380px; }
  .review-card--small { width: var(--review-small-w); height: var(--review-small-h); }
  .review-card--main.review-card--center { width: var(--review-main-w-lg); height: var(--review-main-h-lg); }
  .review-card--1 { left: -8%; }
  .review-card--2 { left: 8%; }
  .review-card--4 { right: 8%; }
  .review-card--5 { right: -8%; }
}

@media (max-width: 1024px) { :root { --review-gap: 24px; } }
@media (max-width: 768px) { :root { --review-gap: 20px; } }

@media (max-width: 768px) {
  .reviews { padding-top: var(--section-vertical, 45px); padding-bottom: var(--section-vertical, 45px); }
  .reviews__title { font-size: 28px; letter-spacing: -2px; }
  .reviews__subtitle { font-size: 13px; padding: 0 20px; }
  .reviews__header { margin-bottom: 40px; }
  .reviews__slider { height: 350px; }
  .review-card--main.review-card--center { width: var(--review-main-w-md); height: var(--review-main-h-md); }
  .review-card--small { width: calc(var(--review-small-w) * 0.82); height: calc(var(--review-small-h) * 0.79); }
  .review-card--1, .review-card--5 { display: none; }
  .review-card--2 { display: block; left: 6%; filter: blur(1px); opacity: .9; }
  .review-card--4 { display: block; right: 6%; filter: blur(1px); opacity: .9; }
}

@media (max-width: 480px) {
  .reviews { padding-top: var(--section-vertical, 45px); padding-bottom: var(--section-vertical, 45px); }
  .reviews__title { font-size: 24px; letter-spacing: -1.5px; }
  .reviews__slider { height: 280px; }
  .review-card--1, .review-card--5 { display: none; }
  .review-card--2 { display: block; left: -60%; filter: blur(1px); opacity: .85; }
  .review-card--4 { display: block; right: -60%; filter: blur(1px); opacity: .85; }
  .review-card--main.review-card--center { width: var(--review-main-w-sm); height: var(--review-main-h-sm); }
}
