

/* === moved from index.html: reviews-styles START === */
#reviews{
  --rW: min(1680px, 98vw);
  --rH: clamp(860px, 72vw, 1200px);
  --rPad: clamp(20px, 3vw, 32px);

  /* управляем текстом */
  --rTextW: min(600px, 42%);
  --rTextShift: 10px;        /* + ниже / − выше */
  --rTextTilt: 0deg;      /* поворот, «лежит на пластине» */
  --rTextSkewX: 0deg;      /* лёгкий скошенный угол */
  --rTextScaleY: .98;        /* слегка приплюснут по высоте */

  /* звёзды и подпись сферы */
  --rStarsSize: clamp(16px, 2.2vw, 26px);
  --rStarsTop: 2px;           /* звёзды внутри блока, не обрезаются */
--rFieldBottom: 22px;       /* оставим как запасной */
 /* звезды выше */
--rStarsPad: 24px;          /* место под звёзды внутри текстового блока */
--rFieldPad: 40px;          /* место под подпись сферы */
--rWhoBottom: 2px;          /* автор максимально низко */
--yd-yellow: #FFCC00;       /* жёлтый Яндекс.Директа */
background: var(--yd-yellow);              /* фон всего блока */
padding: clamp(24px, 4vw, 56px) 0;         /* чуть воздуха сверху/снизу */

  --rFieldSize: clamp(12px, 1.5vw, 16px);
  --rFieldBottom: 12px;
}

/* каркас */
#reviews .r-card{
  position: relative;
    z-index: 0;
  isolation: isolate; /* свой стек слоёв */

  width: var(--rW);
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
}
/* Декоративный фон из 4 картинок — под всем контентом */
#reviews .r-card::before{
  content:"";
  position:absolute; inset:0;
  z-index:0; pointer-events:none;
  background-image:
    url("/images/glavnay/fon1.png"),
    url("/images/glavnay/fon2.png"),
    url("/images/glavnay/fon3.png"),
    url("/images/glavnay/fon4.png");
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  /* позиции: ВП, НЛ, сверху слева, справа ниже центра */
  background-position:
    right 2% top 6%,
    left 3% bottom -6%,
    12% 22%,
    86% 78%;
  /* размеры — регулируемые, но уже выглядят крупно и аккуратно */
  background-size:
    clamp(160px, 22vw, 320px),
    clamp(180px, 26vw, 360px),
    clamp(140px, 18vw, 260px),
    clamp(140px, 18vw, 260px);
  opacity: .85;
}

#reviews .r-stage{ position: relative; height: var(--rH); overflow: visible; }

/* пластины */
#reviews .r-plate{
  position: absolute; inset: 0;
  display: grid; place-items: center;
  transition: transform .48s ease, opacity .48s ease;
}
#reviews .r-frame{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: contain; object-position: center;
  filter: drop-shadow(0 18px 38px rgba(0,0,0,.14));
  pointer-events: none;
}

/* сам текст — «лежит» на наклонной пластине */
#reviews .r-text{
  position: relative;
  max-width: var(--rTextW);
  margin: 0 auto;
  padding: calc(clamp(14px, 2vw, 22px) + var(--rStarsPad))
         clamp(16px, 2.2vw, 26px)
         calc(clamp(14px, 2vw, 22px) + var(--rFieldPad));

  color:#1B1F23;
  text-align: left;
  font-weight: 800;
  line-height: 1.42;
  font-size: clamp(15px, 1.9vw, 20px);
  text-wrap: balance;
  hyphens: auto; word-break: break-word;
  white-space: pre-line;                    /* переносы из текста сохраняем */

  transform:
    translateY(var(--rTextShift))
    rotate(var(--rTextTilt))
    skewX(var(--rTextSkewX))
    scaleY(var(--rTextScaleY));
  transform-origin: 50% 50%;

  max-height: calc(100% - 2*var(--rPad));
  overflow: auto;
}

/* звёзды сверху и сфера (подпись) снизу */
#reviews .r-text::before{
  content: "★★★★★";
  position: absolute;
  top: var(--rStarsTop); left: 50%;
  transform: translateX(-50%);
  font-size: var(--rStarsSize);
  letter-spacing: .08em;
  color: #F2C94C;
  text-shadow: 0 2px 6px rgba(0,0,0,.18);
  pointer-events: none;
}
#reviews .r-text::after{
  content: attr(data-field);
  position: absolute;
  bottom: calc(var(--rWhoBottom, 2px) + 26px); /* сфера ниже текста и выше автора */

  transform: translateX(-50%);
  font-size: var(--rFieldSize);
  font-weight: 800;
  color: rgba(27,31,35,.75);
  white-space: nowrap;
  pointer-events: none;
}

#reviews .r-author{
  position: absolute;
  left: 50%;
  bottom: var(--rWhoBottom);             /* ниже */
  transform: translateX(-50%);
  font-weight: 800;
  font-size: clamp(13px, 1.6vw, 16px);
  color: rgba(27,31,35,.82);
  white-space: nowrap;
}


/* стрелки */
#reviews .r-arrow{
  display: grid; place-items: center;
  width: 44px; height: 44px; border-radius: 12px;
  background: #fff; color:#1B1F23;
  border:1px solid rgba(27,31,35,.14);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
#reviews .r-arrow:hover{ transform: translateY(-1px); box-shadow:0 10px 24px rgba(0,0,0,.12); }
#reviews .r-arrow:active{ transform: translateY(0); }

/* состояния движения (вешает JS) */
#reviews .to-left{  transform: translateX(-120%); opacity: 0; }
#reviews .to-right{ transform: translateX(120%);  opacity: 0; }
#reviews .from-left{  transform: translateX(-120%); }
#reviews .from-right{ transform: translateX(120%); }
#reviews .center{ transform: translateX(0); opacity: 1; }

/* мобилка */
@media (max-width: 720px){
  #reviews .r-arrow{ width: 40px; height: 40px; }
  #reviews .r-text{ max-width: min(82%, 500px); }
}
#reviews .r-title{
  display:block !important;                /* перебиваем inline-flex */
  width:100vw;
  margin:0 0 24px;
  margin-left:calc(50% - 50vw);            /* по центру всей страницы */
  margin-top: 0 !important; /* переносим отступ на контейнер */


  text-align:center;
  color:#1B1F23 !important;
  font-weight:900 !important;
  font-size:clamp(40px, 6.6vw, 96px) !important; /* крупнее */
  line-height:1.06 !important;
  letter-spacing:-.005em !important;
  position:relative; z-index:1;
}
/* Видимый отступ сверху внутри секции отзывов (перебивает #prefooter .wrap { padding-top:0 !important }) */
#prefooter #reviews .wrap{
  padding-top: clamp(48px, 7vw, 140px) !important; /* меняй это число, чтобы опустить/поднять заголовок */
}

/* без кружочка/маркера слева */
#reviews .r-title::before{ content:none !important; }
#reviews .r-title::marker{ content:"" !important; }
#reviews .wrap{ overflow:visible; } /* на случай ограничений контейнера */


/* убираем любые кружочки/маркеры */
#reviews .r-title::before{ content:none !important; }
#reviews .r-title::marker{ content:"" !important; }

#reviews .r-stage, #reviews .r-arrow { position: relative; z-index: 1; }

/* === Видео-отзыв внутри слайдера === */
#reviews .r-video-wrap{
  position: relative;

  /* фулл-виджет по ширине экрана */
  width: 100vw;
  max-width: 100vw;

  /* “вытягиваем” из контейнера, чтобы стало шире */
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);

  /* чтобы не прилипало к краям */
  padding: 0 12px;
  box-sizing: border-box;
}


#reviews video.r-video{
  display: block;
  margin: 0 auto;

  /* СУПЕР КРУПНО: почти на весь экран */
  height: min(92vh, 1400px);
  width: auto;

  /* страховка: не вылезаем из экрана */
  max-height: calc(100vh - 90px);
  max-width: calc(100vw - 24px);

  border-radius: 18px;
  background: #000;
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
}


#reviews .r-meta{
  margin: 10px auto 0;
  width: 100%;
  max-width: min(860px, 92%);
  text-align: center;
}
#reviews .r-meta .r-field{
  font-weight: 900;
  letter-spacing: .02em;
  opacity: .78;
  font-size: clamp(12px, 1.6vw, 16px);
}
#reviews .r-meta .r-who{
  margin-top: 4px;
  font-weight: 800;
  opacity: .9;
  font-size: clamp(13px, 1.6vw, 16px);
}
/* На видео-пластине убираем наклон/скролл текста */
#reviews .r-plate.is-video{ display:grid; place-items:center; }
/* === moved from index.html: reviews-styles END === */

