
/* --- PROCESS v5 — таймлайн-этапы + инлайн-ссылки на превью --- */
.seo-steps{position:relative;margin-top:44px;display:flex;flex-direction:column;gap:16px;}
.seo-step{position:relative;display:grid;grid-template-columns:56px 1fr;gap:24px;}
.seo-step__spine{position:relative;display:flex;justify-content:center;}
.seo-step__num{position:relative;z-index:1;width:52px;height:52px;border-radius:50%;background:var(--bg-3);color:var(--text-3);font-family:var(--font-mono);font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px rgba(14,24,34,.03);}
.seo-step__line{position:absolute;left:50%;top:56px;bottom:-30px;width:2px;transform:translateX(-50%);background:rgba(14,24,34,.07);}
.seo-step:last-child .seo-step__line{display:none;}
.seo-step__body{background:var(--bg-1);border:1px solid var(--line);border-radius:18px;padding:26px 30px;box-shadow:0 1px 2px rgba(20,34,52,.04);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.seo-step__body:hover{transform:translateY(-2px);border-color:rgba(10,138,85,.28);box-shadow:0 22px 48px -26px rgba(20,34,52,.3);}
.seo-step__head{margin-bottom:18px;}
.seo-step__phase{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--neon);font-weight:600;background:var(--neon-dim);border:1px solid rgba(10,138,85,.18);border-radius:100px;padding:5px 12px;margin-bottom:11px;}
.seo-step__title{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1.25;color:var(--text-0);letter-spacing:-.02em;margin:0;}
.seo-step__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:11px 30px;}
.seo-step__list li{position:relative;padding-left:27px;font-size:13.5px;line-height:1.5;color:var(--text-1);}
.seo-step__list li::before{content:'✓';position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:50%;background:rgba(10,138,85,.12);color:var(--neon);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;}
/* инлайн-ссылка на превью */
.seo-ilink{display:inline;color:var(--neon);font-weight:600;text-decoration:none;border-bottom:1.5px dashed rgba(10,138,85,.45);cursor:pointer;padding-bottom:1px;transition:color .18s ease,border-color .18s ease,background .18s ease;border-radius:2px;}
.seo-ilink:hover{color:var(--neon-bright);border-bottom-color:var(--neon-bright);background:rgba(10,138,85,.07);}
.seo-ilink__ic{display:inline-flex;vertical-align:-2px;margin-right:3px;width:13px;height:13px;}
.seo-ilink__ic svg{width:13px;height:13px;}
.seo-step--accent .seo-step__body{background:linear-gradient(180deg,var(--neon-dim),rgba(10,138,85,.03));border-color:rgba(10,138,85,.22);}
/* «бегущая» подсветка при скролле */
.seo-step__num{transition:background .55s ease,color .55s ease,box-shadow .55s ease,transform .55s ease;}
.seo-step__line{transition:background .6s ease;}
.seo-step.is-lit .seo-step__num{background:linear-gradient(150deg,var(--neon-bright),var(--neon));color:#fff;animation:seoNumGlow .8s ease both;box-shadow:0 10px 24px -6px var(--neon),0 0 0 6px rgba(10,138,85,.14),0 0 30px 2px var(--neon-glow);}
.seo-step.is-lit .seo-step__line{background:linear-gradient(rgba(10,138,85,.55),rgba(10,138,85,.12));}
@keyframes seoNumGlow{0%{transform:scale(1);}45%{transform:scale(1.14);box-shadow:0 12px 30px -4px var(--neon),0 0 0 9px rgba(10,138,85,.16),0 0 40px 6px var(--neon-glow);}100%{transform:scale(1);box-shadow:0 10px 24px -6px var(--neon),0 0 0 6px rgba(10,138,85,.14),0 0 30px 2px var(--neon-glow);}}
@media (prefers-reduced-motion:reduce){.seo-step.is-lit .seo-step__num{animation:none;}}
/* popup */
.seo-lb{position:fixed;inset:0;z-index:10001;display:flex;align-items:center;justify-content:center;padding:24px;}
.seo-lb[hidden]{display:none;}
.seo-lb__backdrop{position:absolute;inset:0;background:rgba(8,16,24,.72);backdrop-filter:blur(3px);animation:seoLbFade .2s ease;}
.seo-lb__fig{position:relative;z-index:1;margin:0;max-width:920px;width:100%;background:var(--bg-1);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 40px 100px -30px rgba(0,0,0,.6);animation:seoLbPop .24s ease;}
.seo-lb__img{width:100%;min-height:180px;max-height:78vh;background:#eef2f6;background-image:repeating-linear-gradient(45deg,rgba(14,24,34,.05) 0,rgba(14,24,34,.05) 1px,transparent 1px,transparent 13px);display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;box-sizing:border-box;overflow:auto;}
.seo-lb__img img{max-width:100%;max-height:74vh;width:auto;height:auto;object-fit:contain;display:block;border-radius:6px;}
.seo-lb__img--multi{background:#fff;background-image:none;align-items:flex-start;}
.seo-lb__mfig{flex:1 1 0;min-width:0;margin:0;display:flex;flex-direction:column;align-items:center;gap:8px;}
.seo-lb__mfig img{max-width:100%;max-height:62vh;border:1px solid rgba(14,24,34,.1);border-radius:6px;}
.seo-lb__mfig figcaption{font-family:var(--font-display,inherit);font-size:15px;font-weight:700;color:var(--text-0,#0e1822);}
.seo-lb__img span{font-family:var(--font-mono);font-size:13px;color:var(--text-3);text-align:center;padding:0 20px;line-height:1.5;}
.seo-lb__cap{padding:20px 24px;border-top:1px solid var(--line);}
.seo-lb__phase{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--neon);font-weight:600;display:block;margin-bottom:7px;}
.seo-lb__title{font-family:var(--font-display);font-size:19px;font-weight:700;color:var(--text-0);letter-spacing:-.02em;line-height:1.25;margin:0;}
.seo-lb__desc{font-size:14px;color:var(--text-2);line-height:1.55;margin:10px 0 0;}
.seo-lb__desc[hidden]{display:none;}
.seo-lb__close{position:absolute;top:12px;right:12px;z-index:2;width:38px;height:38px;border-radius:50%;border:none;background:rgba(255,255,255,.92);color:var(--text-0);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;}
.seo-lb__close:hover{background:#fff;}
@keyframes seoLbFade{from{opacity:0}to{opacity:1}}
@keyframes seoLbPop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media (max-width:760px){.seo-step{grid-template-columns:42px 1fr;gap:14px;}.seo-step__num{width:42px;height:42px;font-size:15px;}.seo-step__line{top:42px;}.seo-step__body{padding:20px 20px;}.seo-step__title{font-size:18px;}.seo-step__list{grid-template-columns:1fr;}}
