/* Синопс: внутренние страницы, вторая серия.
 *
 * Дополнение к страница.css: полосы с фоновыми снимками (затемнёнными,
 * с медленным движением), сетка частиц позади всей страницы, конвейер,
 * основатели, форма заявки и модалка. Переменные темы — из страница.css.
 */

/* ── слои: сетка частиц позади, содержимое поверх ─────────────── */
#сеть-частиц{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.55}
main,footer.подвал{position:relative;z-index:1}

/* Полосы без линий между собой: снимки перетекают из блока в блок,
   и черта поперёк них выглядела как шов. Подвал линию сохраняет. */
main .полоса{border-top:0}

/* ── общие блоки ─────────────────────────────────────────────── */
.сетка{display:grid;gap:14px;margin-top:clamp(24px,3.6vh,40px)}
@media(min-width:820px){.сетка.два{grid-template-columns:repeat(2,minmax(0,1fr))}.сетка.три{grid-template-columns:repeat(3,minmax(0,1fr))}.сетка.четыре{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:560px) and (max-width:819px){.сетка.три,.сетка.четыре{grid-template-columns:repeat(2,minmax(0,1fr))}}

.плитка{position:relative;display:flex;flex-direction:column;gap:10px;padding:clamp(22px,3vw,30px);
  border:1px solid var(--линия);border-radius:22px;background:var(--подложка);backdrop-filter:blur(6px);transition:transform .45s cubic-bezier(.2,.75,.2,1),border-color .3s}
.плитка:hover{transform:translateY(-4px);border-color:var(--обводка-ярче)}
.плитка .номер{font:800 13px/1 Montserrat,Inter,sans-serif;letter-spacing:.06em;color:var(--тише);text-transform:uppercase}
.плитка h3{font-weight:700;font-size:clamp(18px,1.6vw,21px);letter-spacing:-.02em;margin-top:2px}
.плитка p{color:var(--на-фоне);font-size:15.5px;line-height:1.55}
.плитка p b{color:var(--текст);font-weight:600}
.плитка.тёмная{background:var(--текст);color:var(--фон);border-color:var(--текст)}
.плитка.тёмная p,.плитка.тёмная .номер{color:var(--фон);opacity:.72}
.плитка.тёмная p b{color:var(--фон);opacity:1}
.плитка .значок{width:44px;height:44px;border-radius:12px;background:var(--мягко);display:inline-flex;align-items:center;justify-content:center;color:var(--текст);font:700 15px/1 Montserrat,Inter,sans-serif}
.плитка .значок svg{width:22px;height:22px}

/* ── полоса со снимком в фоне ─────────────────────────────────── */
/* Полоса живёт в теме страницы: на тёмной — чёрный снимок, на светлой
   тот же снимок инвертируется и становится тёмным объектом на белом.
   Края растворяются в цвет фона темы, поэтому переключение темы
   красит всю страницу целиком, а не кусками. */
.полоса.фон{position:relative;overflow:visible;background:transparent}
.полоса .ряд{position:relative;z-index:2}
/* Снимок крупный: выше полосы на треть и перетекает в соседние блоки,
   края растворяются в цвет фона темы. Сдвинут к свободному краю. */
.фон-снимок{position:absolute;left:0;right:0;top:-34%;bottom:-10%;z-index:0;overflow:visible;pointer-events:none}
.фон-снимок img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.72;
  will-change:transform;transform:translate3d(0,0,0) scale(1);transition:opacity 1.2s,filter .35s}
:root[data-тема="light"] .фон-снимок img{filter:invert(1) contrast(1.05);opacity:.42}
@media (prefers-color-scheme: light){:root:not([data-тема="dark"]) .фон-снимок img{filter:invert(1) contrast(1.05);opacity:.42}}
.фон-снимок.правый img{left:auto;right:3%;width:72%}
.фон-снимок.левый img{left:3%;width:72%}
/* Растворение делаем маской на самом снимке, а не заливкой сверху:
   заливка красила бы соседние блоки, в которые снимок перетекает. */