/* === moved from index.html: team-vs-styles START === */
/* Ширина визуала и карточки совпадают всегда */
#team-vs{
  --vsW: min(760px, 62vw);
  --bg-pad: 16px;
  --bg-tr: clamp(180px, 24vw, 420px);
  --bg-bl: clamp(220px, 28vw, 520px);
  --tv-title-offset: 32px;
  --tv-title-shadow-y: 16px;

  /* новое — управляем «воздухом» */
  --pitch-w: min(820px, 92vw);      /* комфортная ширина текста */
  --pitch-space: clamp(22px, 3.6vw, 36px); /* ↑ больше воздуха между блоками */

  --pitch-gap: clamp(14px, 2.6vw, 24px); /* ↑ интервалы внутри текста/чипов/списка */

}

 --tv-title-offset: 32px; --tv-title-shadow-y: 36px; } /* ← высота тени */


  /* Отступ как между кейсами (если переменной нет — используем fallback) */
  #team-vs{ margin: var(--cr-gap, clamp(24px, 4vw, 48px)) 0; }

  /* Тёмная премиальная «карточка» в наших пастельных тонах */
  #team-vs .tv-card{
    position: relative; overflow: visible; text-align: center;
    background: #fff;
       /* убрали фоновые картинки */
    background-image: none;


    border:1px solid rgba(27,31,35,.08);
    border-radius:24px;
    padding: clamp(28px, 6vw, 72px) clamp(16px, 4vw, 32px);
    box-shadow:0 12px 36px rgba(0,0,0,.08);
    color:#1B1F23; /* базовый текст – тёмно-угольный */
}

  /* мягкий бренд-градиент поверх тёмного фона */
  #team-vs .tv-card::before{
    content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
    background: linear-gradient(135deg,
        color-mix(in oklab, var(--brand-1, #7FB8FF) 26%, #fff 74%),
        color-mix(in oklab, var(--brand-2, #AFA4FF) 22%, #fff 78%),
        color-mix(in oklab, var(--brand-3, #FF97AA) 18%, #fff 82%)
    );
    opacity:.14; mix-blend-mode: normal; /* нежный пастельный слой */
}


  /* Заголовок крупно по центру, без кружочка слева */
  #team-vs .tv-title{
  margin-bottom: 14px; /* верх не трогаем */

    font-size: clamp(40px, 6.2vw, 88px);
    line-height: 1.06; letter-spacing: -0.02em; color:#1B1F23;

  }
  #team-vs h2.tv-title::before{ content:none !important; }

  /* Картинка по центру, крупно */
  #team-vs .tv-visual{ margin: 0; }
  /* Картинка — сверху стека, центр по ширине */
#team-vs .tv-visual{ position: relative; }
#team-vs .tv-visual img{
  position: relative;
  z-index: 1;                 /* картинка поверх карточки */
  display: block;
  width: var(--vsW);          /* ширина из переменной */
  height: auto;
  margin: 0 auto;
  filter: drop-shadow(0 12px 28px rgba(0,0,0,.35));
}

/* Заголовок: белый текст с отражением как в примере, без цветного фильтра */
#team-vs .tv-title.tv-title--fx{
  position: relative;
  color:#1B1F23 !important;
  text-transform: uppercase;
  letter-spacing:.02em;
  font-weight:900;
  margin-top: var(--tv-title-offset, 58px) !important; /* опускает заголовок */
  text-shadow: none !important; /* отключаем старые тени */
}
#team-vs .tv-title.tv-title--fx::after{
  content: attr(data-text);
  position: absolute;
  left: 0; right: 0;
  top: 100%;                               /* отражение начинается сразу под строкой */
  transform: translateY(var(--tv-title-shadow-y, 16px)) scaleY(-1);
  transform-origin: top center;
  color: #1B1F23;                          /* тот же угольный цвет */
  opacity: .28;                            /* полупрозрачность отражения */
  filter: blur(1px);                       /* лёгкое размытие для реалистичности */
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,.55) 0%, rgba(0,0,0,.3) 30%, transparent 70%);
          mask-image: linear-gradient(to bottom, rgba(0,0,0,.55) 0%, rgba(0,0,0,.3) 30%, transparent 70%);
}


/* Тёмная карточка поверх нижней половины изображения */
#team-vs .tv-visual{ position:relative; overflow:visible; }

#team-vs .tv-stats{
  position:absolute; left:50%; bottom:6%;
  transform:translateX(-50%);
  width:90%;                 /* под ширину изображения */
  height:50%;                /* половина высоты изображения */
  background:rgba(8,12,18,.88);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  display:flex; align-items:center; justify-content:space-around; gap:10px;
  padding:12px 14px;
  box-shadow:0 10px 28px rgba(0,0,0,.30);
}
#team-vs .tv-stats .field{
  color:#fff; font-weight:800; white-space:nowrap;
}
/* Тёмная карточка под изображением, низ совпадает с низом картинки */
#team-vs .tv-dark{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;                  /* низ карточки = низу картинки */
  width: var(--vsW);          /* ширина точно как у картинки */
  height: 50%;                /* фактическую 1/2 высоты задаст JS */
  background: rgba(0,0,0,.85);
  border: 6px solid #fff;     /* толстая яркая белая обводка */
  border-radius: 16px;
  box-shadow: 0 12px 32px rgba(0,0,0,.35);
  z-index: 0;                 /* под картинкой */
  pointer-events: none;       /* на карточку нельзя кликнуть */
}

/* Адаптив: можно сузить ширину на мобилке через переменную */
@media (max-width: 900px){
  #team-vs{ --vsW: min(640px, 88vw); }
}
/* Тёмная карточка под изображением, низ совпадает с низом картинки */
#team-vs .tv-dark{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;                  /* низ карточки = низу картинки */
  width: var(--vsW);          /* ширина точно как у картинки */
  height: 50%;                /* фактическую 1/2 высоты задаст JS */
  background: rgba(0,0,0,.85);
  border: 6px solid #fff;     /* толстая яркая белая обводка */
  border-radius: 16px;
  box-shadow: 0 12px 32px rgba(0,0,0,.35);
  z-index: 0;                 /* под картинкой */
  pointer-events: none;       /* на карточку нельзя кликнуть */
}

/* Адаптив: можно сузить ширину на мобилке через переменную */
@media (max-width: 900px){
  #team-vs{ --vsW: min(640px, 88vw); }
}

/* Две белые карточки ниже изображения */
#team-vs .tv-compare{
  margin:16px auto 0;
  display:grid; gap:12px;
  grid-template-columns: 1fr 1fr;
  max-width: min(980px, 88vw);
}
#team-vs .tv-compare .card{
  background:#fff; color:#0f131a;
  border:1px solid rgba(17,24,39,.08);
  border-radius:16px; padding:14px 16px;
  box-shadow:0 6px 18px rgba(0,0,0,.10);
  text-align:left;
}
#team-vs .tv-compare h3{ margin:0 0 8px; font-weight:800; font-size:18px; }
#team-vs .tv-compare .ticks{ list-style:none; margin:0; padding-left:0; }
#team-vs .tv-compare .ticks li{
  position:relative; padding-left:18px; margin:6px 0;
}
#team-vs .tv-compare .ticks li::before{
  content:""; position:absolute; left:0; top:9px;
  width:8px; height:8px; border-radius:50%;
  background:#79C6A3;
}

/* Мобилка: карточку делаем обычной, сравнение — в одну колонку */
@media (max-width:900px){
  #team-vs .tv-visual img{ width:min(640px, 88vw); }
  #team-vs .tv-stats{
    position:static; transform:none; width:100%; height:auto; margin-top:10px;
  }
  #team-vs .tv-compare{ grid-template-columns:1fr; }
}
/* Заголовок: белый текст с отражением как в примере, без цветного фильтра */
#team-vs .tv-title.tv-title--fx{
  color:#1B1F23;            /* угольный */
  text-transform:uppercase;
  letter-spacing:.02em;
  font-weight:900;
  text-shadow:0 2px 10px rgba(0,0,0,.12); /* мягкая «тень», без фильтров */
    text-shadow: 0 10px 20px rgba(0,0,0,.22); /* тень ВНИЗ от текста */
  margin-top: 58px; /* ↓ опускает заголовок; меняйте это число */

}


/* Тёмная карточка поверх нижней половины изображения */
#team-vs .tv-visual{ position:relative; overflow:visible; }

