/* ==========================================================================
   /services · September 2026 redesign (overview pages round). Loaded after
   ind-wdp.css (tokens, sections, carousels, the .is-live pause) and svx.css.
   The page is drawn as a transit network: every service sits on one of four
   lines (create demand, capture it, get chosen, convert it) and keeps that
   line's colour everywhere (--lc). Every class here is .svh2-*.
   Motion: transforms and opacity; loops pause off screen (ind-wdp) and rest
   in their finished state under reduced motion. No backdrop-filter.
   ========================================================================== */
.wdp[data-svc="services"]{
  --svh2-create:#A99BFF; --svh2-capture:#F4A000; --svh2-chosen:#4FBFA0; --svh2-convert:#EDE3CF; --svh2-all:#9AA3AE; --svh2-end:#F4A000;
  --svh2-paper:#EFE7D6; --svh2-ink:#15171B;
}
.wdp[data-svc="services"] .is-create{--lc:var(--svh2-create)}
.wdp[data-svc="services"] .is-capture{--lc:var(--svh2-capture)}
.wdp[data-svc="services"] .is-chosen{--lc:var(--svh2-chosen)}
.wdp[data-svc="services"] .is-convert{--lc:var(--svh2-convert)}
.wdp[data-svc="services"] .is-all{--lc:var(--svh2-all)}
/* things that rise into place move by transform: they are never the element a reload or a late layout change keeps
   in view (scroll anchoring), so a refresh part way down the page stays where the reader was */
.wdp[data-svc="services"] [data-rise]{overflow-anchor:none}
.svh2-bullet{display:inline-block;flex:0 0 auto;width:12px;height:12px;border-radius:50%;background:#0B0D10;border:3px solid var(--lc,var(--gold))}

/* ==========================================================================
   HERO · the growth system as a transit map
   ========================================================================== */
.svh2-map{position:relative;padding:22px 24px 20px;border-radius:26px;border:1px solid var(--edge);
  background:radial-gradient(90% 60% at 50% 100%,rgba(244,160,0,.07),transparent 70%),linear-gradient(180deg,#14171C,#0B0D10);
  box-shadow:0 50px 120px -40px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06)}
.svh2-map::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(150deg,rgba(169,155,255,.45),transparent 30%,transparent 62%,rgba(244,160,0,.5));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
html.el8-js .svh2-map{animation:wdpUp 1.2s .2s var(--ease) both}
.svh2-map__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;padding-bottom:16px;border-bottom:1px solid var(--edge)}
.svh2-map__t{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.svh2-map__t i{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(244,160,0,.16)}
.svh2-map__key{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;margin:0;padding:0;font-size:12.5px;color:var(--text-dim)}
.svh2-map__key li{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.svh2-map__key i{width:18px;height:4px;border-radius:2px;background:var(--lc)}
.svh2-map__plot{position:relative;aspect-ratio:100 / 104;margin-top:6px;container-type:inline-size}
.svh2-map__svg{position:absolute;inset:0;width:100%;height:100%;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 10%);mask-image:linear-gradient(180deg,transparent 0,#000 10%)}
html.el8-js .svh2-map__svg{animation:svh2Lay 2s var(--ease) .35s both}
@keyframes svh2Lay{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
.svh2-map__lines path{fill:none;stroke:var(--lc);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:opacity .35s}
.svh2-map__glow path{fill:none;stroke:var(--lc);stroke-width:16px;stroke-linecap:round;opacity:.1;vector-effect:non-scaling-stroke;transition:opacity .35s}
.svh2-map__runs path{fill:none;stroke:none}
.svh2-map__river{fill:none;stroke-width:22px;stroke-linecap:round;vector-effect:non-scaling-stroke}
.svh2-map__stops{position:absolute;inset:0;list-style:none;margin:0;padding:0}
.svh2-stop{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) / 104 * 100%);width:0;height:0;transition:opacity .35s}
.svh2-stop > a,.svh2-stop__end{position:absolute;left:0;top:0;display:flex;align-items:center;gap:10px;transform:translate(-10px,-50%);
  white-space:nowrap;font-size:14.5px;font-weight:600;letter-spacing:-.005em;color:var(--text);text-decoration:none}
.svh2-stop__dot{position:relative;flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:#0B0D10;border:4px solid var(--lc);
  box-shadow:0 0 0 3px #0D0F13;transition:transform .35s var(--ease),box-shadow .45s,background .3s}
.svh2-stop__t{padding:3px 8px 3px 2px;border-radius:8px;background:rgba(11,13,16,.72);transition:color .3s}
.svh2-stop > a:hover .svh2-stop__t,.svh2-stop > a:focus-visible .svh2-stop__t{color:var(--lc)}
.svh2-stop > a:hover .svh2-stop__dot,.svh2-stop > a:focus-visible .svh2-stop__dot{transform:scale(1.22);background:var(--lc)}
.svh2-stop > a:focus-visible{outline:none}
.svh2-stop > a:focus-visible .svh2-stop__t{outline:2px solid var(--gold);outline-offset:2px}
.svh2-stop.is-hit .svh2-stop__dot{background:var(--lc);box-shadow:0 0 0 3px #0D0F13,0 0 22px 4px var(--lc)}
/* the interchange: your website, where the three lines meet */
.svh2-stop.is-hub > a{transform:translate(-7cqw,-50%)}
.svh2-stop.is-hub .svh2-stop__dot{width:14cqw;height:max(22px,5.4cqw);border-radius:100px;border-width:4px;
  background:#0B0D10}
.svh2-stop.is-hub .svh2-stop__dot::before{content:"";position:absolute;inset:4px;border-radius:inherit;
  background:linear-gradient(90deg,var(--svh2-create),var(--svh2-capture) 50%,var(--svh2-chosen));opacity:.3}
.svh2-stop.is-hub .svh2-stop__t{font-weight:700}
/* the last stop: a new customer */
.svh2-stop.is-end{--lc:var(--gold)}
.svh2-stop.is-end .svh2-stop__dot{width:26px;height:26px;margin-left:-3px;border-color:var(--gold);background:radial-gradient(circle,var(--gold) 0 34%,#0B0D10 38%)}
.svh2-stop.is-end .svh2-stop__dot::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1.5px solid var(--gold);opacity:0}
.svh2-stop.is-end .svh2-stop__t{color:var(--gold);font-weight:700}
.svh2-stop.is-end.is-hit .svh2-stop__dot::after{animation:svh2Ping 1.1s var(--ease)}
@keyframes svh2Ping{0%{transform:scale(.5);opacity:1}100%{transform:scale(1.7);opacity:0}}
html.el8-js .svh2-stop{animation:svh2Pop .7s var(--ease) both;animation-delay:calc(.9s + var(--y) * .012s)}
@keyframes svh2Pop{from{opacity:0}}
/* pointing at a station picks out its line */
.svh2-map:has(.svh2-stop.is-create > a:hover) .svh2-map__lines path:not(.is-create):not(.is-convert),
.svh2-map:has(.svh2-stop.is-capture > a:hover) .svh2-map__lines path:not(.is-capture):not(.is-convert),
.svh2-map:has(.svh2-stop.is-chosen > a:hover) .svh2-map__lines path:not(.is-chosen):not(.is-convert){opacity:.22}
.svh2-map:has(.svh2-stop.is-create > a:hover) .svh2-stop:not(.is-create):not(.is-convert):not(.is-end),
.svh2-map:has(.svh2-stop.is-capture > a:hover) .svh2-stop:not(.is-capture):not(.is-convert):not(.is-end),
.svh2-map:has(.svh2-stop.is-chosen > a:hover) .svh2-stop:not(.is-chosen):not(.is-convert):not(.is-end){opacity:.3}
/* customers travelling the lines (added by ov-services.js) */
.svh2-tok{position:absolute;left:0;top:0;z-index:1;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;pointer-events:none;
  background:#fff;box-shadow:0 0 0 2.5px var(--lc),0 0 16px 4px var(--lc);opacity:0;will-change:transform,opacity}
.svh2-map__note{margin:10px 0 0;padding-top:14px;border-top:1px solid var(--edge);font-size:14px;line-height:1.55;color:var(--text-dim)}

/* ==========================================================================
   SECTION OPENERS · the paragraph beside each heading is drawn as a stretch
   of the network: the four lines leave an interchange and run down beside
   it; the first sentence carries it. A line header's opening line runs on
   that line alone, from a station, in the line's own colours.
   ========================================================================== */
.wdp[data-svc="services"] .svh2-lede{position:relative;max-width:580px;padding:0 0 4px 42px;font-size:16.5px;line-height:1.62;color:var(--text-mid)}
.svh2-lede__first{display:block;margin-bottom:8px;font-family:var(--font-head);font-weight:700;font-size:20px;line-height:1.32;letter-spacing:-.012em;color:var(--text)}
.svh2-lede::before{content:"";position:absolute;left:5.5px;top:13px;bottom:0;width:17.5px;pointer-events:none;
  background:linear-gradient(90deg,var(--svh2-create) 0 2.5px,transparent 2.5px 5px,var(--svh2-capture) 5px 7.5px,transparent 7.5px 10px,
    var(--svh2-chosen) 10px 12.5px,transparent 12.5px 15px,var(--svh2-convert) 15px 17.5px);
  -webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent)}
.svh2-lede::after{content:"";position:absolute;left:0;top:4.5px;width:28.5px;height:17px;border-radius:100px;box-sizing:border-box;pointer-events:none;
  border:3.5px solid var(--svh2-convert);background:#0B0D10;box-shadow:0 0 0 3px #0A0B0E,inset 0 0 0 2px rgba(244,160,0,.35)}
.wdp[data-svc="services"] .svh2-ch__d{max-width:none;padding-left:36px}
.svh2-ch__d::before{left:7px;top:16px;bottom:5px;width:4px;border-radius:2px;background:linear-gradient(180deg,var(--g1),var(--g2));-webkit-mask-image:none;mask-image:none}
.svh2-ch__d::after{left:0;top:4px;width:18px;height:18px;border-radius:50%;border:4px solid var(--g1);box-shadow:0 0 0 3px #0B0D10,0 0 16px -2px var(--g1)}

/* ==========================================================================
   THE SERVICES · a chapter per group, cards with previews
   ========================================================================== */
.svh2-jump{display:none}
/* the docked switchers (phones only, see the 700px block) */
.svh2-dock{display:none}
.svh2-idx{display:flow-root}
.svh2-grp + .svh2-grp{margin-top:72px}
.svh2-grp__cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px;margin-top:22px}
/* a line header: the line's roundel, its name and stations on the left, its opening line on the right; a note, when
   the group has one, runs the full width underneath as a service notice. All four headers share this composition */
.svh2-ch{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);
  grid-template-areas:"big head d" "big line d" "note note note";column-gap:22px;align-items:start;margin-top:50px;padding-top:34px}
.svh2-ch:first-child{margin-top:4px}
.svh2-ch::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--g1),var(--g2) 45%,rgba(255,255,255,.08) 75%)}
.svh2-ch__big{grid-area:big;display:grid;place-items:center;width:66px;height:66px;margin-top:2px;border-radius:50%;
  background:linear-gradient(135deg,var(--g1) 30%,var(--g2) 70%);
  box-shadow:0 0 0 6px color-mix(in srgb,var(--g1) 13%,transparent),0 18px 34px -14px color-mix(in srgb,var(--g1) 70%,transparent)}
.svh2-ch__big b{font-family:var(--font-head);font-weight:800;font-size:25px;line-height:1;letter-spacing:.01em;color:#0B0D10}
.svh2-ch__head{grid-area:head;min-width:0}
.svh2-ch__no{display:block;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.svh2-ch__t{margin:10px 0 0;font-family:var(--font-head);font-weight:800;font-size:clamp(26px,2.4vw,32px);line-height:1.08;letter-spacing:-.03em;color:var(--text)}
.svh2-ch__d{grid-area:d;align-self:center;margin:0 0 0 34px}
.svh2-ch__line{grid-area:line;display:flex;flex-wrap:wrap;align-items:center;row-gap:10px;list-style:none;margin:14px 0 0;padding:0}
.svh2-ch__line li{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--text-soft);white-space:nowrap}
.svh2-ch__line li + li::before{content:"";width:26px;height:4px;margin:0 2px 0 8px;border-radius:2px;background:var(--lc)}
.svh2-ch__line i{width:13px;height:13px;border-radius:50%;background:#0B0D10;border:3px solid var(--lc)}
.svh2-ch__note{grid-area:note;display:flex;align-items:flex-start;gap:14px;margin:26px 0 0;padding:15px 22px 15px 18px;border-radius:14px;
  border:1px solid var(--gold-line);border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(244,160,0,.1),rgba(244,160,0,.03) 70%);
  font-size:15px;line-height:1.55;color:var(--text-soft)}
.svh2-ch__note > span:first-child{flex:0 0 auto;width:14px;padding-top:4px;color:var(--gold)}
.svh2-ch__note svg{display:block;width:14px;height:14px;fill:currentColor}
.svh2-ch__nt{max-width:980px}

.svh2-card{grid-column:span 4;position:relative;display:flex;flex-direction:column;min-width:0;border-radius:22px;border:1px solid var(--edge);
  background:linear-gradient(180deg,#111419,#0B0D10);overflow:hidden;transition:border-color .35s,transform .45s var(--ease),box-shadow .45s}
.svh2-card::before{content:"";position:absolute;left:24px;right:24px;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--lc),transparent);opacity:.7}
.svh2-card.is-of-1{grid-column:1 / -1;flex-direction:row-reverse}
.svh2-card.is-of-2{grid-column:span 6}
.svh2-card.is-of-4{grid-column:span 3}
.svh2-card:hover{border-color:color-mix(in srgb,var(--lc) 42%,transparent);transform:translateY(-3px);box-shadow:0 30px 60px -36px color-mix(in srgb,var(--lc) 60%,transparent)}
.svh2-card__pic{position:relative;padding:16px 16px 0;
  background:radial-gradient(80% 100% at 50% 0%,color-mix(in srgb,var(--lc) 12%,transparent),transparent 72%)}
.svh2-card__pic::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent);mask-image:linear-gradient(180deg,#000,transparent)}
.svh2-card__pic .svh2-pv{position:relative;z-index:1;display:block;width:100%;height:auto}
.svh2-card.is-of-1 .svh2-card__pic .svh2-pv{max-width:420px;margin:0 auto}
.svh2-card.is-of-1 .svh2-card__pic{flex:0 0 44%;display:flex;align-items:center;padding:26px 30px;
  background:radial-gradient(70% 90% at 60% 50%,color-mix(in srgb,var(--lc) 12%,transparent),transparent 72%)}
.svh2-card__body{display:flex;flex-direction:column;flex:1;min-width:0;padding:20px 24px 24px}
.svh2-card.is-of-1 .svh2-card__body{padding:36px 40px 34px;justify-content:center}
.svh2-card__top{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lc)}
.svh2-card__top .svh2-bullet{width:11px;height:11px;border-width:2.5px}
.svh2-card__n{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0;color:var(--text-dim)}
.svh2-card__k{min-width:0}
.svh2-card__t{margin:12px 0 10px;font-family:var(--font-head);font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.022em;color:var(--text)}
.svh2-card.is-of-1 .svh2-card__t{font-size:clamp(26px,2.3vw,32px)}
.svh2-card__d{margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--text-mid)}
.svh2-card.is-of-1 .svh2-card__d{font-size:16.5px;max-width:560px}
.svh2-card__chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 20px;padding:0}
.svh2-card__chips li{padding:5px 11px;border-radius:100px;border:1px solid var(--teal-line);background:var(--teal-soft);font-size:12.5px;font-weight:500;line-height:1.35;color:#6FD3B6}
.svh2-card__go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--gold);text-decoration:none}
.svh2-card__go::after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit}
.svh2-card__go b{transition:transform .35s var(--ease)}
.svh2-card:hover .svh2-card__go b{transform:translateX(4px)}
.svh2-card__go:focus-visible{outline:none}
.svh2-card:has(.svh2-card__go:focus-visible){outline:2px solid var(--gold);outline-offset:3px}

