/* Homepage only: editorial layouts and concrete CRM examples. */
.home-page .brand { gap: 14px; }
.home-page .brand__tag { font-size: 11.5px; }
.home-page .hero__lede { max-width: 43ch; }
.home-mono { font-family: var(--mono); font-size: 10.5px; font-weight: 400; letter-spacing: .11em; text-transform: uppercase; color: var(--paper-2); }
.home-page .hero__promise { margin-top: 22px; max-width: 52ch; font-size: 10px; line-height: 1.8; }
.home-page .hero__actions { gap: 14px 22px; }
.home-page .hero__stage { min-width: 0; }
.home-page .prism__top > .home-mono { font-size: 8px; letter-spacing: .06em; }
.home-page .prism__stage { height: 320px; }
.home-page .prism__orbit { pointer-events: none; }
.home-page .prism__tabs { position: relative; z-index: 2; }
.home-page .prism__stack { height: 242px; }
.home-page .crm-sheet { padding: 17px 18px; }
.home-page .crm-sheet .sheet__foot { left: 18px; right: 18px; font-size: 7.5px; }
.home-page .crm-sheet .sheet__head { font-size: 8.5px; }
.crm-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 15px; }
.crm-board__label { display: flex; align-items: center; justify-content: space-between; gap: 3px; margin-bottom: 8px; font-size: 6.9px; font-weight: 600; color: #505760; }
.crm-board__label b { font: inherit; opacity: .7; }
.crm-board article { margin-bottom: 6px; padding: 9px 7px; border: 1px solid #b6bbc2; border-radius: 2px; background: rgba(255,255,255,.52); }
.crm-board strong { display: block; font-size: 8px; font-weight: 600; line-height: 1.35; }
.crm-board small { display: block; margin-top: 6px; font-size: 6.7px; line-height: 1.4; color: #606873; }
.crm-board i { display: block; margin-top: 8px; font: 6px var(--mono); color: #505760; }
.crm-client { display: flex; align-items: center; gap: 10px; margin-top: 14px; }
.crm-client__avatar { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--chrome-lo); font: 12px var(--mono); color: var(--chrome-hi); }
.crm-client strong { display: block; font-size: 11px; font-weight: 500; color: var(--paper-0); }
.crm-client small { display: block; margin-top: 2px; font-size: 7px; color: var(--paper-2); }
.crm-history { display: grid; gap: 10px; margin-top: 16px; }
.crm-history p { display: flex; gap: 9px; align-items: flex-start; color: var(--paper-1); font-size: 8px; line-height: 1.3; }
.crm-history i { width: 4px; height: 4px; margin-top: 3px; border: 1px solid var(--chrome-mid); }
.crm-history small { display: block; margin-top: 3px; font-size: 6.8px; color: var(--paper-2); }
.crm-control { display: grid; margin-top: 17px; }
.crm-control p { display: flex; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--hair); padding: 8px 0; font-size: 8px; color: var(--paper-1); }
.crm-control b { font: 6.5px var(--mono); color: var(--paper-2); }
.crm-control__foot { display: flex; justify-content: space-between; margin-top: 16px; font-size: 7px; color: var(--paper-2); }
.crm-control__foot strong { font-size: 9px; color: var(--chrome-hi); font-weight: 500; }
.home-page .prism__desc { min-height: 176px; }
.home-section-head { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px 80px; align-items: end; }
.home-page .home-section-head .h2 { max-width: 24ch; font-size: clamp(30px, 4.2vw, 58px); line-height: 1.08; }
.home-lede { max-width: 43ch; color: var(--paper-1); font-size: clamp(16px, 1.5vw, 19px); line-height: 1.65; }
.home-page .block--tint { background: rgba(18,19,22,.38); }
.home-page .home-index { margin-top: 52px; }
.home-page .home-index .index__row { padding-block: 26px; }
.home-page .home-index .index__main h3 { font-size: clamp(19px, 2vw, 25px); }
.home-page .home-index .index__main p { max-width: 64ch; }
.home-estimate { display: flex; align-items: center; justify-content: space-between; gap: 28px 60px; margin-top: 40px; padding: 28px 32px; border: 1px solid var(--hair-strong); background: rgba(11,12,14,.66); }
.home-estimate h3 { margin-top: 10px; font-size: 23px; font-weight: 500; letter-spacing: -.03em; line-height: 1.2; }
.home-estimate p { max-width: 60ch; margin-top: 10px; color: var(--paper-1); font-size: 14px; }
.home-estimate > .link { flex-shrink: 0; }
.home-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 54px; border: 1px solid var(--hair-strong); background: rgba(11,12,14,.88); }
.home-steps > li { display: flex; flex-direction: column; padding: 30px 28px; border-right: 1px solid var(--hair); }
.home-steps > li:last-child { border-right: 0; }
.home-step__num { font: 10.5px var(--mono); text-transform: uppercase; letter-spacing: .1em; color: var(--paper-2); }
.home-steps h3 { margin-top: 32px; font-size: clamp(21px, 2vw, 27px); letter-spacing: -.035em; font-weight: 500; line-height: 1.15; }
.home-steps p { margin-top: 18px; margin-bottom: 32px; font-size: 14px; line-height: 1.75; color: var(--paper-1); }
.home-steps li > div { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--hair); }
.home-steps li > div > strong { display: block; margin-top: 8px; font-size: 13px; font-weight: 400; line-height: 1.6; color: var(--chrome-hi); }
.home-scenarios { margin-top: 50px; border: 1px solid var(--hair-strong); background: rgba(11,12,14,.5); }
.home-scenario-tabs { display: flex; border-bottom: 1px solid var(--hair-strong); }
.home-scenario-tabs button { flex: 1; padding: 19px 24px; margin-bottom: -1px; border-bottom: 2px solid transparent; color: var(--paper-2); font-size: 13px; }
.home-scenario-tabs button[aria-selected="true"] { border-bottom-color: var(--chrome-hi); color: var(--paper-0); background: rgba(233,235,239,.035); }
.home-scenario-tabs button:focus-visible, .home-faq summary:focus-visible { outline: 1px solid var(--chrome-hi); outline-offset: -5px; }
.home-scenario { display: grid; grid-template-columns: 1.1fr 1fr; gap: 42px 72px; padding: 40px; min-height: 405px; }
.home-scenario[hidden] { display: none; }
.home-scenario h3 { max-width: 27ch; font-size: clamp(23px,2.3vw,32px); font-weight: 500; letter-spacing: -.035em; line-height: 1.15; }
.home-scenario dl { display: grid; gap: 20px; margin-top: 26px; margin-bottom: 28px; }
.home-scenario dt { font: 10px var(--mono); text-transform: uppercase; letter-spacing: .12em; color: var(--paper-2); }
.home-scenario dd { margin-top: 7px; max-width: 45ch; color: var(--paper-1); font-size: 14px; line-height: 1.75; }
.home-flow { display: grid; align-content: center; }
.home-flow li { display: grid; grid-template-columns: 36px 1fr; align-items: center; gap: 16px; position: relative; padding: 22px 18px; border: 1px solid var(--hair-strong); background: rgba(18,19,22,.8); }
.home-flow li + li { margin-top: 24px; }
.home-flow li + li::before { content: "↓"; position: absolute; top: -23px; left: 30px; height: 22px; color: var(--chrome-lo); font-size: 14px; }
.home-flow li > span { font: 11px var(--mono); color: var(--paper-2); }
.home-flow li > strong { font-size: 14px; font-weight: 400; line-height: 1.4; color: var(--chrome-hi); }
.home-about { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 96px; }
.home-about .h2 { font-size: clamp(32px,4.3vw,60px); line-height: 1.1; }
.home-about__signature { margin-top: 32px; }
.home-about__text { margin-top: 22px; max-width: 48ch; color: var(--paper-1); font-size: 16px; line-height: 1.75; }
.home-principles { display: grid; margin-top: 36px; background: rgba(11,12,14,.82); }
.home-principles > div { display: grid; grid-template-columns: 108px 1fr; gap: 20px; padding: 18px 0; border-top: 1px solid var(--hair); }
.home-principles dt { font: 10px var(--mono); text-transform: uppercase; letter-spacing: .08em; color: var(--paper-2); }
.home-principles dd { font-size: 13px; line-height: 1.6; color: var(--paper-1); }
.home-faq__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 96px; }
.home-faq .h2 { font-size: clamp(32px,4vw,56px); }
.home-faq details { border-top: 1px solid var(--hair-strong); padding: 22px 0; background: rgba(11,12,14,.76); }
.home-faq details:last-child { border-bottom: 1px solid var(--hair-strong); }
.home-faq summary { position: relative; list-style: none; padding-right: 32px; cursor: pointer; font-size: 17px; font-weight: 500; line-height: 1.5; color: var(--paper-0); }
.home-faq summary::-webkit-details-marker { display: none; }
.home-faq summary::after { content: "+"; position: absolute; right: 3px; top: 0; color: var(--paper-2); }
.home-faq details[open] summary::after { content: "−"; }
.home-faq details p { margin-top: 15px; max-width: 48ch; font-size: 14px; line-height: 1.8; color: var(--paper-1); }
.home-contact { background: linear-gradient(120deg, rgba(26,28,32,.55), rgba(11,12,14,.1)); }
.home-contact .h2 { max-width: 23ch; font-size: clamp(36px,5.1vw,74px); line-height: 1.07; }
.home-contact .home-lede { margin-top: 28px; max-width: 57ch; }
.home-contact .hero__actions { margin-top: 36px; }
.home-contact__foot { display: flex; flex-wrap: wrap; align-items: baseline; gap: 20px 32px; margin-top: 34px; padding-top: 24px; border-top: 1px solid var(--hair); }
.home-contact__foot > a { font-size: 15px; color: var(--paper-1); text-underline-offset: 5px; }
.home-contact__foot > a:hover { text-decoration: underline; }
@media (max-width: 1099px) {
  .home-page .brand__tag { display: inline; }
  .home-page .hero__stage { max-width: 520px; width: 100%; justify-self: center; }
  .home-section-head { grid-template-columns: 1fr; gap: 24px; }
  .home-section-head .home-lede { max-width: 56ch; }
  .home-scenario { gap: 32px; padding: 30px; }
  .home-about, .home-faq__grid { gap: 40px; }
}
@media (max-width: 759px) {
  .home-page .brand__tag { max-width: 165px; font-size: 10.5px; line-height: 1.25; }
  .home-page .block { padding-block: 72px; }
  .home-page .hero__promise { font-size: 9px; max-width: 36ch; }
  .home-page .prism__top > .home-mono { display: none; }
  .home-page .crm-sheet { padding-inline: 12px; }
  .home-page .crm-sheet .sheet__foot { left: 12px; right: 12px; font-size: 6px; }
  .crm-board__label { font-size: 6px; }
  .crm-board article { padding: 7px 4px; }
  .crm-board strong { font-size: 6.8px; }
  .crm-board small { font-size: 6px; }
  .home-estimate { flex-direction: column; align-items: flex-start; padding: 24px; }
  .home-steps { grid-template-columns: 1fr; margin-top: 36px; }
  .home-steps > li { border-right: 0; border-bottom: 1px solid var(--hair); padding: 28px 24px; }
  .home-steps > li:last-child { border-bottom: 0; }
  .home-steps h3 { margin-top: 22px; }
  .home-steps p { margin-bottom: 24px; }
  .home-scenario { grid-template-columns: 1fr; padding: 26px 22px; }
  .home-scenario-tabs button { padding-inline: 12px; font-size: 12px; }
  .home-flow li { padding-block: 18px; }
  .home-about, .home-faq__grid { grid-template-columns: 1fr; gap: 36px; }
  .home-principles > div { grid-template-columns: 90px 1fr; gap: 16px; }
}