#team-vs .tv-stats{
  position:absolute; left:50%; bottom:6%;
  transform:translateX(-50%);
  width:90%;                 /* под ширину изображения */
  height:50%;                /* половина высоты изображения */
  background:rgba(8,12,18,.88);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  display:flex; align-items:center; justify-content:space-around; gap:10px;
  padding:12px 14px;
  box-shadow:0 10px 28px rgba(0,0,0,.30);
}
#team-vs .tv-stats .field{
  color:#fff; font-weight:800; white-space:nowrap;
}

/* Две белые карточки ниже изображения */
#team-vs .tv-compare{
  margin:16px auto 0;
  display:grid; gap:12px;
  grid-template-columns: 1fr 1fr;
  max-width: min(980px, 88vw);
}
#team-vs .tv-compare .card{
  background:#fff; color:#0f131a;
  border:1px solid rgba(17,24,39,.08);
  border-radius:16px; padding:14px 16px;
  box-shadow:0 6px 18px rgba(0,0,0,.10);
  text-align:left;
}
#team-vs .tv-compare h3{ margin:0 0 8px; font-weight:800; font-size:18px; }
#team-vs .tv-compare .ticks{ list-style:none; margin:0; padding-left:0; }
#team-vs .tv-compare .ticks li{
  position:relative; padding-left:18px; margin:6px 0;
}
#team-vs .tv-compare .ticks li::before{
  content:""; position:absolute; left:0; top:9px;
  width:8px; height:8px; border-radius:50%;
  background:#79C6A3;
}

/* Мобилка: карточку делаем обычной, сравнение — в одну колонку */
@media (max-width:900px){
  #team-vs .tv-visual img{ width:min(640px, 88vw); }
  #team-vs .tv-stats{
    position:static; transform:none; width:100%; height:auto; margin-top:10px;
  }
  #team-vs .tv-compare{ grid-template-columns:1fr; }
}


  /* Мобилка */
  @media (max-width: 900px){
    #team-vs .tv-card{ padding: 24px 16px; }
    #team-vs .tv-title{ font-size: clamp(28px, 8vw, 44px); margin-bottom: 10px; }
    #team-vs .tv-visual img{ width: 100%; }
  }
  /* Слой-рамка поверх — повторяет габариты карточки .tv-dark */
#team-vs .tv-border{
  position:absolute;
  left:50%; transform:translateX(-50%);
  bottom:0;
  width: var(--vsW);
  height:50%;              /* та же высота, что у .tv-dark */
  border:6px solid #fff;   /* толстая белая обводка */
border-radius:0; /* убрали скругление у рамки */

  background:transparent;
  z-index:2;               /* поверх изображения */
   /* прячем верхние 6px рамки — визуально уходит под картинку */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, transparent 6px, #000 6px);
          mask-image: linear-gradient(to bottom, transparent 0, transparent 6px, #000 6px);
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;

}
@media (max-width: 760px){
  #team-vs{
    --bg-pad: 10px;
    --bg-tr: clamp(120px, 38vw, 240px);
    --bg-bl: clamp(140px, 42vw, 260px);
  }
}
#team-vs .tv-pitch{
  width: var(--pitch-w, var(--vsW));
  margin: var(--pitch-space) auto 0;
  padding: 0 clamp(8px, 2vw, 18px);
  text-align: center;
}
#team-vs .tv-punch{
  margin: 0 0 var(--pitch-gap);  /* ↓ отступ под абзацем */
  line-height: 1.35;
  letter-spacing: .005em;
  font-weight: 800;
  font-size: clamp(18px, 2.2vw, 28px);
  color: #1B1F23;
}

/* Короткий список пользы */
#team-vs .tv-points{
  list-style:none; margin: 0 0 var(--pitch-space); padding:0;
  display:grid; gap: clamp(10px, 1.8vw, 18px);
}

#team-vs .tv-points li{
  background:#fff; color:#1B1F23;
  border:1px solid rgba(27,31,35,.14);
  border-radius:12px; padding:10px 12px;
  font-weight:700; text-align:left;
}
@media (min-width: 860px){
  #team-vs .tv-points{ grid-template-columns: repeat(3, 1fr); }
}
/* === moved from index.html: team-vs-styles END === */

/* === moved from index.html: svc-relax-styles START === */
/* Интервал сверху от предыдущего блока */
  #svc-relax{ margin-top: clamp(24px, 6vw, 72px); }
  #svc-relax{ background: transparent; }               /* один фон с предыдущим */
#svc-relax .wrap{ padding-top:0; padding-bottom:0; } /* убираем внутренние «прослойки» */
/* подложка между блоками: картинка на фоне под контентом */
#svc-relax{ margin-top:0; position:relative; }
#svc-relax .wrap{ position:relative; z-index:2; }       /* контент выше подложки */
#svc-relax .ai-stitch{
  position:absolute; left:0; right:0;
  top:-240px;              /* сколько «заезжает» вверх */
  height:280px;            /* высота «перемычки» */
  z-index:1;               /* НИЖЕ, чем .wrap (z:2) */
  pointer-events:none;
}
#svc-relax .ai-stitch img{
  display:block; width:100%; height:100%; object-fit:cover;
}
/* Блёстки поверх подложки: плавное падение сверху вниз */
#svc-relax .ai-stitch .ai-sparkles{
  position:absolute; inset:0;
  pointer-events:none;
  mix-blend-mode:screen;          /* мягкое свечение */
  opacity:.95;

  /* набор «точек» в разных местах; узор повторяется по оси Y */
  background:
  radial-gradient(2px 2px at 18% 0%,  rgba(127,184,255,.90) 0 60%, transparent 61%),
  radial-gradient(1.6px 1.6px at 42% 25%, rgba(127,184,255,.78) 0 60%, transparent 61%),
  radial-gradient(2.2px 2.2px at 68% 50%, rgba(127,184,255,.97) 0 60%, transparent 61%),
  radial-gradient(1.8px 1.8px at 82% 75%, rgba(127,184,255,.72) 0 60%, transparent 61%),
  radial-gradient(1.6px 1.6px at 30% 60%, rgba(127,184,255,.85) 0 60%, transparent 61%);
background-repeat: repeat-y;
background-size: 100% 220px;

  background-repeat: repeat-y;
  background-size: 100% 220px;    /* «высота» рисунка для бесшовной прокрутки */

  animation: ai-spark-scroll 10s linear infinite;
  will-change: background-position;
}

/* плавный бесконечный скролл блёсток вниз */
@keyframes ai-spark-scroll{
  0%   { background-position: 0 0,   0 0,   0 0,   0 0,   0 0; }
  100% { background-position: 0 220px, 0 220px, 0 220px, 0 220px, 0 220px; }
}

/* Доступность: уважаем reduced motion */
@media (prefers-reduced-motion: reduce){
  #svc-relax .ai-stitch .ai-sparkles{ animation:none; }
}


/* мобайл — отдельно, десктоп не трогаем */
@media (max-width:900px){
  #svc-relax .ai-stitch{ top:-90px; height:200px; }
}


/* та же панель, что у блока ИИ: белая подложка + пастельный градиент */
#svc-relax > .wrap{
  position: relative; overflow: visible;
  background:#fff; border:1px solid rgba(31,36,41,.06);
  border-radius:24px;   padding: 28px 28px 28px 20px;
   padding: 28px 28px 0 20px;     /* снизу = 0 → ничего не «вылезает» */
  --wrap-padding-bottom: 0px;    /* нижний паддинг секции теперь ноль */

}


#svc-relax > .wrap::before{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background: linear-gradient(135deg,var(--brand-1),var(--brand-2),var(--brand-3));
  opacity:.14;
}


  /* Двухколоночная сетка: слева карточка, справа картинка */
  #svc-relax .relax-grid{
  display:grid; gap:0; align-items:center;
  grid-template-columns: minmax(420px,1.2fr) minmax(380px,1.05fr); /* теперь картинка слева, карточка справа */
   margin-top:50px;   /* ↓ опустить блок "Пока вы…" на 24px */
   
}
#svc-relax .relax-grid{ position:relative; z-index:2; }


  /* Левая большая карточка с мыслью */
  #svc-relax .relax-card{
  position:relative; overflow:visible;

  background:#fff;
  border:1px solid rgba(31,36,41,.08);
  border-left:0;                                   /* стык без линии слева */
  border-top-left-radius:0; border-bottom-left-radius:0;
  border-radius:24px; padding:28px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}


  #svc-relax .relax-card::before{
    content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
    background:linear-gradient(135deg,var(--brand-1),var(--brand-2),var(--brand-3));
    opacity:.12;
  }

  /* Заголовок без кружочка, крупный */
  #svc-relax .relax-title{
    margin:0 0 10px;
    font-size: clamp(28px, 4.8vw, 56px);
    line-height:1.05; letter-spacing:-.01em;
  }
  #svc-relax h2::before{ content:none !important; }

  #svc-relax .relax-sub{ margin:0 0 12px; }
  #svc-relax .relax-points{ margin: 0 0 12px 18px; }

  /* Кнопки-пилюли */
  #svc-relax .p-cta .btn{ border-radius:999px; padding:10px 14px; }

  /* Правая картинка крупно, без правого отступа (съедаем правый внутренний отступ wrap) */
  #svc-relax .relax-visual{ margin:0; display:flex; justify-content:flex-end; align-items:center; }