/* ==========================================================================
   PREVIEWS · each service page's hero, small (kit/overview/preview)
   ========================================================================== */
.svh2-pv{overflow:visible}
.svh2-pv .pv-ring__arc,.svh2-pv--aeo .pv-aeo-lines rect,.svh2-pv--geo .pv-geo-halo,.svh2-pv--social .pv-social-bars rect,.svh2-pv--cro .pv-cro-bar,.svh2-pv--cro .pv-cro-tick{transform-box:fill-box}
.svh2-pv .pv-frame{fill:#12151A;stroke:rgba(255,255,255,.12);stroke-width:1}
.svh2-pv .pv-frame--lift{fill:#171A20;stroke:rgba(255,255,255,.16)}
.svh2-pv .pv-frame--win{stroke:rgba(244,160,0,.55)}
.svh2-pv .pv-phone{fill:#0F1216;stroke:rgba(255,255,255,.16);stroke-width:1.4}
.svh2-pv .pv-notch{fill:#000}
.svh2-pv .pv-dots circle{fill:rgba(255,255,255,.18)}
.svh2-pv .pv-url,.svh2-pv .pv-field{fill:#1A1D23;stroke:rgba(255,255,255,.1)}
.svh2-pv .pv-field--gold{stroke:rgba(244,160,0,.55)}
.svh2-pv .pv-rule{stroke:rgba(255,255,255,.08)}
.svh2-pv .pv-bar{fill:rgba(255,255,255,.2)}
.svh2-pv .pv-bar2{fill:rgba(255,255,255,.09)}
.svh2-pv .pv-cream{fill:#EDE3CF}
.svh2-pv .pv-gold{fill:#F4A000}
.svh2-pv .pv-gold-dim{fill:rgba(244,160,0,.4)}
.svh2-pv .pv-gold-s{fill:none;stroke:#F4A000;stroke-width:1.6;stroke-linecap:round}
.svh2-pv .pv-ink-s{fill:none;stroke:#111;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.svh2-pv .pv-teal{fill:#4FBFA0}
.svh2-pv .pv-teal-s{fill:none;stroke:#4FBFA0;stroke-width:1.8;stroke-linecap:round}
.svh2-pv .pv-teal-bar{fill:rgba(79,191,160,.55)}
.svh2-pv .pv-teal-card{fill:rgba(79,191,160,.1);stroke:rgba(79,191,160,.6)}
.svh2-pv .pv-ghost{fill:none;stroke:rgba(255,255,255,.28)}
.svh2-pv .pv-row{fill:#171A20;stroke:rgba(255,255,255,.07)}
.svh2-pv .pv-dimmed{opacity:.55}
.svh2-pv .pv-you{fill:rgba(244,160,0,.12);stroke:rgba(244,160,0,.75)}
.svh2-pv .pv-num{fill:#23272E}
.svh2-pv .pv-tx{font-family:Inter,system-ui,sans-serif;font-size:7px;font-weight:700;fill:rgba(255,255,255,.7)}
.svh2-pv .pv-tx--num{font-size:6px}
.svh2-pv .pv-tx--ring{font-size:7.5px;fill:#4FBFA0}
.svh2-pv .pv-tx--k{font-size:8px;fill:rgba(255,255,255,.55)}
.svh2-pv .pv-tx--gold{fill:#F4A000}
.svh2-pv .pv-img{fill:#23272E}
.svh2-pv .pv-sky{fill:#3B2E6B}
.svh2-pv .pv-sun{fill:#FFD27A}
.svh2-pv .pv-hill{fill:#241B4A}
.svh2-pv .pv-scan{stroke:#F4A000;stroke-width:1.4;opacity:.8;filter:drop-shadow(0 0 3px rgba(244,160,0,.9))}
.svh2-pv .pv-ring__track{fill:#0F1216;stroke:rgba(79,191,160,.2);stroke-width:2.4}
.svh2-pv .pv-ring__arc{fill:none;stroke:#4FBFA0;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:8;transform:rotate(-90deg);transform-origin:center}
.svh2-pv .pv-ai{fill:rgba(79,191,160,.07);stroke:rgba(79,191,160,.55)}
.svh2-pv .pv-aeo-lines rect{fill:rgba(79,191,160,.45)}
.svh2-pv .pv-chip-gold{fill:rgba(244,160,0,.14);stroke:rgba(244,160,0,.7)}
.svh2-pv .pv-aeo-spark{fill:#F4A000;opacity:0;filter:drop-shadow(0 0 3px #F4A000)}
.svh2-pv .pv-geo-web path{fill:none;stroke:rgba(244,160,0,.5);stroke-width:.8}
.svh2-pv .pv-geo-stars circle{fill:#E9E4D8}
.svh2-pv .pv-geo-halo{fill:rgba(244,160,0,.18)}
.svh2-pv .pv-bubble{fill:#23272E}
.svh2-pv .pv-caret{fill:#F4A000}
.svh2-pv .pv-gads-step rect{fill:#1C2026;stroke:rgba(255,255,255,.14)}
.svh2-pv .pv-gads-step path{fill:none;stroke:rgba(255,255,255,.55);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.svh2-pv .pv-brace{fill:none;stroke-width:1.5;stroke-linecap:round}
.svh2-pv .pv-brace--gold{stroke:#F4A000}
.svh2-pv .pv-brace--teal{stroke:#4FBFA0}
.svh2-pv .pv-lane{fill:#171A20}
.svh2-pv .pv-lane-fill--a{fill:rgba(255,255,255,.22)}
.svh2-pv .pv-ppc-mark{stroke:rgba(244,160,0,.25);stroke-dasharray:2 3}
.svh2-pv .pv-ppc-managed{fill:none;stroke:#4FBFA0;stroke-width:2;stroke-linecap:round}
.svh2-pv .pv-ppc-ticks circle{fill:#0F1216;stroke:#4FBFA0;stroke-width:1.4}
.svh2-pv .pv-ppc-auto{fill:none;stroke:rgba(255,255,255,.35);stroke-width:1.6;stroke-dasharray:3 3}
.svh2-pv .pv-ppc-idle{fill:#0F1216;stroke:rgba(255,255,255,.4);stroke-width:1.3}
.svh2-pv .pv-ppc-head{stroke:rgba(255,255,255,.4);stroke-width:1}
.svh2-pv .pv-story{fill:#23272E;stroke:rgba(255,255,255,.14)}
.svh2-pv .pv-story--you{fill:#F4A000;stroke:#FFD27A;stroke-width:1.4}
.svh2-pv .pv-sunset{fill:#C8561F}
.svh2-pv .pv-dune{fill:#7A2A18}
.svh2-pv .pv-social-bars rect{fill:#2F8C73}
.svh2-pv .pv-social-bars rect:last-child{fill:#4FBFA0}
.svh2-pv .pv-cro-in circle{fill:#E9E4D8;opacity:0}
.svh2-pv .pv-any-line{stroke:rgba(255,255,255,.2);stroke-width:4;stroke-linecap:round}
.svh2-pv .pv-any-stop{fill:#0B0D10;stroke:var(--gold);stroke-width:4}

/* preview loops (paused off screen by ind-wdp; none under reduced motion) */
.svh2-pv--web .pv-scan{animation:svh2Scan 6s var(--ease) infinite}
@keyframes svh2Scan{0%{transform:translateX(8px);opacity:0}8%{opacity:.8}70%{transform:translateX(226px);opacity:.8}78%,100%{transform:translateX(226px);opacity:0}}
.svh2-pv--web .pv-ring__arc{animation:svh2Ring 6s var(--ease) infinite}
@keyframes svh2Ring{0%,10%{stroke-dashoffset:100}55%,100%{stroke-dashoffset:8}}
.svh2-pv--web .pv-web-phone{animation:svh2Float 6s ease-in-out infinite}
@keyframes svh2Float{50%{transform:translateY(-3px)}}
/* SEO: you start at number five and pass each row in turn; the row you pass drops one place. Rest: you at number one */
.svh2-pv--seo .pv-seo-list{animation:svh2List 8s linear infinite}
@keyframes svh2List{0%{opacity:0}4%,94%{opacity:1}100%{opacity:0}}
.svh2-pv--seo .pv-seo-you{animation:svh2Climb 8s var(--ease) infinite}
@keyframes svh2Climb{0%,14%{transform:translateY(72px)}24%,32%{transform:translateY(54px)}42%,50%{transform:translateY(36px)}60%,68%{transform:translateY(18px)}78%,100%{transform:none}}
.svh2-pv--seo .pv-seo-r4{animation:svh2Pass4 8s var(--ease) infinite}
.svh2-pv--seo .pv-seo-r3{animation:svh2Pass3 8s var(--ease) infinite}
.svh2-pv--seo .pv-seo-r2{animation:svh2Pass2 8s var(--ease) infinite}
.svh2-pv--seo .pv-seo-r1{animation:svh2Pass1 8s var(--ease) infinite}
@keyframes svh2Pass4{0%,14%{transform:translateY(-18px)}24%,100%{transform:none}}
@keyframes svh2Pass3{0%,32%{transform:translateY(-18px)}42%,100%{transform:none}}
@keyframes svh2Pass2{0%,50%{transform:translateY(-18px)}60%,100%{transform:none}}
@keyframes svh2Pass1{0%,68%{transform:translateY(-18px)}78%,100%{transform:none}}
.svh2-pv--aeo .pv-aeo-spark{animation:svh2Spark 6s var(--ease) infinite}
@keyframes svh2Spark{0%,8%{opacity:0;transform:none}14%{opacity:1}34%{opacity:1;transform:translate(24px,12px)}40%,100%{opacity:0;transform:translate(24px,12px)}}
.svh2-pv--aeo .pv-aeo-lines rect{transform-origin:left center;animation:svh2Write 6s var(--ease) infinite}
.svh2-pv--aeo .pv-aeo-lines rect:nth-child(2){animation-delay:.18s}
.svh2-pv--aeo .pv-aeo-lines rect:nth-child(3){animation-delay:.36s}
.svh2-pv--aeo .pv-aeo-lines rect:nth-child(4){animation-delay:.54s}
@keyframes svh2Write{0%,30%{transform:scaleX(0)}48%,100%{transform:none}}
.svh2-pv--aeo .pv-aeo-cite{animation:svh2Cite 6s var(--ease) infinite}
@keyframes svh2Cite{0%,52%{opacity:.25}62%,100%{opacity:1}}
.svh2-pv--geo .pv-geo-web path{stroke-dasharray:1;animation:svh2Draw 7s var(--ease) infinite}
@keyframes svh2Draw{0%{stroke-dashoffset:1}40%,100%{stroke-dashoffset:0}}
.svh2-pv--geo .pv-geo-halo{transform-origin:center;animation:svh2Halo 3.5s ease-in-out infinite}
@keyframes svh2Halo{50%{transform:scale(1.5);opacity:.35}}
.svh2-pv--geo .pv-geo-answer,.svh2-pv--geo .pv-geo-cite{animation:svh2Cite 7s var(--ease) infinite}
.svh2-pv--gads .pv-caret{animation:svcBlink 1s steps(2) infinite}
.svh2-pv--gads .pv-gads-ad{animation:svh2AdIn 6s var(--ease) infinite}
@keyframes svh2AdIn{0%,6%{opacity:0;transform:translateY(-6px)}16%,100%{opacity:1;transform:none}}
.svh2-pv--gads .pv-gads-step{animation:svh2Step 6s var(--ease) infinite}
.svh2-pv--gads .pv-gads-step:nth-child(2){animation-delay:.5s}
.svh2-pv--gads .pv-gads-step:nth-child(3){animation-delay:1s}
@keyframes svh2Step{0%,24%{opacity:.35}32%,90%{opacity:1}100%{opacity:.35}}
.svh2-pv--gads .pv-gads-step:last-child rect{fill:rgba(244,160,0,.16);stroke:rgba(244,160,0,.7)}
.svh2-pv--gads .pv-gads-step:last-child path{stroke:#F4A000}
.svh2-pv--sem .pv-sem-paid{animation:svh2Lane 5s ease-in-out infinite}
.svh2-pv--sem .pv-sem-org{animation:svh2Lane 5s ease-in-out -2.5s infinite}
@keyframes svh2Lane{0%,100%{opacity:1}50%{opacity:.55}}
.svh2-pv--ppc .pv-ppc-managed{stroke-dasharray:1;animation:svh2Draw2 6s linear infinite}
@keyframes svh2Draw2{0%{stroke-dashoffset:1}75%,100%{stroke-dashoffset:0}}
.svh2-pv--ppc .pv-ppc-head{transform:translateX(190px);animation:svh2Head 6s linear infinite}
@keyframes svh2Head{0%{transform:none}75%,100%{transform:translateX(190px)}}
.svh2-pv--ppc .pv-ppc-ticks circle{animation:svh2Tick 6s linear infinite}
.svh2-pv--ppc .pv-ppc-ticks circle:nth-child(1){animation-delay:.3s}
.svh2-pv--ppc .pv-ppc-ticks circle:nth-child(2){animation-delay:1.3s}
.svh2-pv--ppc .pv-ppc-ticks circle:nth-child(3){animation-delay:2.1s}
.svh2-pv--ppc .pv-ppc-ticks circle:nth-child(4){animation-delay:3.1s}
@keyframes svh2Tick{0%{fill:#0F1216}4%,80%{fill:#4FBFA0}100%{fill:#0F1216}}
.svh2-pv--social .pv-social-feed{animation:svh2Feed 7s var(--ease) infinite}
@keyframes svh2Feed{0%{transform:translateY(40px)}22%,92%{transform:none}100%{transform:translateY(40px)}}
.svh2-pv--social .pv-social-bars rect{transform-origin:center bottom;animation:svh2Bar 7s var(--ease) infinite}
.svh2-pv--social .pv-social-bars rect:nth-child(2){animation-delay:.12s}
.svh2-pv--social .pv-social-bars rect:nth-child(3){animation-delay:.24s}
.svh2-pv--social .pv-social-bars rect:nth-child(4){animation-delay:.36s}
.svh2-pv--social .pv-social-bars rect:nth-child(5){animation-delay:.48s}
@keyframes svh2Bar{0%,20%{transform:scaleY(.2)}40%,100%{transform:none}}
.svh2-pv--social .pv-teal-s{stroke-dasharray:1;animation:svh2Draw 7s var(--ease) infinite}
.svh2-pv--cro .pv-cro-in circle{animation:svh2Drop 4s var(--ease) infinite}
.svh2-pv--cro .pv-cro-in circle:nth-child(1){--dx:-60px;animation-delay:0s}
.svh2-pv--cro .pv-cro-in circle:nth-child(2){--dx:52px;animation-delay:1s}
.svh2-pv--cro .pv-cro-in circle:nth-child(3){--dx:64px;animation-delay:2s}
.svh2-pv--cro .pv-cro-in circle:nth-child(4){--dx:-50px;animation-delay:3s}
@keyframes svh2Drop{0%{opacity:0;transform:none}10%{opacity:1}45%{opacity:1;transform:translate(var(--dx),44px)}60%,100%{opacity:0;transform:translate(var(--dx),44px)}}
.svh2-pv--cro .pv-cro-bar{transform-origin:left center;animation:svh2Grow 8s var(--ease) infinite}
@keyframes svh2Grow{0%,10%{transform:scaleX(.5)}45%,100%{transform:none}}
.svh2-pv--cro .pv-cro-tick{transform-origin:center;animation:svh2TickPop 8s var(--ease) infinite}
@keyframes svh2TickPop{0%,40%{transform:scale(0)}50%,100%{transform:none}}

/* ==========================================================================
   WHICH SERVICE · a ticket per situation
   ========================================================================== */
.svh2-route{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:0 64px;align-items:start;min-height:560px}
.svh2-route__slot{grid-column:2;grid-row:1;position:relative;z-index:3;height:22px;border-radius:12px;background:#050608;
  box-shadow:inset 0 2px 6px rgba(0,0,0,.9),0 1px 0 rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)}
.svh2-route__slot i{position:absolute;left:18px;right:18px;top:50%;height:2px;margin-top:-1px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}
.svh2-route__car{grid-column:1;grid-row:1 / span 2;position:static}
/* the situations, drawn as stations down one line: each station takes the colour of the line it sends you to, the
   chosen one lights its stretch of track and prints its ticket. (The rows only fade in as they rise: a transform on a
   row would make it the ticket's containing block, and the ticket would first appear over the list, then jump.) */
.svh2-rts{list-style:none;margin:0;padding:0}
html.el8-js .svh2-rt[data-rise]{transform:none}
.svh2-rt{--trk:rgba(255,255,255,.11);position:static;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;column-gap:10px;
  padding:0 14px 0 0;border-radius:16px;cursor:pointer;transition:background .35s,box-shadow .35s}
.svh2-rt::before{content:"";grid-column:1;grid-row:1;align-self:stretch;justify-self:center;width:4px;
  background:linear-gradient(180deg,var(--t0,var(--trk)) 0 50%,var(--t1,var(--trk)) 50% 100%)}
.svh2-rt:first-child::before{--t0:transparent}
.svh2-rt:last-child::before{--t1:transparent}
.svh2-rt__stop{grid-column:1;grid-row:1;justify-self:center;position:relative;z-index:1;width:16px;height:16px;border-width:3.5px;
  box-shadow:0 0 0 4px #0A0B0E;transition:transform .35s var(--ease),background .3s,box-shadow .45s}
.svh2-rt:hover{background:rgba(255,255,255,.025)}
.svh2-rt.is-on{--trk:var(--lc);background:linear-gradient(90deg,color-mix(in srgb,var(--lc) 13%,transparent),color-mix(in srgb,var(--lc) 4%,transparent) 62%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lc) 18%,transparent)}
.svh2-rt.is-on .svh2-rt__stop{background:var(--lc);transform:scale(1.18);box-shadow:0 0 0 4px #0A0B0E,0 0 18px 1px var(--lc)}
/* the words as said: quotes open and close, the opening mark hangs so every line of the quote starts together */
.svh2-rt__q{grid-column:2;grid-row:1;margin:0;padding:16px 0;font-family:var(--font-head);font-weight:600;font-size:18px;line-height:1.4;letter-spacing:-.008em;
  color:var(--text-mid);text-indent:-.5em;transition:color .3s}
.svh2-rt.is-on .svh2-rt__q{color:var(--text)}
.svh2-rt__qm{display:inline-block;width:.5em;text-indent:0;font-family:var(--font-head);font-weight:800;color:var(--lc)}
.svh2-rt__qm--end{width:auto}
/* where it sends you: a platform sign in the line's colour */
.svh2-rt__svc{grid-column:3;grid-row:1;position:relative;display:inline-flex;align-items:center;gap:9px;padding:8px 13px 8px 11px;border-radius:100px;
  border:1px solid color-mix(in srgb,var(--lc) 28%,transparent);background:color-mix(in srgb,var(--lc) 6%,transparent);
  font-size:13.5px;font-weight:700;color:var(--text-soft);white-space:nowrap;text-decoration:none;transition:color .3s,background .35s,border-color .35s}
.svh2-rt__svc::before{content:"";flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--lc)}
.svh2-rt__svc b{font-weight:700}
.svh2-rt__svc i{font-style:normal;color:var(--lc);transition:transform .35s var(--ease)}
.svh2-rt__svc:hover,.svh2-rt.is-on .svh2-rt__svc{color:var(--text);border-color:color-mix(in srgb,var(--lc) 62%,transparent);background:color-mix(in srgb,var(--lc) 14%,transparent)}
.svh2-rt__svc:hover i{transform:translateX(4px)}
.svh2-rt__svc:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.svh2-rt__to{display:none}
/* the ticket, printed from the slot */
.svh2-tk{position:absolute;right:0;top:12px;z-index:2;width:430px;display:grid;grid-template-columns:62px minmax(0,1fr);border-radius:16px;
  background:radial-gradient(120% 80% at 100% 0%,#F7F1E4,var(--svh2-paper) 60%);color:var(--svh2-ink);
  box-shadow:0 40px 70px -30px rgba(0,0,0,.9),0 2px 0 rgba(255,255,255,.4) inset;
  opacity:0;visibility:hidden;transition:opacity .2s,visibility 0s .2s}
.svh2-rt.is-on .svh2-tk{opacity:1;visibility:visible;transition:none}
html.el8-js .svh2-rt.is-on.is-printing .svh2-tk{animation:svh2Print .75s cubic-bezier(.3,.7,.2,1) both}
@keyframes svh2Print{from{transform:translateY(-100%);clip-path:inset(100% 0 0 0)}to{transform:none;clip-path:inset(0 0 0 0)}}
.svh2-tk__stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 16px;border-radius:16px 0 0 16px;
  background:var(--lc);color:var(--svh2-ink)}
.svh2-tk.is-convert .svh2-tk__stub,.is-convert > .svh2-tk .svh2-tk__stub{background:#D9CBAE}
.svh2-tk__stub .svh2-bullet{width:16px;height:16px;border-width:4px;border-color:var(--svh2-ink);background:var(--svh2-paper)}
.svh2-tk__stub span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.svh2-tk__stub em{font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal}
.svh2-tk__stub::after{content:"";position:absolute;right:-1px;top:12px;bottom:12px;border-right:2px dashed rgba(21,23,27,.28)}
.svh2-tk__main{position:relative;display:flex;flex-direction:column;min-width:0;padding:20px 22px 20px 24px}
.svh2-tk__main::before,.svh2-tk__main::after{content:"";position:absolute;left:-9px;width:18px;height:18px;border-radius:50%;background:var(--ink)}
.svh2-tk__main::before{top:-9px}
.svh2-tk__main::after{bottom:-9px}
.svh2-tk__lab{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(21,23,27,.5)}
.svh2-tk__from{margin:6px 0 14px;padding-bottom:14px;border-bottom:1.5px dashed rgba(21,23,27,.2);font-size:15.5px;line-height:1.45;color:rgba(21,23,27,.82)}
.svh2-tk__to{margin:4px 0 14px;font-family:var(--font-head);font-weight:800;font-size:26px;line-height:1.08;letter-spacing:-.025em;color:var(--svh2-ink)}
.svh2-tk__pic{padding:10px 10px 8px;border-radius:12px;background:#0B0D10;box-shadow:inset 0 0 0 1px rgba(0,0,0,.4)}
.svh2-tk__pic .svh2-pv{display:block;width:100%;height:auto}
.svh2-tk__go{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:11px 18px;border-radius:100px;
  background:var(--svh2-ink);color:var(--svh2-paper);font-size:14px;font-weight:700;text-decoration:none;transition:transform .35s var(--ease)}
.svh2-tk__go:hover{color:#fff;transform:translateX(3px)}
/* not sure: every line runs in from the edge and meets at one gold station, the free audit */
.svh2-route__tail{position:relative;display:grid;grid-template-columns:172px minmax(0,1fr) auto;align-items:center;gap:18px 36px;margin-top:52px;padding:30px 36px 30px 0;
  border-radius:24px;border:1px solid var(--edge);overflow:hidden;
  background:radial-gradient(50% 130% at 10% 50%,rgba(244,160,0,.11),transparent 72%),linear-gradient(180deg,#131519,#0B0C0F);box-shadow:0 44px 90px -54px rgba(0,0,0,.95)}
.svh2-route__tail::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(110deg,rgba(169,155,255,.4),transparent 28%,transparent 64%,rgba(244,160,0,.55));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.svh2-route__merge{display:block;width:172px;height:96px;overflow:visible}
.svh2-route__merge path{fill:none;stroke:var(--lc);stroke-width:4px;stroke-linecap:round}
.svh2-route__merge .svh2-route__run{stroke:#fff;stroke-width:3.5px;stroke-dasharray:5 100;stroke-dashoffset:5;opacity:0;
  filter:drop-shadow(0 0 3px #fff);animation:svh2Run 5.2s var(--ease) infinite;animation-delay:calc(var(--i) * 1.3s)}
@keyframes svh2Run{0%{stroke-dashoffset:5;opacity:0}8%{opacity:1}62%{stroke-dashoffset:-95;opacity:1}70%,100%{stroke-dashoffset:-95;opacity:0}}
.svh2-route__hub{fill:#0B0D10;stroke:var(--gold);stroke-width:4px}
.svh2-route__hub-in{fill:var(--gold);transform-box:fill-box;transform-origin:center;animation:svh2Hub 1.3s ease-in-out infinite}
@keyframes svh2Hub{0%,100%{transform:scale(.8);opacity:.8}50%{transform:scale(1.12);opacity:1}}
.svh2-route__ask{margin:0;max-width:640px;font-size:16.5px;line-height:1.6;color:var(--text-mid)}
.svh2-route__ask .svh2-lede__first{margin-bottom:6px;font-weight:800;font-size:clamp(25px,2.2vw,30px);line-height:1.1;letter-spacing:-.025em}
.svh2-route__cta{justify-self:end;white-space:nowrap}
/* the free tools header: the link lines up with the opening line's text */
.svh2-tools-sec .wdp-head .svc-link{margin-left:42px}

/* ==========================================================================
   WORKING TOGETHER · one customer's week
   ========================================================================== */
.svh2-trip{position:relative;padding:28px 30px 32px;border-radius:26px;border:1px solid var(--edge);background:linear-gradient(180deg,#101318,#0A0B0E)}
.svh2-trip__label{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}
.svh2-trip__label i{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}
.svh2-trip__mini{display:none}
.svh2-stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));grid-template-rows:auto auto auto auto 1fr;column-gap:26px}
.svh2-stage{position:relative;display:grid;grid-row:span 5;grid-template-rows:subgrid;align-content:start}
.svh2-stage > *{grid-column:1}
.svh2-touch{grid-row:1;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;min-height:64px;padding:14px 0 16px}
.svh2-touch__when{font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--lc)}
.svh2-touch__t{font-family:var(--font-head);font-weight:700;font-size:18px;line-height:1.25;letter-spacing:-.01em;color:var(--text)}
.svh2-stage__rail{grid-row:2;position:relative;display:flex;align-items:center;height:48px}
.svh2-stage__rail > i{position:absolute;left:48px;right:-26px;top:50%;height:3px;margin-top:-1.5px;border-radius:2px;
  background:linear-gradient(90deg,var(--lc),var(--next,var(--gold)));opacity:.55}
.svh2-stage:last-child .svh2-stage__rail > i{right:150px}
.svh2-stage__node{position:relative;z-index:2;display:grid;place-items:center;flex:0 0 auto;width:48px;height:48px;border-radius:50%;
  background:#0B0D10;border:2px solid var(--lc);color:var(--lc);transition:background .4s,color .4s,box-shadow .5s}
.svh2-stage__node svg{width:21px;height:21px}
.svh2-stage.is-lit .svh2-stage__node{background:var(--lc);color:#0B0D10;box-shadow:0 0 0 6px color-mix(in srgb,var(--lc) 18%,transparent),0 0 28px -2px var(--lc)}
.svh2-stage__k{grid-row:3;margin-top:22px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--lc)}
.svh2-stage h3{grid-row:4;margin:8px 0 10px;font-family:var(--font-head);font-weight:800;font-size:23px;line-height:1.12;letter-spacing:-.022em;color:var(--text)}
.svh2-stage p{grid-row:5;margin:0;font-size:15px;line-height:1.6;color:var(--text-mid)}
.svh2-trip__end{grid-row:2;grid-column:1;justify-self:end;align-self:center;display:inline-flex;align-items:center;gap:8px;padding:9px 16px 9px 12px;border-radius:100px;
  border:1px solid var(--gold-line);background:#15130D;color:#FFD27A;font-size:14px;font-weight:700;white-space:nowrap;transition:background .4s,color .4s,box-shadow .5s}
.svh2-trip__end svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.svh2-trip.is-done .svh2-trip__end{background:var(--gold);color:#111;box-shadow:0 0 34px -4px rgba(244,160,0,.8)}
.svh2-trip__end.is-solo{display:inline-flex;margin:14px 0 0}
.svh2-trip__more{display:flex;flex-wrap:wrap;gap:10px 26px;list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--edge)}
.svh2-trip__more li{display:flex;flex-direction:column;gap:4px;--lc:var(--text-dim)}
.svh2-trip__dot{position:absolute;left:0;top:0;z-index:3;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;pointer-events:none;
  box-shadow:0 0 0 3px rgba(255,255,255,.18),0 0 20px 5px rgba(255,236,190,.55);opacity:0;will-change:transform}
.svh2-trip__report{display:flex;align-items:flex-start;gap:14px;max-width:860px;margin:30px 0 0;font-size:17px;line-height:1.6;color:var(--text-soft)}
.svh2-trip__report span{flex:0 0 auto;width:34px;height:3px;margin-top:13px;border-radius:2px;
  background:linear-gradient(90deg,var(--svh2-create),var(--svh2-capture),var(--svh2-chosen),var(--svh2-convert))}

/* ==========================================================================
   SERVICES THAT SOUND ALIKE
   ========================================================================== */
.svh2-cmp__tabs{display:none}
.svh2-pair.is-organic,.svh2-dock--pairs .is-organic{--pc:var(--svh2-chosen)}
.svh2-pair.is-paid,.svh2-dock--pairs .is-paid{--pc:var(--svh2-capture)}
.svh2-pair + .svh2-pair{margin-top:64px}
.svh2-pair__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-bottom:22px}
.svh2-pair__k{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--pc)}
.svh2-pair__head h3{margin:0;font-family:var(--font-head);font-weight:800;font-size:clamp(22px,2vw,28px);line-height:1.15;letter-spacing:-.025em;color:var(--text)}
.svh2-pair__body{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:22px;align-items:stretch}
.svh2-pair__pic{min-width:0}
.svh2-cols{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:14px;height:100%}
.svh2-col{position:relative;display:flex;flex-direction:column;min-width:0;padding:22px 22px 24px;border-radius:18px;border:1px solid var(--edge);background:#0E1014;
  transition:border-color .35s,background .35s,transform .45s var(--ease)}
.svh2-col::before{content:"";position:absolute;left:22px;right:22px;top:0;height:2px;background:var(--lc);opacity:0;transition:opacity .35s}
.svh2-col.is-on{border-color:color-mix(in srgb,var(--lc) 50%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--lc) 8%,#0E1014),#0E1014 70%)}
.svh2-col.is-on::before{opacity:1}
.svh2-col__t{margin:0}
.svh2-col__t a{display:inline-flex;align-items:center;gap:11px;font-family:var(--font-head);font-weight:800;font-size:23px;letter-spacing:-.02em;color:var(--text);text-decoration:none}
.svh2-col__t a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:18px}
.svh2-col__t b{font-size:17px;color:var(--lc);transition:transform .35s var(--ease)}
.svh2-col:hover .svh2-col__t b{transform:translateX(4px)}
.svh2-col__t a:focus-visible{outline:none}
.svh2-col:has(a:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.svh2-col__pic{display:none}
.svh2-col__rows{display:grid;gap:16px;margin:18px 0 0}
.svh2-col__rows div{padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}
.svh2-col__rows dt{font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--text-dim)}
.svh2-col__rows dd{margin:6px 0 0;font-size:15px;line-height:1.55;color:var(--text-mid)}

/* the pictures beside each group (kit/overview/where) */
.svh2-where{position:relative;height:100%;min-height:320px;border-radius:20px;border:1px solid var(--edge);background:#0A0C0F;overflow:hidden}
.svh2-where--organic{padding:18px 18px 0}
.svh2-where__screen{display:flex;flex-direction:column;gap:12px}
.svh2-where__bar{display:flex;align-items:center;gap:10px;height:38px;padding:0 14px;border-radius:100px;border:1px solid var(--gold-line);background:#15171C;min-width:0}
.svh2-where__bar svg{flex:0 0 auto;width:15px;height:15px;fill:none;stroke:var(--gold);stroke-width:2.2;stroke-linecap:round}
.svh2-where__q{display:flex;align-items:center;min-width:0;flex:1;font-size:14px;color:var(--text);white-space:nowrap;overflow:hidden}
.svh2-where__caret{flex:0 0 auto;width:1.5px;height:1.15em;margin-left:1px;background:var(--gold);animation:svcBlink 1s steps(2) infinite}
.svh2-where__zone{position:relative;border-radius:14px;transition:filter .45s,box-shadow .45s,border-color .45s}
.svh2-where__lab{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}
.svh2-where__lab svg{width:12px;height:12px;fill:currentColor}
.svh2-where__zone.is-answer{padding:12px 14px;border:1px solid var(--teal-line);background:rgba(79,191,160,.06)}
.svh2-where__zone.is-answer .svh2-where__lab{color:var(--teal)}
.svh2-where__ln{display:block;width:var(--w);height:5px;margin-top:8px;border-radius:3px;background:rgba(79,191,160,.35)}
.svh2-where__cite{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:4px 10px 4px 6px;border-radius:100px;border:1px solid var(--gold-line);background:var(--gold-soft)}
.svh2-where__cite i{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.svh2-where__cite b{width:54px;height:4px;border-radius:2px;background:rgba(244,160,0,.6)}
.svh2-where__zone.is-results{display:grid;gap:8px;padding:10px 12px 12px;border:1px solid transparent}
.svh2-where__res{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;align-items:center;padding:9px 10px;border-radius:10px;background:#15181D}
.svh2-where__res i{grid-row:span 2;width:14px;height:14px;border-radius:4px;background:rgba(255,255,255,.1)}
.svh2-where__res b{display:block;width:var(--w);height:5px;border-radius:3px;background:rgba(255,255,255,.3)}
.svh2-where__res em{display:block;width:var(--w);height:4px;border-radius:2px;background:rgba(255,255,255,.1)}
.svh2-where__res.is-you{background:rgba(244,160,0,.1);box-shadow:inset 0 0 0 1px var(--gold-line)}
.svh2-where__res.is-you i,.svh2-where__res.is-you b{background:var(--gold)}
.svh2-where__zone.is-assistant{position:absolute;right:14px;bottom:14px;width:62%;padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:#16191F;
  box-shadow:0 24px 50px -18px rgba(0,0,0,.95)}
.svh2-where__ai{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.svh2-where__ask{display:block;width:70%;height:14px;margin:10px 0 2px auto;border-radius:8px;background:#262A31}
.svh2-where__zone.is-assistant .svh2-where__ln{background:rgba(255,255,255,.18)}
.svh2-where[data-on] .svh2-where__zone{filter:brightness(.42) saturate(.4)}
.svh2-where[data-on="answer"] .is-answer,.svh2-where[data-on="results"] .is-results,.svh2-where[data-on="assistant"] .is-assistant{filter:none}
.svh2-where[data-on="results"] .is-results{border-color:var(--teal-line);box-shadow:0 0 34px -12px rgba(79,191,160,.6)}
.svh2-where[data-on="answer"] .is-answer{box-shadow:0 0 34px -10px rgba(79,191,160,.7)}
.svh2-where[data-on="assistant"] .is-assistant{border-color:var(--teal-line);box-shadow:0 24px 50px -18px rgba(0,0,0,.95),0 0 34px -10px rgba(79,191,160,.6)}
.svh2-where--paid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:64px 40px;padding:24px}
.svh2-where__wires{position:absolute;inset:24px;width:calc(100% - 48px);height:calc(100% - 48px);overflow:visible}
.svh2-where__wires path{fill:none;stroke:rgba(255,255,255,.1);stroke-width:2px;vector-effect:non-scaling-stroke;transition:stroke .45s}
.svh2-net{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0;padding:14px;border-radius:14px;border:1px solid var(--edge);
  background:#12151A;opacity:.42;transition:opacity .45s,border-color .45s,box-shadow .45s}
.svh2-net__ic{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.06);color:var(--text-soft)}
.svh2-net__ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.svh2-net__t{font-size:13.5px;font-weight:700;color:var(--text);line-height:1.2}
.svh2-net__ad{display:grid;gap:5px}
.svh2-net__ad b{width:74%;height:5px;border-radius:3px;background:rgba(255,255,255,.22)}
.svh2-net__ad i{width:92%;height:4px;border-radius:2px;background:rgba(255,255,255,.08)}
.svh2-where__budget{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;
  background:var(--gold);color:#111;box-shadow:0 0 0 6px rgba(244,160,0,.14),0 0 30px -4px rgba(244,160,0,.8)}
.svh2-where__budget svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.svh2-where[data-on="google"] .svh2-net.is-google,
.svh2-where[data-on="google-microsoft"] .svh2-net:is(.is-google,.is-microsoft),
.svh2-where[data-on="all"] .svh2-net{opacity:1;border-color:var(--gold-line);box-shadow:0 0 30px -12px rgba(244,160,0,.7)}
.svh2-where[data-on="google"] .svh2-net.is-google .svh2-net__ad b,
.svh2-where[data-on="google-microsoft"] .svh2-net:is(.is-google,.is-microsoft) .svh2-net__ad b,
.svh2-where[data-on="all"] .svh2-net .svh2-net__ad b{background:var(--gold)}
.svh2-where[data-on="google"] .svh2-where__wires .is-google,
.svh2-where[data-on="google-microsoft"] .svh2-where__wires :is(.is-google,.is-microsoft),
.svh2-where[data-on="all"] .svh2-where__wires path{stroke:rgba(244,160,0,.75)}

/* ==========================================================================
   FREE GROWTH AUDIT · a network status board
   ========================================================================== */
.svh2-board{position:relative;border-radius:24px;border:1px solid var(--edge);background:linear-gradient(180deg,#121419,#0B0C0F);overflow:hidden;
  box-shadow:0 50px 100px -60px rgba(0,0,0,.9)}
/* the scan line sweeps down the board by transform (moving it by top counted as a layout shift on every frame) */
.svh2-board::after{content:"";position:absolute;z-index:0;left:0;right:0;top:0;height:100%;pointer-events:none;opacity:0;transform:translateY(-100%);
  background:linear-gradient(180deg,transparent calc(100% - 90px),rgba(79,191,160,.08) calc(100% - 28px),rgba(79,191,160,.3) calc(100% - 1px),rgba(79,191,160,.5) calc(100% - 1px))}
.svh2-board.is-go::after{animation:svh2Sweep 9s ease-in-out .2s infinite}
@keyframes svh2Sweep{0%{transform:translateY(-100%);opacity:0}6%{opacity:1}40%{transform:none;opacity:1}46%,100%{transform:none;opacity:0}}
.svh2-board__head,.svh2-board__rows,.svh2-board__foot{position:relative;z-index:1}
.svh2-board__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:18px 28px;border-bottom:1px solid var(--edge);background:#0E1014}
.svh2-board__live i{display:block;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px var(--teal-soft);animation:wdpBlink 1.6s steps(2) infinite}
.svh2-board__t{margin:0;font-family:var(--font-head);font-weight:800;font-size:19px;letter-spacing:-.015em;color:var(--text)}
.svh2-board__label{margin-left:auto;font:600 12px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-dim)}
.svh2-board__rows{list-style:none;margin:0;padding:0}
.svh2-bd{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) minmax(190px,auto);align-items:center;gap:6px 24px;padding:20px 28px;border-bottom:1px solid rgba(255,255,255,.06)}
.svh2-bd__line{position:relative;align-self:stretch;display:grid;place-items:center;margin:-20px 0}
.svh2-bd__line::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:4px;margin-left:-2px;background:var(--lc);opacity:.85}
.svh2-bd.is-all .svh2-bd__line::before{background:linear-gradient(180deg,var(--svh2-create),var(--svh2-capture),var(--svh2-chosen),var(--svh2-convert))}
.svh2-bd__line .svh2-bullet{position:relative;width:18px;height:18px;border-width:4px}
.svh2-bd__txt h4{margin:0 0 5px;font-family:var(--font-head);font-weight:800;font-size:19px;letter-spacing:-.015em;color:var(--text)}
.svh2-bd__txt p{margin:0;font-size:15px;line-height:1.55;color:var(--text-mid)}
.svh2-bd__st{justify-self:end;display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border-radius:10px;border:1px solid;font-size:14px;font-weight:700;white-space:nowrap;
  transition:opacity .5s var(--ease),transform .5s var(--ease)}
.svh2-bd__st i{width:8px;height:8px;border-radius:50%;background:currentColor}
.svh2-bd.is-good .svh2-bd__st{color:var(--teal);background:var(--teal-soft);border-color:var(--teal-line)}
.svh2-bd.is-warn .svh2-bd__st{color:#FFC34D;background:var(--gold-soft);border-color:var(--gold-line)}
.svh2-bd.is-bad .svh2-bd__st{color:var(--coral);background:var(--coral-soft);border-color:var(--coral-line)}
.svh2-bd.is-bad .svh2-bd__st i{animation:wdpBlink 1.2s steps(2) infinite}
html.el8-js .svh2-board:not(.is-go) .svh2-bd__st{opacity:0;transform:translateX(14px)}
.svh2-board.is-go .svh2-bd__st{transition-delay:calc(.35s + var(--i) * .32s)}
.svh2-board__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:22px 28px;
  background:linear-gradient(90deg,rgba(244,160,0,.1),transparent 70%)}
.svh2-board__foot p{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0;font-size:15px;color:var(--text-mid)}
.svh2-board__foot p span{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.svh2-board__foot p b{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-head);font-size:18px;font-weight:800;color:var(--text)}
.svh2-audit__fine{margin:16px 0 0;font-size:14px;color:var(--text-dim)}

/* ==========================================================================
   FREE TOOLS
   ========================================================================== */
.svh2-tools{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(min(var(--n),4),minmax(0,1fr));gap:18px}
.svh2-tool{position:relative;border-radius:22px;border:1px solid var(--edge);background:linear-gradient(180deg,#111419,#0B0D10);transition:border-color .35s,transform .45s var(--ease)}
.svh2-tool:hover{border-color:var(--gold-line);transform:translateY(-3px)}
.svh2-tool a{display:flex;flex-direction:column;height:100%;padding:14px 14px 22px;color:inherit;text-decoration:none;border-radius:inherit}
.svh2-tool a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.svh2-tool__peek{display:grid;place-items:center;height:136px;margin-bottom:18px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:#0A0C0F;overflow:hidden}
.svh2-tool__row{display:flex;align-items:center;gap:12px;padding:0 8px}
.svh2-tool__ic{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:10px;border:1px solid var(--gold-line);background:var(--gold-soft);color:var(--gold)}
.svh2-tool__ic svg{width:18px;height:18px}
.svh2-tool__t{font-family:var(--font-head);font-weight:800;font-size:18px;line-height:1.2;letter-spacing:-.015em;color:var(--text)}
.svh2-tool__d{margin:12px 0 16px;padding:0 8px;font-size:14.5px;line-height:1.55;color:var(--text-mid)}
.svh2-tool__go{margin-top:auto;padding:0 8px;font-size:14.5px;font-weight:700;color:var(--gold)}
.svh2-tool__go b{display:inline-block;transition:transform .35s var(--ease)}
.svh2-tool:hover .svh2-tool__go b{transform:translateX(4px)}
/* the tool previews (kit/overview/tool) */
.svh2-tp{display:block;width:100%;max-width:240px;height:auto;overflow:visible}
.svh2-tp *{transform-box:fill-box}
.svh2-tp--split{display:grid;gap:14px;width:78%;padding:6px 0}
.svh2-tp__coin{justify-self:center;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#111}
.svh2-tp__coin svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.svh2-tp__bar{display:flex;gap:3px;height:18px}
.svh2-tp__bar i,.svh2-tp__keys i{background:var(--lc)}
.svh2-tp__bar i{flex:1 1 0;border-radius:4px;animation:svh2Share 9s ease-in-out infinite}
.svh2-tp__bar i:nth-child(1){flex-grow:1;--g1:1;--g2:1.6;--g3:.8}
.svh2-tp__bar i:nth-child(2){flex-grow:2.2;--g1:2.2;--g2:1.4;--g3:2.6}
.svh2-tp__bar i:nth-child(3){flex-grow:1.6;--g1:1.6;--g2:2.4;--g3:1.2}
.svh2-tp__bar i:nth-child(4){flex-grow:.8;--g1:.8;--g2:1;--g3:1.2}
@keyframes svh2Share{0%,100%{flex-grow:var(--g1)}33%{flex-grow:var(--g2)}66%{flex-grow:var(--g3)}}
.svh2-tp__keys{display:flex;justify-content:center;gap:14px}
.svh2-tp__keys i{width:10px;height:10px;border-radius:50%}
.svh2-tp .tp-axis{stroke:rgba(255,255,255,.14);stroke-width:1}
.svh2-tp .tp-paid{fill:rgba(244,160,0,.75)}
.svh2-tp .tp-org{fill:#4FBFA0;transform-origin:center bottom;animation:svh2Rise 8s var(--ease) infinite;animation-delay:calc(var(--m) * .12s)}
@keyframes svh2Rise{0%,8%{transform:scaleY(.15)}40%,100%{transform:none}}
.svh2-tp .tp-flat{stroke:rgba(244,160,0,.6);stroke-width:1;stroke-dasharray:3 3}
.svh2-tp .tp-line{stroke:#4FBFA0;stroke-width:4;stroke-linecap:round}
.svh2-tp .tp-grow{fill:rgba(79,191,160,.35);transform-origin:center bottom;animation:svh2Rise 8s var(--ease) infinite;animation-delay:calc(var(--m) * .5s)}
.svh2-tp .tp-stop{fill:#0B0D10;stroke:#4FBFA0;stroke-width:3.5}
.svh2-tp .tp-tok{fill:#fff;filter:drop-shadow(0 0 4px #4FBFA0);animation:svh2Tok 8s var(--ease) infinite}
@keyframes svh2Tok{0%{transform:none;opacity:0}6%{opacity:1}80%{transform:translateX(182px);opacity:1}90%,100%{transform:translateX(182px);opacity:0}}
.svh2-tp .tp-sheet{fill:#12151A;stroke:rgba(255,255,255,.12)}
.svh2-tp .tp-sq{fill:rgba(169,155,255,.5)}
.svh2-tp .tp-ln{fill:rgba(255,255,255,.22)}
.svh2-tp .tp-amt{fill:rgba(255,255,255,.4)}
.svh2-tp .tp-rule{stroke:rgba(255,255,255,.14);stroke-dasharray:3 3}
.svh2-tp .tp-gold{fill:var(--gold)}
.svh2-tp .tp-item{animation:svh2Line 7s var(--ease) infinite;animation-delay:calc(var(--m) * .35s)}
@keyframes svh2Line{0%,6%{opacity:0;transform:translateY(4px)}16%,100%{opacity:1;transform:none}}
.svh2-tp .tp-total{animation:svh2Line 7s var(--ease) 1.4s infinite}

/* ==========================================================================
   Tablets
   ========================================================================== */
@media (max-width:1180px){
  .svh2-map{max-width:640px}
  .svh2-route{grid-template-columns:minmax(0,1fr) 380px;gap:0 36px}
  .svh2-tk{width:380px}
  .svh2-pair__body{grid-template-columns:minmax(0,1fr)}
  .svh2-where{min-height:0}
  .svh2-where--organic{padding-bottom:150px}
  .svh2-where--paid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;gap:14px;padding:22px 22px 78px}
  .svh2-where__wires{display:none}
  .svh2-where__budget{top:auto;bottom:18px;margin-top:0}
  .svh2-where__budget::before{content:"";position:absolute;bottom:100%;left:50%;width:2px;height:12px;margin-left:-1px;background:var(--gold-line)}
  .svh2-tools{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1080px){
  .svh2-card.is-of-4{grid-column:span 6}
  .svh2-card.is-of-3{grid-column:span 6}
  .svh2-card.is-of-3 + .svh2-card.is-of-3 + .svh2-card.is-of-3{grid-column:1 / -1;flex-direction:row-reverse}
  .svh2-card.is-of-3 + .svh2-card.is-of-3 + .svh2-card.is-of-3 .svh2-card__pic{flex:0 0 44%;display:flex;align-items:center;padding:22px 24px}
  .svh2-ch{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"big head" "big line" "d d" "note note"}
  .svh2-ch__d{margin:22px 0 0}
  .svh2-route__tail{grid-template-columns:150px minmax(0,1fr);padding:26px 30px 26px 0}
  .svh2-route__merge{width:150px;height:84px}
  .svh2-route__cta{grid-column:2;justify-self:start}
  .svh2-route{grid-template-columns:minmax(0,1fr)}
  .svh2-route__slot{display:none}
  .svh2-route__car{grid-row:auto}
  .svh2-stages{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;row-gap:26px}
  .svh2-stage{grid-row:auto;grid-template-rows:none}
  .svh2-stage__rail > i,.svh2-trip__dot{display:none}
  .svh2-trip__end{grid-row:auto;justify-self:start;margin-top:16px}
}
/* the tickets sit under the list between phones and desktops */
@media (max-width:1080px) and (min-width:701px){
  .svh2-route{min-height:0}
  .svh2-tk{display:none}
}

/* ==========================================================================
   Phones
   ========================================================================== */
@media (max-width:700px){
  /* hero map */
  .svh2-map{padding:16px 14px 14px;border-radius:22px}
  .svh2-map__head{gap:10px;padding-bottom:12px}
  .svh2-map__key{gap:6px 12px;font-size:11.5px}
  .svh2-map__key i{width:14px}
  .svh2-stop > a,.svh2-stop__end{gap:6px;font-size:12.5px;transform:translate(-7px,-50%)}
  .svh2-stop__dot{width:14px;height:14px;border-width:3px;box-shadow:0 0 0 2px #0D0F13}
  .svh2-stop__t{padding:2px 5px 2px 1px}
  .svh2-stop.is-hub .svh2-stop__dot{height:18px;border-width:3px}
  .svh2-stop.is-hub .svh2-stop__dot::before{inset:3px}
  .svh2-stop.is-end .svh2-stop__dot{width:20px;height:20px;border-width:3px}
  .svh2-map__note{font-size:13.5px}

  /* the services: one swipe row, a chapter card before each group */
  /* the services: the four lines are tabs (a 2 x 2 key, every name in full); the chosen line shows its header,
     then its cards (one swipe row when it has more than one). Nothing stretches to fill: no empty cards */
  /* the four lines are switched from the dock at the foot of the screen (below), not from a key above the content */
  html.el8-js .svh2-jump{display:none}
  .svh2-jump{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 20px}
  .svh2-jump button{display:flex;align-items:center;gap:10px;min-width:0;min-height:56px;padding:8px 10px 8px 8px;border-radius:15px;border:1px solid var(--edge-2);
    background:rgba(255,255,255,.03);color:var(--text-dim);font:600 13px/1.25 Inter,system-ui,sans-serif;text-align:left;cursor:pointer;
    transition:background .3s,color .3s,border-color .3s}
  .svh2-jump b{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2.5px solid var(--g1);background:#0B0D10;
    font-family:var(--font-head);font-size:12.5px;font-weight:800;color:var(--text);transition:background .3s,color .3s,border-color .3s}
  .svh2-jump span{min-width:0}
  .svh2-jump button.is-on{border-color:color-mix(in srgb,var(--g1) 60%,transparent);background:color-mix(in srgb,var(--g1) 13%,#0F1216);color:var(--text)}
  .svh2-jump button.is-on b{border-color:transparent;background:linear-gradient(135deg,var(--g1) 30%,var(--g2) 70%);color:#0B0D10}
  .svh2-jump button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  html.el8-js .svh2-grp:not(.is-on){display:none}
  .svh2-grp + .svh2-grp{margin-top:48px}
  html.el8-js .svh2-grp + .svh2-grp{margin-top:0}
  /* one hand: each dock (the service lines, the pairs that sound alike) is its section's only switcher on phones and
     sits at the foot of the screen while the section is on screen. The dock is
     sticky inside the section, so it rests at the end of the line's content and leaves with the section; it only fades
     and slides (no layout change) as it docks. Opaque, above the page but under the nav and its menu */
  html.el8-js .svh2-dock{display:block}
  .svh2-dock{position:sticky;bottom:0;z-index:40;margin-top:28px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));pointer-events:none}
  .svh2-dock__in{display:grid;gap:4px;padding:5px;border-radius:18px;border:1px solid var(--edge-2);background:#101318;
    box-shadow:0 16px 36px rgba(0,0,0,.65),0 0 0 1px rgba(0,0,0,.5);pointer-events:auto;
    transition:opacity .25s,transform .35s var(--ease),visibility 0s}
  .svh2-dock:not(.is-docked) .svh2-dock__in{opacity:0;visibility:hidden;transform:translateY(calc(100% + 14px));pointer-events:none;
    transition:opacity .2s,transform .3s var(--ease),visibility 0s .3s}
  .svh2-dock button{min-width:0;border:0;border-radius:13px;background:none;cursor:pointer;color:var(--text-dim);-webkit-tap-highlight-color:transparent;
    transition:background .25s,color .25s}
  .svh2-dock button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
  .svh2-dock--lines .svh2-dock__in{grid-template-columns:repeat(4,minmax(0,1fr))}
  .svh2-dock--lines button{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;min-height:60px;padding:7px 2px 7px;
    font:700 9.5px/1.2 Inter,system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;text-align:center}
  .svh2-dock--lines b{flex:0 0 auto;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:2px solid var(--g1);background:#0B0D10;
    font:800 11px/1 var(--font-head);letter-spacing:0;color:var(--text);transition:background .25s,color .25s,border-color .25s}
  .svh2-dock--lines span{max-width:100%}
  .svh2-dock--lines button.is-on{background:color-mix(in srgb,var(--g1) 15%,#161A21);color:var(--text)}
  .svh2-dock--lines button.is-on b{border-color:transparent;background:linear-gradient(135deg,var(--g1) 30%,var(--g2) 70%);color:#0B0D10}
  .svh2-dock--pairs .svh2-dock__in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svh2-dock--pairs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:8px 10px;
    font:600 13px/1.25 Inter,system-ui,sans-serif;text-align:center}
  .svh2-dock--pairs i{flex:0 0 auto;width:10px;height:10px;border-radius:50%;border:2.5px solid var(--pc)}
  .svh2-dock--pairs button.is-on{background:var(--gold);color:#111}
  .svh2-dock--pairs button.is-on i{border-color:#111;background:#111}
  .svh2-ch{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"big head" "d d" "note note" "line line";column-gap:14px;align-items:center;margin:0;padding-top:24px}
  .svh2-ch:first-child{margin-top:0}
  .svh2-ch__big{width:50px;height:50px;margin:0;box-shadow:0 0 0 5px color-mix(in srgb,var(--g1) 13%,transparent)}
  .svh2-ch__big b{font-size:19px}
  .svh2-ch__t{margin-top:6px;font-size:24px}
  .svh2-ch__d{margin:18px 0 0;align-self:start}
  .svh2-ch__line{margin-top:18px;row-gap:12px}
  .svh2-ch__line li{font-size:14px;color:var(--text)}
  .svh2-ch__line li + li::before{width:18px}
  .svh2-ch__line i{width:15px;height:15px;border-width:3.5px}
  .svh2-ch__note{margin-top:16px;padding:12px 14px;font-size:14px;border-left-width:1px}
  .svh2-grp.is-one .svh2-ch__line{display:none}
  .svh2-grp__car{margin-top:18px}
  .svh2-grp__car.is-solo .svh2-grp__cards{display:block;margin:0}
  .svh2-grp__car.is-solo .svh2-card{margin:4px 14px 0}
  .svh2-grp__cards{margin-top:0}
  .wdp[data-svc="services"] .svh2-lede{padding-left:34px;font-size:15.5px}
  .svh2-lede__first{margin-bottom:6px;font-size:18px}
  .svh2-lede::before{left:4px;width:15px;
    background:linear-gradient(90deg,var(--svh2-create) 0 2.25px,transparent 2.25px 4.25px,var(--svh2-capture) 4.25px 6.5px,transparent 6.5px 8.5px,
      var(--svh2-chosen) 8.5px 10.75px,transparent 10.75px 12.75px,var(--svh2-convert) 12.75px 15px)}
  .svh2-lede::after{width:23px;height:15px;top:4.5px;border-width:3px}
  .wdp[data-svc="services"] .svh2-ch__d{padding-left:30px}
  .svh2-tools-sec .wdp-head .svc-link{margin-left:34px}
  .svh2-ch__d::before{left:6px;top:15px;width:4px;background:linear-gradient(180deg,var(--g1),var(--g2))}
  .svh2-ch__d::after{width:16px;height:16px;top:4px;border-width:3.5px}
  .svh2-card,.svh2-card.is-of-1,.svh2-card.is-of-3 + .svh2-card.is-of-3 + .svh2-card.is-of-3{flex-direction:column}
  .svh2-card.is-of-1 .svh2-card__pic,.svh2-card.is-of-3 + .svh2-card.is-of-3 + .svh2-card.is-of-3 .svh2-card__pic{flex:none;display:block;padding:14px 14px 0}
  .svh2-card.is-of-1 .svh2-card__body,.svh2-card__body{padding:18px 20px 22px}
  .svh2-card__t,.svh2-card.is-of-1 .svh2-card__t{font-size:21px}
  .svh2-card__d,.svh2-card.is-of-1 .svh2-card__d{font-size:15px}
  .svh2-card:hover{transform:none}

  /* which service: a ticket per situation */
  .svh2-rts{border-top:0}
  .svh2-rt{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border:0;border-radius:18px;overflow:hidden;
    background:radial-gradient(120% 80% at 100% 0%,#F7F1E4,var(--svh2-paper) 60%);color:var(--svh2-ink)}
  .svh2-rt.is-on,.svh2-rt:hover{background:radial-gradient(120% 80% at 100% 0%,#F7F1E4,var(--svh2-paper) 60%);box-shadow:none}
  .svh2-tk,.svh2-tk__main{display:contents}
  .svh2-tk{opacity:1;visibility:visible;transition:none}
  .svh2-tk__main::before,.svh2-tk__main::after,.svh2-tk__dup,.svh2-tk__go{display:none}
  .svh2-tk__stub{order:0;flex-direction:row;justify-content:flex-start;gap:10px;padding:11px 16px;border-radius:0}
  .svh2-tk__stub span{writing-mode:horizontal-tb;transform:none;font-size:11px}
  .svh2-tk__stub em{margin-left:auto}
  .svh2-tk__stub::after{left:14px;right:14px;top:auto;bottom:-1px;border-right:0;border-bottom:2px dashed rgba(21,23,27,.28)}
  .svh2-tk__stub .svh2-bullet{width:14px;height:14px;border-width:3.5px}
  .svh2-rt::before,.svh2-rt__stop{display:none}
  .svh2-rt__q{order:1;padding:18px 18px 0 22px;font-family:inherit;font-weight:400;font-size:16px;line-height:1.45;letter-spacing:0;color:rgba(21,23,27,.85)}
  .svh2-rt.is-on .svh2-rt__q{color:rgba(21,23,27,.85)}
  .svh2-rt__qm{color:rgba(21,23,27,.45)}
  .svh2-rt__svc{order:2;flex-direction:column;align-items:flex-start;gap:4px;margin:14px 18px 0;padding:14px 0 0;border:0;border-radius:0;border-top:1.5px dashed rgba(21,23,27,.2);
    background:none;white-space:normal;color:var(--svh2-ink)}
  .svh2-rt__svc::before{display:none}
  .svh2-rt__svc:hover,.svh2-rt.is-on .svh2-rt__svc{color:var(--svh2-ink);background:none;border-color:rgba(21,23,27,.2)}
  .svh2-rt__to{display:block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(21,23,27,.5)}
  .svh2-rt__svc b{font-family:var(--font-head);font-weight:800;font-size:22px;line-height:1.12;letter-spacing:-.02em}
  .svh2-rt__svc i{position:absolute;right:0;bottom:2px;font-size:18px;color:var(--svh2-ink)}
  .svh2-rt__svc::after{content:"";position:absolute;inset:-160px -18px -200px}
  .svh2-tk__pic{order:3;margin:14px 18px 18px;margin-top:auto}
  .svh2-rt .svh2-rt__svc + .svh2-tk .svh2-tk__pic{margin-top:16px}
  .svh2-route__tail{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:28px;padding:0 20px 22px;border-radius:22px}
  .svh2-route__merge{width:150px;height:84px;margin:6px 0 -2px -20px}
  .svh2-route__ask{font-size:15.5px}
  .svh2-route__ask .svh2-lede__first{font-size:24px}
  .svh2-route__cta{grid-column:auto;justify-self:stretch;width:100%}

  /* the swipe rows' dots are added by ind-wdp.js: their room is kept from the first frame, so a reload part way down
     the page never pushes the reader down when they arrive */
  html.el8-js .wdp[data-svc="services"]:not(.svh2-ready) .wdp-car::after{content:"";display:block;height:26px}
  html.el8-js .wdp[data-svc="services"] .wdp-car:has(> .wdp-car__nav)::after{content:none}

  /* working together: the touches above, a card per stage */
  .svh2-trip{padding:18px 0 0;border:0;background:none;border-radius:0}
  .svh2-trip__mini{position:relative;display:flex;align-items:center;justify-content:space-between;margin:10px 0 16px;padding:0 4px}
  .svh2-trip__mini::before{content:"";position:absolute;left:24px;right:24px;top:50%;height:3px;margin-top:-1.5px;border-radius:2px;
    background:linear-gradient(90deg,var(--svh2-create),var(--svh2-capture),var(--svh2-chosen),var(--svh2-convert),var(--gold));opacity:.4}
  .svh2-trip__mini span{position:relative;display:grid;place-items:center;cursor:pointer;width:40px;height:40px;border-radius:50%;background:#0B0D10;border:2px solid var(--lc);color:var(--lc);
    transition:background .35s,color .35s,box-shadow .45s}
  .svh2-trip__mini span svg{width:18px;height:18px}
  .svh2-trip__mini span.is-on{background:var(--lc);color:#0B0D10;box-shadow:0 0 22px -4px var(--lc)}
  .svh2-trip__mini-end{position:relative;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#15130D;border:1.5px solid var(--gold-line);color:var(--gold)}
  .svh2-trip__mini-end svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
  .svh2-trip.is-at-end .svh2-trip__mini-end{background:var(--gold);color:#111}
  .svh2-stage{display:flex;flex-direction:column;padding:20px 20px 22px;border-radius:20px;border:1px solid var(--edge);background:linear-gradient(180deg,#121519,#0B0D10)}
  .svh2-stage__rail{display:none}
  .svh2-touch{min-height:0;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--lc) 10%,#101318);border:1px solid color-mix(in srgb,var(--lc) 35%,transparent)}
  .svh2-touch__t{font-size:16.5px}
  .svh2-stage__k{margin-top:18px}
  .svh2-stage h3{font-size:21px}
  .svh2-trip__end{display:none}
  .svh2-trip__report{margin-top:22px;font-size:15.5px}

  /* services that sound alike: one group at a time */
  /* the two groups are switched from the dock at the foot of the screen, not from tabs above the content */
  html.el8-js .svh2-cmp__tabs{display:none}
  .svh2-cmp__tabs{gap:6px;padding:5px;margin-bottom:20px;border-radius:18px;border:1px solid var(--edge-2);background:rgba(255,255,255,.03)}
  .svh2-cmp__tabs button{flex:1 1 0;min-width:0;padding:10px 8px;border:0;border-radius:13px;background:none;cursor:pointer;font:600 13px/1.25 Inter,system-ui,sans-serif;
    color:var(--text-dim);transition:background .3s,color .3s}
  .svh2-cmp__tabs button.is-on{background:var(--gold);color:#111}
  html.el8-js .svh2-pair:not(.is-on){display:none}
  html.el8-js .svh2-pair + .svh2-pair{margin-top:0}
  .svh2-pair + .svh2-pair{margin-top:48px}
  html.el8-js .svh2-pair__k{display:none}
  .svh2-pair__head{margin-bottom:16px}
  .svh2-pair__head h3{font-size:21px}
  .svh2-pair__body{gap:16px}
  .svh2-where{border-radius:18px}
  .svh2-where--organic{padding:14px 14px 130px}
  .svh2-where__zone.is-assistant{right:10px;bottom:10px;width:70%}
  .svh2-where__zone.is-answer .svh2-where__ln:nth-of-type(3){display:none}
  .svh2-where__zone.is-results .svh2-where__res:last-child{display:none}
  .svh2-where--paid{grid-template-columns:1fr 1fr;gap:10px;padding:14px 14px 70px}
  .svh2-net{flex-direction:row;align-items:center;padding:10px}
  .svh2-net__ad{display:none}
  .svh2-net__t{font-size:12.5px}
  .svh2-where__budget{width:40px;height:40px;margin-left:-20px;bottom:14px}
  .svh2-col{padding:20px}
  /* each service card carries a small picture of where it puts you, lit for that service; the group picture is for wide screens */
  .svh2-pair__pic{display:none}
  .svh2-col__pic{display:block;margin:-6px -6px 18px}
  .svh2-col__rows{gap:12px;margin-top:14px}
  .svh2-col__rows div{padding-top:12px}
  .svh2-where.svh2-where--mini{height:auto;min-height:0;border-radius:14px}
  .svh2-where--organic.svh2-where--mini{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"bar bar" "answer assistant" "results results";
    gap:8px;padding:10px}
  .svh2-where--mini .svh2-where__screen{display:contents}
  .svh2-where--mini .svh2-where__bar{grid-area:bar;height:32px;gap:8px;padding:0 12px}
  .svh2-where--mini .svh2-where__bar svg{width:13px;height:13px}
  .svh2-where--mini .svh2-where__q{font-size:13px}
  .svh2-where--mini .svh2-where__lab{gap:5px;font-size:9.5px;letter-spacing:.08em}
  .svh2-where--mini .svh2-where__lab svg{width:10px;height:10px}
  .svh2-where--mini .svh2-where__zone{border-radius:10px}
  .svh2-where--mini .svh2-where__zone.is-answer{grid-area:answer;padding:9px 10px}
  .svh2-where--mini .svh2-where__zone.is-assistant{grid-area:assistant;position:static;width:auto;padding:9px 10px;box-shadow:none}
  .svh2-where--mini .svh2-where__zone.is-results{grid-area:results;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;padding:8px 10px 10px}
  .svh2-where--mini .is-results .svh2-where__lab{grid-column:1 / -1}
  .svh2-where--mini .svh2-where__ln{height:4px;margin-top:6px}
  .svh2-where--mini .svh2-where__ln:nth-of-type(3){display:none}
  .svh2-where--mini .svh2-where__ask{display:none}
  .svh2-where--mini .svh2-where__cite{margin-top:8px;padding:3px 8px 3px 5px}
  .svh2-where--mini .svh2-where__cite b{width:30px}
  .svh2-where--mini .svh2-where__res{padding:7px 8px;gap:4px 8px}
  .svh2-where--mini .svh2-where__res i{width:12px;height:12px}
  .svh2-where--mini .svh2-where__res:last-child{display:none}
  .svh2-where[data-on="assistant"].svh2-where--mini .is-assistant{box-shadow:0 0 26px -10px rgba(79,191,160,.7)}
  .svh2-where--paid.svh2-where--mini{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;gap:6px;padding:10px 10px 58px}
  .svh2-where--mini .svh2-where__wires{display:none}
  .svh2-where--mini .svh2-net{flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;padding:10px 3px 9px;border-radius:11px;text-align:center}
  .svh2-where--mini .svh2-net__ic{width:28px;height:28px;border-radius:8px}
  .svh2-where--mini .svh2-net__t{font-size:11px;line-height:1.2}
  .svh2-where--mini .svh2-where__budget{top:auto;bottom:10px;width:36px;height:36px;margin:0 0 0 -18px}
  .svh2-where--mini .svh2-where__budget svg{width:18px;height:18px}
  .svh2-where--mini .svh2-where__budget::before{height:10px}

  /* the audit board */
  .svh2-board__head{padding:16px 18px}
  .svh2-board__label{margin-left:0;flex-basis:100%}
  .svh2-bd{grid-template-columns:30px minmax(0,1fr);gap:8px 14px;padding:15px 18px 15px 14px}
  .svh2-bd__line{grid-row:span 2;margin:-15px 0}
  .svh2-bd__line .svh2-bullet{width:16px;height:16px;border-width:3.5px}
  .svh2-bd__txt h4{font-size:17.5px}
  .svh2-bd__txt h4{margin-bottom:3px}
  .svh2-bd__txt p{font-size:14px;line-height:1.5}
  .svh2-bd__st{grid-column:2;justify-self:start;padding:7px 12px;font-size:13px;white-space:normal}
  .svh2-board__foot{padding:18px}
  .svh2-board__foot .wdp-btn{width:100%;white-space:normal;height:auto;min-height:52px;padding:12px 18px;text-align:center}

  .svh2-tools{grid-template-columns:none}
}

/* the smallest phones: the four networks in a card's picture sit two by two, so each name fits on its tile */
@media (max-width:374px){
  /* the dock takes a little of the gutter so each line's name keeps its words whole */
  .svh2-dock{margin-left:-8px;margin-right:-8px}
  .svh2-dock__in{gap:2px;padding:4px}
  .svh2-dock--lines button{padding-left:1px;padding-right:1px;letter-spacing:.02em}
  .svh2-where--paid.svh2-where--mini{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svh2-where--mini .svh2-net{flex-direction:row;justify-content:flex-start;gap:7px;padding:7px 8px;text-align:left}
  .svh2-where--mini .svh2-net__ic{flex:0 0 auto;width:24px;height:24px}
}

/* ==========================================================================
   Reduced motion: nothing plays; every picture rests in its finished state
   ========================================================================== */
@media (prefers-reduced-motion:reduce){
  .svh2-map,.svh2-map__svg,.svh2-stop,.svh2-pv *,.svh2-tp,.svh2-tp *,.svh2-where__caret,.svh2-board::after,.svh2-board__live i,.svh2-bd__st i,.svh2-route__hub-in,
  html.el8-js .svh2-rt.is-on.is-printing .svh2-tk{animation:none!important}
  .svh2-pv--web .pv-scan,.svh2-pv--aeo .pv-aeo-spark,.svh2-pv--cro .pv-cro-in circle,.svh2-tp .tp-tok{opacity:0}
  .svh2-tok,.svh2-trip__dot,.svh2-route__run{display:none}
  html.el8-js .svh2-board:not(.is-go) .svh2-bd__st{opacity:1;transform:none}
  .svh2-card,.svh2-tool,.svh2-col{transition:none}
  .svh2-dock__in,.svh2-dock:not(.is-docked) .svh2-dock__in{transform:none;transition:none}
}
