/* ===== Хаб Битрикс24 — кастомный шаблон (namespace b24-) ===== */
.b24-page{--b24-blue:#1765E5;--b24-blue2:#2A75F2;--b24-blue3:#3D85FF;--b24-grad:linear-gradient(180deg,#1765E5 0%,#2A75F2 50%,#3D85FF 100%);--b24-ink:#0f2033;--b24-mut:#5a6b7d;--b24-line:#e4ebf3;--b24-bg:#f5f8fc;color:var(--b24-ink);}
.b24-page .container{max-width:1180px;margin:0 auto;padding-left:20px;padding-right:20px;}
.b24-h2{font-size:clamp(24px,3vw,34px);line-height:1.2;font-weight:800;text-align:center;margin:0 0 12px;text-wrap:balance;}
.b24-h2--white{color:#fff;}
.b24-lead-center{text-align:center;color:var(--b24-mut);max-width:760px;margin:0 auto 34px;font-size:17px;line-height:1.6;}
.b24-eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--b24-blue);background:rgba(23,101,229,.09);padding:6px 14px;border-radius:100px;margin-bottom:18px;}
.b24-btn{display:inline-block;font-weight:700;border-radius:12px;padding:15px 30px;text-decoration:none;transition:.2s;cursor:pointer;}
.b24-btn--primary{background:var(--b24-grad);color:#fff;box-shadow:0 10px 24px rgba(23,101,229,.28);}
.b24-btn--primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(23,101,229,.36);color:#fff;}

/* HERO */
.b24-hero{background:var(--b24-bg);padding:46px 0 54px;border-bottom:1px solid var(--b24-line);}
.b24-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;}
.b24-hero__title{font-size:clamp(28px,3.8vw,46px);line-height:1.12;font-weight:800;margin:0 0 18px;letter-spacing:-.01em;text-wrap:balance;}
.b24-hero__lead{font-size:17px;line-height:1.62;color:var(--b24-mut);margin:0 0 20px;}
.b24-hero__lead b{color:var(--b24-ink);}
.b24-hero__bullets{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:11px;}
.b24-hero__bullets li{position:relative;padding-left:30px;font-size:15.5px;line-height:1.45;font-weight:600;}
.b24-hero__bullets li::before{content:"";position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;background:var(--b24-grad);box-shadow:0 3px 8px rgba(23,101,229,.3);}
.b24-hero__bullets li::after{content:"";position:absolute;left:6px;top:8px;width:6px;height:3px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);}

/* HUB-визуализация */
.b24-hero__viz{display:flex;justify-content:center;}
.b24-hub{position:relative;width:100%;max-width:460px;}
.b24-hub__svg{width:100%;height:auto;overflow:visible;}
.b24-hub__line{stroke:var(--b24-blue3);stroke-width:1.5;opacity:.35;stroke-dasharray:5 6;animation:b24dash 22s linear infinite;}
@keyframes b24dash{to{stroke-dashoffset:-110;}}
.b24-hub__node circle{fill:#fff;stroke:var(--b24-blue2);stroke-width:2.5;transition:.2s;transform-box:fill-box;transform-origin:center;}
.b24-hub__node{animation:b24pop .5s both;}
.b24-hub__node:hover circle{r:10;fill:var(--b24-blue2);stroke:var(--b24-blue);filter:drop-shadow(0 4px 8px rgba(23,101,229,.5));}
@keyframes b24pop{from{opacity:0;transform:scale(.4);}to{opacity:1;transform:scale(1);}}
.b24-hub__core{fill:url(#b24g);fill:var(--b24-blue);}
.b24-hub__core-ring{fill:none;stroke:var(--b24-blue3);stroke-width:1.5;opacity:.4;animation:b24pulse 3s ease-in-out infinite;transform-box:fill-box;transform-origin:center;}
@keyframes b24pulse{0%,100%{opacity:.4;transform:scale(1);}50%{opacity:.12;transform:scale(1.12);}}
.b24-hub__core-t1,.b24-hub__core-t2{fill:#fff;font-weight:800;font-size:15px;}
.b24-hub__cap{display:block;text-align:center;margin-top:10px;font-size:13px;font-weight:700;color:var(--b24-blue);letter-spacing:.02em;}

/* Награды и рейтинги */
.b24-awards{padding:48px 0;text-align:center;}
.b24-eyebrow--center{margin-left:auto;margin-right:auto;}
.b24-awards .b24-lead-center a{color:var(--b24-blue);font-weight:700;}
.b24-awards__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:24px;}
.b24-awards__grid a{display:block;border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--b24-line);box-shadow:0 8px 24px rgba(15,32,51,.1);transition:.2s;}
.b24-awards__grid a:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,32,51,.17);}
.b24-awards__grid img{display:block;height:110px;width:auto;max-width:100%;}
@media(max-width:560px){.b24-awards__grid img{height:88px;}}

