/* ============================================================
   /uslugi/ — вариант Б.
   Каталог услуг: первый экран с HR-аудитом как точкой входа,
   липкое меню по трём группам, услуги — раскрывающимися строками,
   чтобы 17 направлений не превратились в длинную простыню.
   Токены, кнопки, шапка, подвал — в /assets/site.css.
   ============================================================ */

:root{--hdr:var(--nav-h);--bar:52px}

/* ---------- первый экран ---------- */
.vb-hero{padding:56px 0 64px;background:
  radial-gradient(1100px 380px at 85% 0%,rgba(194,44,12,.06),transparent 60%),var(--paper)}
.vb-hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center}
.vb-hero h1{font-size:clamp(40px,6.2vw,70px);line-height:1.02;max-width:11ch}
.vb-hero .lead{margin-top:22px;font-size:19px;color:var(--muted);max-width:40ch}
.vb-hero .lead b{color:var(--ink);font-weight:600}
.vb-hero .acts{margin-top:30px;display:flex;gap:14px 22px;flex-wrap:wrap;align-items:center}
.vb-hero .acts .lnk{font-weight:600;color:var(--ink);text-decoration-color:var(--red);text-underline-offset:4px}
.vb-hero .start-cap{margin-top:16px;font-size:14.5px;color:var(--muted)}
.vb-hero .start-cap b{color:var(--ink)}