#svc-relax .relax-visual img{
  display:block;
  width:min(880px, 60vw);
  height:auto;
  margin-left:0;             /* вплотную к карточке */
  margin-right:0;            /* без «вылета» за контейнер */
  transform: translateY(-2px);
}
#svc-relax .relax-visual img{ margin-left: calc(-1 * var(--wrap-padding, 16px)); }


  /* Адаптив: мобайл НЕ влияет на десктоп (только в @media) */
 @media (max-width:900px){
  #svc-relax .relax-grid{ grid-template-columns:1fr; gap:12px; } /* на мобилке даём воздух между рядами */
  #svc-relax .relax-visual img{ width:100%; margin-right:0; transform:none; }
  #svc-relax .p-cta{ flex-direction:column; align-items:stretch; }
}
/* === LANDINGS внутри #svc-relax === */
#svc-relax .landing-grid{
  display:grid; align-items:center; gap:0;
  grid-template-columns: minmax(420px,.9fr) minmax(620px,1.1fr);
  grid-auto-flow: row;
margin-top: clamp(64px, 10vw, 140px);

  /* добавили воздуха над подблоком */

  padding-left: calc(var(--wrap-padding, 20px) + 24px);
  box-sizing: border-box;

  /* фикс: ничего не режем внутри сетки и разрешаем сжатие колонок */
  overflow: visible !important;
}
#svc-relax .landing-grid > *{ min-width:0; } /* правая колонка не «упирается» в содержимое */


#svc-relax .landing-title{
  margin:0 0 10px;
  font-size: clamp(28px, 4.4vw, 56px);
  line-height:1.05; letter-spacing:-.01em;
}
#svc-relax h2.landing-title::before{ content:none !important; } /* без кружка перед заголовком */

#svc-relax .landing-sub{ margin:0 0 10px; }
#svc-relax .landing-points{ margin: 0 0 12px 18px; }

#svc-relax .landing-visual{
  margin:0;
  display:flex; justify-content:flex-end; align-items:flex-end;
  position:relative; overflow:visible;
}


#svc-relax .landing-visual img{
  display:block; height:auto;
  width: min(960px, 62vw);
    margin-right: calc(-1 * var(--wrap-padding, 16px));
  margin-bottom: 0;         /* нижняя грань теперь вровень с границей блока */

  transform: none; /* больше ничем не сдвигаем */
}


/* выровнять левый край текста с краем карточки */
#svc-relax .landing-copy{
  margin-left: 0;
  padding-left: 0;
  max-width: 56ch;
}


@media (max-width:900px){
  #svc-relax .landing-grid{
    grid-template-columns:1fr;
    gap:12px;
    padding-left: 0 !important;   /* ⬅️ на мобиле без сдвига */
  }
  #svc-relax .landing-visual img{
    width:100%;
    margin-right:0 !important;
  }
  #svc-relax .p-cta{ flex-direction:column; align-items:stretch; }
}

/* Фон подблока "Лендинги" — лежит под контентом */
#svc-relax .landing-grid{ position: relative; overflow: visible; }

#svc-relax .landing-bg{
  position: absolute;
  inset: 0;                 /* тянем фон на всю ширину двух колонок */
  grid-column: 1 / -1;      /* доп. гарантия: охватываем все колонки grid */
  z-index: 1;
  pointer-events: none;
}
#svc-relax .landing-bg img{
  display: block;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center -50px; /* ↑ поднимите/опустите картинку здесь */
}
#svc-relax .landing-copy,
#svc-relax .landing-visual{ position: relative; z-index: 2; }


#svc-relax .landing-bg img{
  display:block; width:100%; height:100%;
  object-fit:cover;
  object-position:center -10px; /* РУЧКА Б: поднять картинку внутри фона (− вверх, + вниз) */
}

/* Контент — поверх фона */
#svc-relax .landing-copy,
#svc-relax .landing-visual{ position: relative; z-index:2; }

/* Мобилка: ничего не ломаем, фон тянется за контентом */
@media (max-width:900px){
  #svc-relax .landing-bg img{ object-position:center 0; }
}

/* запрет обрезания внутри #svc-relax */
#svc-relax,
#svc-relax .wrap,
#svc-relax .relax-grid,
#svc-relax .relax-card,
#svc-relax .relax-visual,
#svc-relax .landing-grid,
#svc-relax .landing-visual{ overflow: visible !important; }
/* Больше воздуха под кнопкой до низа блока (только слева у текста) */
#svc-relax .landing-copy .p-cta{
  margin-bottom: clamp(20px, 4vw, 40px);
}
/* === moved from index.html: svc-relax-styles END === */

/* === moved from index.html: svc-segtach-styles START === */
/* Блок СегТач: премиальный фон, заголовок без кружка, картинка перекрывает заголовок чуть-чуть */
  #svc-segtach .st{
    position:relative; overflow:visible;
    background:#fff; border:1px solid rgba(31,36,41,.06);
    border-radius:24px;   padding:84px 28px 28px; /* ближе к заголовку */
}

  #svc-segtach .st::before{
    content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
    background:linear-gradient(135deg,var(--brand-1),var(--brand-2),var(--brand-3));
    opacity:.14;
  }
  #svc-segtach .st-title{
    margin: clamp(16px, 3.5vw, 40px) 0 0; /* интервал от начала блока до заголовка */

  font-family: Manrope, Inter, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-weight: 800;
   font-size: clamp(48px, 7.2vw, 96px);

  line-height: 1.04;
  letter-spacing: -0.02em;
  text-align:center;
  position:relative; z-index:1;

  /* строгий центр по ширине страницы */
  display:inline-block;
  left:50%;
  transform:translateX(-50%);
}


  /* убираем кружок только здесь */
  #svc-segtach h2::before{ content:none !important; display:none !important; }

  /* сетка: текст слева/справа, картинка по центру */
  #svc-segtach .st-grid{
  display:grid; gap:16px; align-items:stretch;       /* тянем колонки на всю высоту строки */
  grid-template-columns: 1fr minmax(320px,.9fr) 1fr;
  margin-top:-0;                                   /* текст ближе к заголовку */
    margin-bottom:0;

}


  #svc-segtach .st-visual{
  margin:0;
  display:flex; justify-content:center; align-items:center;
  position: relative; z-index: 2;
  animation: segtach-float 7s ease-in-out infinite;
  will-change: transform;
}

#svc-segtach .st-visual img{
  display:block;
  width:min(720px,52vw);     /* чуть меньше */
  height:auto;
  transform: translateY(-70px); /* выше — сильнее наезд на заголовок */
}


  /* чипы — фирменный стиль страницы */
  #svc-segtach .promo-chips{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-top:12px; }

  #svc-segtach .p-cta{ justify-content:center; margin-top:12px; }
  #svc-segtach .p-cta .btn{ border-radius:999px; }

  @media (max-width:900px){
    #svc-segtach .st-grid{ grid-template-columns:1fr; }
    #svc-segtach .st-visual img{ width:min(640px,92vw); transform:none; }
    #svc-segtach .p-cta{ flex-direction:column; align-items:stretch; }
  }
  /* Левый/правый столбцы — колонками, чтобы текст и кнопки «обнимали» картинку */
#svc-segtach .st-left,
#svc-segtach .st-right{
  display:flex; flex-direction:column; align-items:center; gap:10px;
}

/* Определение СегТач над чипами — компактный текст «как вокруг картинки» */
#svc-segtach .st-def{
  max-width:42ch; text-align:center; margin:0 auto 8px;
  font-size:16px; line-height:1.45;
}