/* Поток процессов */
.b24-flow{padding:56px 0;background:var(--b24-bg);}
.b24-flow__chain{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin:6px 0 22px;}
.b24-flow__step{background:#fff;border:1px solid var(--b24-line);border-radius:12px;padding:13px 20px;font-weight:700;font-size:15px;box-shadow:0 4px 12px rgba(15,32,51,.05);}
.b24-flow__arr{color:var(--b24-blue2);font-size:22px;font-weight:800;}
.b24-flow__note{text-align:center;color:var(--b24-mut);max-width:780px;margin:0 auto;font-size:15px;line-height:1.6;}
.b24-flow__note b{color:var(--b24-ink);}

/* Витрина плиток */
.b24-directions{padding:60px 0;}
.b24-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-bottom:30px;}
.b24-chip{border:1.5px solid var(--b24-line);background:#fff;color:var(--b24-mut);border-radius:100px;padding:9px 18px;font-size:14px;font-weight:700;cursor:pointer;transition:.18s;}
.b24-chip:hover{border-color:var(--b24-blue2);color:var(--b24-blue);}
.b24-chip.is-active{background:var(--b24-grad);border-color:transparent;color:#fff;box-shadow:0 6px 16px rgba(23,101,229,.28);}
.b24-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.b24-tile{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--b24-line);border-radius:16px;padding:22px 20px 20px;text-decoration:none;color:var(--b24-ink);transition:.2s;overflow:hidden;}
.b24-tile::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--b24-grad);opacity:0;transition:.2s;}
.b24-tile:hover{transform:translateY(-4px);border-color:transparent;box-shadow:0 16px 34px rgba(15,32,51,.12);}
.b24-tile:hover::before{opacity:1;}
.b24-tile__num{font-size:13px;font-weight:800;color:var(--b24-blue2);letter-spacing:.05em;margin-bottom:10px;}
.b24-tile__title{font-size:18px;font-weight:800;line-height:1.2;margin-bottom:7px;}
.b24-tile__text{font-size:14px;line-height:1.5;color:var(--b24-mut);flex:1;margin-bottom:14px;}
.b24-tile__more{font-size:14px;font-weight:700;color:var(--b24-blue);}
.b24-tile:hover .b24-tile__more{color:var(--b24-blue2);}

/* Артефакты */
.b24-artifacts{padding:60px 0;background:var(--b24-bg);}
.b24-artifacts__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.b24-artifact{background:#fff;border:1px solid var(--b24-line);border-radius:16px;padding:24px 22px;}
.b24-artifact__n{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:var(--b24-grad);color:#fff;font-weight:800;font-size:17px;margin-bottom:14px;}
.b24-artifact__title{font-size:17px;font-weight:800;line-height:1.25;margin:0 0 8px;}
.b24-artifact__text{font-size:14px;line-height:1.55;color:var(--b24-mut);margin:0;}
.b24-samples__cap{text-align:center;margin:38px 0 16px;font-size:14px;font-weight:600;color:var(--b24-mut);}
.b24-samples__cap b{color:var(--b24-ink);}
.b24-samples__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.b24-sample{display:block;background:#fff;border:1px solid var(--b24-line);border-radius:14px;overflow:hidden;text-decoration:none;transition:.2s;box-shadow:0 6px 18px rgba(15,32,51,.06);}
.b24-sample:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,32,51,.14);border-color:var(--b24-blue3);}
.b24-sample__img{display:block;height:200px;overflow:hidden;background:#fbfcfe;border-bottom:1px solid var(--b24-line);}
.b24-sample__img img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:.3s;}
.b24-sample:hover .b24-sample__img img{transform:scale(1.04);}
.b24-sample__t{display:block;padding:14px 16px;font-size:14.5px;font-weight:700;color:var(--b24-ink);}
.b24-sample__t::after{content:" ↗";color:var(--b24-blue2);font-weight:400;}
@media(max-width:760px){.b24-samples__grid{grid-template-columns:1fr;}.b24-sample__img{height:auto;}}

/* Шаги (тёмная секция) */
.b24-steps{padding:60px 0;background:linear-gradient(160deg,#0f2033 0%,#14315a 100%);}
.b24-steps__list{display:grid;gap:16px;max-width:900px;margin:0 auto;}
.b24-step{display:flex;gap:18px;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px 22px;}
.b24-step__n{flex:0 0 auto;width:40px;height:40px;border-radius:11px;background:var(--b24-grad);color:#fff;font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;}
.b24-step__title{color:#fff;font-size:18px;font-weight:800;margin:0 0 5px;}
.b24-step__text{color:#b7c6d8;font-size:14.5px;line-height:1.55;margin:0;}

/* FAQ */
.b24-faq{padding:60px 0;}
.b24-faq__list{max-width:860px;margin:0 auto;display:grid;gap:12px;}
.b24-faq__item{background:#fff;border:1px solid var(--b24-line);border-radius:13px;padding:4px 22px;transition:.2s;}
.b24-faq__item[open]{border-color:var(--b24-blue2);box-shadow:0 8px 22px rgba(23,101,229,.1);}
.b24-faq__item summary{cursor:pointer;font-weight:700;font-size:16px;padding:16px 0;list-style:none;position:relative;padding-right:34px;}
.b24-faq__item summary::-webkit-details-marker{display:none;}
.b24-faq__item summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:400;color:var(--b24-blue2);transition:.2s;}
.b24-faq__item[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.b24-faq__a{padding:0 0 18px;color:var(--b24-mut);font-size:15px;line-height:1.62;}

/* Адаптив */
@media(max-width:900px){
	.b24-hero__grid{grid-template-columns:1fr;gap:30px;}
	.b24-hero__viz{order:-1;}
	.b24-hub{max-width:340px;}
	.b24-tiles,.b24-artifacts__grid{grid-template-columns:repeat(2,1fr);}
	.b24-proof__inner{flex-direction:column;text-align:center;}
	.b24-proof__chips{justify-content:center;}
	.b24-proof__text{margin-left:auto;margin-right:auto;}
}
@media(max-width:560px){
	.b24-tiles,.b24-artifacts__grid{grid-template-columns:1fr;}
	.b24-flow__step{padding:10px 14px;font-size:14px;}
	.b24-flow__arr{transform:rotate(90deg);}
}