/* ---------- липкое меню групп ---------- */
.vb-bar{position:sticky;top:var(--hdr);z-index:40;background:rgba(245,246,242,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.vb-bar .wrap{display:flex;align-items:center;gap:6px;height:var(--bar);overflow-x:auto;scrollbar-width:none}
.vb-bar .wrap::-webkit-scrollbar{display:none}
.vb-bar a{flex:none;display:inline-flex;align-items:center;gap:8px;height:100%;padding:0 12px;text-decoration:none;font-size:15px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s}
.vb-bar a span{font-family:var(--mono);font-size:12px;color:var(--red)}
.vb-bar a:hover{color:var(--ink)}
.vb-bar a.on{color:var(--ink);font-weight:600;border-bottom-color:var(--red)}
.vb-bar .vb-bar-cta{margin-left:auto;height:auto;padding:8px 16px;border:none;color:#fff;font-weight:600;font-size:14px}
.vb-bar .vb-bar-cta:hover{color:#fff}

/* ---------- плашка «задач больше» ---------- */
.vb-more{padding:34px 0 0}
.vb-more .box{display:grid;grid-template-columns:1fr auto;gap:16px 34px;align-items:center;border:1.5px dashed var(--red-line);background:#fff;border-radius:8px;padding:22px 26px}
.vb-more h2{font-size:20px;margin-bottom:4px}
.vb-more p{font-size:15.5px;color:var(--muted);max-width:68ch}

/* ---------- группы ---------- */
.vb-group{padding:56px 0 8px;scroll-margin-top:calc(var(--hdr) + var(--bar))}
.vb-group + .vb-group{border-top:1px solid var(--line);margin-top:48px}
.vb-group .grid{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start}
.vb-ghead{position:sticky;top:calc(var(--hdr) + var(--bar) + 28px)}
.vb-ghead .cnt{font-family:var(--mono);font-size:12.5px;color:var(--red);letter-spacing:.06em}
.vb-ghead h2{font-size:clamp(28px,3.4vw,38px);margin:10px 0 12px}
.vb-ghead p{color:var(--muted);font-size:16px}

.vb-list{border-top:1.5px solid var(--ink)}
.vb-item{border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--hdr) + var(--bar) + 16px)}
.vb-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 36px;gap:4px 20px;padding:22px 0 20px;align-items:start}
.vb-item summary::-webkit-details-marker{display:none}
.vb-item summary h3{font-size:22px;line-height:1.2;transition:color .15s}
.vb-item summary .why{grid-column:1;font-size:15.5px;color:var(--muted)}
.vb-item summary .tag{display:inline-block;vertical-align:middle;margin-left:10px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.03em;color:#fff;background:var(--red);border-radius:3px;padding:3px 9px;position:relative;top:-3px}
.vb-item summary .fit{font-family:var(--mono);font-size:12px;color:var(--red);letter-spacing:.06em}
.vb-item .pm{grid-column:2;grid-row:1 / span 3;width:36px;height:36px;border:1.5px solid var(--ink);border-radius:50%;position:relative;transition:background .15s,border-color .15s,transform .25s}
.vb-item .pm::before,.vb-item .pm::after{content:'';position:absolute;left:50%;top:50%;width:13px;height:1.8px;background:var(--ink);transform:translate(-50%,-50%)}
.vb-item .pm::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .25s}
.vb-item summary:hover h3{color:var(--red)}
.vb-item summary:hover .pm{border-color:var(--red)}
.vb-item[open] .pm{background:var(--ink)}
.vb-item[open] .pm::before{background:#fff}
.vb-item[open] .pm::after{transform:translate(-50%,-50%) rotate(0);background:#fff}

.vb-body{display:grid;grid-template-columns:1.2fr 1fr;gap:18px 34px;padding:0 56px 28px 0;animation:vb-open .3s ease}
@keyframes vb-open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.vb-body .lbl{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.vb-body ul{list-style:none;display:grid;gap:6px;font-size:15.5px}
.vb-body li{position:relative;padding-left:20px}
.vb-body li::before{content:'—';position:absolute;left:0;color:var(--red)}
.vb-res{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:6px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;align-self:start}
.vb-res p{font-size:15.5px}
.vb-res a{font-size:14.5px;font-weight:600;color:var(--red)}

/* ---------- «Не нашли свою задачу?» ---------- */
.vb-final{padding:64px 0 0}
.vb-final .box{background:var(--ink);color:#fff;border-radius:10px;padding:38px 40px;display:grid;grid-template-columns:1.4fr 1fr;gap:22px 44px;align-items:center}
.vb-final h2{font-size:clamp(26px,3.4vw,36px);color:#fff;margin-bottom:10px}
.vb-final p{color:#C7CAC6;font-size:16.5px;max-width:52ch}
.vb-final .acts{display:grid;gap:10px}
.vb-final .btn{text-align:center}
.vb-final .btn.ghost{color:#fff;border-color:#5A6068}
.vb-final .btn.ghost:hover{background:#fff;color:var(--ink);border-color:#fff}
.vb-final .line{font-size:14.5px;color:#C7CAC6;text-align:center}
.vb-final .line a{color:#fff}

/* квиз аудита в этом варианте идёт после каталога */
.mx-quiz{margin-top:64px}

/* форматы аудита без цен: срок встаёт сразу под название */
.plan .term{margin-top:10px}

@media(max-width:960px){
  .vb-group .grid{grid-template-columns:1fr;gap:20px}
  .vb-ghead{position:static}
}
@media(max-width:860px){
  .vb-hero .grid,.vb-final .box{grid-template-columns:1fr;gap:36px}
  .vb-hero{padding-top:32px}
  .vb-hero .sheet{justify-self:center;max-width:420px}
  .vb-more .box{grid-template-columns:1fr}
  .vb-final .box{padding:28px 22px;gap:22px}
}
@media(max-width:640px){
  .vb-bar .vb-bar-cta{display:none}
  .vb-item summary h3{font-size:19.5px}
  .vb-item summary .tag{display:table;margin:8px 0 0;top:0}
  .vb-body{grid-template-columns:1fr;padding-right:0}
  .vb-group{padding-top:44px}
}
@media(prefers-reduced-motion:reduce){.vb-body{animation:none}}

/* ---------- первый экран: вторая кнопка того же размера ---------- */
.vb-hero .btn.ghost.big{padding:16px 26px;font-size:17px;border-radius:6px}

/* ---------- «Сколько стоит» — коротко и без цифр ---------- */
.pr-head{display:grid;grid-template-columns:1fr 1.1fr;gap:16px 48px;align-items:end;margin-bottom:32px}
.pr-head h2{font-size:clamp(30px,3.8vw,44px);color:#fff}
.pr-head p{color:var(--dark-muted);font-size:17px}
.plan-fit{font-size:15.5px;color:#C7CAC6;margin-bottom:24px;flex:1}
.nw{white-space:nowrap}
@media(max-width:860px){.pr-head{grid-template-columns:1fr}}
.vb-hero .acts{gap:12px}
.vb-hero .cta-big{font-size:17px;padding:17px 24px}
/* две кнопки первого экрана помещаются в один ряд */
@media(min-width:861px){
  .vb-hero .grid{grid-template-columns:1.27fr .73fr;gap:40px}
  .vb-hero .cta-big{font-size:16.5px;padding:17px 22px}
  .vb-hero .btn.ghost.big{padding:16px 22px;font-size:16.5px}
  .vb-hero .sheet{font-size:13px;padding:26px 22px 22px}
}

/* ---------- скидка по таймеру: тонкая тёмная полоска под первым экраном ---------- */
.offer{background:var(--ink);color:#fff;transition:opacity .6s ease}
.offer[hidden]{display:none}
.offer--end{opacity:0}
.offer__in{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 20px;min-height:56px;padding-top:9px;padding-bottom:9px}
.offer__txt{position:relative;padding-left:18px;font-size:15px;color:var(--dark-muted)}
.offer__txt b{color:#fff;font-weight:600}
.offer__txt::before{content:'';position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--red);animation:pulse 2s infinite}
.offer__timer{display:inline-flex;align-items:baseline;font-family:var(--mono);font-size:17px;font-weight:500;line-height:1;color:#F2957F;background:#23272D;border:1px solid #2F343A;border-radius:6px;padding:7px 11px;font-variant-numeric:tabular-nums}
.offer__timer b{font-weight:500;min-width:2ch;text-align:center}
.offer__timer i{font-style:normal;opacity:.5;margin:0 1px}
.offer--last .offer__timer{background:var(--red);border-color:var(--red);color:#fff}
.offer__link{font-size:15px;font-weight:600;color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap}
.offer__link:hover{color:#F2957F}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(194,44,12,.55)}70%{box-shadow:0 0 0 7px rgba(194,44,12,0)}100%{box-shadow:0 0 0 0 rgba(194,44,12,0)}}
@media(max-width:640px){
  .offer__in{gap:8px 14px;padding-top:12px;padding-bottom:12px}
  .offer__txt{flex:1 1 100%;text-align:center;padding-left:0;font-size:14.5px}
  .offer__txt::before{position:static;display:inline-block;margin:0 8px 1px 0;vertical-align:middle}
  .offer__txt span{display:block}
}
/* плавающей кнопки внизу больше нет — и отступ под неё не нужен */
@media(max-width:760px){body{padding-bottom:0}}
@media(prefers-reduced-motion:reduce){.offer__txt::before{animation:none}}

/* ---------- цены аудита на время скидки ----------
   Старая цена зачёркнута от руки красной линией, как другие пометки на сайте. */
.plan-price{margin:16px 0 4px;padding:14px 0 16px;border-top:1px solid #2A2E33;border-bottom:1px solid #2A2E33}
.plan-price[hidden],.pp-note[hidden]{display:none}
.pp-old{position:relative;display:inline-block;font-size:15px;color:var(--dark-muted);text-decoration:none;white-space:nowrap}
.pp-old svg{position:absolute;left:-6%;top:-10%;width:112%;height:120%;overflow:visible}
/* линия нарисована и без анимации — анимация только «прорисовывает» её */
.pp-old path{stroke:var(--red);stroke-width:2.6;fill:none;stroke-linecap:round;stroke-dasharray:140;stroke-dashoffset:0;animation:pp-strike .7s ease}
@keyframes pp-strike{from{stroke-dashoffset:140}to{stroke-dashoffset:0}}
.pp-row{display:flex;align-items:center;gap:10px;margin-top:6px;flex-wrap:wrap}
.pp-new{font-family:var(--serif);font-size:32px;font-weight:700;line-height:1.05;color:#fff;white-space:nowrap}
.pp-tag{font-size:12.5px;font-weight:700;color:#fff;background:var(--red);border-radius:100px;padding:4px 10px;transform:rotate(-4deg)}
.plan.hot .pp-new{color:#fff}
.pp-note{margin-top:22px;font-size:14.5px;color:var(--dark-muted);max-width:80ch}
.pp-hand{display:block;font-family:var(--hand);font-size:24px;line-height:1.1;color:#F2957F;margin-bottom:4px;transform:rotate(-1.5deg);transform-origin:left}
@media(prefers-reduced-motion:reduce){.pp-old path{animation:none}}

/* после таймера — обычная цена: без зачёркивания и без «−20%» */
.plan-price--regular .pp-row{display:none}
.plan-price--regular .pp-old{font-family:var(--serif);font-size:32px;font-weight:700;line-height:1.05;color:#fff}
.plan-price--regular .pp-old svg{display:none}