.фон-снимок img{-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%)}
.фон-снимок.правый img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.06) 34%,rgba(0,0,0,.5) 56%,#000 78%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.06) 34%,rgba(0,0,0,.5) 56%,#000 78%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%);mask-composite:intersect}
.фон-снимок.левый img{-webkit-mask-image:linear-gradient(270deg,transparent 0%,rgba(0,0,0,.06) 34%,rgba(0,0,0,.5) 56%,#000 78%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(270deg,transparent 0%,rgba(0,0,0,.06) 34%,rgba(0,0,0,.5) 56%,#000 78%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 12%,#000 26%,#000 70%,rgba(0,0,0,.4) 86%,transparent 100%);mask-composite:intersect}
/* «Тихий» снимок под текстом во всю ширину: приглушаем сильнее и
   кладём сверху ровную вуаль цвета фона, чтобы буквы не спорили с точками. */
.фон-снимок.тихий{top:0;bottom:0}
:root[data-тема="light"] .фон-снимок.тихий img{opacity:.12}
@media (prefers-color-scheme: light){:root:not([data-тема="dark"]) .фон-снимок.тихий img{opacity:.12}}
.фон-снимок.тихий img{opacity:.18}
.половина{max-width:600px}
.половина.напротив{margin-left:auto}
@media(max-width:899px){.фон-снимок{top:0;bottom:0}.фон-снимок.правый img,.фон-снимок.левый img{left:0;right:auto;width:100%}.фон-снимок img{opacity:.35}.фон-снимок.правый::after,.фон-снимок.левый::after{background:linear-gradient(180deg,rgb(var(--фон-триплет)) 0%,rgba(var(--фон-триплет),.6) 30%,rgba(var(--фон-триплет),.6) 70%,rgb(var(--фон-триплет)) 100%)}.половина.напротив{margin-left:0}}
@media(prefers-reduced-motion:reduce){.фон-снимок img{transform:none!important}}

.крупно{font:900 clamp(44px,7vw,110px)/.9 Montserrat,Inter,sans-serif;letter-spacing:-.04em}
.крупно small{display:block;font:600 14px/1.4 Inter,sans-serif;letter-spacing:.02em;color:var(--тише);margin-top:10px;text-transform:none}
.цитата{font:800 clamp(22px,2.8vw,40px)/1.1 Montserrat,Inter,sans-serif;letter-spacing:-.03em;margin-top:clamp(20px,3vh,32px);max-width:24ch}
.цитата i{font-style:normal;color:var(--тише)}

.метки{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.метка{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--обводка);font-size:14px;color:var(--на-фоне);background:var(--подложка);backdrop-filter:blur(6px)}
.метка i{width:6px;height:6px;border-radius:50%;background:var(--текст);font-style:normal}

/* появление при прокрутке */
.явь{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.75,.2,1),transform .8s cubic-bezier(.2,.75,.2,1)}
.явь.видно{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce),(max-width:899px){.явь{opacity:1;transform:none;transition:none}}

/* кнопка-элемент <button> в языке сайта: у браузера свои цвета, гасим их */
button.кнопка{background:var(--подложка);cursor:pointer;color:var(--текст);-webkit-appearance:none;appearance:none}
button.кнопка[disabled]{opacity:.5;pointer-events:none}

/* ── конвейер ────────────────────────────────────────────────── */
.конвейер{position:relative;margin-top:clamp(24px,3.6vh,40px);padding:clamp(18px,2.4vw,28px);border:1px solid var(--линия);border-radius:22px;background:rgba(var(--фон-триплет),.55);backdrop-filter:blur(8px);overflow:hidden}
.конвейер svg{width:100%;height:auto;display:block;overflow:visible}
.конвейер .подпись-узла{font:600 15px Inter,sans-serif;fill:var(--текст)}
.конвейер .под{font:500 12px Inter,sans-serif;fill:var(--тише)}
.конвейер .узел{fill:var(--фон);stroke:var(--обводка-ярче);stroke-width:2;transition:.3s}
.конвейер .узел.горит{fill:var(--текст);stroke:var(--текст);filter:drop-shadow(0 0 8px var(--текст))}
.конвейер .узел.агент{stroke-width:3}
.конвейер .рельс{stroke:var(--обводка);stroke-width:2;stroke-dasharray:2 7;fill:none;stroke-linecap:round}
.конвейер .импульс{fill:var(--текст);filter:drop-shadow(0 0 6px var(--текст)) drop-shadow(0 0 16px var(--текст))}
.конвейер .билет{position:absolute;right:clamp(18px,2.4vw,28px);top:clamp(18px,2.4vw,28px);max-width:min(340px,60%);padding:12px 16px;border:1px solid var(--линия);border-radius:14px;
  background:rgba(var(--фон-триплет),.86);backdrop-filter:blur(8px);font-size:13.5px;line-height:1.45;color:var(--на-фоне);opacity:0;transform:translateY(8px);transition:.4s}
.конвейер .билет.видно{opacity:1;transform:none}
.конвейер .билет b{color:var(--текст);font-weight:600}
.конвейер .билет .итог{color:var(--текст);font-weight:600}
.конвейер .счёт{display:flex;gap:22px;margin-top:10px;font-size:13.5px;color:var(--тише)}
.конвейер .счёт b{color:var(--текст);font-variant-numeric:tabular-nums;font-weight:600}
@media(max-width:700px){.конвейер .билет{position:static;max-width:none;margin-top:12px}.конвейер .подпись-узла{font-size:19px}.конвейер .под{font-size:15px}}

/* ── платформы ───────────────────────────────────────────────── */
.платформа-мини{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--линия);border-radius:18px;background:var(--подложка);backdrop-filter:blur(6px);transition:border-color .3s,background .3s;cursor:pointer;text-align:left;color:inherit;font:inherit;width:100%}
.платформа-мини:hover{border-color:var(--обводка-ярче);background:var(--мягко)}
.платформа-мини .значок{flex:none;width:44px;height:44px;border-radius:12px;background:var(--мягко);display:inline-flex;align-items:center;justify-content:center;color:var(--текст)}
.платформа-мини .значок svg{width:22px;height:22px}
.платформа-мини b{display:block;font:700 16px/1.2 Montserrat,Inter,sans-serif;letter-spacing:-.01em}
.платформа-мини span{display:block;font-size:13px;color:var(--тише);margin-top:3px}

