/* Единые зоны касания (44px), фокус и кнопка «Написать». Подключается последним, после всех стилей страницы. */
:root{--hit:44px}
.btn,.btn-sm,button.btn,a.btn{min-height:var(--hit) !important}
.btn:not(.btn-sm){display:inline-flex;align-items:center;justify-content:center}
.inv-read,.format-more,.svc-more,.pk-more,.fact-open,.top-news,.post-tag,.profile-text-link,.card-tools>summary,.fa-assortment>summary{min-height:var(--hit) !important;display:inline-flex;align-items:center}
.shot-expand{min-width:var(--hit);min-height:var(--hit)}
.profile-lang,.lang,.theme,.burger,.hs-dot{min-width:var(--hit);min-height:var(--hit);display:inline-flex;align-items:center;justify-content:center}
.snap-dots button,.dots .dot,button[data-i][aria-current]{min-width:var(--hit) !important;min-height:var(--hit) !important}
.opt{min-height:var(--hit);display:flex;align-items:center;gap:10px}
.opt input[type=checkbox],.opt input[type=radio],label>input[type=checkbox]{width:20px;height:20px;flex:none}
/* ссылки внутри текста, которые стоят отдельно в строке подвала и форм */
#consent-link,.footer a,.profile-footer a,.doc-back,.detail-nav a,.doc-nav a{display:inline-flex;align-items:center;min-height:var(--hit)}
.post-meta a,.tg-link,a[href^="https://t.me/"]:not(.btn){display:inline-flex;align-items:center;min-height:var(--hit)}
:where(a,button,summary,[role=button],input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.cta-fab:focus-visible{outline-offset:3px;box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}
@media (min-width:1025px){.cta-bar{display:none}}
@media (max-width:1024px){
  body:has(#cta-bar){padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  .cta-bar{right:max(16px,env(safe-area-inset-right))}
  .toast{bottom:calc(84px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important}
}

.mark,.profile-nav a,.hs-dot,a[href^="https://wa.me/"]{display:inline-flex;align-items:center;min-height:var(--hit)}
.profile-nav a{min-width:var(--hit);justify-content:center;padding-inline:8px}
a[data-back]{display:inline-flex;align-items:center;min-height:var(--hit)}
.doc-block>p>a:only-child,.doc-block a[href="/#consulting"]{display:inline-flex;align-items:center;min-height:var(--hit)}
.doc-back,.doc-head a[data-back],.doc a[data-back]{margin-right:14px}
@media (max-width:560px){.top-news{display:none !important}}
html,body{overflow-x:clip}

/* карточки консалтинга: «Решение» на одном уровне, без лишней пустоты */
@media (min-width:681px){
  #consulting #services .svc{grid-template-rows:auto auto auto auto 1fr;gap:8px;min-height:0}
  #consulting #services .svc-t{min-height:2.45em}
  #consulting #services .svc-b{min-height:6.7em}
  #consulting #services .svc-d{min-height:7.6em}
  #consulting #services .svc-more{margin-top:0;padding-top:8px;align-self:end}
}
/* кнопки второго плана подсвечиваются только при наведении и фокусе */
#roles-open:not(:hover):not(:focus-visible),#deck-open:not(:hover):not(:focus-visible){background:transparent;color:var(--ink);border-color:var(--line)}
.card-foot .flow-toggle{flex:0 0 100%;order:-1;justify-content:center}
[hidden]{display:none !important}
@media(min-width:900px){.lead-routes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.nav a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.doc-toc a{display:flex;align-items:center;min-height:var(--hit)}
.doc-block p a[href^="#s"],.doc-lead-in a[href^="#s"],.doc-state a[href^="#s"]{display:inline-block;padding:11px 3px;margin:-11px -3px}

.flow-embed-close,.diag-retake,.diag-back,[data-ct-retake],[data-ct-back]{min-width:var(--hit);min-height:var(--hit)}
#cards{align-items:start}
.opt-row .opt-label{font-size:13px;color:var(--muted);align-self:center;margin-right:4px}

/* лента: в карточке два-три предложения, полный текст открывается по клику */
#feed .post>p:not(.post-outlet){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* герой: главная кнопка одна, остальные переходы — тихие ссылки */
.hero-more{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:8px}
.hero-more .btn{background:transparent;border-color:transparent;color:var(--muted);padding-inline:2px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.hero-more .btn:hover,.hero-more .btn:focus-visible{color:var(--ink);border-color:transparent}
.hero-more{justify-content:flex-start;gap:4px 28px}

/* калькулятор «Экономика решения» */
.op-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:18px 0 6px;counter-reset:none}
.op-flow li{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);font-size:14px;line-height:1.4}
.op-flow li b{flex:0 0 26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-weight:500;font-size:13px}
@media(max-width:700px){.op-flow{grid-template-columns:1fr}}
.op-short-disclaimer{font-size:13px;line-height:1.6;color:var(--muted);margin:8px 0 18px;padding:10px 14px;border-left:3px solid var(--accent-soft)}
.op-hint{display:block;font-size:12.5px;line-height:1.45;color:var(--muted);margin:2px 0 6px}
.op-example{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 14px;font-size:14px;color:var(--muted)}
.op-explain{margin:14px 0;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.op-explain h4{margin:0 0 4px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-weight:500}
.op-explain p{margin:0 0 12px;line-height:1.6}
.op-actions{display:flex;flex-wrap:wrap;gap:10px}
.op-contact-note{margin-top:10px}
.op-copy-state{min-height:1.4em;font-size:13px;color:var(--accent);margin:4px 0 0}
.op-project-select[hidden]{display:none !important}
.op-status{font-size:14px}
[data-op-input][aria-invalid="true"]{border-color:#b42318;outline-color:#b42318}
.op-caveat a{display:inline-flex;align-items:center;min-height:var(--hit)}
.op-currency{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px;font-size:14px;color:var(--muted)}
.op-cur{min-width:var(--hit);min-height:var(--hit);border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font:inherit;font-size:16px;cursor:pointer}
.op-cur[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.op-currency small{font-size:12.5px}
/* телефон: карточки консалтинга без лишней пустоты, шаги калькулятора компактнее */
@media (max-width:680px){
  #consulting #services .svc{grid-template-rows:none;align-content:start;min-height:0;gap:8px}
  #consulting #services .svc-t,#consulting #services .svc-b,#consulting #services .svc-d{min-height:0}
  #consulting #services .svc-more{margin-top:4px;padding-top:4px}
  .op-flow{grid-template-columns:1fr 1fr;gap:8px}
  .op-flow li{padding:10px;font-size:13px;gap:8px}
  .op-flow li b{flex-basis:22px;height:22px;font-size:12px}
}
@media (max-width:680px){
  #consulting #services.services.snap>li{height:auto !important;min-height:0 !important}
  #consulting #services.services.snap>li>.svc{min-height:0 !important;height:auto !important}
  #consulting #services.services.snap>li>.svc>.svc-d,#consulting #services.services.snap>li>.svc>.svc-b{flex:0 0 auto !important;min-height:0 !important}
}

/* схема контуров работы на странице «О Syntha» */
.flow-scheme{list-style:none;margin:20px 0 8px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:none}
.flow-scheme li{position:relative;display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.flow-scheme li:not(:nth-child(3n))::after{content:"→";position:absolute;right:-13px;top:22px;width:12px;color:var(--muted);font-size:14px;line-height:1}
.flow-scheme .fs-n{flex:0 0 30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.flow-scheme h3{margin:0 0 6px;font:500 19px/1.25 var(--serif)}
.flow-scheme p{margin:0 0 8px;font-size:14.5px;line-height:1.55;color:var(--muted)}
.flow-scheme .fs-res{margin:0;color:var(--ink)}
.flow-scheme .fs-res b{font-weight:500;color:var(--accent)}
@media(max-width:900px){.flow-scheme{grid-template-columns:1fr 1fr}.flow-scheme li:not(:nth-child(3n))::after{display:none}}
@media(max-width:560px){.flow-scheme{grid-template-columns:1fr}}

/* единые мелочи оформления подстраниц */
.doc-back a{color:var(--accent)}
.sp-section .profile-heading{margin-bottom:24px}
.op-caveat a,.op-sources a,.op-explain a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
.doc-head .doc-cta{margin-top:28px}
.doc ul{margin-bottom:1em}

/* логотип в окнах досье и шрифт кнопок */
#modal-logo svg,#compare-logo svg,#need-logo svg,#pn-logo svg{height:28px;width:auto;max-width:100%}
button,input,select,textarea{font-family:inherit}
.card .stage{width:fit-content;align-self:flex-start}
.route-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
@media(max-width:900px){#clock{display:none}}
.op-status.is-error{color:#b42318}
.op-fields{align-items:end}
.cf-turnstile{max-width:100%}

.cta-bar.away{transform:translateY(140%);opacity:0;pointer-events:none}
/* карточки продуктов: одна высота, компактная плашка стадии, кнопки прижаты вниз */
#cards{align-items:stretch}
@media (max-width:759px){#cards{align-items:flex-start}}
#cards .card{display:flex;flex-direction:column}
#cards .card .stage{display:inline-flex;width:fit-content;max-width:100%;align-self:flex-start}
#cards .card .card-foot{margin-top:auto}
.findings h3 a{display:inline-flex;align-items:center;min-height:var(--hit)}

/* Hero: одна главная кнопка (залитая), остальные — ровный ряд текстовых ссылок без «сирот». */
#top .hero-cta .btn-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}
#top .hero-cta .btn-primary:hover{opacity:.88}
#top .hero-cta > .hero-more{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:4px 28px;margin-top:8px}
#top .hero-more > .btn:not([hidden]){grid-column:auto}

/* Контакты: колонка со ссылками закреплена рядом с длинной формой, поэтому справа нет пустоты. */
@media (min-width:1000px){
  .contact-grid .direct{align-self:start;position:sticky;top:calc(var(--topbar-h,56px) + 96px)}
}

/* Карточки консалтинга: текст крупнее и контрастнее, без «колодца» пустоты между описанием и решением. */
@media (min-width:760px){
  #consulting #services .svc-b{font-size:15px;line-height:1.55;color:color-mix(in srgb,var(--ink) 78%,var(--bg))}
  #consulting #services .svc-d{font-size:14px;line-height:1.55;color:color-mix(in srgb,var(--ink) 78%,var(--bg))}
}

/* Партнёрство: у карточек остаётся одно заметное действие на секцию; «Обсудить участие» в карточке — текстовая ссылка. */
#investors .inv-card .btn.btn-sm{background:transparent;border-color:transparent;color:var(--accent);padding-inline:2px;text-decoration:underline;text-underline-offset:3px}
#investors .inv-card .btn.btn-sm:hover,#investors .inv-card .btn.btn-sm:focus-visible{color:var(--ink);border-color:transparent}
@media (min-width:760px){
  #consulting #services .svc-b{min-height:5.2em}
  #consulting #services .svc-d{min-height:6em}
}

/* Планшет: нечётная последняя карточка занимает весь ряд, а не оставляет пустую половину. */
@media (min-width:600px) and (max-width:999px){
  #lead-routes-grid > :last-child:nth-child(odd){grid-column:1/-1}
}

/* Телефон, «Консалтинг»: направления и форматы — горизонтальные ленты со «выглядывающей» следующей
   карточкой вместо девяти экранов подряд (секция была около 3400px). */
@media (max-width:759px){
  #formats .formats-grid,#consulting #services.services.snap.snap-fit{
    display:flex!important;grid-template-columns:none!important;gap:12px;
    overflow-x:auto!important;overflow-y:hidden!important;height:auto!important;max-height:none!important;
    scroll-snap-type:x mandatory;scroll-padding-inline:16px;margin-inline:-16px;padding:0 16px 10px;
    scrollbar-width:none;overscroll-behavior-x:contain;align-items:stretch;
  }
  #formats .formats-grid::-webkit-scrollbar,#consulting #services.services.snap.snap-fit::-webkit-scrollbar{display:none}
  #formats .format,#consulting #services.services.snap.snap-fit > li:not(.svc-featured-item){flex:0 0 82%!important;width:auto!important;scroll-snap-align:start;min-width:0}
  #consulting #services.services.snap.snap-fit > li:not(.svc-featured-item){height:auto!important;display:flex!important}
  #consulting #services.services.snap.snap-fit > li > .svc{flex:1;min-height:100%!important}
  #consulting #services.services.snap.snap-fit .svc-t,#consulting #services.services.snap.snap-fit .svc-b,#consulting #services.services.snap.snap-fit .svc-d{min-height:0!important}
}

/* Расчёт экономики проекта: кнопка внизу досье и отдельная страница калькулятора. */
.project-calc-cta{margin:20px 0 4px}
#pe-select{min-height:var(--hit);font:inherit;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);max-width:100%}
.detail-main .investor-calculator-mount{margin-top:18px}
#pe-select + p{margin-top:14px}
.project-calc-cta{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center}
.project-demo-note{flex-basis:100%;margin:0}