/* Кнопки под чипами — пилюли, как на всём сайте */
#svc-segtach .st-cta-left,
#svc-segtach .st-cta-right{ margin-top:12px; } /* сразу под чипами */

#svc-segtach .st-cta-left .btn,
#svc-segtach .st-cta-right .btn{ border-radius:999px; }

@media (max-width:900px){
  #svc-segtach .st-def{ max-width:56ch; }
}
/* Текст-определение: выравнивание по ширине + «полукруг» у картинки */
/* Левый столбец: текст строго по левому краю, без обтеканий */
#svc-segtach .st-left{ display:flex; flex-direction:column; align-items:flex-start; }
#svc-segtach .st-def{
  text-align:left;
  max-width:48ch;
  margin:0 0 12px 0;   /* интервал между определением и чипами */
  line-height:1.55;
}
#svc-segtach .st-def::after{ content:none !important; }

/* Чипы слева — по центру колонки, как справа */
#svc-segtach .st-left .promo-chips{ width:100%; justify-content:center; }
/* Левый столбец: текст строго по левому краю, без обтеканий */
#svc-segtach .st-left{ display:flex; flex-direction:column; align-items:flex-start; }
#svc-segtach .st-def{
  text-align:left;
  max-width:48ch;
  margin:0 0 12px 0;   /* интервал между определением и чипами */
  line-height:1.55;
}
#svc-segtach .st-def::after{ content:none !important; }

/* Чипы слева — по центру колонки, как справа */
#svc-segtach .st-left .promo-chips{ width:100%; justify-content:center; }


/* На мобилке убираем форму, чтобы не мешать чтению */
@media (max-width:900px){
  #svc-segtach .st-def{ text-align:left; text-align-last:auto; max-width: 58ch; }
  #svc-segtach .st-def::after{ display:none; }
}
/* Колонки: делаем флекс-колонки, CTA уезжает вниз одинаково в обеих */
#svc-segtach .st-left{  display:flex; flex-direction:column; align-items:flex-start; padding-left: clamp(16px, 4vw, 40px); }

#svc-segtach .st-right{ display:flex; flex-direction:column; align-items:center; }

/* Кнопки внутри колонок — прижать к низу ячейки грида, чтобы выровнялись по высоте */
#svc-segtach .st-cta-left,
#svc-segtach .st-cta-right{ margin-top:8px; }   /* сразу под чипами */


/* Чипы слева — по центру, как справа (оставляем, если не было) */
#svc-segtach .st-left .promo-chips{ width:100%; justify-content:center; }
/* чуть поднять левый/правый столбцы */
#svc-segtach .st-left,
#svc-segtach .st-right{ margin-top:0; }
#svc-segtach .st-left{ align-items:flex-start; margin-top:0; }


/* Правую — без смещения, чтобы чипы остались как были */
#svc-segtach .st-right{ margin-top:0; }
/* чипы на одном уровне, примерно по середине картинки */
#svc-segtach .st-left .promo-chips,
#svc-segtach .st-right .promo-chips{
  margin-top: clamp(8px, 6vh, 56px);
}
@keyframes segtach-float{
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-8px); } /* лёгкое «парение» вверх */
}

/* Уважение к настройкам доступности */
@media (prefers-reduced-motion: reduce){
  #svc-segtach .st-visual{ animation: none !important; }
}
/* поднимаем контент двух секций над фон-картинкой стыка */
#svc-segtach .wrap, #svc-relax .wrap{ position:relative; z-index:2; }
/* === moved from index.html: svc-segtach-styles END === */

/* === moved from index.html: svc-segtach-structure-2025-11-11 START === */
/* микро-заголовок (тонкая навигация взгляда) */
  #svc-segtach .st-eyebrow{
    margin:6px 0 6px;
    font:800 12px/1.2 Manrope,Inter,system-ui;
    letter-spacing:.1em; text-transform:uppercase;
    opacity:.72;
  }
  /* компактные пункты (универсальный список) */
  #svc-segtach .st-points{
    list-style:none; margin:0 0 10px; padding:0;
    display:grid; gap:8px;
  }
  #svc-segtach .st-points li{
    position:relative; padding-left:16px;
    font-weight:800; line-height:1.35;
  }
  #svc-segtach .st-points li::before{
    content:""; position:absolute; left:0; top:.6em;
    width:6px; height:6px; border-radius:50%;
    background:currentColor; opacity:.25;
  }
  /* подправляем вспомогательные пометки */
  #svc-segtach .st-note{ margin:2px 0 0; font-size:.95rem; opacity:.78; }
/* === moved from index.html: svc-segtach-structure-2025-11-11 END === */

/* === moved from index.html: guarantees-styles START === */
/* Переменные и сетка */
#guarantees{ --gW: min(980px, 92vw); }
#guarantees .g-card{
  position: relative; text-align: left;

  width: 100%; background:#fff;
  border:1px solid rgba(27,31,35,.08);
  border-radius:24px;
  padding: clamp(28px, 6vw, 56px) clamp(16px, 4vw, 32px);
  box-shadow:0 12px 36px rgba(0,0,0,.08);
}
/* Двухколоночная сетка: текст слева, картинка справа */
#guarantees .g-grid{
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(16px, 3vw, 28px);
  align-items: center;
  max-width: var(--gW);
  margin: 0 auto;
}
#guarantees .g-copy{ text-align: left; }
#guarantees .g-copy .g-chips{ justify-content: flex-start; }
#guarantees .g-copy .g-cta{ justify-content: flex-start; }

#guarantees .g-art{ justify-self: end; }
#guarantees .g-art img{
  display: block;
  width: min(560px, 100%);
  height: auto;
  border-radius: 20px;
  filter: drop-shadow(0 14px 32px rgba(0,0,0,.14));
}

/* Мобилка: картинка ниже текста, всё остаётся слева */
@media (max-width: 880px){
  #guarantees .g-grid{ grid-template-columns: 1fr; }
  #guarantees .g-art{ justify-self: start; margin-top: 10px; }
}

/* Пастельная «премиальная» вуаль в наших тонах */
#guarantees .g-card::before{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background: linear-gradient(135deg,
      color-mix(in oklab, var(--brand-1, #7FB8FF) 22%, #fff 78%),
      color-mix(in oklab, var(--brand-2, #AFA4FF) 18%, #fff 82%),
      color-mix(in oklab, var(--brand-3, #FF97AA) 14%, #fff 86%)
  );
  opacity:.10;
}
#guarantees .g-title{
  margin: 0 0 16px;
  color:#1B1F23;
  font-weight:900;
  font-size: clamp(28px, 4.2vw, 48px); /* ← крупно */
  line-height: 1.08;
  letter-spacing:.005em;
  text-wrap: balance; /* красивый перенос строк */
}
/* На всякий случай глушим любые «точки/кружки» из глобальных стилей */
#guarantees .g-title::before{ content:none !important; }
#guarantees .g-title::marker{ content:"" !important; }


/* Чипы */
#guarantees .g-chips{
  list-style:none; margin:0 0 14px; padding:0;
  display:flex; flex-wrap:wrap; gap:8px; justify-content:center;
}
#guarantees .g-chips li{
  border:1px solid rgba(27,31,35,.14);
  background:#fff; color:#1B1F23;
  border-radius:999px; padding:8px 12px; font-weight:800;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}

/* Суть — 3 коротких пункта */
#guarantees .g-points{
  list-style:none; margin:0 0 16px; padding:0;
  display:grid; gap:10px;
}
#guarantees .g-points li{
  text-align:left; background:#fff; color:#1B1F23;
  border:1px solid rgba(27,31,35,.12);
  border-radius:12px; padding:12px 14px; font-weight:700;
}
@media (min-width: 880px){
  #guarantees .g-points{ grid-template-columns: repeat(3, 1fr); }
}

/* Кнопки — используем ваши базовые .btn */
#guarantees .g-cta{
  display:flex; gap:10px; flex-wrap:wrap; justify-content:center; align-items:center;
  margin-top:4px;
}
#guarantees .g-cta .btn{ border-radius:12px; font-weight:800; padding:12px 16px; }

#guarantees .g-note{
  margin:10px 0 0; font-size:14px; color:rgba(27,31,35,.72);
}
/* === GAP FIX: убираем интервал между #team-vs и #guarantees === */
#team-vs.section{ padding-bottom:0 !important; margin-bottom:0 !important; }
#guarantees.section{ padding-top:0 !important;  margin-top:0 !important;  }

/* на всякий случай выключим внешние отступы внутренних контейнеров */
#team-vs .wrap, #guarantees .wrap{ margin:0 !important; }
#team-vs .tv-card, #guarantees .g-card{ margin:0 !important; }