/* ── основатели ──────────────────────────────────────────────── */
/* По одному в ряд, фото почти в полстраницы; второй — зеркально. */
.основатели{display:grid;gap:clamp(28px,5vh,64px);margin-top:clamp(20px,3vh,36px)}
.основатель{display:grid;grid-template-columns:minmax(240px,46%) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:center}
.основатель.зеркало{grid-template-columns:minmax(0,1fr) minmax(240px,46%)}
.основатель.зеркало .фото{order:2}
.основатель.зеркало>div{text-align:right}
.основатель.зеркало p,.основатель.зеркало .визитка{margin-left:auto}
@media(max-width:640px){.основатель,.основатель.зеркало{grid-template-columns:1fr}.основатель.зеркало .фото{order:0}.основатель.зеркало>div{text-align:left}.основатель.зеркало p{margin-left:0}}
.основатель .фото{width:100%;aspect-ratio:1/1.15;object-fit:cover;object-position:top;display:block;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent),linear-gradient(0deg,transparent,#000 22%);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent),linear-gradient(0deg,transparent,#000 22%);mask-composite:intersect}
.основатель .роль{font:600 12px/1 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--тише)}
.основатель .роль i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--текст);margin-right:8px;vertical-align:middle;font-style:normal}
.основатель h3{font:800 clamp(24px,2.4vw,34px)/1.02 Montserrat,Inter,sans-serif;letter-spacing:-.025em;margin-top:10px}
.основатель p{color:var(--на-фоне);font-size:16px;line-height:1.55;margin-top:12px;max-width:36ch}
.основатель .тел{display:inline-block;clear:both;margin-top:14px;font:600 20px/1 Inter,sans-serif;font-variant-numeric:tabular-nums;color:var(--текст);border-bottom:1px solid var(--обводка);transition:.2s}
.основатель .тел:hover{border-color:var(--текст)}
.визитка{display:flex;width:max-content;flex-direction:column;align-items:center;gap:5px;margin-top:16px;padding:9px;border-radius:12px;background:#fff;color:#111;box-shadow:0 20px 50px -24px rgba(0,0,0,.6)}
.визитка svg{width:104px;height:104px;display:block}
.визитка small{font-size:10.5px;color:#666}

/* ── форма заявки ────────────────────────────────────────────── */
.форма{margin-top:clamp(24px,3.6vh,40px);padding:clamp(22px,3vw,36px);border:1px solid var(--линия);border-radius:22px;background:rgba(var(--фон-триплет),.6);backdrop-filter:blur(10px)}
.форма .поля{display:grid;gap:14px}
@media(min-width:720px){.форма .поля{grid-template-columns:1fr 1fr}.форма .широкое{grid-column:1/-1}}
.форма label{display:block;font-size:13px;color:var(--тише);margin-bottom:6px}
.форма input,.форма textarea{width:100%;padding:14px 16px;border:1px solid var(--обводка);border-radius:14px;background:transparent;color:var(--текст);
  font:400 16px/1.4 Inter,sans-serif;outline:none;transition:border-color .2s,background .2s}
.форма input:focus,.форма textarea:focus{border-color:var(--текст);background:var(--мягко)}
.форма textarea{min-height:110px;resize:vertical}
.форма .согласие{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--тише);margin-top:16px;line-height:1.45}
.форма .согласие input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--текст)}
.форма .согласие a{border-bottom:1px solid var(--обводка)}
.форма .кнопка{margin-top:18px}
.форма .ответ{margin-top:16px;font-size:15px;color:var(--на-фоне);min-height:1.4em}
.форма .ответ.ок{color:var(--текст);font-weight:600}
.форма .ответ.ошибка{color:#e5484d}
.форма .мёд{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.форма.готово .поля,.форма.готово .согласие,.форма.готово .кнопка{display:none}

/* ── модалка заявки ──────────────────────────────────────────── */
.модалка{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:18px;
  background:rgba(8,8,10,.72);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s}
.модалка.открыта{opacity:1;visibility:visible;transition:opacity .35s,visibility 0s}
.модалка .окно{position:relative;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;border:1px solid var(--линия);border-radius:26px;
  background:var(--фон);color:var(--текст);padding:clamp(24px,3.6vw,44px);transform:translateY(20px) scale(.98);transition:transform .45s cubic-bezier(.2,.75,.2,1);box-shadow:0 40px 120px -40px rgba(0,0,0,.9)}
.модалка.открыта .окно{transform:none}
.модалка .окно h2{font-weight:800;font-size:clamp(24px,3vw,34px);letter-spacing:-.03em;max-width:none}
.модалка .окно .подводка{margin-top:10px;color:var(--на-фоне);font-size:15.5px;max-width:52ch}
.модалка .закрыть{position:absolute;top:16px;right:16px;width:42px;height:42px;border-radius:50%;border:1px solid var(--обводка);background:transparent;color:var(--текст);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:20px;line-height:1;transition:.2s}
.модалка .закрыть:hover{border-color:var(--текст);background:var(--мягко)}
.модалка .форма{margin-top:20px;padding:0;border:0;background:transparent;backdrop-filter:none}
body.без-прокрутки{overflow:hidden}

/* ── ярче текст ──────────────────────────────────────────────── */
/* Серый вторичный текст на тёмном читался плохо. Поднимаем контраст
   везде, где подключён этот файл; светлая тема — тем же порядком. */
:root{--на-фоне:rgba(255,255,255,.88);--тише:rgba(255,255,255,.6);--обводка:rgba(255,255,255,.3);--линия:rgba(255,255,255,.14)}
@media (prefers-color-scheme: light){:root:not([data-тема="dark"]){--на-фоне:rgba(11,11,13,.82);--тише:rgba(11,11,13,.56);--обводка:rgba(11,11,13,.28);--линия:rgba(11,11,13,.12)}}
:root[data-тема="light"]{--на-фоне:rgba(11,11,13,.82);--тише:rgba(11,11,13,.56);--обводка:rgba(11,11,13,.28);--линия:rgba(11,11,13,.12)}
.форма label{color:var(--текст);opacity:.8}
.форма input,.форма textarea{border-color:var(--обводка)}
.форма input::placeholder,.форма textarea::placeholder{color:var(--тише)}
.форма .согласие{color:var(--на-фоне)}

/* ── телефон ─────────────────────────────────────────────────── */
@media(max-width:700px){
  .конвейер{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:14px}
  .конвейер svg{min-width:1000px}
  .конвейер .подпись-узла{font-size:15px}.конвейер .под{font-size:12px}
  .конвейер .счёт{flex-wrap:wrap;gap:8px 18px}
  .плитка{padding:18px}
  .крупно{font-size:clamp(40px,14vw,64px)}
  .цитата{font-size:clamp(20px,6vw,28px)}
  .половина{max-width:none}
  .основатели{gap:36px}
  .основатель .фото{max-width:320px}
  .основатель.зеркало>div{text-align:left}
  .основатель.зеркало p,.основатель.зеркало .визитка{margin-left:0}
  .основатель.зеркало .фото{order:0}
  .модалка{padding:0;align-items:flex-end}
  .модалка .окно{width:100%;max-height:100vh;border-radius:22px 22px 0 0;padding:22px 18px 28px}
  .форма{padding:18px}
  .метки{gap:6px}.метка{height:32px;font-size:13px;padding:0 11px}
}
@media(max-width:480px){
  .сетка.два,.сетка.три,.сетка.четыре{grid-template-columns:1fr}
  .плитка h3{font-size:18px}
}

/* На телефоне размытие подложки дорогое и в некоторых сборках рисует
   содержимое блёклым; там обходимся плотной подложкой без размытия. */
@media(max-width:899px){
  .конвейер,.плитка,.метка,.платформа-мини,.форма,.билет,.модалка{backdrop-filter:none;-webkit-backdrop-filter:none}
  .конвейер{background:rgba(var(--фон-триплет),.92)}
  .плитка{background:rgba(var(--фон-триплет),.85)}
  .форма{background:rgba(var(--фон-триплет),.92)}
}