/* ---------- hero: схема процесса (вместо CRM-эскиза) ---------- */
.proc-list { display: grid; gap: 4px; margin: 9px 0 0; padding: 0; list-style: none; }
.proc-list li { display: grid; grid-template-columns: 14px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 4px 8px; border: 1px solid #b6bbc2; border-radius: 2px; background: rgba(255,255,255,.52); }
.proc-list i { display: grid; place-items: center; width: 14px; height: 14px; border: 1px solid #8a919b; font: normal 7px var(--mono); color: #505760; }
.proc-list span { font-size: 8px; font-weight: 600; line-height: 1.3; color: #151619; }
.proc-list small { display: block; margin-top: 1px; font-size: 6.6px; font-weight: 400; line-height: 1.35; color: #606873; }
.proc-list b { font: 6px var(--mono); letter-spacing: .08em; text-transform: uppercase; color: #505760; }
.proc-list--dark li { border-color: rgba(233,235,239,.22); background: rgba(255,255,255,.04); }
.proc-list--dark i { border-color: var(--chrome-mid); color: var(--chrome-hi); }
.proc-list--dark span { color: var(--paper-0); }
.proc-list--dark small { color: var(--paper-2); }
.proc-list--dark b { color: var(--chrome-mid); }
.proc-list--dark li.is-human { border-color: var(--chrome-hi); background: rgba(233,235,239,.1); }
.proc-list--dark li.is-human b { color: var(--chrome-hi); }
.home-page .sheet--proc { display: flex; flex-direction: column; }
.home-page .sheet--proc .sheet__foot { position: static; margin-top: auto; }