/* если заголовки/первые элементы дают сверху зазор — обнулим только верх */
#guarantees .g-title{ margin-top:0 !important; }
#team-vs .tv-cta{
  display:flex; gap: clamp(10px, 1.8vw, 16px);
  flex-wrap:wrap; justify-content:center; align-items:center;
  margin-top: var(--pitch-space); /* ← воздух над кнопками */
}
/* === moved from index.html: guarantees-styles END === */

/* === moved from index.html: pricing-main-ui START === */
/* Секция тарифов на главной */
   /* Секция тарифов на главной */
  #pricing.section.pricing{
    margin-top: clamp(40px, 8vw, 96px);          /* БОЛЬШОЙ интервал НАД шапкой */
    padding: clamp(32px, 6vw, 80px) 0 clamp(40px, 7vw, 96px); /* внутри секции */
    background: transparent;                     /* фон как у соседних блоков */
  }


     #pricing .pr-wrap{
    max-width: none;
    width: 100%;
    margin: clamp(56px, 8vw, 96px) 0 0; /* ВОЗДУХ НАД ШАПКОЙ ПРАЙСА */
    padding: 0; /* без отступов слева/справа */
  }

  #pricing .pr-head{
    display:flex;
    justify-content:center;
    margin: 0 0 clamp(10px, 8vw, 50px);  /* БОЛЬШОЙ отступ вниз от шапки до первой карточки */
  }


     #pricing .pr-card{
    position: relative;
    background:#fff;
    border-radius:24px; /* как у остальных карточек на сайте */
    border:1px solid rgba(27,31,35,.08);
    box-shadow:0 10px 30px rgba(0,0,0,.06);
    padding: clamp(24px, 4vw, 40px);
    text-align:center;
    width: 100%;
    margin: 0; /* без отступов слева/справа */
  }


  #pricing .pr-title{
    margin:0 0 8px;
    font-size: clamp(26px, 3.4vw, 36px);
    font-weight:800;
  }

  #pricing .pr-sub{
    margin:0 0 14px;
    font-size:14px;
    line-height:1.5;
  }

  #pricing .pr-head-cta{
    margin-top: 6px;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px;
  }

  #pricing .pr-head-cta .btn{
    border-radius:999px;
    padding:10px 14px;
    font-size:14px;
  }

  /* Список карточек */
  #pricing .pr-list{
    display:flex;
    flex-direction:column;
    gap: clamp(56px, 8vw, 96px); 
  }

  /* Карточка тарифа */
  #pricing .pr-row{
    display:grid;
    grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 1.1fr);
    gap: clamp(16px, 3vw, 24px);
    align-items:center;

    background:#fff;
    border-radius:24px;
    border:1px solid rgba(27,31,35,.08);
    padding: clamp(18px, 3vw, 24px);
    box-shadow:0 10px 30px rgba(0,0,0,.06);
  }

  /* Вторая карточка — «реверсом» */
  #pricing .pr-row.pr-row--rev{
    grid-template-columns: minmax(320px, 1.05fr) minmax(260px, 0.95fr);
  }
  #pricing .pr-row.pr-row--rev .pr-media{ order:2; }
  #pricing .pr-row.pr-row--rev .pr-copy{ order:1; }

  /* Медиа */
  #pricing .pr-media img{
    display:block;
    width:100%;
    height:auto;
    border-radius:20px;
    object-fit:cover;
  }

  /* Текст внутри карточек */
    #pricing .pr-row-title{
    margin: 0 0 8px;
    font-size: clamp(28px, 3.6vw, 40px); /* крупно, как другие заголовки */
    font-weight: 800;
    line-height: 1.15;
  }


  #pricing .pr-for{
    margin:0 0 10px;
    font-size:14px;
  }

      #pricing .pr-price{
    margin: 8px 0 16px;
    font-weight: 900;
    display: flex;
    align-items: baseline;
    gap: 6px;
  }

  #pricing .pr-price--xl b{
    font-size: clamp(32px, 4.4vw, 48px);
    font-weight: 900;
    letter-spacing: -0.02em;
    color: var(--brand-2, #4f46e5); /* ЯРКИЙ фирменный цвет */
    text-shadow: 0 0 18px rgba(79,70,229,.2);
  }

  #pricing .pr-price--xl .per{
    font-size: 16px;
    opacity: .9;
  }


  #pricing .pr-price .note{
    display:block;
    margin-top:4px;
    font-size:13px;
    opacity:.75;
  }

  #pricing .pr-text{
    margin:0 0 10px;
    font-size:14px;
    line-height:1.5;
  }

  #pricing .pr-bullets{
    list-style:none;
    margin:0 0 12px;
    padding:0;
    display:grid;
    gap:6px;
    font-size:14px;
  }

  #pricing .pr-bullets li{
    position:relative;
    padding-left:14px;
  }
  #pricing .pr-bullets li::before{
    content:"•";
    position:absolute;
    left:0; top:0;
    color:#6b7280;
  }

  #pricing .p-cta{
    margin-top:6px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
  }

  #pricing .p-cta .btn{
    border-radius:999px;
    padding:10px 14px;
    font-size:14px;
  }

  #pricing .pr-more{
    font-size:13px;
    text-decoration:none;
  }

  @media (max-width: 880px){
    #pricing .pr-row,
    #pricing .pr-row.pr-row--rev{
      grid-template-columns: 1fr;
    }
    #pricing .pr-row.pr-row--rev .pr-media{ order:1; }
    #pricing .pr-row.pr-row--rev .pr-copy{ order:2; }
  }
/* === moved from index.html: pricing-main-ui END === */

/* === moved from index.html: pricing-bf-deadline-red START === */
/* красная метка срока перед старой ценой */
  #pricing .pr-bf .bf-deadline{
    color:#D92D20;            /* насыщенно-красный */
    font-weight:900;
    font-size:clamp(12px,2vw,16px);
  }
  /* старая цена — текст и линия зачёркивания красные */
  #pricing .pr-bf .bf-was{
    color:#D92D20 !important;
    text-decoration-color:#D92D20 !important;
    opacity:1 !important;
  }
/* === moved from index.html: pricing-bf-deadline-red END === */

/* === moved from index.html: pricing-bf-btn-gold START === */
/* Золотой текст на кнопке «Чёрная пятница» */
  #pricing .btn-bf{
    color:#E7C675 !important;                 /* золото */
    -webkit-text-fill-color:#E7C675 !important; /* Safari */
  }
  #pricing .btn-bf:hover{
    color:#F0DCA3 !important;                  /* светлее при ховере */
    -webkit-text-fill-color:#F0DCA3 !important;
  }
  #pricing .btn-bf:focus-visible{
    outline:2px solid rgba(231,198,117,.6);
    outline-offset:2px;
  }
/* === moved from index.html: pricing-bf-btn-gold END === */

/* === moved from index.html: cases-roll-styles START === */
/* Премиальный пастельный фон всего блока */
  #cases-roll{
    position: relative;
    background:
      linear-gradient(135deg, rgba(127,184,255,.08), rgba(175,164,255,.08), rgba(255,151,170,.06));
    padding: clamp(28px, 5vw, 56px) 0;
  }
  #cases-roll .cr-wrap{ position:relative; }

  /* Список разворотов с интервалами */
  #cases-roll{ --cr-gap: clamp(24px, 4vw, 48px); }
#cases-roll .cr-list{ display:flex; flex-direction:column; gap: var(--cr-gap); }

 #cases-roll .cr-row:first-child{ margin-top: var(--cr-gap); }


  /* Карточки-развороты */
  #cases-roll .cr-row{
    display:grid; gap:16px; align-items:center;
    grid-template-columns: minmax(320px,1fr) minmax(320px,1fr);
    background:#fff;
    border:1px solid rgba(27,31,35,.08);
    border-radius:24px;
    padding: clamp(16px, 2.8vw, 24px);
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
  }

  /* Шахматный порядок: каждый чётный — картинка справа */
  #cases-roll .cr-row:nth-child(even) .cr-media{ order:2; }
  #cases-roll .cr-row:nth-child(even) .cr-copy{ order:1; }

  /* Медиа */
  #cases-roll .cr-media img{
    display:block; width:100%; height:auto; border-radius:16px; object-fit:cover;
  }

  /* Текст */
  #cases-roll .cr-title{
    margin:0 0 10px;
    font-size: clamp(28px, 4.6vw, 56px);
    line-height:1.05; letter-spacing:-.01em;
  }
  #cases-roll h3.cr-title::before{ content:none !important; } /* без кружка в заголовке */
  #cases-roll .cr-text{ margin:0 0 12px; color:#555; }

  /* Кнопки — в ваших стилях */
  #cases-roll .p-cta .btn{ border-radius:999px; padding:10px 14px; }

  /* Мобилка */
  @media (max-width:900px){
    #cases-roll .cr-row{ grid-template-columns:1fr; }
  }
