/* «Кейсы: ситуации, не таблицы» — истории с таймлайном */
.cs-sec{padding:clamp(3.5rem,8vw,6rem) 0;background:var(--bg-soft,#f8fafc)}
.cs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem}
.cs{position:relative;background:#fff;border:1px solid var(--border,#e2e8f0);border-radius:24px;padding:1.5rem 1.5rem 1.4rem;box-shadow:0 10px 30px rgba(15,23,42,.05);overflow:hidden;opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.9,.2,1),box-shadow .3s,border-color .3s}
.cs.is-in{opacity:1;transform:none}
.cs:hover{box-shadow:0 22px 50px rgba(26,86,219,.12);border-color:rgba(26,86,219,.3)}
.cs__head{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.9rem}
.cs__place{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:var(--text,#0f172a);background:var(--bg-soft,#f1f5f9);border:1px solid var(--border,#e2e8f0);border-radius:999px;padding:.3rem .75rem}
.cs__place::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--primary,#1a56db)}
.cs__tag{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#dc2626;background:rgba(255,59,89,.09);border-radius:999px;padding:.3rem .7rem}
.cs h3{font-size:1.28rem;line-height:1.25;margin:0 0 1.2rem;color:var(--text,#0f172a)}
.cs__steps{position:relative;display:grid;gap:1rem;padding-left:2.2rem}
.cs__steps::before{content:"";position:absolute;left:11px;top:6px;bottom:20px;width:2px;background:linear-gradient(#ef4444,#1a56db,#16a34a);transform-origin:top;transform:scaleY(0);transition:transform 1.4s cubic-bezier(.2,.8,.2,1) .35s;border-radius:2px}
.cs.is-in .cs__steps::before{transform:scaleY(1)}
.cs__step{position:relative}
.cs__step::before{content:"";position:absolute;left:-2.2rem;top:.05rem;width:24px;height:24px;border-radius:50%;background:var(--c);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 18%,#fff);transform:scale(0);transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.cs.is-in .cs__step::before{transform:scale(1)}
.cs.is-in .cs__step:nth-child(1)::before{transition-delay:.35s}.cs.is-in .cs__step:nth-child(2)::before{transition-delay:.85s}.cs.is-in .cs__step:nth-child(3)::before{transition-delay:1.35s}
.cs__step::after{position:absolute;left:-2.2rem;top:.05rem;width:24px;height:24px;display:grid;place-items:center;color:#fff;font-size:.72rem;font-weight:800;content:attr(data-n)}
.cs__step--1{--c:#ef4444}.cs__step--2{--c:#1a56db}.cs__step--3{--c:#16a34a}
.cs__lbl{display:block;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--c);margin-bottom:.2rem}
.cs__step p{margin:0;font-size:.92rem;line-height:1.55;color:var(--text-secondary,#475569)}
.cs__step--3 p{color:var(--text,#0f172a);font-weight:500}
.cs-cta{display:flex;flex-direction:column;justify-content:center;gap:.8rem;background:linear-gradient(135deg,#1a56db,#3b7bff);color:#fff;border:0;opacity:0;transform:translateY(34px)}
.cs-cta.is-in{opacity:1;transform:none}
.cs-cta h3{color:#fff;font-size:1.5rem;margin:0}
.cs-cta p{margin:0;color:#dbe7ff;font-size:.98rem;line-height:1.55}
.cs-cta .btn{align-self:flex-start;background:#fff;color:var(--primary,#1a56db);border-color:#fff}
.cs-cta::after{content:"";position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.28),transparent 65%);animation:csGlow 4s ease-in-out infinite}
@keyframes csGlow{50%{transform:scale(1.25);opacity:.6}}
@media (max-width:900px){.cs-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.cs,.cs-cta{opacity:1;transform:none;transition:none}.cs__steps::before{transform:none;transition:none}.cs__step::before{transform:none;transition:none}.cs-cta::after{animation:none}}
