/* Страницы услуг: у каждой свой фон первого экрана и своя анимированная сцена по теме услуги.
   Только transform/opacity, без библиотек; при prefers-reduced-motion — статичная картинка. */

/* ---------- Фоны: своя палитра + тематический узор ---------- */
.service-promo.sbg { background-image: var(--sbg-grad) !important; background-size: cover; }
.service-promo.sbg::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background-image: var(--sbg-pat); background-size: var(--sbg-size, 180px auto);
  -webkit-mask-image: linear-gradient(90deg, transparent 22%, #000 70%); mask-image: linear-gradient(90deg, transparent 22%, #000 70%); opacity: .9; }
.service-promo.sbg::before { background: radial-gradient(circle, var(--sbg-glow) 0%, transparent 70%); }

/* ---------- Сцена ---------- */
.sart { position: absolute; z-index: 1; top: 112px; right: max(4vw, calc((100vw - 1320px) / 2)); width: 440px; height: 420px; pointer-events: none; color: #fff; font-family: inherit; transform: scale(.9); transform-origin: top right; }
.sart * { box-sizing: border-box; }
.sart__card { position: absolute; border-radius: 22px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); box-shadow: 0 30px 80px rgba(0,0,0,.35); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); overflow: hidden; }
.sart__bar { display: flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 13px; color: rgba(255,255,255,.6); }
.sart__bar i { width: 9px; height: 9px; border-radius: 50%; background: rgba(255,255,255,.25); }
.sart__bar span { margin-left: 8px; }
.sart__ln { display: block; height: 9px; width: var(--w, 80%); margin: 0 0 12px var(--x, 0); border-radius: 5px; background: var(--c, rgba(255,255,255,.22)); transform-origin: left center; }
.sart__chip { position: absolute; display: inline-flex; align-items: center; gap: 8px; padding: 11px 16px; border-radius: 16px; background: #fff; color: #1C1C1C; font-size: 15px; line-height: 20px; white-space: nowrap; box-shadow: 0 18px 44px rgba(0,0,0,.28); }
.sart__chip b { font-weight: 700; color: var(--ac, #6E50E0); }
.sart__chip--dark { background: #1C1C2E; color: #fff; }
.sart__dot { width: 9px; height: 9px; border-radius: 50%; background: #2BD47D; box-shadow: 0 0 0 4px rgba(43,212,125,.18); }
.sart__cursor { position: absolute; width: 26px; height: 26px; fill: #fff; stroke: #1C1C1C; stroke-width: 1.2; filter: drop-shadow(0 4px 8px rgba(0,0,0,.35)); }
.sart-phone { width: 210px; height: 380px; border-radius: 34px; padding: 18px 14px; background: rgba(12,10,30,.6); border: 1px solid rgba(255,255,255,.22); }

/* dev */
.sart--dev { --ac: #0CAEB8; }
.sart-dev__win { left: 0; top: 30px; width: 360px; height: 270px; }
.sart-dev__code { padding: 22px 22px 0; }
.sart-dev__score { right: 0; bottom: 40px; display: flex; align-items: center; gap: 12px; padding: 14px 18px 14px 14px; }
.sart-dev__score svg { width: 64px; height: 64px; transform: rotate(-90deg); }
.sart-ring__bg, .sart-ring__fg { fill: none; stroke-width: 6; }
.sart-ring__bg { stroke: rgba(255,255,255,.12); }
.sart-ring__fg { stroke: #5BF5A0; stroke-linecap: round; stroke-dasharray: 163.4; stroke-dashoffset: 3.3; }
.sart-dev__score b { display: block; font-size: 30px; line-height: 32px; font-weight: 700; }
.sart-dev__score small { font-size: 13px; color: rgba(255,255,255,.65); }
.sart-dev__chip { left: 40px; bottom: 0; }

/* copy */
.sart--copy { --ac: #E08A00; }
.sart-copy__doc { left: 20px; top: 20px; width: 330px; height: 330px; padding: 30px 28px; background: rgba(255,255,255,.1); }
.sart__ln--title { height: 16px; margin-bottom: 22px; background: #FFB948; }
.sart__ln--gap { margin-top: 22px; }
.sart-copy__caret { position: absolute; left: 28px; bottom: 60px; width: 2px; height: 18px; background: #FFB948; transform: translateX(124px); }
.sart-copy__pen { position: absolute; right: 50px; top: 0; width: 64px; height: 64px; fill: none; stroke: #FFB948; stroke-width: 1.5; stroke-linejoin: round; }
.sart-copy__chip1 { right: 0; top: 150px; }
.sart-copy__chip2 { left: 0; bottom: 20px; }

/* design */
.sart--design { --ac: #D63BB5; }
.sart-design__board { left: 0; top: 24px; width: 360px; height: 300px; padding: 18px; }
.sart-design__nav { display: flex; gap: 8px; margin-bottom: 18px; }
.sart-design__nav i { height: 8px; width: 40px; border-radius: 4px; background: rgba(255,255,255,.22); }
.sart-design__nav i:first-child { width: 24px; background: #FF6FD8; }
.sart-design__hero { height: 112px; border-radius: 14px; padding: 18px; margin-bottom: 14px; background: linear-gradient(120deg, rgba(255,111,216,.45), rgba(146,113,247,.45)); }
.sart-design__hero i { display: block; height: 12px; width: 70%; border-radius: 6px; background: rgba(255,255,255,.75); margin-bottom: 10px; }
.sart-design__hero i + i { width: 46%; height: 8px; background: rgba(255,255,255,.45); }
.sart-design__hero span { display: block; width: 74px; height: 22px; border-radius: 11px; background: #fff; margin-top: 16px; }
.sart-design__cols { display: flex; gap: 10px; }
.sart-design__cols i { flex: 1; height: 80px; border-radius: 12px; background: rgba(255,255,255,.12); }
.sart-design__sel { position: absolute; left: 18px; top: 44px; width: 324px; height: 112px; border: 1.5px solid #FF6FD8; border-radius: 4px; }
.sart-design__sel b { position: absolute; width: 8px; height: 8px; background: #fff; border: 1.5px solid #FF6FD8; }
.sart-design__sel b:nth-child(1) { left: -5px; top: -5px; } .sart-design__sel b:nth-child(2) { right: -5px; top: -5px; } .sart-design__sel b:nth-child(3) { left: -5px; bottom: -5px; } .sart-design__sel b:nth-child(4) { right: -5px; bottom: -5px; }
.sart-design__board .sart__cursor { left: 300px; top: 140px; }
.sart-design__swatch { right: 0; top: 0; display: flex; gap: 8px; padding: 12px; }
.sart-design__swatch i { width: 26px; height: 26px; border-radius: 50%; background: #FF6FD8; }
.sart-design__swatch i:nth-child(2) { background: #9271F7; } .sart-design__swatch i:nth-child(3) { background: #0CAEB8; } .sart-design__swatch i:nth-child(4) { background: #fff; }
.sart-design__chip { right: 10px; bottom: 30px; }

/* ads */
.sart--ads { --ac: #E08A00; }
.sart-ads__serp { left: 0; top: 20px; width: 370px; height: 320px; padding: 16px; }
.sart-ads__search { display: flex; align-items: center; gap: 10px; height: 46px; padding: 0 14px; border-radius: 14px; background: #fff; color: #1C1C1C; font-size: 15px; margin-bottom: 14px; }
.sart-ads__search svg { flex: 0 0 18px; height: 18px; fill: none; stroke: #8D8D8D; stroke-width: 2; }
.sart-ads__search span { white-space: nowrap; overflow: hidden; }
.sart-ads__res { position: relative; padding: 12px 14px; border-radius: 14px; margin-bottom: 10px; background: rgba(255,255,255,.06); }
.sart-ads__res i { display: block; height: 7px; width: 80%; border-radius: 4px; background: rgba(255,255,255,.18); margin-top: 8px; }
.sart-ads__res .sart-ads__t { height: 10px; width: 62%; margin-top: 0; background: rgba(255,255,255,.45); }
.sart-ads__res .sart-ads__u { width: 36%; background: rgba(91,245,160,.45); }
.sart-ads__res.is-ad { background: rgba(255,185,72,.14); box-shadow: inset 0 0 0 1.5px rgba(255,185,72,.7); }
.sart-ads__res.is-ad .sart-ads__t { background: #FFB948; padding-left: 0; }
.sart-ads__res em { position: absolute; right: 12px; top: 10px; font-style: normal; font-size: 11px; line-height: 14px; padding: 2px 6px; border-radius: 5px; background: #FFB948; color: #1C1C1C; }
.sart-ads__serp .sart__cursor { left: 200px; top: 96px; }
.sart-ads__ripple { position: absolute; left: 198px; top: 94px; width: 30px; height: 30px; margin: -15px 0 0 -15px; border-radius: 50%; border: 2px solid #FFB948; opacity: 0; }
.sart-ads__bars { right: 0; bottom: 30px; width: 150px; height: 120px; display: flex; align-items: flex-end; gap: 8px; padding: 16px; }
.sart-ads__bars i { flex: 1; height: var(--h); border-radius: 5px 5px 2px 2px; background: linear-gradient(180deg, #FFB948, rgba(255,185,72,.35)); transform-origin: bottom; }
.sart-ads__chip { left: 30px; bottom: 0; }

/* smm */
.sart--smm { --ac: #E5336B; }
.sart-smm__phone { left: 70px; top: 10px; }
.sart-smm__head { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
.sart-smm__head span { width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, #FF5C8A, #FFB948); }
.sart-smm__head i { height: 8px; width: 80px; border-radius: 4px; background: rgba(255,255,255,.3); }
.sart-smm__img { height: 180px; border-radius: 16px; margin-bottom: 12px; background: linear-gradient(135deg, #FF5C8A 0%, #9271F7 60%, #0CAEB8 100%); }
.sart-smm__act { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.sart-smm__act svg { width: 24px; height: 24px; fill: #FF5C8A; }
.sart-smm__act i { width: 20px; height: 20px; border-radius: 6px; border: 2px solid rgba(255,255,255,.5); }
.sart-smm__hearts { position: absolute; left: 92px; top: 250px; width: 60px; height: 10px; }
.sart-smm__hearts svg { position: absolute; left: calc(var(--i) * 9px); top: 0; width: 22px; height: 22px; fill: #FF5C8A; opacity: 0; }
.sart-smm__chip1 { right: 0; top: 90px; }
.sart-smm__chip2 { right: 30px; top: 250px; border-bottom-left-radius: 4px; }

/* aso */
.sart--aso { --ac: #13A86B; }
.sart-aso__phone { left: 40px; top: 10px; }
.sart-aso__app { display: flex; gap: 12px; align-items: center; margin: 6px 0 16px; }
.sart-aso__icon { flex: 0 0 64px; height: 64px; border-radius: 18px; background: linear-gradient(135deg, #5BF5A0, #0CAEB8 55%, #9271F7); box-shadow: 0 10px 24px rgba(12,174,184,.4); }
.sart-aso__app div { flex: 1; }
.sart-aso__app i { display: block; height: 10px; width: 90%; border-radius: 5px; background: rgba(255,255,255,.55); margin-bottom: 8px; }
.sart-aso__app i + i { width: 60%; height: 7px; background: rgba(255,255,255,.25); }
.sart-aso__stars { display: flex; align-items: center; gap: 3px; margin-bottom: 14px; }
.sart-aso__stars svg, .sart-mail__stars svg { width: 18px; height: 18px; fill: #FFB948; }
.sart-aso__stars b { margin-left: 8px; font-size: 15px; }
.sart-aso__btn { display: block; text-align: center; height: 38px; line-height: 38px; border-radius: 12px; background: #2BD47D; color: #0B2B1C; font-size: 15px; font-weight: 500; margin-bottom: 16px; }
.sart-aso__shots { display: flex; gap: 8px; }
.sart-aso__shots i { flex: 1; height: 150px; border-radius: 12px; background: rgba(255,255,255,.1); }
.sart-aso__shots i:nth-child(2) { background: rgba(91,245,160,.18); }
.sart-aso__rank { right: 0; top: 70px; padding: 16px 20px; }
.sart-aso__rank small { display: block; font-size: 13px; color: rgba(255,255,255,.65); margin-bottom: 4px; }
.sart-aso__roll { height: 44px; overflow: hidden; font-size: 38px; line-height: 44px; font-weight: 700; color: #5BF5A0; }
.sart-aso__roll span { display: block; }
.sart-aso__roll span:last-child { color: #5BF5A0; }
.sart-aso__chip { right: 20px; bottom: 50px; }

/* mail + serm */
.sart--mail { --ac: #2F79D4; }
.sart-mail__inbox { left: 0; top: 30px; width: 330px; padding: 14px; }
.sart-mail__row { display: flex; gap: 12px; align-items: center; padding: 12px; border-radius: 14px; }
.sart-mail__row span { flex: 0 0 34px; height: 34px; border-radius: 50%; background: rgba(255,255,255,.18); }
.sart-mail__row div { flex: 1; }
.sart-mail__row i { display: block; height: 8px; width: 70%; border-radius: 4px; background: rgba(255,255,255,.35); margin-bottom: 7px; }
.sart-mail__row i + i { width: 90%; height: 6px; background: rgba(255,255,255,.16); margin: 0; }
.sart-mail__row.is-new { background: rgba(74,167,247,.18); box-shadow: inset 0 0 0 1.5px rgba(74,167,247,.6); }
.sart-mail__row.is-new span { background: linear-gradient(135deg, #4AA7F7, #9271F7); }
.sart-mail__env { position: absolute; left: 230px; top: 0; width: 56px; height: 56px; fill: rgba(74,167,247,.25); stroke: #fff; stroke-width: 1.4; stroke-linejoin: round; }
.sart-mail__review { right: 0; bottom: 40px; width: 230px; display: flex; gap: 12px; padding: 16px; }
.sart-mail__review > span { flex: 0 0 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, #FFB948, #FF5C8A); }
.sart-mail__review div { flex: 1; }
.sart-mail__stars { display: flex; gap: 2px; margin-bottom: 8px; }
.sart-mail__review i { display: block; height: 7px; width: 90%; border-radius: 4px; background: rgba(255,255,255,.3); margin-bottom: 6px; }
.sart-mail__review i + i { width: 60%; }
.sart-mail__chip1 { right: 10px; top: 40px; }
.sart-mail__chip2 { left: 20px; bottom: 0; }

/* landing + quiz */
.sart--land { --ac: #6E50E0; }
.sart-land__page { left: 0; top: 10px; width: 330px; height: 300px; padding: 18px; }
.sart-land__h { display: block; height: 16px; width: 80%; border-radius: 8px; background: rgba(255,255,255,.7); margin: 12px 0 10px; }
.sart-land__h--2 { width: 55%; height: 10px; background: rgba(255,255,255,.35); margin-top: 0; }
.sart-land__btn { display: block; width: 110px; height: 32px; border-radius: 10px; margin: 18px 0 22px; background: linear-gradient(118.75deg, #9271F7, #6E50E0); }
.sart-land__page .sart-design__cols i { height: 70px; }
.sart-land__quiz { right: 0; top: 150px; width: 230px; padding: 16px; background: rgba(20,16,50,.75); }
.sart-land__quiz small { display: block; font-size: 13px; color: rgba(255,255,255,.65); margin-bottom: 8px; }
.sart-land__prog { height: 5px; border-radius: 3px; background: rgba(255,255,255,.14); margin-bottom: 14px; overflow: hidden; }
.sart-land__prog i { display: block; height: 100%; width: 66%; background: linear-gradient(90deg, #9271F7, #0CAEB8); border-radius: 3px; transform-origin: left; }
.sart-land__opt { display: block; padding: 9px 12px; border-radius: 10px; margin-bottom: 8px; font-size: 14px; line-height: 18px; background: rgba(255,255,255,.08); }
.sart-land__opt:nth-child(4) { background: #7B5CEB; }
.sart-land__toast { left: 30px; bottom: 30px; }

/* marketplace */
.sart--market { --ac: #F27B35; }
.sart-market__catalog { left: 0; top: 30px; width: 360px; height: 285px; padding: 18px; }
.sart-market__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; font-size: 14px; font-weight: 600; }
.sart-market__head i { width: 78px; height: 24px; border-radius: 12px; background: rgba(255,185,72,.25); }
.sart-market__grid { display: flex; gap: 10px; }
.sart-market__product { flex: 1; min-width: 0; padding: 8px; border-radius: 14px; background: rgba(255,255,255,.07); border: 1px solid transparent; }
.sart-market__product > span { display: block; height: 96px; margin-bottom: 10px; border-radius: 10px; background: linear-gradient(145deg, rgba(255,185,72,.34), rgba(242,123,53,.12)); }
.sart-market__product:nth-child(2) > span { background: linear-gradient(145deg, rgba(255,124,91,.45), rgba(146,113,247,.16)); }
.sart-market__product:nth-child(3) > span { background: linear-gradient(145deg, rgba(255,220,110,.35), rgba(12,174,184,.14)); }
.sart-market__product i { display: block; width: 86%; height: 6px; margin-bottom: 6px; border-radius: 3px; background: rgba(255,255,255,.3); }
.sart-market__product i + i { width: 58%; background: rgba(255,255,255,.16); }
.sart-market__product b { display: block; margin-top: 10px; color: #FFD36C; font-size: 14px; }
.sart-market__product.is-active { border-color: rgba(255,185,72,.8); box-shadow: 0 0 30px rgba(255,139,66,.22); }
.sart-market__stats { right: 0; bottom: 42px; width: 190px; height: 132px; padding: 16px; background: rgba(35,15,22,.76); }
.sart-market__stats small { display: block; color: rgba(255,255,255,.66); font-size: 12px; }
.sart-market__stats > b { display: block; margin: 3px 0 8px; color: #FFD36C; font-size: 25px; line-height: 28px; }
.sart-market__stats > div { display: flex; align-items: flex-end; gap: 5px; height: 46px; }
.sart-market__stats i { flex: 1; height: var(--h); border-radius: 4px 4px 1px 1px; background: linear-gradient(180deg, #FFD36C, #F27B35); transform-origin: bottom; }
.sart-market__chip { left: 22px; bottom: 0; }

/* telegram bot */
.sart--bot { --ac: #229ED9; }
.sart-bot__phone { left: 78px; top: 10px; padding: 16px 12px; background: rgba(4,19,34,.78); }
.sart-bot__head { display: flex; align-items: center; gap: 10px; padding-bottom: 12px; border-bottom: 1px solid rgba(255,255,255,.1); }
.sart-bot__head > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(145deg, #42C7FF, #168BC7); }
.sart-bot__head svg { width: 23px; height: 23px; fill: #fff; }
.sart-bot__head b, .sart-bot__head small { display: block; }
.sart-bot__head b { font-size: 13px; line-height: 16px; }
.sart-bot__head small { color: #61E6A8; font-size: 11px; line-height: 14px; }
.sart-bot__message { max-width: 88%; margin-top: 13px; padding: 9px 10px; border-radius: 12px 12px 12px 3px; background: rgba(255,255,255,.11); font-size: 11px; line-height: 15px; }
.sart-bot__message.is-out { margin-left: auto; border-radius: 12px 12px 3px 12px; background: rgba(42,171,238,.35); }
.sart-bot__actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.sart-bot__actions i { padding: 6px 8px; border-radius: 8px; background: rgba(42,171,238,.18); color: #7FDBFF; font-size: 10px; font-style: normal; }
.sart-bot__chip1 { right: 0; top: 88px; }
.sart-bot__chip2 { left: 0; bottom: 34px; }
.sart-bot__plane { position: absolute; right: 24px; bottom: 72px; width: 58px; height: 58px; fill: #42C7FF; filter: drop-shadow(0 12px 22px rgba(42,171,238,.4)); }

/* ---------- Анимации ---------- */
@media (prefers-reduced-motion: no-preference) {
  .sart__card, .sart__chip { animation: sartFloat 7s ease-in-out infinite; }
  .sart__chip { animation-duration: 6s; animation-delay: -2s; }
  @keyframes sartFloat { 50% { transform: translate3d(0, -8px, 0); } }

  .sart-dev__code .sart__ln, .sart-copy__doc .sart__ln, .sart-smm__phone .sart__ln { animation: sartType 7s cubic-bezier(.2,.8,.2,1) infinite; animation-delay: calc(var(--i) * .35s); transform: scaleX(0); }
  @keyframes sartType { 0% { transform: scaleX(0); } 12%, 82% { transform: scaleX(1); opacity: 1; } 92%, 100% { transform: scaleX(1); opacity: 0; } }
  .sart-ring__fg { animation: sartRing 7s ease-out infinite; }
  @keyframes sartRing { 0%, 10% { stroke-dashoffset: 163.4; } 45%, 100% { stroke-dashoffset: 3.3; } }

  .sart-copy__caret { animation: sartCaret .9s steps(1) infinite; }
  @keyframes sartCaret { 50% { opacity: 0; } }
  .sart-copy__pen { animation: sartPen 3.5s ease-in-out infinite; transform-origin: 20% 80%; }
  @keyframes sartPen { 50% { transform: translate3d(-10px, 8px, 0) rotate(-8deg); } }

  .sart-design__sel { animation: sartSel 8s cubic-bezier(.6,0,.2,1) infinite; }
  @keyframes sartSel {
    0%, 28% { left: 18px; top: 44px; width: 324px; height: 112px; }
    36%, 62% { left: 18px; top: 170px; width: 101px; height: 80px; }
    70%, 92% { left: 129px; top: 170px; width: 213px; height: 80px; }
    100% { left: 18px; top: 44px; width: 324px; height: 112px; } }
  .sart-design__board .sart__cursor { animation: sartCur 8s cubic-bezier(.6,0,.2,1) infinite; }
  @keyframes sartCur { 0%, 28% { transform: translate(0, 0); } 36%, 62% { transform: translate(-200px, 90px); } 70%, 92% { transform: translate(20px, 90px); } 100% { transform: translate(0, 0); } }
  .sart-design__swatch i { animation: sartPop 4s ease-in-out infinite; animation-delay: calc(var(--n, 0) * .2s); }
  .sart-design__swatch i:nth-child(2) { --n: 1; } .sart-design__swatch i:nth-child(3) { --n: 2; } .sart-design__swatch i:nth-child(4) { --n: 3; }
  @keyframes sartPop { 0%, 70%, 100% { transform: none; } 80% { transform: scale(1.2); } }

  .sart-ads__search span { animation: sartQuery 7s steps(22) infinite; }
  @keyframes sartQuery { 0% { max-width: 0; } 30%, 100% { max-width: 230px; } }
  .sart-ads__res.is-ad { animation: sartAd 7s ease infinite; }
  @keyframes sartAd { 0%, 38% { box-shadow: inset 0 0 0 1.5px rgba(255,185,72,.2); } 48%, 100% { box-shadow: inset 0 0 0 1.5px rgba(255,185,72,.8), 0 0 30px rgba(255,185,72,.25); } }
  .sart-ads__serp .sart__cursor { animation: sartAdCur 7s cubic-bezier(.6,0,.2,1) infinite; }
  @keyframes sartAdCur { 0%, 30% { transform: translate(120px, 160px); opacity: 0; } 34% { opacity: 1; } 50%, 58% { transform: translate(0, 0); } 62% { transform: translate(0, 0) scale(.85); } 66%, 92% { transform: translate(0, 0); opacity: 1; } 100% { transform: translate(0, 0); opacity: 0; } }
  .sart-ads__ripple { animation: sartRipple 7s ease-out infinite; }
  @keyframes sartRipple { 0%, 61% { opacity: 0; transform: scale(.4); } 63% { opacity: 1; } 78%, 100% { opacity: 0; transform: scale(2.4); } }
  .sart-ads__bars i { animation: sartBar 7s cubic-bezier(.2,.8,.2,1) infinite; }
  .sart-ads__bars i:nth-child(2) { animation-delay: .1s; } .sart-ads__bars i:nth-child(3) { animation-delay: .2s; } .sart-ads__bars i:nth-child(4) { animation-delay: .3s; } .sart-ads__bars i:nth-child(5) { animation-delay: .4s; }
  @keyframes sartBar { 0%, 55% { transform: scaleY(.15); } 75%, 100% { transform: scaleY(1); } }

  .sart-smm__hearts svg { animation: sartHeart 3.2s ease-out infinite; animation-delay: calc(var(--i) * .6s); }
  @keyframes sartHeart { 0% { opacity: 0; transform: translate(0, 0) scale(.6); } 15% { opacity: 1; } 100% { opacity: 0; transform: translate(calc((var(--i) - 2) * 14px), -150px) scale(1.15); } }
  .sart-smm__act svg { animation: sartBeat 1.6s ease-in-out infinite; }
  @keyframes sartBeat { 15% { transform: scale(1.25); } 30% { transform: none; } }

  .sart-aso__roll span { animation: sartRoll 8s cubic-bezier(.7,0,.2,1) infinite; }
  @keyframes sartRoll { 0%, 18% { transform: translateY(0); } 26%, 42% { transform: translateY(-44px); } 50%, 66% { transform: translateY(-88px); } 74%, 96% { transform: translateY(-132px); } 100% { transform: translateY(0); } }
  .sart-aso__stars svg { animation: sartStar 8s ease infinite; }
  .sart-aso__stars svg:nth-child(2), .sart-mail__stars svg:nth-child(2) { animation-delay: .15s; } .sart-aso__stars svg:nth-child(3), .sart-mail__stars svg:nth-child(3) { animation-delay: .3s; }
  .sart-aso__stars svg:nth-child(4), .sart-mail__stars svg:nth-child(4) { animation-delay: .45s; } .sart-aso__stars svg:nth-child(5), .sart-mail__stars svg:nth-child(5) { animation-delay: .6s; }
  @keyframes sartStar { 0%, 5% { opacity: .25; transform: scale(.7); } 14%, 100% { opacity: 1; transform: none; } }

  .sart-mail__env { animation: sartEnv 6s cubic-bezier(.5,0,.2,1) infinite; }
  @keyframes sartEnv { 0% { transform: translate(140px, -40px) rotate(12deg); opacity: 0; } 15% { opacity: 1; } 40% { transform: translate(-150px, 60px) rotate(-6deg) scale(.6); opacity: 1; } 48%, 100% { transform: translate(-150px, 60px) scale(.4); opacity: 0; } }
  .sart-mail__row.is-new { animation: sartNew 6s ease infinite; }
  @keyframes sartNew { 0%, 40% { background: rgba(255,255,255,.04); box-shadow: inset 0 0 0 1.5px rgba(74,167,247,0); } 50%, 100% { background: rgba(74,167,247,.18); box-shadow: inset 0 0 0 1.5px rgba(74,167,247,.6); } }
  .sart-mail__stars svg { animation: sartStar 6s ease infinite; animation-delay: 1s; }

  .sart-land__prog i { animation: sartProg 7s cubic-bezier(.2,.8,.2,1) infinite; }
  @keyframes sartProg { 0%, 10% { transform: scaleX(.5); } 30%, 60% { transform: scaleX(1); } 70%, 100% { transform: scaleX(1.5); } }
  .sart-land__opt:nth-child(4) { animation: sartOptOn 7s ease infinite; }
  @keyframes sartOptOn { 0%, 30% { background: rgba(255,255,255,.08); } 38%, 92% { background: #7B5CEB; } 100% { background: rgba(255,255,255,.08); } }
  .sart-land__toast { animation: sartToast 7s cubic-bezier(.2,.8,.2,1) infinite; }
  @keyframes sartToast { 0%, 50% { opacity: 0; transform: translate3d(0, 16px, 0) scale(.95); } 58%, 90% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translate3d(0, -8px, 0); } }

  .sart-market__product.is-active { animation: sartMarketCard 6s ease-in-out infinite; }
  @keyframes sartMarketCard { 0%, 20%, 100% { transform: translateY(0); box-shadow: 0 0 0 rgba(255,139,66,0); } 35%, 80% { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(255,139,66,.28); } }
  .sart-market__stats i { animation: sartMarketBar 6s cubic-bezier(.2,.8,.2,1) infinite; }
  .sart-market__stats i:nth-child(2) { animation-delay: .12s; } .sart-market__stats i:nth-child(3) { animation-delay: .24s; } .sart-market__stats i:nth-child(4) { animation-delay: .36s; } .sart-market__stats i:nth-child(5) { animation-delay: .48s; }
  @keyframes sartMarketBar { 0%, 18% { transform: scaleY(.18); } 45%, 100% { transform: scaleY(1); } }

  .sart-bot__message { animation: sartBotMessage 7s ease-in-out infinite; }
  .sart-bot__message:nth-child(3) { animation-delay: .45s; } .sart-bot__message:nth-child(4) { animation-delay: .9s; }
  @keyframes sartBotMessage { 0%, 8% { opacity: 0; transform: translateY(8px); } 18%, 88% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateY(-3px); } }
  .sart-bot__plane { animation: sartBotPlane 7s cubic-bezier(.2,.8,.2,1) infinite; }
  @keyframes sartBotPlane { 0%, 48% { opacity: 0; transform: translate(-60px, 50px) scale(.7); } 58%, 86% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translate(25px, -20px) scale(.85); } }
}

/* ---------- Адаптив ---------- */
@media (max-width: 1480px) { .sart { right: 20px; transform: scale(.86); } }
@media (max-width: 1250px) { .sart { transform: scale(.74); opacity: .9; } .service-promo .geo-hero-lead { max-width: 58%; } }
@media (max-width: 1050px) {
  .sart { position: relative; top: auto; right: auto; margin: 0 0 -76px calc(50% - 220px); transform: scale(.82); transform-origin: top center; opacity: 1; }
  .service-promo.sbg .prodvizh-part-1 { padding-bottom: 8px; }
  .service-promo.sbg .prodvizh-part-2 .button { padding-bottom: 64px; }
  .service-promo.sbg::after { -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 75%); mask-image: linear-gradient(180deg, #000 0%, transparent 75%); }
}
@media (max-width: 480px) { .sart { transform: scale(.72); margin-bottom: -118px; } }