/* === moved from index.html: cases-roll-styles END === */

/* === moved from index.html: cases-cta-styles START === */
/* Большая карточка с мягким премиальным фоном в наших пастелях */
#cases-cta{ margin: var(--cr-gap, clamp(24px, 4vw, 48px)) 0; }

  #cases-cta .cc-card{
    position:relative; overflow:hidden; text-align:center;
    background:#fff; border:1px solid rgba(27,31,35,.08);
    border-radius:24px;
    padding: clamp(28px, 6vw, 72px) clamp(16px, 4vw, 32px);
    box-shadow:0 10px 30px rgba(0,0,0,.06);
  }
  #cases-cta .cc-card::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:linear-gradient(135deg, var(--brand-1), var(--brand-2), var(--brand-3));
    opacity:.12;
  }

  /* Анимированная подсказка 👆 */
  #cases-cta .cc-emoji{
    font-size: clamp(48px, 8vw, 120px);
    line-height:1; display:inline-block;
    animation: cc-bob 2.8s ease-in-out infinite;
  }
  @keyframes cc-bob{
    0%,100%{ transform: translateY(0); }
    50%    { transform: translateY(-10px); }
  }

  /* Заголовок и подзаголовок */
  #cases-cta .cc-title{
    margin:12px 0 10px;
    font-size: clamp(40px, 6vw, 84px);
    line-height:1.06; letter-spacing:-.01em;
  }
  #cases-cta h2.cc-title::before{ content:none !important; }
  #cases-cta .cc-sub{ margin:0 0 14px; }

  /* Кнопки — как на сайте */
  #cases-cta .p-cta .btn{ border-radius:999px; padding:10px 14px; }

  @media (max-width:900px){
  #cases-cta{ margin: var(--cr-gap, 24px) 0; }
  #cases-cta .p-cta{ flex-direction:column; align-items:stretch; }
}
/* === moved from index.html: cases-cta-styles END === */

/* === moved from index.html: calc-invite-styles START === */
/* Премиальный пастельный фон + «карточка» */
  #calc-invite{ margin: var(--cr-gap, clamp(24px, 4vw, 48px)) 0; }
  #calc-invite .ci-row{
    position:relative; overflow:visible;
    display:grid; gap:16px; align-items:center;
    grid-template-columns: minmax(380px,1.2fr) minmax(420px,1fr);
    background:#fff;
    border:1px solid rgba(27,31,35,.08);
    border-radius:24px;
    padding: clamp(18px, 3vw, 28px);
    box-shadow:0 10px 30px rgba(0,0,0,.06);
  }
  #calc-invite .ci-row::before{
    content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit;
    background:linear-gradient(135deg, var(--brand-1), var(--brand-2), var(--brand-3));
    opacity:.12; /* пастельно, в ваших тонах */
  }

  /* Медиа слева */
  #calc-invite .ci-media{ margin:0; }
  #calc-invite .ci-media img{
    display:block; width:min(880px,60vw); height:auto;
  }

  /* Копирайт справа */
  #calc-invite .ci-title{
    margin:0 0 10px;
    font-size: clamp(40px, 6vw, 84px); /* крупно */
    line-height:1.06; letter-spacing:-.01em;
  }
  #calc-invite h2.ci-title::before{ content:none !important; } /* без кружка */
  #calc-invite .ci-sub{ margin:0 0 12px; }

  /* Кнопки — фирменные пилюли */
  #calc-invite .p-cta .btn{ border-radius:999px; padding:10px 14px; }

  /* Мобилка */
  @media (max-width:900px){
    #calc-invite .ci-row{ grid-template-columns:1fr; }
    #calc-invite .ci-media img{ width:100%; }
    #calc-invite .p-cta{ flex-direction:column; align-items:stretch; }
  }
/* === moved from index.html: calc-invite-styles END === */

/* === moved from index.html: vs-card-onecolumn-2025-10-18G START === */
/* ОДИН СТОЛБИК ДЛЯ КАРТОЧКИ «С НАМИ» НА ВСЕХ ЭКРАНАХ */
  #vs .col.highlight{
    display: block !important;           /* убираем любые grid/flex-сетки */
  }

  /* Сбрасываем возможные следы grid-раскладки из прошлых правок */
  #vs .col.highlight .ticks,
  #vs .col.highlight .cta-box{
    grid-column: auto !important;
  }

  /* Список команды — компактный, но читаемый */
  #vs .col.highlight .ticks{
    display: block !important;           /* никаких колонок */
    margin: 6px 0 10px;
    max-width: 100%;
  }
  #vs .col.highlight .ticks li{
    font-size: 14px;
    line-height: 1.25;
    margin: 2px 0;
    padding-left: 16px;
  }
  #vs .col.highlight .ticks li::before{
    top: .7em;
    width: 6px; height: 6px;
  }

  /* Цена и кнопка — ВСЕГДА под списком */
  #vs .col.highlight .cta-box{
    display: flex !important;
    flex-direction: column !important;   /* кнопка под ценой */
    align-items: flex-start;
    gap: 10px;
    margin-top: 8px !important;          /* перебиваем старые auto/0 */
    flex-wrap: nowrap !important;
  }
  #vs .col.highlight .cta-price{
    width: 100%;
    min-width: 0 !important;             /* снимаем любые min-width */
  }
  #vs .col.highlight .cta-price .mini{
   font-size: 16px !important;      /* ↑ делаем крупнее */
   line-height: 1.25 !important;
   font-weight: 700 !important;
 }
  #vs .col.highlight .cta-price .big{
    /* Крупная цена, но без «разъезда» — минимум 28px на мобиле */
    font-size: clamp(28px, 4.6vw, 56px) !important;
    line-height: 1.05;
    letter-spacing: -0.01em;
    font-weight: 900;
    white-space: nowrap;                  /* не ломаем «₽/мес» на 2 строки */
  }
  #vs .col.highlight .cta-box .btn{
    width: auto;                          /* естественная ширина */
    white-space: normal;                  /* текст кнопки может переноситься */
  }

  /* Узкие экраны: чуть компактнее, чтобы всё влезало красиво */
  @media (max-width: 360px){
    #vs .col.highlight .ticks li{ font-size: 13px; }
    #vs .col.highlight .cta-price .big{ font-size: 26px !important; }
  }
/* === moved from index.html: vs-card-onecolumn-2025-10-18G END === */

/* === moved from index.html: team-vs-gap-fix-2025-11-11 START === */
/* Добавляем «воздух» между картинкой и текстом */
  #team-vs .tv-visual{ 
    margin-bottom: var(--pitch-space);  /* адаптивно: 22–36px из переменной */
  }
  /* На всякий случай сохраняем ноль сверху у текста (контроль каскада) */
  #team-vs .tv-punch{ margin-top: 0; }
/* === moved from index.html: team-vs-gap-fix-2025-11-11 END === */

/* === moved from index.html: team-vs-dark-clamp-fix-2026-01-14 START === */
/* чтобы бордер не увеличивал ширину подложки/рамки */
  #team-vs .tv-dark,
  #team-vs .tv-border{
    box-sizing: border-box;
  }
/* === moved from index.html: team-vs-dark-clamp-fix-2026-01-14 END === */

/* === moved from index.html: team-vs-dark-fit-to-image-2026-01-14 START === */
/* на всякий случай: убираем любые фоновые картинки у блока */
  #team-vs .tv-card{ background-image:none !important; }

  /* фигура должна быть ровно по ширине картинки (а не растягиваться) */
  #team-vs .tv-visual{
    display: inline-block;      /* shrink-wrap */
    justify-self: center;       /* центр в grid */
    max-width: 100%;
  }

  /* картинка может сжиматься — пусть сжимается вместе с фигурой */
  #team-vs .tv-visual img{
    width: var(--vsW);
    max-width: 100%;
    height: auto;
    margin: 0;
  }

  /* подложка и рамка теперь строго по ширине картинки */
  #team-vs .tv-dark,
  #team-vs .tv-border{
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
  }
/* === moved from index.html: team-vs-dark-fit-to-image-2026-01-14 END === */

