/* ===== Отзывы: стена видео + текст. Лента фото. (Команда Старостина) ===== */

/* --- лента фото с прокруткой --- */
.rv-strip{position:relative}
.rv-strip-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 2px 14px;scrollbar-width:none;-ms-overflow-style:none}
.rv-strip-track::-webkit-scrollbar{display:none}
.rv-strip-track img{flex:0 0 auto;width:min(84vw,420px);height:300px;object-fit:cover;
  border-radius:18px;scroll-snap-align:center;display:block;background:var(--soft)}
.rv-strip-btn{position:absolute;top:calc(50% - 28px);width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line);
  background:var(--card,#fff);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 14px 30px -16px rgba(20,22,49,.45);transition:transform .25s var(--ease),opacity .25s;z-index:3}
.rv-strip-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rv-strip-btn:hover{transform:scale(1.08)}
.rv-strip-btn[disabled]{opacity:.3;cursor:default;transform:none}
.rv-strip-prev{left:-10px}.rv-strip-next{right:-10px}
@media(max-width:900px){.rv-strip-btn{display:none}.rv-strip-track img{height:240px}}

/* --- стена отзывов --- */
.rv-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
@media(max-width:1000px){.rv-wall{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.rv-wall{grid-template-columns:1fr}}

.rv-card{background:var(--card,#fff);border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 18px 40px -30px rgba(20,22,49,.4);transition:transform .3s var(--ease),box-shadow .3s}
.rv-card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(42,56,161,.42)}

.rv-play-box{display:block;position:relative;width:100%;aspect-ratio:4/5;border:none;padding:0;cursor:pointer;
  background:linear-gradient(160deg,var(--violet),var(--indigo));overflow:hidden}
.rv-play-box img{width:100%;height:100%;object-fit:cover;display:block}
.rv-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.rv-play svg{width:22px;height:22px;fill:var(--indigo);margin-left:3px}
.rv-play::before{content:"";position:absolute;width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.94);
  box-shadow:0 10px 30px rgba(0,0,0,.28);transition:transform .25s var(--ease)}
.rv-play svg{position:relative;z-index:2}
.rv-card:hover .rv-play::before{transform:scale(1.1)}
.rv-badge{position:absolute;left:12px;top:12px;background:rgba(13,16,36,.72);color:#fff;font-size:11px;font-weight:700;
  letter-spacing:.4px;text-transform:uppercase;padding:6px 10px;border-radius:999px;backdrop-filter:blur(6px)}

.rv-body{padding:18px 18px 20px}
.rv-head{display:flex;align-items:center;gap:12px}
.rv-ava{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:800;font-size:17px;overflow:hidden}
.rv-ava-img img{width:100%;height:100%;object-fit:cover;display:block}
.rv-g1{background:linear-gradient(135deg,#87CEEB,#2A38A1)}
.rv-g2{background:linear-gradient(135deg,#9B6EB5,#2A38A1)}
.rv-g3{background:linear-gradient(135deg,#2A38A1,#87CEEB)}
.rv-g4{background:linear-gradient(135deg,#b58ad0,#5a6ee0)}
.rv-g5{background:linear-gradient(135deg,#6fb6e8,#9B6EB5)}
.rv-who{display:flex;flex-direction:column;gap:1px;min-width:0}
.rv-who b{font-size:15px;font-weight:800;line-height:1.2}
.rv-who span{font-size:12.5px;color:var(--muted);line-height:1.3}
.rv-tg{font-size:12.5px;font-weight:700;color:var(--indigo)}
.rv-tg:hover{text-decoration:underline}
[data-theme="dark"] .rv-tg{color:var(--blue)}

.rv-text{margin-top:12px;font-size:14.5px;line-height:1.55;color:var(--muted)}
.rv-txt .rv-text{margin-top:0;color:var(--ink);font-size:15px}
.rv-txt .rv-head{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.rv-quote{font-size:46px;line-height:.7;font-weight:900;color:var(--violet);opacity:.35;margin-bottom:10px;font-family:Georgia,serif}
.rv-long{white-space:pre-line}

/* --- модалка с видео --- */
.rv-modal{position:fixed;inset:0;background:rgba(8,10,26,.86);backdrop-filter:blur(6px);z-index:120;
  display:none;align-items:center;justify-content:center;padding:20px}
.rv-modal.on{display:flex}
.rv-modal-in{position:relative;max-width:min(94vw,420px);width:100%}
.rv-modal video{width:100%;max-height:78vh;border-radius:18px;background:#000;display:block}
.rv-modal-cap{margin-top:12px;color:#fff;text-align:center;font-size:14px}
.rv-modal-cap b{display:block;font-weight:800;font-size:16px}
.rv-modal-cap span{opacity:.75}
.rv-x{position:absolute;top:-46px;right:0;width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.15);color:#fff;font-size:16px}
.rv-x:hover{background:rgba(255,255,255,.28)}

/* --- раскрывающиеся блоки «что входит» --- */
.rv-acc{display:grid;gap:12px}
.rv-acc details{background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;overflow:hidden;
  transition:box-shadow .25s,border-color .25s}
.rv-acc details[open]{border-color:var(--violet);box-shadow:0 18px 40px -30px rgba(42,56,161,.5)}
.rv-acc summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;gap:14px;
  font-weight:700;font-size:16.5px}
.rv-acc summary::-webkit-details-marker{display:none}
.rv-acc summary .ic{width:38px;height:38px;border-radius:11px;background:var(--soft);display:flex;align-items:center;
  justify-content:center;flex-shrink:0;font-size:18px}
.rv-acc summary::after{content:"+";margin-left:auto;font-size:22px;font-weight:400;color:var(--violet);transition:transform .25s}
.rv-acc details[open] summary::after{content:"−"}
.rv-acc .acc-in{padding:0 20px 20px 72px;color:var(--muted);font-size:15px;line-height:1.6}
.rv-acc .acc-in img{width:100%;max-height:300px;object-fit:cover;border-radius:14px;margin-top:14px;display:block}
.rv-acc .acc-in ul{margin-top:10px;padding-left:18px}
.rv-acc .acc-in li{margin-bottom:6px}
@media(max-width:600px){.rv-acc .acc-in{padding-left:20px}}

/* --- сетка фотогалереи (мозаика) --- */
.rv-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rv-mosaic img{width:100%;height:100%;object-fit:cover;border-radius:16px;display:block;min-height:0}
.rv-mosaic .big{grid-column:span 2;grid-row:span 2}
.rv-mosaic>*{aspect-ratio:1/1}
.rv-mosaic .big{aspect-ratio:auto}
@media(max-width:760px){.rv-mosaic{grid-template-columns:repeat(2,1fr)}}

/* --- базовый список с галочками (нужен страницам без своих .flist) --- */
.flist{list-style:none;display:flex;flex-direction:column;gap:12px}
.flist li{display:flex;gap:11px;font-size:15px;color:var(--muted);align-items:flex-start}
.flist svg{width:19px;height:19px;stroke:var(--violet);fill:none;flex-shrink:0;margin-top:1px}

/* --- карточки людей: команда, спикеры, кейсы --- */
.rv-people{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rv-people.cols4{grid-template-columns:repeat(4,1fr)}
@media(max-width:960px){.rv-people,.rv-people.cols4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.rv-people,.rv-people.cols4{grid-template-columns:1fr}}
.rv-person{background:var(--card,#fff);border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 18px 40px -30px rgba(20,22,49,.4);transition:transform .3s var(--ease),box-shadow .3s}
.rv-person:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(42,56,161,.42)}
.rv-person>img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--soft)}
.rv-person .pb{padding:16px 18px 20px}
.rv-person h4{font-size:17px;font-weight:800;line-height:1.2}
.rv-person .role{margin-top:4px;font-size:13px;font-weight:700;color:var(--violet)}
.rv-person p{margin-top:10px;font-size:14px;line-height:1.5;color:var(--muted)}
[data-theme="dark"] .rv-person .role{color:var(--blue)}

/* цифры точка А → точка Б */
.rv-ab{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);flex-wrap:wrap}
.rv-ab .ab{display:flex;flex-direction:column;line-height:1.15}
.rv-ab .ab span{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
.rv-ab .ab b{font-size:16px;font-weight:900}
.rv-ab .ab.to b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.rv-ab .arr{font-size:18px;color:var(--violet);font-weight:900}
.rv-grow{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:16px;font-weight:900}
.rv-grow span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ============================================================
   МОБИЛЬНАЯ ВЁРСТКА - общие правки 28.08.2026 (правки Софы)
   Подключается на всех страницах, поэтому чиним здесь один раз.
   ============================================================ */
@media (max-width: 760px) {
  /* длинные слова («предпринимателей», «Зарегистрироваться») вылезали за экран */
  h1, h2, h3, h4, .rv-who b, .sec-head h2, summary {
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
  }
  .sec-head h2 { font-size: 27px; line-height: 1.18; }
  .sec-head p  { font-size: 15px; }

  /* числа не должны рваться пополам: было «3» / «400+» */
  .stat .n, .icard .grad-text, .card .grad-text,
  .fprice b, .fprice s, .nopx .now, .nopx .was, .ev .price b, .ev .price s {
    white-space: nowrap;
  }

  /* плавающая кнопка перекрывала текст отзывов и поля формы */
  .float-mgr { right: 14px !important; bottom: 14px !important; transform: scale(.86); transform-origin: bottom right; }
  body { padding-bottom: 34px; }
}

@media (max-width: 420px) {
  .sec-head h2 { font-size: 24px; }
  .hero h1 { font-size: 31px !important; }
}

/* список болей: крестики вместо галочек */
.flist-pain svg { stroke: #e0517a; }