/* === moved from index.html: team-vs-without-us-2026-01-14 START === */
/* С нами (слева) / картинка / без нас (справа) */
  #team-vs .tv-vs{
    margin-top: var(--pitch-space, 24px);
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr);
    gap: clamp(12px, 2.4vw, 24px);
    align-items: center;
  }

  /* ВАЖНО: убираем старый margin-bottom у картинки внутри новой сетки */
  #team-vs .tv-vs .tv-visual{ margin-bottom: 0 !important; }

  #team-vs .tv-side{
    width: min(360px, 100%);
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(17,24,39,.10);
    border-radius: 16px;
    padding: 14px 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
    text-align: left;
  }

  #team-vs .tv-side--plus{ justify-self: end; }
  #team-vs .tv-side--minus{ justify-self: start; }

  #team-vs .tv-side-title{
    margin: 0 0 10px;
    font-weight: 900;
    font-size: 16px;
    letter-spacing: -.01em;
  }

  #team-vs .tv-side-list{
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
  }
  #team-vs .tv-side-list li{
    font-weight: 800;
    line-height: 1.25;
  }

  /* Цвета текста как просила */
  #team-vs .tv-side--plus,
  #team-vs .tv-side--plus .tv-side-title,
  #team-vs .tv-side--plus .tv-side-list li{ color:#12B76A; }

  #team-vs .tv-side--minus,
  #team-vs .tv-side--minus .tv-side-title,
  #team-vs .tv-side--minus .tv-side-list li{ color:#D92D20; }

  /* Мобилка: в колонку */
  @media (max-width: 900px){
    #team-vs .tv-vs{ grid-template-columns: 1fr; }
    #team-vs .tv-side--plus{ order: 1; justify-self: stretch; }
    #team-vs .tv-visual{ order: 2; }
    #team-vs .tv-side--minus{ order: 3; justify-self: stretch; }
  }
/* === moved from index.html: team-vs-without-us-2026-01-14 END === */

/* === moved from index.html: team-vs-border-sides-only START === */
/* Только верх/низ оставляем, бока — убираем */
  #team-vs .tv-border,
  #team-vs .tv-dark{
    border-left-width: 0 !important;
    border-right-width: 0 !important;
  }
  /* Маску у .tv-border не трогаем — верх останется как был */
/* === moved from index.html: team-vs-border-sides-only END === */

/* === moved from index.html: bf-lab-styles-20251110 START === */
#bf-lab .bf-card{
      position:relative; overflow:hidden; border-radius:24px;
      padding:clamp(18px,4vw,34px);
      background-color:#0b0d10; color:#fff;
      background-size:cover; background-position:center; /* фоновая картинка на всю карточку */
      box-shadow:0 12px 36px rgba(0,0,0,.35);
      isolation:isolate;
    }
    /* затемнение поверх фоновой картинки, чтобы текст читался */
    #bf-lab .bf-card::before{
      content:""; position:absolute; inset:0; z-index:0; border-radius:inherit;
      background:linear-gradient(135deg, rgba(0,0,0,.72), rgba(0,0,0,.55));
    }

    #bf-lab .bf-grid{
      position:relative; z-index:1;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      align-items:center;
      gap:clamp(14px,3vw,34px);
    }
    #bf-lab .bf-copy{ max-width: 60ch; }
    #bf-lab .bf-title{
      font:900 clamp(22px,3.2vw,38px)/1.06 Manrope, Inter, system-ui;
      letter-spacing:-.02em;
      margin:0;
      text-shadow:0 12px 34px rgba(0,0,0,.35);
    }
    #bf-lab .bf-sub{
      margin: 10px 0 0;
      max-width: 56ch;
      font-size: clamp(15px, 1.7vw, 18px);
      line-height: 1.45;
      opacity: .92;
    }
    #bf-lab .p-cta{ margin: 16px 0 0; }

    #bf-lab .bf-visual{ margin:0; justify-self:end; }
    #bf-lab .bf-visual--case{ max-width: 520px; width:100%; }

    /* Карточка кейса: как на /cases/ — картинка сверху, подпись снизу, без обводки */
    #bf-lab .bf-case{
      display:block;
      text-decoration:none;
      color:#fff;
      border:0;
      background:transparent;
      box-shadow:none;
      transform: translateY(0);
      transition: transform .16s ease;
    }
    #bf-lab .bf-case:hover{ transform: translateY(-2px); }

    #bf-lab .bf-case__img{
      width:100%;
      height:auto;
      display:block;
      border-radius: 22px;
      object-fit: cover;
      box-shadow: 0 22px 70px rgba(0,0,0,.55);
      filter: saturate(108%) contrast(108%);
    }

    #bf-lab .bf-case__cap{
      margin-top: 12px;
      padding: 0 2px;
      text-align: left;
    }
    #bf-lab .bf-case__cap-title{
      font-weight: 900;
      letter-spacing: -.01em;
      font-size: clamp(15px, 2vw, 20px);
      line-height: 1.15;
      margin: 0;
    }
    #bf-lab .bf-case__cap-meta{
      margin-top: 6px;
      font-size: 13px;
      opacity: .82;
    }

    @media (max-width: 880px){
      #bf-lab .bf-grid{ grid-template-columns: 1fr; }
      #bf-lab .bf-visual{ justify-self: start; }
      #bf-lab .bf-visual--case{ max-width: 680px; }
      #bf-lab .bf-case__cap{ text-align: left; }
    }
/* === moved from index.html: bf-lab-styles-20251110 END === */

/* === moved from index.html: to-top-btn-styles-2026-01-15 START === */
/* Кнопка "Наверх" — только мобилка, и всегда выше нижнего меню */
  .to-top{ display:none; }

  @media (max-width: 980px), (hover: none) and (pointer: coarse){
    #toTop{
      position: fixed;
      left: 12px;
      bottom: calc(var(--mbnav-h) + 14px + env(safe-area-inset-bottom)); /* выше нижнего меню */
      width: 44px;
      height: 44px;

      border: 1px solid rgba(0,0,0,.10);
      border-radius: 14px;
      background: rgba(255,255,255,.72);
      box-shadow: 0 10px 26px rgba(0,0,0,.14);
      backdrop-filter: saturate(110%) blur(12px);
      -webkit-backdrop-filter: saturate(110%) blur(12px);

      display: grid;
      place-items: center;
      z-index: 1000000;

      color: #111;
      cursor: pointer;
      user-select: none;
      -webkit-tap-highlight-color: transparent;

      opacity: 0;
      transform: translateY(8px) scale(.98);
      pointer-events: none;
      transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease;
    }

    #toTop.is-visible{
      opacity: 1;
      transform: translateY(0) scale(1);
      pointer-events: auto;
    }

    #toTop:active{ transform: translateY(0) scale(.98); }

    #toTop svg{
      width: 20px;
      height: 20px;
      display: block;
      pointer-events: none;
      fill: currentColor;
    }

    #toTop:focus-visible{
      outline: 2px solid rgba(79,124,255,.45);
      outline-offset: 2px;
    }
  }

  @media (prefers-reduced-motion: reduce){
    #toTop{ transition: none !important; }
  }
/* === moved from index.html: to-top-btn-styles-2026-01-15 END === */

/* === moved from index.html: prefooter-top-style START === */
#prefooter-top{
    background: linear-gradient(135deg,
      rgba(127,184,255,.06),
      rgba(175,164,255,.06),
      rgba(255,151,170,.06));
  }
  #prefooter-top .section{ padding-top:0 !important; padding-bottom:0 !important; }
  #prefooter-top .wrap{ padding-top:0 !important; padding-bottom:0 !important; }
  #prefooter-top .section + .section{ margin-top:0 !important; }
/* === moved from index.html: prefooter-top-style END === */

/* === moved from index.html: max-icon-final-size-home START === */
.nav-links .nav-icon.nav-max{
    width:44px !important;
    height:44px !important;
    flex:0 0 44px !important;
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    border-radius:0 !important;
    overflow:visible !important;
  }

  .nav-links .nav-icon.nav-max img{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    max-width:none !important;
    max-height:none !important;
    display:block !important;
    transform:none !important;
    object-fit:contain !important;
  }
/* === moved from index.html: max-icon-final-size-home END === */

/* === moved from index.html: contact-scroll-fix START === */
/* чтобы при переходе по /#contact форма не уходила под фикс-шапку */
  #contact{ scroll-margin-top: 110px; } /* подстрой цифру под высоту шапки */
/* === moved from index.html: contact-scroll-fix END === */

