
/* Draft v3 of /service/ios-app-development/ - the precedent for every /service/ child page.
   CONTENT: all 18 live sections, live order, live copy (factual fixes listed in the review notes).
   COLOUR: one crimson family graded by light - ink, wine, blood, crimson, hot, rose, blush, stone.
     Each section carries its own light source (radial pools) so no two neighbours read flat.
   MOTION: every animation explains something (the build pipeline runs, numbers count, code types,
     diagrams draw, the process line fills). Transform/opacity only. Loops pause off-screen.
     prefers-reduced-motion: the page renders complete and still. Without JS: complete and still.
   LAYOUT: two-column sections stretch to one height; card rows share edges and padding. */
html,body{margin:0;background:#fff}
@property --a{syntax:'<angle>';initial-value:0deg;inherits:false}
.mcv-sp{
  --ink:#141414; --ink-2:#1d1c1c; --ink-3:#2a2928; --wine:#141414; --blood:#141414;
  --crimson:#ff678b; --crimson-dk:#ff678b; --hot:#ff678b; --rose:#fff48d;
  --paper:#fff; --stone:#fffbd6; --stone-2:#fff3b0; --blush:#ffe9ee; --ok:#2fbf71;
  --text:#141414; --text-2:#3b3833; --muted:#55504a; --line:#dcd8cd; --line-2:#e8e4d8; --card-line:#141414;
  --d-text:#ffffff; --d-text-2:#dcd7c9; --d-muted:#bdb8aa; --d-line:rgba(255,255,255,.1);
  --grad:linear-gradient(100deg,#ff678b 0%,#ff678b 55%,#ff678b 100%);
  --grad-d:linear-gradient(100deg,#ff678b 0%,#fff48d 55%,#ffd3dd 100%);
  --btn:linear-gradient(135deg,#ff678b 0%,#ff678b 50%,#ff678b 100%);
  --w:1280px; --pad:40px; --stick:0px;
  --sans:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --ease:cubic-bezier(.2,.7,.2,1); --spring:cubic-bezier(.34,1.4,.64,1);
  font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--text);background:var(--paper);
  -webkit-font-smoothing:antialiased;color-scheme:light;overflow-x:clip}
.mcv-sp *,.mcv-sp *::before,.mcv-sp *::after{box-sizing:border-box}
/* Resets at zero specificity (:where): a reset must never out-rank a component's own spacing.
   (The live deploy re-scopes components to div.mcv-sp .x so they still beat the theme kit.) */
.mcv-sp :where(h1,h2,h3,h4){margin:0;font-weight:700;text-wrap:balance}
.mcv-sp :where(p,figure,blockquote){margin:0}
.mcv-sp :where(ul,ol){margin:0;padding:0;list-style:none}
.mcv-sp :where(a){color:inherit;text-decoration:none}
.mcv-sp :focus-visible{outline:2px solid var(--hot);outline-offset:3px;border-radius:6px}
.sp-wrap{position:relative;max-width:calc(var(--w) + var(--pad)*2);margin-inline:auto;padding-inline:var(--pad)}
.sp-num{font-variant-numeric:tabular-nums}
[id]{scroll-margin-top:calc(var(--stick) + 72px)}

/* ---------- type ---------- */
.sp-kicker{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;line-height:1.4;color:var(--crimson);letter-spacing:.01em}
.sp-kicker::before{content:"";width:22px;height:2px;border-radius:2px;background:var(--grad)}
.on-dark .sp-kicker{color:var(--rose)}
.on-dark .sp-kicker::before{background:var(--grad-d)}
.sp-h2{margin-top:18px;font-size:clamp(30px,3.4vw,46px);line-height:1.08;letter-spacing:-.035em;font-weight:800}
.on-dark .sp-h2{color:#fff}
.gx{color:var(--crimson)}
.on-dark .gx{color:var(--rose)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .gx{padding-bottom:.12em;margin-bottom:-.12em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
  .on-dark .gx{background:var(--grad-d);-webkit-background-clip:text;background-clip:text;color:transparent}
}
.sp-body{font-size:17px;line-height:1.7;color:var(--text-2)}
.on-dark .sp-body{color:var(--d-text-2)}
.sp-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 72px;align-items:end;margin-bottom:64px}
.sp-head .sp-body{max-width:48ch}
.sp-head-side{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.sp-sec{position:relative;padding-block:120px;isolation:isolate;overflow:clip}
.sp-tick{width:16px;height:16px;flex:none;margin-top:4px;color:var(--crimson)}
.on-dark .sp-tick{color:var(--rose)}

/* ---------- section light (colour grading) ---------- */
.lt-white{background:radial-gradient(900px 500px at 100% 0%,rgba(251,239,241,.9),transparent 70%),#fff}
.lt-stone{background:radial-gradient(800px 480px at 0% 0%,#fff 0%,transparent 70%),radial-gradient(900px 600px at 100% 100%,rgba(255,103,139,.07),transparent 70%),linear-gradient(180deg,#fffbd6,#fff3b0)}
.lt-blush{background:radial-gradient(900px 520px at 85% 10%,rgba(255,103,139,.14),transparent 70%),linear-gradient(180deg,#fff0f3,#ffd3dd)}
.lt-ink{background:radial-gradient(900px 560px at 85% 0%,rgba(255,103,139,.32),transparent 70%),radial-gradient(700px 520px at 0% 100%,rgba(20,20,20,.45),transparent 70%),var(--ink);color:var(--d-text)}
.lt-wine{background:radial-gradient(1000px 640px at 50% -10%,rgba(255,103,139,.28),transparent 65%),radial-gradient(800px 600px at 100% 100%,rgba(0,0,0,.45),transparent 70%),linear-gradient(160deg,#141414 0%,#141414 55%,#141414 100%);color:var(--d-text)}
.lt-dusk{background:radial-gradient(900px 600px at 15% 0%,rgba(255,103,139,.35),transparent 65%),linear-gradient(180deg,#141414 0%,#141414 60%,#141414 100%);color:var(--d-text)}
.sp-grid-bg::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(20,20,20,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,20,20,.045) 1px,transparent 1px);background-size:48px 48px;
  mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent);-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent)}
.on-dark.sp-grid-bg::before{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px)}

/* ---------- buttons ---------- */
.sp-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 26px;border-radius:14px;overflow:hidden;
  border:1px solid transparent;background:var(--btn);color:#fff;font-size:15px;font-weight:700;white-space:nowrap;letter-spacing:-.005em;
  box-shadow:0 10px 28px -12px rgba(255,103,139,.7),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .25s var(--spring),box-shadow .25s var(--ease),background-color .2s}
.sp-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease)}
.sp-btn:hover{transform:translateY(-2px);box-shadow:0 18px 36px -14px rgba(255,103,139,.8),inset 0 1px 0 rgba(255,255,255,.18)}
.sp-btn:hover::after{transform:translateX(120%)}
.sp-btn svg{width:18px;height:18px;position:relative}
.sp-btn.ghost{background:rgba(255,255,255,.6);color:var(--text);border-color:var(--line);box-shadow:none;backdrop-filter:blur(6px)}
.sp-btn.ghost::after{background:linear-gradient(110deg,transparent 30%,rgba(255,103,139,.08) 50%,transparent 70%)}
.sp-btn.ghost:hover{border-color:var(--text)}
.on-dark .sp-btn.ghost{background:rgba(255,255,255,.04);color:#fff;border-color:rgba(255,255,255,.22)}
.on-dark .sp-btn.ghost::after{background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.12) 50%,transparent 70%)}
.on-dark .sp-btn.ghost:hover{border-color:rgba(255,255,255,.5)}
.sp-btn.sm{height:44px;padding:0 18px;font-size:14px;border-radius:12px}
.sp-link{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;color:var(--crimson)}
.sp-link:hover{color:var(--crimson-dk)}
.on-dark .sp-link{color:#fff}
.sp-chev{width:14px;height:14px;flex:0 0 14px;transition:transform .2s var(--ease)}
.sp-link:hover .sp-chev,.sp-rel a:hover svg{transform:translateX(3px)}

/* ---------- motion system ---------- */
.sp-anim .rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0) * 80ms)}
.sp-anim .rv.in{opacity:1;transform:none}
.spot{position:relative;isolation:isolate}
.spot::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(380px circle at var(--x,50%) var(--y,50%),rgba(255,103,139,.13),transparent 45%)}
.spot:hover::before{opacity:1}
.on-dark .spot::before,.spot.dk::before{background:radial-gradient(380px circle at var(--x,50%) var(--y,50%),rgba(255,244,141,.16),transparent 45%)}
@keyframes sp-bob{50%{transform:translateY(-9px)}}
@keyframes sp-drift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-5%,4%,0) scale(1.1)}}
@keyframes sp-rise{from{opacity:0;transform:translateY(.45em)}to{opacity:1;transform:none}}
@keyframes sp-spin{to{--a:360deg}}
@keyframes sp-sheen{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
@keyframes sp-blink{50%{opacity:0}}
@keyframes sp-pulse{0%{box-shadow:0 0 0 0 rgba(47,191,113,.55)}100%{box-shadow:0 0 0 10px rgba(47,191,113,0)}}
@keyframes sp-ring{from{stroke-dashoffset:151}to{stroke-dashoffset:40}}
.idle,.idle *,.idle::after,.idle::before{animation-play-state:paused!important}

/* review strip (draft only) */
.sp-review{padding:10px 20px;background:#2a2928;color:#dcd7c9;text-align:center;font:500 13px/1.4 var(--sans)}
.sp-review b{color:#fff;font-weight:600}
.sp-review a{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* ============================================================ 1 HERO */
.sp-hero{position:relative;padding-block:44px 0;overflow:clip;isolation:isolate;color:var(--d-text);
  background:linear-gradient(180deg,#141414 0%,#141414 70%,#1b0a10 100%)}
.sp-hero::after{content:"";position:absolute;inset:-25%;z-index:-2;pointer-events:none;
  background:radial-gradient(34% 30% at 74% 32%,rgba(255,103,139,.55),transparent 70%),
             radial-gradient(30% 28% at 18% 92%,rgba(20,20,20,.7),transparent 70%),
             radial-gradient(22% 20% at 96% 88%,rgba(255,103,139,.22),transparent 70%),
             radial-gradient(18% 16% at 45% 8%,rgba(255,244,141,.08),transparent 70%);
  animation:sp-drift 16s ease-in-out infinite alternate}
.sp-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:56px 56px;mask-image:radial-gradient(60% 70% at 72% 40%,#000 10%,transparent 75%);-webkit-mask-image:radial-gradient(60% 70% at 72% 40%,#000 10%,transparent 75%)}
.sp-crumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--d-muted)}
.sp-crumb a:hover{color:#fff}
.sp-crumb span[aria-current]{color:var(--d-text-2)}
.sp-hero-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:64px;align-items:center;margin-top:72px}
.sp-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(90deg,rgba(47,191,113,.12),rgba(255,255,255,.03));font-size:13px;font-weight:600;color:var(--d-text)}
.sp-pill i,.sp-live i{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none;animation:sp-pulse 1.8s ease-out infinite}
.sp-hero h1{margin-top:28px;font-size:clamp(44px,5.2vw,78px);line-height:1.08;letter-spacing:-.05em;font-weight:800;color:#fff}
.sp-hero h1 .w{display:inline-block}
.sp-anim .sp-hero h1 .w{opacity:0;animation:sp-rise .9s var(--ease) forwards;animation-delay:calc(var(--i) * 90ms + .15s)}
.sp-sub{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.sp-sub span{padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:14px;font-weight:700;color:#fff}
.sp-sub span:last-child{background:linear-gradient(90deg,rgba(255,103,139,.28),rgba(255,103,139,.08));border-color:rgba(255,103,139,.45)}
.sp-lede{margin-top:24px;max-width:54ch;font-size:18px;line-height:1.65;color:var(--d-text-2)}
.sp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.sp-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:24px;font-size:14px;color:var(--d-muted)}
.sp-meta b{color:#fff;font-weight:700}
.sp-meta a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.35)}
.sp-meta .star{color:#e8446c}

/* hero art */
.sp-art{position:relative;aspect-ratio:10/8.6;max-width:100%}
.sp-art::before{content:"";position:absolute;left:12%;right:4%;bottom:0;height:24%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,103,139,.35),transparent);filter:blur(6px)}
.sp-ipad,.sp-watch,.sp-chip{transition:translate .5s var(--ease)}
.sp-ipad{position:absolute;right:0;top:9%;width:81%;aspect-ratio:4/3;padding:2.2%;border-radius:7%/9.3%;
  background:linear-gradient(145deg,#2a2928,#141414 40%,#141414);border:1px solid rgba(255,255,255,.2);
  box-shadow:0 50px 90px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.6),inset 0 0 0 2px #2a2928;
  translate:calc(var(--mx,0) * -16px) calc(var(--my,0) * -12px)}
.sp-ipad::after{content:"";position:absolute;inset:2.2%;border-radius:4.6%/6.2%;pointer-events:none;
  background:linear-gradient(125deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 28%)}
.sp-scr{height:100%;border-radius:4.6%/6.2%;overflow:hidden;background:linear-gradient(180deg,#1d1c1c,#141414);display:flex;flex-direction:column;
  font-family:var(--mono);font-size:clamp(7px,.72vw,11px);color:#dcd7c9}
.sp-xbar{display:flex;justify-content:space-between;align-items:center;padding:3% 4%;border-bottom:1px solid #3a3937;color:#bdb8aa}
.sp-xbar b{display:flex;align-items:center;gap:6px;color:#ffffff;font-weight:600}
.sp-xbar b::before{content:"";width:8px;height:8px;border-radius:2px;background:linear-gradient(135deg,#3aa0ff,#1d6fe0)}
.sp-xbody{flex:1;display:grid;grid-template-columns:1.25fr 1fr;gap:3.5%;padding:3.5% 4%}
.sp-xcol{display:flex;flex-direction:column;gap:5%}
.sp-xbox{border:1px solid #3a3937;border-radius:8px;padding:5% 6%;background:linear-gradient(180deg,#1d1c1c,#1d1c1c)}
.sp-xhead{display:flex;justify-content:space-between;align-items:center;gap:6px;color:#ffffff;font-weight:600}
.sp-xhead em{font-style:normal;color:var(--ok);font-size:.9em}
.sp-xhead .tag{padding:1px 6px;border-radius:4px;background:rgba(255,103,139,.18);color:#fff48d;font-size:.85em}
.sp-xsteps{margin-top:6%;display:grid;gap:5px}
.sp-xsteps li{display:flex;align-items:center;gap:7px;transition:opacity .3s,color .3s}
.sp-xsteps li::before{content:"✓";display:grid;place-items:center;width:1.4em;height:1.4em;border-radius:50%;background:rgba(47,191,113,.15);color:var(--ok);font-size:.85em;transition:background-color .3s,color .3s}
.sp-anim .sp-xsteps li:not(.done){opacity:.4}
.sp-anim .sp-xsteps li:not(.done)::before{content:"";background:transparent;box-shadow:inset 0 0 0 1px #55524e}
.sp-anim .sp-xsteps li.run::before{content:"";box-shadow:inset 0 0 0 2px var(--hot);animation:sp-blink .6s steps(2) infinite}
.sp-xok{margin-top:6%;padding-top:5%;border-top:1px dashed #3a3937;color:var(--ok);font-weight:700;transition:opacity .4s,transform .4s var(--ease)}
.sp-xok span{display:block;color:#bdb8aa;font-weight:400}
.sp-anim .sp-xok:not(.show){opacity:0;transform:translateY(5px)}
.sp-xprog{height:5px;border-radius:3px;background:#3a3937;margin:8% 0 5%;overflow:hidden}
.sp-xprog::after{content:"";display:block;width:20%;height:100%;background:linear-gradient(90deg,#ff678b,#ff678b);transition:width 1.4s var(--ease)}
.sp-anim .sp-xprog:not(.go)::after{width:0}
.sp-xkv b{display:block;color:#ffffff;font-weight:600;font-size:1.15em}
.sp-xtabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #3a3937;text-align:center}
.sp-xtabs span{padding:2.2% 0;color:#bdb8aa}
.sp-xtabs span.on{color:#fff;box-shadow:inset 0 2px 0 var(--hot)}
.sp-watch{position:absolute;left:1%;bottom:0;width:23%;aspect-ratio:.84;padding:7%;border-radius:30%/26%;
  background:linear-gradient(145deg,#2a2928,#141414 45%);border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 50px -18px rgba(0,0,0,.95);
  translate:calc(var(--mx,0) * 22px) calc(var(--my,0) * 16px)}
.sp-watch::before{content:"";position:absolute;right:-5%;top:28%;width:6%;height:16%;border-radius:4px;background:#3a3937}
.sp-wscr{height:100%;border-radius:26%/22%;background:radial-gradient(circle at 50% 40%,#1c0a0f,#000 70%);display:grid;place-items:center;text-align:center;color:#fff;padding:6%}
.sp-wscr svg{width:62%;display:block;margin:0 auto}
.sp-wscr .ring{stroke-dasharray:151;stroke-dashoffset:40}
.sp-anim .sp-wscr .ring{animation:sp-ring 2.4s var(--ease) .6s both}
.sp-wscr b{display:block;margin-top:-2%;font-size:clamp(8px,.85vw,13px)}
.sp-wscr small{display:block;margin-top:4px;font-size:clamp(6px,.58vw,9px);color:#dcd7c9;line-height:1.3}
.sp-chip{position:absolute;padding:11px 15px;border-radius:14px;
  background:linear-gradient(180deg,rgba(20,20,20,.92),rgba(24,18,21,.92));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  font-size:12px;line-height:1.3;color:var(--d-text-2);box-shadow:0 20px 44px -18px rgba(0,0,0,.85);
  translate:calc(var(--mx,0) * 30px) calc(var(--my,0) * 24px);animation:sp-bob 6s ease-in-out infinite}
.sp-chip b{display:block;color:#fff;font-size:17px;font-weight:800;letter-spacing:-.02em}
.sp-chip.a{top:25%;left:0}
.sp-chip.b{right:3%;bottom:0;display:flex;align-items:center;gap:10px;animation-delay:-3s}
.sp-chip.b i{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none;animation:sp-pulse 1.8s ease-out infinite}
.sp-chip.b b{font-size:13px}

/* hero stats + foot */
.sp-hstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.3fr);margin-top:88px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(8px)}
.sp-hstats > div{padding:24px 26px}
.sp-hstats > div + div{border-left:1px solid var(--d-line)}
.sp-hstats b{display:block;font-size:32px;font-weight:800;letter-spacing:-.035em;line-height:1.05;color:#fff}
.sp-hstats span{display:block;margin-top:6px;font-size:13px;color:var(--d-muted)}
.sp-live{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--d-text)}
.sp-hfoot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;padding-block:28px 48px}
.sp-tags,.sp-alsos{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sp-tags span{padding:6px 11px;border-radius:8px;border:1px solid var(--d-line);background:rgba(255,255,255,.02);font:500 12px/1.4 var(--mono);color:var(--d-text-2)}
.sp-alsos small{font-size:12px;font-weight:700;color:var(--d-muted);margin-right:4px}
.sp-alsos a{padding:6px 12px;border-radius:8px;background:rgba(255,255,255,.06);font-size:13px;font-weight:600;color:var(--d-text);transition:background-color .2s,color .2s}
.sp-alsos a:hover{background:rgba(255,103,139,.22);color:#fff}

/* ============================================================ STICKY SECTION NAV */
.sp-snav{position:sticky;top:var(--stick);z-index:50;background:rgba(20,20,20,.9);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid rgba(255,255,255,.08)}
.sp-snav-in{display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;height:56px}
.sp-snav-in::-webkit-scrollbar{display:none}
.sp-snav a{flex:none;padding:8px 14px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--d-muted);transition:color .2s,background-color .2s}
.sp-snav a:hover{color:#fff}
.sp-snav a.on{color:#fff;background:linear-gradient(90deg,rgba(255,103,139,.35),rgba(255,103,139,.12))}
.sp-snav .cta{margin-left:auto;background:var(--btn);color:#fff}
.sp-snav .cta:hover{filter:brightness(1.1)}
.sp-snav-prog{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--grad-d);transform-origin:left;transform:scaleX(0)}

/* ============================================================ 2 HIGHLIGHTS */
.sp-hl{position:relative;overflow:hidden;color:#fff;background:linear-gradient(100deg,#ff678b 0%,#ff678b 35%,#ff678b 60%,#ff678b 100%)}
.sp-hl::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.16) 50%,transparent 65%);animation:sp-sheen 7s ease-in-out infinite;pointer-events:none}
.sp-hl ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.sp-hl li{padding:30px 24px}
.sp-hl li + li{border-left:1px solid rgba(255,255,255,.2)}
.sp-hl li:first-child{padding-left:0}
.sp-hl b{display:block;font-size:21px;font-weight:800;letter-spacing:-.02em}
.sp-hl span{display:block;margin-top:6px;font-size:13px;line-height:1.45;color:rgba(255,255,255,.78)}

/* ============================================================ 3 GUARANTEES */
.sp-gua{background:linear-gradient(180deg,#fffbd6,#fff)}
.sp-gua ul{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;padding-block:32px}
.sp-gua li > *{display:flex;gap:12px;align-items:center;height:100%;padding:16px;border-radius:14px;background:#fff;border:1px solid var(--card-line);
  transition:transform .3s var(--spring),box-shadow .3s,border-color .3s}
.sp-gua li > *:hover{transform:translateY(-3px);border-color:#141414;box-shadow:0 16px 30px -20px rgba(255,103,139,.45)}
.sp-gua svg{width:38px;height:38px;padding:9px;border-radius:11px;background:var(--btn);color:#fff;flex:none;box-shadow:0 8px 16px -8px rgba(255,103,139,.7)}
.sp-gua h3{font-size:14.5px;letter-spacing:-.01em;line-height:1.3}
.sp-gua p{margin-top:5px;font-size:12.5px;line-height:1.4;color:var(--muted)}

/* ============================================================ 4 RECOGNITION */
.sp-recog{padding-block:40px;background:#fff}
.sp-recog-box{padding:26px;border:1.5px dashed #bdb8aa;border-radius:14px;background:repeating-linear-gradient(135deg,#fffdf0 0 12px,#fff9dc 12px 24px);text-align:center;font-size:14px;color:var(--muted)}
.sp-recog-box b{display:block;font-size:16px;color:var(--text);margin-bottom:4px}

/* ============================================================ 5 APPROACH */
.sp-approach{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:stretch}
.sp-left{display:flex;flex-direction:column}
.sp-left .sp-body + .sp-body{margin-top:16px}
.sp-left .sp-h2{margin-bottom:24px}
.sp-who-for{margin-top:24px;padding:22px 24px;border-radius:16px;border:1px solid #ffd3dd;background:linear-gradient(135deg,#fff0f3,#fff);font-size:15px;line-height:1.7;color:var(--text-2)}
.sp-who-for b{color:var(--crimson)}
.sp-checks{margin-top:28px;display:grid;gap:14px}
.sp-checks li{display:flex;gap:14px;font-size:15px;line-height:1.6;color:var(--text-2)}
.sp-checks li > svg{width:26px;height:26px;padding:6px;margin:0;border-radius:8px;background:var(--blush);color:var(--crimson);flex:none}
.sp-checks li b{color:var(--text);font-weight:700}
.sp-byline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:auto;padding-top:28px;font-size:13px;color:var(--muted)}
.sp-byline a{color:var(--crimson);font-weight:700}
.sp-right{display:flex;flex-direction:column;gap:14px}
.sp-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sp-stat{padding:20px 22px;border-radius:16px;border:1px solid var(--card-line);background:#fff;transition:transform .3s var(--spring),box-shadow .3s}
.sp-stat:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(255,103,139,.55)}
.sp-stat b{display:block;font-size:34px;font-weight:800;letter-spacing:-.04em;line-height:1}
.sp-stat span{display:block;margin-top:10px;font-size:13px;line-height:1.45;color:var(--text-2)}
.sp-devices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sp-devices div{padding:16px 12px;border-radius:16px;background:linear-gradient(180deg,#fffbd6,#fff3b0);text-align:center;transition:transform .3s var(--spring)}
.sp-devices div:hover{transform:translateY(-4px) rotate(-1deg)}
.sp-devices svg{width:24px;height:24px;color:var(--crimson)}
.sp-devices b{display:block;margin-top:6px;font-size:15px}
.sp-devices span{display:block;font-size:12px;color:var(--muted)}
.sp-why{position:relative;overflow:hidden;border-radius:16px;padding:22px 24px;color:var(--d-text);
  background:radial-gradient(400px 220px at 100% 0%,rgba(255,103,139,.35),transparent 70%),linear-gradient(160deg,#1d1c1c,#141414)}
.sp-why h3{font-size:13px;font-weight:700;color:var(--rose);margin-bottom:6px}
.sp-why li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--d-line);font-size:14px;color:var(--d-text-2)}
.sp-why li:last-child{border-bottom:0}
.sp-why li b{color:#fff;font-weight:700;text-align:right}
.sp-teamq{flex:1;display:flex;flex-direction:column;padding:24px;border-radius:16px;border:1px solid var(--card-line);background:#fff;position:relative}
.sp-teamq::before{content:"\201C";position:absolute;top:-6px;right:18px;font:800 96px/1 Georgia,serif;color:rgba(255,103,139,.1)}
.sp-teamq small{font-size:12px;font-weight:700;color:var(--crimson)}
.sp-teamq blockquote{margin-top:10px;font-size:15px;line-height:1.7;color:var(--text)}

/* ============================================================ 6 DEPLOYED */
.sp-deploy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-dcard{display:flex;flex-direction:column;padding:28px;border-radius:18px;background:#fff;border:1px solid var(--card-line);overflow:hidden;
  transition:transform .35s var(--spring),box-shadow .35s var(--ease),border-color .3s}
.sp-dcard::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.sp-dcard:hover{transform:translateY(-6px);border-color:#141414;box-shadow:0 28px 50px -30px rgba(20,20,20,.55)}
.sp-dcard:hover::after{transform:scaleX(1)}
.sp-dtop{display:flex;justify-content:space-between;align-items:center}
.sp-dtop small{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--muted)}
.sp-dtop small i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--blush);color:var(--crimson);font:700 11px var(--mono);font-style:normal}
.sp-dtop span{padding:5px 10px;border-radius:999px;background:var(--ink);color:#fff;font-size:11px;font-weight:700}
.sp-dcard h3{margin-top:18px;font-size:21px;letter-spacing:-.025em}
.sp-dcard p{margin-top:10px;font-size:14px;line-height:1.6;color:var(--text-2)}
.sp-dchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:20px}
.sp-dchips span{padding:5px 10px;border-radius:8px;background:var(--stone);font-size:12px;font-weight:600;color:var(--text-2)}
.sp-dchips span.p del{opacity:.7;margin-right:4px;font-weight:600}.sp-dchips span.p ins{text-decoration:none}
.sp-dchips span.p{background:var(--btn);color:#fff;font-weight:800}
.sp-honest{display:flex;gap:16px;align-items:flex-start;margin-top:24px;padding:20px 24px;border-radius:16px;background:rgba(255,255,255,.75);border:1px solid var(--card-line);backdrop-filter:blur(6px);font-size:14px;line-height:1.65;color:var(--text-2)}
.sp-honest b{flex:none;padding:3px 10px;border-radius:999px;background:var(--blush);color:var(--crimson);font-size:12px}

/* ============================================================ 7 COMPARISON */
/* spec sheet: metric column + three option columns; the native column is one continuous lit panel */
.sp-cmp-scroll{overflow-x:auto;margin-inline:calc(var(--pad) * -1);padding-inline:var(--pad);scrollbar-width:thin}
.sp-cmp{min-width:880px}
.sp-cmp-row{display:grid;grid-template-columns:210px repeat(3,minmax(0,1fr));column-gap:14px}
.sp-cmp-row > *{padding:26px 26px}
.sp-cmp-row:not(.hd) > *{border-top:1px solid rgba(255,255,255,.08)}
.sp-cmp-row:not(.hd):hover > :not(.us){background:rgba(255,255,255,.025)}
.sp-cmp-row.hd > *{padding-block:28px 24px;border-top:0}
.sp-cmp-corner{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;font-size:13px;font-weight:700;color:var(--rose)}
.sp-cmp-corner span{font-size:13px;font-weight:500;line-height:1.5;color:var(--d-muted)}
.sp-cmp-col{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;border-radius:18px 18px 0 0}
.sp-cmp-col svg{width:44px;height:44px;padding:11px;margin-bottom:14px;border-radius:13px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:var(--d-text)}
.sp-cmp-col h3{font-size:20px;font-weight:800;letter-spacing:-.02em;color:#fff}
.sp-cmp-col p{font-size:13.5px;color:var(--d-muted)}
.sp-cmp-col .tag{align-self:flex-start;margin-bottom:14px;padding:5px 11px;border-radius:999px;background:var(--btn);font-size:11px;font-weight:800;color:#fff;box-shadow:0 8px 18px -8px rgba(255,103,139,.9)}
.sp-cmp-col.us svg{background:var(--btn);border-color:transparent;color:#fff}
.sp-cmp-col.us p{color:#ffffff}
.sp-cmp-k{display:flex;align-items:flex-start;gap:12px;font-size:15px;font-weight:700;color:#fff;line-height:1.4}
.sp-cmp-k i{flex:none;padding:3px 7px;border-radius:6px;background:rgba(255,103,139,.18);font:600 11px/1.4 var(--mono);font-style:normal;color:var(--rose)}
.sp-cmp-v b{display:block;font-size:16px;font-weight:700;line-height:1.4;color:#fff;letter-spacing:-.01em}
.sp-cmp-v span{display:block;margin-top:8px;font-size:14px;line-height:1.6;color:var(--d-text-2)}
.sp-cmp .us{position:relative;background:linear-gradient(180deg,rgba(255,103,139,.17),rgba(255,103,139,.1));box-shadow:inset 1px 0 0 rgba(255,244,141,.35),inset -1px 0 0 rgba(255,244,141,.35)}
.sp-cmp .hd .us{background:linear-gradient(180deg,rgba(255,103,139,.34),rgba(255,103,139,.17));box-shadow:inset 0 3px 0 var(--hot),inset 1px 0 0 rgba(255,244,141,.35),inset -1px 0 0 rgba(255,244,141,.35)}
.sp-cmp-row:not(.hd) .us{border-top-color:rgba(255,244,141,.16)}
.sp-cmp [data-stagger] > .sp-cmp-row:last-child .us{border-radius:0 0 18px 18px;box-shadow:inset 1px 0 0 rgba(255,244,141,.35),inset -1px 0 0 rgba(255,244,141,.35),inset 0 -1px 0 rgba(255,244,141,.35)}
.sp-cmp-row:not(.hd) .us b{color:#fff}
.sp-cmp-row:not(.hd) .us span{color:#ffffff}
.sp-choose{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.sp-choose > div{padding:26px 28px;border-radius:18px;border:1px solid var(--d-line);background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.01))}
.sp-choose > div:first-child{border-color:rgba(255,103,139,.4);background:linear-gradient(160deg,rgba(255,103,139,.2),rgba(255,103,139,.04))}
.sp-choose small{display:block;font-size:12px;font-weight:700;color:var(--rose);margin-bottom:8px}
.sp-choose p{font-size:15px;line-height:1.65;color:var(--d-text-2)}
.sp-choose a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.35)}

/* ============================================================ 8 ARCHITECTURE */
.sp-eng{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:stretch}
.sp-principles{margin-top:28px;display:grid;gap:12px}
.sp-principles li{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:18px;border-radius:16px;border:1px solid var(--card-line);background:#fff;transition:border-color .3s,box-shadow .3s}
.sp-principles li:hover{border-color:#141414;box-shadow:0 16px 30px -24px rgba(255,103,139,.5)}
.sp-principles li > i{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--btn);color:#fff;font:700 12px var(--mono);font-style:normal}
.sp-principles h3{font-size:16.5px;letter-spacing:-.01em}
.sp-principles p{margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--text-2)}
.sp-wrong{margin-top:14px;padding:18px 20px;border-radius:16px;background:linear-gradient(135deg,#141414,#141414);color:#ffffff}
.sp-wrong small{display:block;font-size:12px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:.02em}
.sp-wrong p{font-size:14px;line-height:1.65}
.sp-code{position:relative;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#141414,#141414);border:1px solid #3a3937;
  box-shadow:0 50px 90px -40px rgba(20,20,20,.8),0 0 0 1px rgba(0,0,0,.4)}
.sp-code::before{content:"";position:absolute;inset:-40% -20% auto auto;width:70%;height:80%;background:radial-gradient(closest-side,rgba(255,103,139,.18),transparent);pointer-events:none}
.sp-code-bar{display:flex;align-items:center;gap:8px;padding:15px 18px;border-bottom:1px solid #3a3937;font:500 12px var(--mono);color:#bdb8aa}
.sp-code-bar i{width:11px;height:11px;border-radius:50%}
.sp-code-bar i:nth-child(1){background:#ff5f57} .sp-code-bar i:nth-child(2){background:#febc2e} .sp-code-bar i:nth-child(3){background:#28c840}
.sp-code-bar span{margin-left:10px}
.sp-code pre{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;margin:0;padding:28px;overflow-x:auto;font:400 14px/1.85 var(--mono);color:#f3efe2}
.sp-code .ln{display:block;white-space:pre;min-height:1.85em}
.sp-anim .sp-code .ln{opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .3s var(--ease);transition-delay:calc(var(--l) * 85ms + .25s)}
.sp-anim .sp-code.in .ln{opacity:1;transform:none}
.sp-caret{display:inline-block;width:8px;height:1.1em;margin-left:2px;vertical-align:-.15em;background:var(--hot);animation:sp-blink 1s steps(2) infinite}
.sp-code .k{color:#ff678b} .sp-code .t{color:#fff48d} .sp-code .c{color:#a8a395;font-style:italic} .sp-code .s{color:#7cf2b0} .sp-code .f{color:#c4a8ff}
.sp-code-foot{display:flex;gap:12px;align-items:flex-start;padding:18px 28px;border-top:1px solid #3a3937;font-size:14px;line-height:1.6;color:#dcd7c9;background:rgba(0,0,0,.2)}
.sp-code-foot::before{content:"";width:8px;height:8px;margin-top:7px;border-radius:50%;background:var(--ok);flex:none;animation:sp-pulse 1.8s ease-out infinite}

/* ============================================================ 9 SERVICE MODELS */
.sp-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sp-model{display:flex;flex-direction:column;border-radius:20px;background:#fff;border:1px solid var(--card-line);overflow:hidden;transition:transform .35s var(--spring),box-shadow .35s}
.sp-model:hover{transform:translateY(-6px);box-shadow:0 30px 60px -36px rgba(20,20,20,.6)}
.sp-model.feat{border-color:transparent;box-shadow:0 0 0 2px var(--crimson),0 30px 60px -36px rgba(255,103,139,.7)}
.sp-vis{position:relative;height:170px;display:grid;place-items:center;overflow:hidden;
  background:radial-gradient(300px 160px at 50% 110%,rgba(255,103,139,.45),transparent 70%),linear-gradient(160deg,#1d1c1c,#141414)}
.sp-vis::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(closest-side,#000,transparent);-webkit-mask-image:radial-gradient(closest-side,#000,transparent)}
.sp-vis .badge{position:absolute;top:14px;left:14px;z-index:1;padding:5px 11px;border-radius:999px;background:var(--btn);color:#fff;font-size:11px;font-weight:800;box-shadow:0 6px 14px -6px rgba(255,103,139,.8)}
.sp-phones{position:relative;display:flex;align-items:flex-end;gap:14px}
.sp-phones div{width:64px;height:96px;border-radius:13px;border:1.5px solid rgba(255,255,255,.35);background:rgba(255,255,255,.04);display:grid;place-items:end center;padding-bottom:8px;
  font-size:10px;font-weight:600;color:var(--d-text-2);text-align:center;line-height:1.2;transition:transform .7s var(--spring),opacity .6s;transition-delay:calc(var(--r) * 120ms + .2s)}
.sp-phones div:nth-child(2){height:112px;border-color:var(--hot);color:#fff;background:linear-gradient(180deg,rgba(255,103,139,.3),rgba(255,103,139,.05))}
.sp-phones div:nth-child(3){width:88px;height:64px;border-radius:9px}
.sp-anim [data-io]:not(.in) .sp-phones div{transform:translateY(40px);opacity:0}
.sp-arch{position:relative;width:88%;height:78%}
.sp-arch svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sp-arch .draw{fill:none;stroke:rgba(255,244,141,.6);stroke-width:1.4;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.1s var(--ease);transition-delay:calc(var(--r) * 150ms + .3s)}
.sp-anim [data-io]:not(.in) .sp-arch .draw{stroke-dashoffset:1}
.sp-arch span{position:absolute;transform:translate(-50%,-50%);padding:5px 9px;border-radius:6px;border:1px solid rgba(255,255,255,.22);background:#141414;font:500 10px var(--mono);color:var(--d-text-2);white-space:nowrap}
.sp-arch span.top{border-color:var(--hot);color:#fff;background:linear-gradient(180deg,#141414,#141414)}
.sp-weeks{position:relative;width:76%;display:grid;gap:11px}
.sp-weeks div{display:grid;grid-template-columns:34px 1fr 10px;gap:10px;align-items:center;font:500 10px var(--mono);color:var(--d-muted)}
.sp-weeks i{height:7px;border-radius:4px;background:rgba(255,255,255,.1);position:relative;overflow:hidden}
.sp-weeks i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p);background:linear-gradient(90deg,#ff678b,#ff678b);border-radius:4px;transform-origin:left;transition:transform 1s var(--ease);transition-delay:calc(var(--r) * 180ms + .3s)}
.sp-anim [data-io]:not(.in) .sp-weeks i::after{transform:scaleX(0)}
.sp-weeks b{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px rgba(47,191,113,.6)}
.sp-weeks b.no{background:rgba(255,255,255,.18);box-shadow:none}
.sp-model-body{display:flex;flex-direction:column;flex:1;padding:26px 28px 28px}
.sp-model-body small{font-size:12px;font-weight:700;color:var(--muted)}
.sp-model.feat .sp-model-body small{color:var(--crimson)}
.sp-model h3{margin-top:8px;font-size:22px;letter-spacing:-.025em}
.sp-model p{margin-top:10px;font-size:15px;line-height:1.65;color:var(--text-2)}
.sp-model ul{margin-top:20px;border-top:1px solid var(--line-2)}
.sp-model li{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:14px;line-height:1.5;color:var(--text-2)}
.sp-model li b{color:var(--text)}

/* ============================================================ 10 QUALITY */
.sp-quality{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:stretch}
.sp-std{display:flex;flex-direction:column}
.sp-std ul{flex:1;display:flex;flex-direction:column;justify-content:space-between;margin-top:28px;gap:8px}
.sp-std li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);font-size:14.5px;color:var(--d-text);transition:background-color .25s,border-color .25s,transform .3s var(--spring)}
.sp-std li:hover{background:rgba(255,255,255,.08);border-color:rgba(255,244,141,.35);transform:translateX(4px)}
.sp-std li span{padding:3px 9px;border-radius:6px;background:rgba(255,103,139,.2);font:700 10.5px var(--mono);color:var(--rose);text-transform:uppercase;letter-spacing:.05em;flex:none}
.sp-gates-wrap .sub{margin-top:14px;font-size:26px;font-weight:800;color:#fff;letter-spacing:-.025em}
.sp-gates-wrap > p{margin-top:8px;font-size:15px;color:#e4dfd0}
.sp-gates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.sp-gate{padding:22px 24px;border-radius:16px;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);transition:border-color .3s,transform .3s var(--spring)}
.sp-gate:hover{border-color:rgba(255,244,141,.45);transform:translateY(-3px)}
.sp-gate b{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:rgba(255,103,139,.22);font:700 12px var(--mono);color:#fff}
.sp-gate h4{margin-top:14px;font-size:16px;color:#fff;letter-spacing:-.01em;line-height:1.35}
.sp-gate p{margin-top:8px;font-size:14px;line-height:1.6;color:#e4dfd0}

/* ============================================================ 11 STACK */
.sp-stack{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sp-tool{display:flex;gap:14px;align-items:center;padding:18px 20px;border-radius:16px;border:1px solid var(--card-line);background:rgba(255,255,255,.85);transition:transform .3s var(--spring),border-color .3s,box-shadow .3s}
.sp-tool:hover{transform:translateY(-3px);border-color:#141414;box-shadow:0 16px 30px -22px rgba(255,103,139,.55)}
.sp-tool i{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--btn);color:#fff;font:700 13px var(--mono);font-style:normal;flex:none;box-shadow:0 8px 16px -8px rgba(255,103,139,.7);transition:transform .4s var(--spring)}
.sp-tool:hover i{transform:rotate(-8deg) scale(1.06)}
.sp-tool b{display:block;font-size:15px;letter-spacing:-.01em}
.sp-tool span{display:block;font-size:12.5px;line-height:1.4;color:var(--muted)}

/* ============================================================ 12 PROCESS */
.sp-flow{position:relative}
.sp-flow-line{position:absolute;left:10%;right:10%;top:34px;height:2px;background:rgba(255,255,255,.1);border-radius:2px}
.sp-flow-line::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ff678b,#ff678b,#ffd3dd);border-radius:2px;transform-origin:left;transition:transform 2.2s var(--ease) .2s}
.sp-anim [data-io]:not(.in) .sp-flow-line::after{transform:scaleX(0)}
.sp-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.sp-step{text-align:center}
.sp-step-ic{position:relative;display:grid;place-items:center;width:68px;height:68px;margin:0 auto;border-radius:20px;background:linear-gradient(160deg,#2a2928,#141414);border:1px solid rgba(255,255,255,.14);color:#fff;
  transition:background .5s,border-color .5s,box-shadow .5s;transition-delay:calc(var(--r) * 420ms + .3s)}
.sp-step-ic svg{width:26px;height:26px}
.sp-flow.in .sp-step-ic,.sp-noanim .sp-step-ic{background:var(--btn);border-color:transparent;box-shadow:0 14px 30px -12px rgba(255,103,139,.7)}
.mcv-sp:not(.sp-anim) .sp-step-ic{background:var(--btn);border-color:transparent}
.sp-step b{display:block;margin-top:18px;font:600 12px var(--mono);color:var(--rose)}
.sp-step h3{margin-top:8px;font-size:17px;color:#fff;letter-spacing:-.01em}
.sp-step p{margin:8px auto 0;max-width:26ch;font-size:14px;line-height:1.6;color:var(--d-text-2)}
.sp-pstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:48px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.sp-pstats div{padding:24px 26px}
.sp-pstats div + div{border-left:1px solid var(--d-line)}
.sp-pstats b{display:block;font-size:28px;font-weight:800;color:#fff;letter-spacing:-.03em}
.sp-pstats span{display:block;margin-top:4px;font-size:13px;color:var(--d-muted)}
.sp-sixday{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 40px;align-items:center;margin-top:16px;padding:26px 28px;border-radius:18px;
  background:linear-gradient(120deg,rgba(255,103,139,.35),rgba(20,20,20,.25));border:1px solid rgba(255,103,139,.4)}
.sp-sixday h3{font-size:18px;color:#fff}
.sp-sixday p{margin-top:6px;font-size:14px;line-height:1.65;color:#e4dfd0;max-width:80ch}
.sp-sixday small{display:block;margin-top:8px;text-align:right;font:500 11px var(--mono);color:#dcd7c9}

/* ============================================================ 13 PRICING */
.sp-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.sp-price{position:relative;display:flex;flex-direction:column;padding:34px 32px;border-radius:22px;background:#fff;border:1px solid var(--card-line);transition:transform .35s var(--spring),box-shadow .35s}
.sp-price:hover{transform:translateY(-6px);box-shadow:0 30px 60px -36px rgba(20,20,20,.55)}
.sp-price.feat{color:var(--d-text);border:1.5px solid transparent;
  background:radial-gradient(420px 260px at 100% 0%,rgba(255,103,139,.3),transparent 70%) padding-box,linear-gradient(170deg,#1d1c1c,#141414) padding-box,
             conic-gradient(from var(--a),#ff678b,#fff48d,#141414,#ff678b,#ff678b) border-box;
  animation:sp-spin 7s linear infinite;box-shadow:0 40px 80px -40px rgba(255,103,139,.8)}
.sp-flag{position:absolute;top:-13px;left:32px;padding:6px 13px;border-radius:999px;background:var(--btn);color:#fff;font-size:11px;font-weight:800;box-shadow:0 8px 18px -8px rgba(255,103,139,.9)}
.sp-price h3{font-size:18px;letter-spacing:-.01em}
.sp-price.feat h3{color:#fff}
.sp-amt{margin-top:22px;font-size:46px;font-weight:800;line-height:1;letter-spacing:-.045em}
.sp-amt .gx{padding-right:2px}
.sp-price.feat .sp-amt{color:#fff}
.sp-amt small{font-size:16px;font-weight:700;letter-spacing:0;color:var(--muted)}
.sp-price.feat .sp-amt small{color:var(--d-muted)}
.sp-terms{margin-top:14px;font-size:14px;color:var(--muted)}
.sp-price.feat .sp-terms{color:var(--d-text-2)}
.sp-price ul{margin:22px 0 28px;border-top:1px solid var(--line-2)}
.sp-price.feat ul{border-color:rgba(255,255,255,.12)}
.sp-price li{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:14px;line-height:1.5;color:var(--text-2)}
.sp-price.feat li{border-color:rgba(255,255,255,.08);color:var(--d-text-2)}
.sp-price .sp-btn{margin-top:auto;width:100%}
.sp-why-price{display:flex;gap:16px;align-items:flex-start;margin-top:24px;padding:20px 24px;border-radius:16px;background:rgba(255,255,255,.8);border:1px solid var(--card-line);font-size:14px;line-height:1.65;color:var(--text-2)}
.sp-why-price b{flex:none;padding:3px 10px;border-radius:999px;background:var(--blush);color:var(--crimson);font-size:12px}
.sp-drivers{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.sp-drivers > div{padding:28px 32px;border-radius:18px;background:#fff;border:1px solid var(--card-line)}
.sp-drivers h3{font-size:16px}
.sp-drivers p{margin-top:10px;font-size:14px;line-height:1.7;color:var(--text-2)}
.sp-ranges{margin-top:10px}
.sp-ranges li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--line-2);font-size:14px;color:var(--text-2)}
.sp-ranges li b{color:var(--text)}
.sp-ranges li span{text-align:right;font-weight:800;color:var(--crimson)}
.sp-ranges li small{grid-column:1/-1;font-size:13px;color:var(--muted)}
.sp-ranges + p{margin-top:12px;font-size:13px;color:var(--muted)}

/* ============================================================ 14 CLIENT REFERENCE */
.sp-case{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;align-items:stretch}
.sp-case-main{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:44px;border-radius:24px;color:var(--d-text);
  background:radial-gradient(600px 380px at 100% 0%,rgba(255,103,139,.4),transparent 70%),radial-gradient(500px 400px at 0% 100%,rgba(20,20,20,.6),transparent 70%),linear-gradient(160deg,#1d1c1c,#141414)}
.sp-case-main > p:not(.sp-kicker){margin-top:16px;font-size:16px;line-height:1.7;color:var(--d-text-2)}
.sp-case-steps{margin-top:28px;display:grid;gap:18px}
.sp-case-steps li{display:grid;grid-template-columns:40px 1fr;gap:16px}
.sp-case-steps li > b{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:rgba(255,103,139,.22);font:700 12px var(--mono);color:#fff}
.sp-case-steps h3{font-size:16px;color:#fff}
.sp-case-steps p{margin-top:6px;font-size:14px;line-height:1.65;color:var(--d-text-2)}
.sp-case-nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:auto;padding-top:28px}
.sp-case-nums div{padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--d-line)}
.sp-case-nums b{display:block;font-size:24px;font-weight:800;letter-spacing:-.03em}
.sp-case-nums span{font-size:12px;color:var(--d-muted)}
.sp-case-side{display:flex;flex-direction:column;gap:16px}
.sp-card{padding:26px 28px;border-radius:20px;background:#fff;border:1px solid var(--card-line)}
.sp-case-side > .sp-card:first-child{flex:1;display:flex;flex-direction:column}
.sp-case-side > .sp-card:first-child blockquote{font-size:17px;line-height:1.75}
.sp-case-side > .sp-card:first-child .sp-link{margin-top:auto!important;padding-top:16px}
.sp-card > small{display:block;font-size:12px;font-weight:800;color:var(--crimson);margin-bottom:10px}
.sp-card blockquote{font-size:15px;line-height:1.7;color:var(--text)}
.sp-person{display:flex;align-items:center;gap:12px;margin-top:18px}
.sp-person i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--btn);color:#fff;font:800 13px var(--sans);font-style:normal;flex:none}
.sp-person b{display:block;font-size:14px}
.sp-person span{display:block;font-size:12.5px;color:var(--muted)}
.sp-brief li{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line-2);font-size:13.5px;color:var(--muted)}
.sp-brief li:last-child{border-bottom:0}
.sp-brief li b{color:var(--text);font-weight:700;text-align:right}
.sp-case-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sp-case-kpi div{display:flex;flex-direction:column;justify-content:center;padding:18px 16px;border-radius:18px;background:linear-gradient(160deg,#ffe9ee,#ffd3dd)}
.sp-case-kpi b{font-size:26px;font-weight:800;letter-spacing:-.03em}
.sp-case-kpi span{font-size:12px;color:var(--text-2)}

/* ============================================================ 15 REVIEWS */
.sp-reviews-sec::after{content:"\201D";position:absolute;right:4%;top:-40px;z-index:-1;font:800 420px/1 Georgia,serif;color:rgba(255,103,139,.07);pointer-events:none}
.sp-revs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-rev{display:flex;flex-direction:column;padding:30px;border-radius:20px;background:rgba(255,255,255,.9);border:1px solid #ffd3dd;box-shadow:0 20px 44px -30px rgba(20,20,20,.45);transition:transform .35s var(--spring),box-shadow .35s}
.sp-rev:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 30px 60px -32px rgba(20,20,20,.55)}
.sp-stars{color:#e8446c;letter-spacing:3px;font-size:15px}
.sp-rev small{display:block;margin-top:10px;font-size:12px;font-weight:700;color:var(--muted)}
.sp-rev blockquote{margin-top:14px;font-size:15px;line-height:1.7;color:var(--text)}
.sp-rev .sp-person{margin-top:auto;padding-top:20px}
.sp-rev em{display:block;margin-top:12px;font:500 11.5px/1.4 var(--mono);font-style:normal;color:var(--crimson)}
.sp-rbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:24px;margin-top:24px;padding:24px 28px;border-radius:20px;color:var(--d-text);
  background:radial-gradient(500px 200px at 0% 50%,rgba(255,103,139,.35),transparent 70%),linear-gradient(160deg,#1d1c1c,#141414)}
.sp-rbar div + div{padding-left:24px;border-left:1px solid var(--d-line)}
.sp-rbar b{display:block;font-size:26px;font-weight:800;color:#fff;letter-spacing:-.03em}
.sp-rbar span{font-size:12.5px;color:var(--d-muted)}


/* ============================================================ WHY MIRACUVES (copy from /why-us/) */
.sp-proofs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp-proofc{display:flex;flex-direction:column;padding:28px;border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.12);transition:transform .35s var(--spring),border-color .3s}
.sp-proofc:hover{transform:translateY(-5px);border-color:rgba(255,244,141,.45)}
.sp-proofc > b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--btn);font:700 12px var(--mono);color:#fff;box-shadow:0 8px 16px -8px rgba(255,103,139,.8)}
.sp-proofc h3{margin-top:18px;font-size:18px;color:#fff;letter-spacing:-.015em}
.sp-proofc p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--d-text-2)}
.sp-proofc span{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:18px;font:500 12.5px var(--mono);color:var(--rose)}
.sp-proofc span svg{width:13px;height:13px;transition:transform .2s var(--ease)}
.sp-proofc:hover span svg{transform:translate(2px,-2px)}
.sp-promises{margin-top:56px;padding:36px;border-radius:22px;background:linear-gradient(120deg,rgba(255,103,139,.32),rgba(20,20,20,.18));border:1px solid rgba(255,103,139,.35)}
.sp-promises-hd{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 32px}
.sp-promises-hd h3{font-size:24px;font-weight:800;color:#fff;letter-spacing:-.025em}
.sp-promises-hd p{font-size:14.5px;color:#e4dfd0;max-width:52ch}
.sp-promises ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14)}
.sp-promises li{display:flex;flex-direction:column}
.sp-promises li .sp-link{margin-top:auto!important;padding-top:14px}
.sp-promises li h4{display:flex;align-items:center;gap:10px;font-size:17px;color:#fff}
.sp-promises li h4 i{font:600 11px var(--mono);font-style:normal;color:var(--rose)}
.sp-promises li p{margin-top:10px;font-size:14.5px;line-height:1.65;color:#e4dfd0}
.sp-promises li .sp-link{margin-top:14px;font-size:14px}

/* ============================================================ INDUSTRIES */
.sp-inds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sp-ind{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:18px;background:#fff;border:1px solid var(--card-line);transition:transform .3s var(--spring),border-color .3s,box-shadow .3s}
.sp-ind:hover{transform:translateY(-4px);border-color:#141414;box-shadow:0 18px 34px -24px rgba(255,103,139,.55)}
.sp-ind svg.ic{width:42px;height:42px;padding:10px;border-radius:12px;background:var(--blush);color:var(--crimson);transition:background-color .3s,color .3s}
.sp-ind:hover svg.ic{background:var(--crimson);color:#fff}
.sp-ind h3{margin-top:6px;font-size:16.5px;letter-spacing:-.01em}
.sp-ind p{font-size:13.5px;line-height:1.55;color:var(--text-2)}
.sp-ind span{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-size:13px;font-weight:700;color:var(--crimson)}

/* further reading */
.sp-read{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px 28px;align-items:center;margin-top:24px;padding:26px 30px;border-radius:20px;color:var(--d-text);
  background:radial-gradient(420px 200px at 100% 50%,rgba(255,103,139,.35),transparent 70%),linear-gradient(160deg,#1d1c1c,#141414);transition:transform .35s var(--spring)}
.sp-read:hover{transform:translateY(-3px)}
.sp-read > svg{width:48px;height:48px;padding:12px;border-radius:14px;background:var(--btn);color:#fff}
.sp-read small{display:block;font-size:12px;font-weight:700;color:var(--rose)}
.sp-read strong{display:block;margin-top:4px;font-size:19px;font-weight:800;letter-spacing:-.02em;color:#fff}
.sp-read em{display:block;margin-top:4px;font-style:normal;font-size:14px;color:var(--d-text-2)}

/* ============================================================ 16 RELATED */
.sp-rel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sp-rel a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 22px;border-radius:16px;background:rgba(255,255,255,.9);border:1px solid var(--card-line);transition:transform .3s var(--spring),border-color .3s,box-shadow .3s}
.sp-rel a:hover{transform:translateY(-3px);border-color:#141414;box-shadow:0 16px 30px -22px rgba(255,103,139,.55)}
.sp-rel small{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.sp-rel b{display:block;margin-top:2px;font-size:15px;transition:color .2s}
.sp-rel a:hover b{color:var(--crimson)}
.sp-rel svg{width:30px;height:30px;padding:8px;border-radius:50%;background:var(--blush);color:var(--crimson);flex:none;transition:transform .25s var(--ease),background-color .25s,color .25s}
.sp-rel a:hover svg{background:var(--crimson);color:#fff}

/* ============================================================ 17 FAQ */
.sp-faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px;align-items:start}
.sp-faq-side{position:sticky;top:calc(var(--stick) + 96px)}
.sp-faq-side .sp-body{margin-top:20px}
.sp-faq-side .sp-link{margin-top:24px}
.sp-faq{display:grid;gap:10px}
.sp-faq details{border-radius:16px;border:1px solid var(--card-line);background:#fff;transition:border-color .3s,box-shadow .3s}
.sp-faq details[open]{border-color:#141414;box-shadow:0 18px 36px -28px rgba(255,103,139,.5)}
.sp-faq summary{display:flex;gap:24px;align-items:center;padding:22px 24px;cursor:pointer;list-style:none;font-size:17px;font-weight:700;letter-spacing:-.015em;line-height:1.4;transition:color .2s}
.sp-faq summary::-webkit-details-marker{display:none}
.sp-faq summary::after{content:"";flex:0 0 30px;height:30px;margin-left:auto;border-radius:50%;background:
  linear-gradient(currentColor,currentColor) center/12px 1.8px no-repeat,linear-gradient(currentColor,currentColor) center/1.8px 12px no-repeat,var(--blush);
  color:var(--crimson);transition:transform .3s var(--ease),background-color .3s}
.sp-faq details[open] summary::after{transform:rotate(135deg)}
.sp-faq summary:hover{color:var(--crimson)}
.sp-faq p{padding:0 72px 24px 24px;font-size:15.5px;line-height:1.75;color:var(--text-2)}
.sp-anim .sp-faq details[open] p{animation:sp-rise .45s var(--ease)}

/* ============================================================ 18 CTA */
.sp-cta{position:relative;overflow:hidden;isolation:isolate;padding-block:120px;color:var(--d-text);
  background:linear-gradient(125deg,#141414 0%,#141414 45%,#141414 100%)}
.sp-cta::after{content:"";position:absolute;inset:-30%;z-index:-1;pointer-events:none;
  background:radial-gradient(30% 35% at 20% 30%,rgba(255,103,139,.45),transparent 70%),radial-gradient(25% 30% at 85% 80%,rgba(255,103,139,.45),transparent 70%);
  animation:sp-drift 14s ease-in-out infinite alternate}
.sp-cta-in{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:40px 72px;align-items:center}
.sp-cta h2{margin-top:14px;font-size:clamp(36px,4.4vw,60px);line-height:1.02;letter-spacing:-.045em;font-weight:800;color:#fff}
.sp-cta .sp-body{margin-top:20px;max-width:56ch;color:#e4dfd0}
.sp-cstats{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:12px 40px;margin-top:34px}
.sp-cstats b{display:block;font-size:28px;font-weight:800;color:#fff;letter-spacing:-.03em}
.sp-cstats span{font-size:12.5px;color:#dcd7c9}
.sp-cta-box{display:grid;gap:12px;padding:30px;border-radius:22px;background:rgba(20,20,20,.55);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 40px 80px -40px rgba(0,0,0,.8)}
.sp-cta-box .sp-btn{width:100%}
.sp-cta-box .book{background:linear-gradient(135deg,#fff,#ffffff);color:var(--crimson);box-shadow:0 10px 28px -14px rgba(0,0,0,.6)}
.sp-cta-box .book::after{background:linear-gradient(110deg,transparent 30%,rgba(255,103,139,.12) 50%,transparent 70%)}
.sp-cta-box .wa{background:linear-gradient(135deg,#2fd07a,#1ea85c);box-shadow:0 10px 28px -12px rgba(47,191,113,.7),inset 0 1px 0 rgba(255,255,255,.2)}
.sp-cta-box p{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:4px;font-size:13px;color:#dcd7c9}
.sp-cta-note{margin-top:64px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:13.5px;color:#dcd7c9}
.sp-cta-note a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.35)}

/* ============================================================ REVIEW NOTES (draft only) */
.sp-notes{padding-block:64px;background:#fffbea;border-top:3px solid #e0a526}
.sp-notes h2{font-size:24px;letter-spacing:-.02em}
.sp-notes .lead{margin-top:8px;font-size:15px;color:var(--text-2)}
.sp-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.sp-notes-grid > div{padding:24px 28px;border-radius:12px;background:#fff;border:1px solid #f0e3b8}
.sp-notes h3{font-size:16px}
.sp-notes ol{margin-top:12px;padding-left:20px;list-style:decimal}
.sp-notes li{padding:5px 0;font-size:14px;line-height:1.55;color:var(--text-2)}
.sp-notes li b{color:var(--text)}

/* ============================================================ RESPONSIVE */
@media(max-width:1180px){
  .mcv-sp{--pad:32px}
  .sp-hero-grid{grid-template-columns:1fr;gap:56px}
  .sp-art{max-width:600px;width:100%;margin-inline:auto}
  .sp-gua ul{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-stack{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sp-rel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-inds{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-hl li{padding-inline:16px}
  .sp-hl b{font-size:18px}
}
@media(max-width:900px){
  .mcv-sp{--pad:24px}
  .sp-sec,.sp-cta{padding-block:84px}
  .sp-hero-grid,.sp-approach,.sp-eng,.sp-quality,.sp-case,.sp-faq-grid,.sp-head,.sp-cta-in,.sp-notes-grid{grid-template-columns:1fr;gap:40px}
  .sp-head{gap:16px;margin-bottom:40px}
  .sp-art{max-width:560px}
  .sp-hstats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px}
  .sp-hstats > div,.sp-hstats > div + div{padding:18px 20px;border-left:0}
  .sp-hstats > div:nth-child(even){border-left:1px solid var(--d-line)}
  .sp-hstats > div:nth-child(n+3){border-top:1px solid var(--d-line)}
  .sp-hstats > div:last-child{grid-column:1/-1}
  .sp-hl ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-hl li,.sp-hl li:first-child,.sp-hl li + li{padding:20px 16px 20px 0;border-left:0}
  .sp-hl li:nth-child(even){padding-left:16px;border-left:1px solid rgba(255,255,255,.2)}
  .sp-hl li:last-child{grid-column:1/-1}
  .sp-hl li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.2)}
  .sp-gua ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-deploy,.sp-models,.sp-prices,.sp-revs,.sp-proofs{grid-template-columns:1fr 1fr}
  .sp-promises ul{grid-template-columns:1fr;gap:22px}
  .sp-promises{padding:28px 24px}
  .sp-read{grid-template-columns:auto minmax(0,1fr)}
  .sp-read .sp-btn{grid-column:1/-1}
  .sp-choose,.sp-drivers{grid-template-columns:1fr}
  .sp-flow-line{display:none}
  .sp-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}
  .sp-pstats{grid-template-columns:1fr 1fr}
  .sp-pstats div + div{border-left:0}
  .sp-pstats div:nth-child(even){border-left:1px solid var(--d-line)}
  .sp-pstats div:nth-child(n+3){border-top:1px solid var(--d-line)}
  .sp-sixday{grid-template-columns:1fr}
  .sp-sixday small{text-align:left}
  .sp-rbar{grid-template-columns:1fr 1fr}
  .sp-rbar div + div{padding-left:0;border-left:0}
  .sp-faq-side{position:static}
  .sp-reviews-sec::after{font-size:260px}
}
@media(max-width:600px){
  .mcv-sp{--pad:18px}
  .sp-deploy,.sp-models,.sp-prices,.sp-revs,.sp-stack,.sp-rel,.sp-gates,.sp-steps,.sp-gua ul,.sp-proofs,.sp-inds{grid-template-columns:1fr}
  .sp-stats{grid-template-columns:1fr 1fr}
  .sp-case-main{padding:28px 22px}
  .sp-case-nums,.sp-case-kpi{gap:8px}
  .sp-case-nums div{padding:12px 10px}
  .sp-case-nums b{font-size:19px}
  .sp-cstats{grid-template-columns:1fr 1fr}
  .sp-actions .sp-btn{width:100%}
  .sp-faq p{padding-right:24px}
  .sp-honest,.sp-why-price{flex-direction:column;gap:8px}
  .sp-rbar{grid-template-columns:1fr}
  .sp-chip.a{right:0}
  .sp-hero h1{font-size:44px}
}
@media(prefers-reduced-motion:reduce){
  .mcv-sp *,.mcv-sp *::before,.mcv-sp *::after{animation:none!important;transition:none!important}
}
/* price shortcodes print WooCommerce spans; they take their container's type, never a span rule meant for labels or chips */
span.woocommerce-Price-amount.amount,.woocommerce-Price-amount .woocommerce-Price-currencySymbol,span[data-sc]{all:unset}
/* ---- depth step: answer-first summary + page-specific guide ---- */
.sp-tldr{margin:0 0 28px;padding:20px 24px;border-radius:16px;border:1px solid var(--card-line);background:var(--paper);box-shadow:0 18px 36px -30px rgba(255,103,139,.45)}
.sp-tldr small{display:block;margin-bottom:8px;font:700 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--crimson)}
.sp-tldr p{font-size:17px;line-height:1.65;font-weight:500;color:var(--text)}
.sp-deep{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px;align-items:start}
.sp-deep-side{position:sticky;top:calc(var(--stick) + 96px)}
.sp-deep-side .sp-body{margin-top:20px}
.sp-deep-list{display:grid;border-top:1px solid var(--line)}
.sp-deep-list article{padding:28px 0;border-bottom:1px solid var(--line)}
.sp-deep-list h3{font-size:20px;line-height:1.35;letter-spacing:-.015em;font-weight:800;color:var(--text)}
.sp-deep-list p{margin-top:12px;max-width:68ch;font-size:16px;line-height:1.75;color:var(--text-2)}
.sp-deep-list ul{margin-top:12px;display:grid;gap:8px;max-width:68ch}
.sp-deep-list li{position:relative;padding-left:20px;font-size:15.5px;line-height:1.65;color:var(--text-2)}
.sp-deep-list li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:2px;background:var(--grad)}
@media(max-width:900px){.sp-deep{grid-template-columns:1fr;gap:28px}.sp-deep-side{position:static}}
/* ---- hero trust row (pages that carry one) ---- */
.sp-trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px}
.sp-trust li{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--d-text-2)}
.sp-trust li svg{width:14px;height:14px;color:var(--ok)}

/* ---- GetFame Pep layer (appended by tools/retint.py; see docs/palette.md) ---- */
div.mcv-sp{
  --pink:#ff678b;--pink-deep:#e8446c;--pink-soft:#ffd3dd;--yellow:#fff48d;--yellow-deep:#ffe24a;--yellow-soft:#fffbd6;
  --peach:#ffb08c;--magenta:#fd74fd;--mint:#7cf2b0;--ink:#141414;--ink-2:#1d1c1c;--ink-3:#2a2928;--ink-soft:#55504a;
  --cream:#fffdf0;--paper:#fff;
  --wash:linear-gradient(115deg,#ff678b 0%,#ffb08c 42%,#fff48d 100%);
  --wash-soft:linear-gradient(115deg,#ffd3dd 0%,#ffe9d6 45%,#fffbd6 100%);
  --outline:2px solid #141414;--shadow-pop:6px 6px 0 #141414;--r-pill:60px;--r-card:28px;--r-lg:40px;
  --crimson:#141414;--crimson-dk:#141414;--hot:#141414;--rose:#fff48d;--blood:#141414;--wine:#141414;
  --stone:#fffbd6;--stone-2:#fff3b0;--blush:#ffe9ee;--ok:#0f7a3d;
  --text:#141414;--text-2:#3b3833;--muted:#55504a;--line:rgba(20,20,20,.16);--line-2:rgba(20,20,20,.1);--card-line:#141414;
  --d-text:#fff;--d-text-2:#e4dfd0;--d-muted:#bdb8aa;--d-line:rgba(255,255,255,.2);
  --grad:linear-gradient(90deg,#ff678b,#ffb08c);--grad-d:linear-gradient(90deg,#fff48d,#ffb08c);--btn:#ff678b;
  --display:'Bricolage Grotesque','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
div.mcv-sp :focus-visible{outline:3px solid #141414;outline-offset:3px;box-shadow:0 0 0 6px #fff48d}
div.mcv-sp :is(h1,h2,h3,.sp-h2){font-family:var(--display);letter-spacing:-.04em;font-weight:800}
div.mcv-sp .sp-h2{letter-spacing:-.045em;line-height:1.02}
div.mcv-sp .sp-body{color:#3b3833}
div.mcv-sp .on-dark .sp-body{color:#e4dfd0}

/* ---- tone bands: flat colour, no pools or glows ---- */
div.mcv-sp .lt-white{background:#fff}
div.mcv-sp .lt-stone{background:#fffbd6}
div.mcv-sp .lt-blush{background:#fff48d}
div.mcv-sp .lt-ink,div.mcv-sp .lt-dusk{background:#141414;color:#fff;--ok:#7cf2b0}
div.mcv-sp .lt-wine{background:#ff678b;color:#141414;--d-text:#141414;--d-text-2:#141414;--d-muted:#3b3833;--d-line:rgba(20,20,20,.22);--rose:#141414;--ok:#0f7a3d;}
div.mcv-sp .sp-grid-bg::before{background-image:radial-gradient(rgba(20,20,20,.16) 1.6px,transparent 1.8px);background-size:24px 24px;
  mask-image:linear-gradient(160deg,#000,transparent 70%);-webkit-mask-image:linear-gradient(160deg,#000,transparent 70%)}
div.mcv-sp .on-dark.sp-grid-bg::before{background-image:radial-gradient(rgba(255,255,255,.14) 1.6px,transparent 1.8px)}
div.mcv-sp .lt-wine.sp-grid-bg::before{background-image:radial-gradient(rgba(20,20,20,.2) 1.6px,transparent 1.8px)}
div.mcv-sp .sp-hl{background:#ff678b;color:#141414;border-block:2px solid #141414}
div.mcv-sp .sp-hl::after{display:none}
div.mcv-sp .sp-hl li + li{border-left-color:rgba(20,20,20,.3)}
div.mcv-sp .sp-hl span{color:#141414}
div.mcv-sp .sp-hl li:nth-child(even){border-left-color:rgba(20,20,20,.3)}
div.mcv-sp .sp-hl li:nth-child(n+3){border-top-color:rgba(20,20,20,.3)}

/* ---- hero: the wash, heavy ink type ---- */
div.mcv-sp .sp-hero{background:var(--wash);color:#141414;border-bottom:2px solid #141414}
div.mcv-sp .sp-hero.on-dark{--d-text:#141414;--d-text-2:#141414;--d-muted:#3b3833;--d-line:rgba(20,20,20,.22);--rose:#141414;--ok:#0f7a3d;}
div.mcv-sp .sp-hero::after{display:none}
div.mcv-sp .sp-hero::before{background-image:radial-gradient(rgba(20,20,20,.16) 1.6px,transparent 1.8px);background-size:24px 24px;
  mask-image:linear-gradient(115deg,transparent 35%,#000);-webkit-mask-image:linear-gradient(115deg,transparent 35%,#000)}
div.mcv-sp .sp-crumb,div.mcv-sp .sp-crumb span[aria-current]{color:#141414}
div.mcv-sp .sp-crumb a{font-weight:700}
div.mcv-sp .sp-crumb a:hover{color:#141414;text-decoration:underline;text-decoration-thickness:2px}
div.mcv-sp .sp-hero h1{color:#141414;font-family:var(--display);font-weight:800;line-height:1;letter-spacing:-.045em}
div.mcv-sp .sp-hero:not(.co-hero-s) h1{text-transform:uppercase;line-height:.98}
div.mcv-sp .sp-lede{color:#141414;font-weight:500}
div.mcv-sp .sp-pill,div.mcv-sp .sp-live-pill{background:#fff;border:2px solid #141414;color:#141414;font-weight:700}
div.mcv-sp .sp-sub span{background:#fff;border:2px solid #141414;color:#141414}
div.mcv-sp .sp-sub span:last-child{background:#fff48d;border-color:#141414}
div.mcv-sp .sp-meta,div.mcv-sp .sp-meta b,div.mcv-sp .sp-meta a{color:#141414}
div.mcv-sp .sp-meta .star{color:#141414}
div.mcv-sp .sp-trust li{color:#141414;font-weight:700}
div.mcv-sp .sp-trust li svg{color:#141414}
div.mcv-sp .sp-tags span,div.mcv-sp .sp-alsos a{background:#fff;border:2px solid #141414;border-radius:60px;color:#141414;font-weight:700;padding:6px 14px}
div.mcv-sp .sp-alsos a:hover{background:#fff48d;color:#141414;transform:translate(-2px,-2px);box-shadow:3px 3px 0 #141414}
div.mcv-sp .sp-alsos small{color:#141414}
div.mcv-sp .sp-hero .sp-hfoot{border-top:2px solid #141414;margin-top:56px}
div.mcv-sp .sp-hero-grid + .sp-hfoot,div.mcv-sp .sp-hero .co-hero-end{border-top:2px solid #141414}

/* ---- accent phrase: ink on a yellow highlight, never gradient text ---- */
div.mcv-sp .gx,div.mcv-sp .on-dark .gx{background:#fff48d;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#141414;color:#141414;
  padding:0 .16em .04em;margin-bottom:0;border-radius:.3em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
div.mcv-sp .sp-hero .gx{background:#fff;border:3px solid #141414;padding:0 .18em;border-radius:.4em}
div.mcv-sp .lt-blush .gx,div.mcv-sp .lt-wine .gx{background:#fff}
div.mcv-sp .sp-amt .gx{background:none;padding:0}

/* ---- kicker: a small outlined pill ---- */
div.mcv-sp .sp-kicker{align-self:flex-start;padding:6px 14px 6px 10px;border:2px solid #141414;border-radius:60px;background:#fff;color:#141414;font-weight:800;letter-spacing:0}
div.mcv-sp .sp-kicker::before{width:10px;height:10px;border-radius:50%;background:#ff678b;border:2px solid #141414;box-sizing:border-box}
div.mcv-sp .on-dark .sp-kicker{background:#fff48d;color:#141414}
div.mcv-sp .on-dark .sp-kicker::before{background:#ff678b}
div.mcv-sp .sp-hero.on-dark .sp-kicker,div.mcv-sp .lt-wine .sp-kicker{background:#fff}
div.mcv-sp .sp-card > small,div.mcv-sp .sp-teamq small{color:#141414;font-weight:800}

/* ---- buttons: yellow pill, ink outline, circular arrow badge ---- */
div.mcv-sp .sp-btn{height:56px;padding:0 10px 0 26px;border:2px solid #141414;border-radius:60px;background:#fff48d;color:#141414;box-shadow:none;overflow:visible;font-weight:800;
  transition:transform .25s var(--spring),box-shadow .25s var(--ease),background-color .2s}
div.mcv-sp .sp-btn::after{content:"\2192";position:static;inset:auto;transform:none;display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;
  background:#141414;color:#fff48d;font-size:17px;font-weight:800;line-height:1;transition:transform .35s var(--ease)}
div.mcv-sp .sp-btn:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 #141414}
div.mcv-sp .sp-btn:hover::after{transform:rotate(-45deg)}
div.mcv-sp .sp-btn:active{transform:translate(0,0);box-shadow:none}
div.mcv-sp .sp-btn.ghost{background:#fff;color:#141414;border-color:#141414;backdrop-filter:none}
div.mcv-sp .sp-btn.ghost::after{background:#141414;color:#fff48d}
div.mcv-sp .sp-btn.ghost:hover{border-color:#141414}
div.mcv-sp .sp-btn.sm{height:46px;padding:0 8px 0 20px;border-radius:60px}
div.mcv-sp .sp-btn.sm::after{width:30px;height:30px}
div.mcv-sp .on-dark .sp-btn{border-color:#fff48d}
div.mcv-sp .on-dark .sp-btn:hover{box-shadow:5px 5px 0 #fff}
div.mcv-sp .on-dark .sp-btn.ghost{background:transparent;color:#fff;border-color:#fff}
div.mcv-sp .on-dark .sp-btn.ghost::after{background:#fff48d;color:#141414}
div.mcv-sp .on-dark .sp-btn.ghost:hover{border-color:#fff;background:#141414}
div.mcv-sp .sp-hero.on-dark .sp-btn{border-color:#141414}
div.mcv-sp .sp-hero.on-dark .sp-btn:hover{box-shadow:5px 5px 0 #141414}
div.mcv-sp .sp-hero.on-dark .sp-btn.ghost,div.mcv-sp .lt-wine .sp-btn.ghost{background:#fff;color:#141414;border-color:#141414}
div.mcv-sp .sp-hero.on-dark .sp-btn.ghost::after,div.mcv-sp .lt-wine .sp-btn.ghost::after{background:#141414;color:#fff48d}
div.mcv-sp .sp-hero.on-dark .sp-btn.ghost:hover,div.mcv-sp .lt-wine .sp-btn.ghost:hover{background:#fff48d;border-color:#141414}
div.mcv-sp .lt-wine .sp-btn{border-color:#141414}
div.mcv-sp .lt-wine .sp-btn:hover{box-shadow:5px 5px 0 #141414}
div.mcv-sp .lt-blush .sp-btn:not(.ghost){background:#fff}
div.mcv-sp .sp-choose .sp-btn,div.mcv-sp .sp-sixday .sp-btn,div.mcv-sp .sp-cmp .sp-btn{border-color:#141414}
div.mcv-sp .sp-choose .sp-btn.ghost,div.mcv-sp .sp-sixday .sp-btn.ghost,div.mcv-sp .sp-cmp .sp-btn.ghost{background:#fff;color:#141414;border-color:#141414}
div.mcv-sp .sp-choose .sp-btn.ghost::after,div.mcv-sp .sp-sixday .sp-btn.ghost::after{background:#141414;color:#fff48d}
div.mcv-sp .sp-choose .sp-btn:hover,div.mcv-sp .sp-sixday .sp-btn:hover{box-shadow:5px 5px 0 #141414}
div.mcv-sp .sp-choose .sp-btn.ghost:hover,div.mcv-sp .sp-sixday .sp-btn.ghost:hover{background:#fff48d}
div.mcv-sp .sp-link{color:#141414;font-weight:800;text-decoration:underline;text-decoration-color:#ff678b;text-decoration-thickness:3px;text-underline-offset:4px}
div.mcv-sp .sp-link:hover{color:#141414;text-decoration-color:#141414}
div.mcv-sp .on-dark .sp-link{color:#fff;text-decoration-color:#fff48d}
div.mcv-sp .sp-hero.on-dark .sp-link,div.mcv-sp .lt-wine .sp-link{color:#141414;text-decoration-color:#141414}
div.mcv-sp .sp-chev{stroke-width:2.5}
div.mcv-sp .spot::before{display:none}

/* ---- section nav: white outlined pill dock, ink active pill, yellow price button ---- */
div.mcv-sp .sp-snav{background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;padding-block:10px}
div.mcv-sp .sp-snav-in{pointer-events:auto;height:56px;padding:6px;max-width:calc(var(--w) + var(--pad) * 2 - 40px);margin-inline:auto;width:calc(100% - var(--pad) * 2);
  background:#fff;border:2px solid #141414;border-radius:60px;filter:drop-shadow(4px 4px 0 #141414);gap:4px}
div.mcv-sp .sp-snav a{color:#141414;font-weight:700;padding:8px 16px}
div.mcv-sp .sp-snav a:hover{color:#141414;background:#fff48d}
div.mcv-sp .sp-snav a.on{background:#141414;color:#fff}
div.mcv-sp .sp-snav .cta{background:#fff48d;color:#141414;border:2px solid #141414;font-weight:800;margin-left:auto;padding-block:6px}
div.mcv-sp .sp-snav .cta:hover{filter:none;background:#ff678b}
div.mcv-sp .sp-snav-prog{display:none}
div.mcv-sp .sp-snav .pg-n{background:rgba(20,20,20,.1);color:#141414}
div.mcv-sp .sp-snav a.on .pg-n{background:#fff48d;color:#141414}

/* ---- cards: white, ink outline, big radius, hard shadow on hover ---- */
div.mcv-sp .sp-card,
div.mcv-sp .sp-dcard,
div.mcv-sp .sp-ind,
div.mcv-sp .sp-stat,
div.mcv-sp .sp-principles li,
div.mcv-sp .sp-rel a,
div.mcv-sp .sp-tool,
div.mcv-sp .sp-drivers > div,
div.mcv-sp .sp-teamq,
div.mcv-sp .sp-rev,
div.mcv-sp .sp-model,
div.mcv-sp .sp-price,
div.mcv-sp .sp-devices div,
div.mcv-sp .sp-faq details,
div.mcv-sp .sp-honest,
div.mcv-sp .sp-why-price,
div.mcv-sp .sp-tldr,
div.mcv-sp .sp-who-for{background:#fff;border:2px solid #141414;border-radius:28px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  transition:transform .3s var(--spring),box-shadow .3s var(--ease),background-color .2s}
div.mcv-sp .sp-dcard:hover,
div.mcv-sp .sp-ind:hover,
div.mcv-sp .sp-stat:hover,
div.mcv-sp .sp-principles li:hover,
div.mcv-sp .sp-rel a:hover,
div.mcv-sp .sp-tool:hover,
div.mcv-sp .sp-rev:hover,
div.mcv-sp .sp-model:hover,
div.mcv-sp .sp-price:hover,
div.mcv-sp .sp-devices div:hover{
  transform:translate(-4px,-4px);box-shadow:6px 6px 0 #141414;border-color:#141414}
div.mcv-sp .sp-faq details:hover{box-shadow:4px 4px 0 #141414}
div.mcv-sp .sp-dcard::after{display:none}
div.mcv-sp .sp-model.feat,div.mcv-sp .sp-model.feat:hover{box-shadow:6px 6px 0 #ff678b}
div.mcv-sp .sp-rev:hover{transform:translate(-4px,-4px)}
div.mcv-sp .sp-who-for{background:#fffbd6}
div.mcv-sp .sp-who-for b{color:#141414}
div.mcv-sp .sp-honest,div.mcv-sp .sp-why-price{background:#fff}
div.mcv-sp .sp-honest b,div.mcv-sp .sp-why-price b{background:#fff48d;color:#141414;border:2px solid #141414;font-weight:800}
div.mcv-sp .sp-stat b,div.mcv-sp .sp-case-kpi b{font-family:var(--mono);letter-spacing:-.05em}
div.mcv-sp .sp-case-kpi div{background:#ffd3dd;border:2px solid #141414;border-radius:24px}
div.mcv-sp .sp-ind svg.ic{background:#fff48d;border:2px solid #141414;border-radius:50%;color:#141414}
div.mcv-sp .sp-ind:hover svg.ic{background:#141414;color:#fff48d}
div.mcv-sp .sp-ind span,div.mcv-sp .sp-byline a{color:#141414;font-weight:800;text-decoration:underline;text-decoration-color:#ff678b;text-decoration-thickness:3px;text-underline-offset:4px}
div.mcv-sp .sp-rel svg{background:#fff48d;border:2px solid #141414;color:#141414}
div.mcv-sp .sp-rel a:hover svg{background:#141414;color:#fff48d}
div.mcv-sp .sp-rel a:hover b{color:#141414}
div.mcv-sp .sp-dtop small i{background:#fff48d;border:2px solid #141414;color:#141414;border-radius:50%}
div.mcv-sp .sp-dtop span{background:#141414;color:#fff;border-radius:60px}
div.mcv-sp .sp-dchips span,div.mcv-sp .pg-points li{border-radius:60px;background:#fffbd6;border:2px solid #141414;color:#141414;font-weight:700}
div.mcv-sp .sp-dchips span.p{background:#fff48d;color:#141414;font-family:var(--mono);font-weight:800}
div.mcv-sp .sp-devices svg,div.mcv-sp .sp-devices span{color:#141414}
div.mcv-sp .sp-devices div{background:#fff48d}
div.mcv-sp .sp-teamq::before{color:rgba(20,20,20,.1)}
div.mcv-sp .sp-ranges li span{color:#141414;font-family:var(--mono)}
div.mcv-sp .sp-stars{color:#141414}
div.mcv-sp .sp-rev em{color:#141414}
div.mcv-sp .sp-reviews-sec::after{color:rgba(20,20,20,.06)}

/* ---- badges: flat pink discs with ink type (never white on pink) ---- */
div.mcv-sp .sp-principles li > i,
div.mcv-sp .sp-tool i,
div.mcv-sp .sp-person i,
div.mcv-sp .sp-flag,
div.mcv-sp .sp-vis .badge,
div.mcv-sp .sp-proofc > b,
div.mcv-sp .sp-read > svg,
div.mcv-sp .sp-gua svg,
div.mcv-sp .sp-case-steps li > b,
div.mcv-sp .sp-cmp-col .tag,
div.mcv-sp .sp-gate b,
div.mcv-sp .sp-dtop small i,
div.mcv-sp .sp-step-ic{background:#ff678b;color:#141414;border:2px solid #141414;box-shadow:none}
div.mcv-sp .sp-principles li > i,div.mcv-sp .sp-tool i{border-radius:50%}
div.mcv-sp .sp-tool:hover i{transform:rotate(-8deg) scale(1.06)}
div.mcv-sp .sp-flag{background:#fff48d;font-weight:800}

/* ---- checklists and ticks ---- */
div.mcv-sp .sp-checks li > svg{background:#fff48d;color:#141414;border:2px solid #141414;border-radius:50%;padding:5px}
div.mcv-sp .on-dark .sp-checks li > svg{background:#fff48d;color:#141414}
div.mcv-sp .sp-checks li,div.mcv-sp .sp-checks li b{color:#3b3833}
div.mcv-sp .sp-checks li b{color:#141414}
div.mcv-sp .sp-tick{color:#141414}
div.mcv-sp .on-dark .sp-tick{color:#fff48d}
div.mcv-sp .sp-hero.on-dark .sp-tick,div.mcv-sp .lt-wine .sp-tick{color:#141414}

/* ---- stat rows: outlined tiles ---- */
div.mcv-sp .sp-hstats,div.mcv-sp .sp-pstats{gap:14px;background:none;border:0;backdrop-filter:none;border-radius:0}
div.mcv-sp .sp-hstats > div,div.mcv-sp .sp-hstats > div + div,div.mcv-sp .sp-hstats > div:nth-child(even),div.mcv-sp .sp-hstats > div:nth-child(n+3),
div.mcv-sp .sp-pstats > div,div.mcv-sp .sp-pstats > div + div,div.mcv-sp .sp-pstats > div:nth-child(even),div.mcv-sp .sp-pstats > div:nth-child(n+3){
  background:#fff;border:2px solid #141414;border-radius:24px;box-shadow:4px 4px 0 #141414}
div.mcv-sp .sp-hstats > div:last-child{background:#fff48d}
div.mcv-sp .sp-hstats b,div.mcv-sp .sp-pstats b{color:#141414;font-family:var(--mono);letter-spacing:-.05em}
div.mcv-sp .sp-hstats span,div.mcv-sp .sp-pstats span{color:#3b3833;font-weight:600}
div.mcv-sp .sp-live{color:#141414}
div.mcv-sp .sp-live i,div.mcv-sp .sp-pill i{background:#ff678b;border:2px solid #141414;box-sizing:border-box}
div.mcv-sp .sp-cstats span{color:#e4dfd0}

/* ---- dark cards (ink, white type) sitting on light bands: flat, hard pink shadow ---- */
div.mcv-sp .sp-case-main,div.mcv-sp .sp-why,div.mcv-sp .sp-wrong,div.mcv-sp .sp-read,div.mcv-sp .sp-rbar,div.mcv-sp .sp-code{background:#141414;border:2px solid #141414;border-radius:28px;color:#fff;box-shadow:6px 6px 0 #ff678b}
div.mcv-sp .sp-code::before,div.mcv-sp .sp-wrong::before{display:none}
div.mcv-sp .sp-why h3,div.mcv-sp .sp-why h4,div.mcv-sp .sp-read small{color:#fff48d}
div.mcv-sp .sp-case-nums div{background:#1d1c1c;border:2px solid rgba(255,255,255,.28);border-radius:20px}
div.mcv-sp .sp-case-nums b{font-family:var(--mono);color:#fff48d}
div.mcv-sp .sp-case-steps li > b{background:#fff48d;border:0;color:#141414}
div.mcv-sp .sp-case-main .sp-kicker{background:#fff48d}
div.mcv-sp .sp-read:hover{transform:translate(-4px,-4px);box-shadow:10px 10px 0 #ff678b}
div.mcv-sp .sp-read > svg{background:#fff48d;color:#141414}

/* ---- comparison tables and price tables: a white outlined card with a yellow "us" column ---- */
div.mcv-sp .sp-cmp-scroll{padding-block:4px 10px}
div.mcv-sp .sp-cmp{background:#fff;border:2px solid #141414;border-radius:28px;overflow:hidden;color:#141414;--d-text:#141414;--d-text-2:#3b3833;--d-muted:#55504a;--d-line:rgba(20,20,20,.16);--rose:#141414;--ok:#0f7a3d;}
div.mcv-sp .sp-cmp-row:not(.hd) > *{border-top:2px solid rgba(20,20,20,.14)}
div.mcv-sp .sp-cmp-row:not(.hd):hover > :not(.us){background:#fffbd6}
div.mcv-sp .sp-cmp-row.hd{background:#fffbd6;border-bottom:2px solid #141414}
div.mcv-sp .sp-cmp-corner{color:#141414}
div.mcv-sp .sp-cmp-col,div.mcv-sp .sp-cmp [data-stagger] > .sp-cmp-row:last-child .us{border-radius:0}
div.mcv-sp .sp-cmp-col svg{background:#fff;border:2px solid #141414;color:#141414;border-radius:50%}
div.mcv-sp .sp-cmp-col h3,div.mcv-sp .sp-cmp-k,div.mcv-sp .sp-cmp-v b{color:#141414}
div.mcv-sp .sp-cmp-col.us svg{background:#ff678b;border-color:#141414;color:#141414}
div.mcv-sp .sp-cmp-col.us p,div.mcv-sp .sp-cmp-row:not(.hd) .us span{color:#141414}
div.mcv-sp .sp-cmp-row:not(.hd) .us b{color:#141414}
div.mcv-sp .sp-cmp-k i{background:#fff48d;border:2px solid #141414;color:#141414}
div.mcv-sp .sp-cmp-col .tag{background:#ff678b;color:#141414;border:2px solid #141414;box-shadow:none}
div.mcv-sp .sp-cmp .us,div.mcv-sp .sp-cmp .hd .us,div.mcv-sp .sp-cmp [data-stagger] > .sp-cmp-row:last-child .us{background:#fff48d;box-shadow:inset 2px 0 0 #141414,inset -2px 0 0 #141414}
div.mcv-sp .sp-cmp .hd .us{background:#ffe24a}
div.mcv-sp .sp-cmp-row:not(.hd) .us{border-top-color:rgba(20,20,20,.2)}
div.mcv-sp .sp-choose > div,div.mcv-sp .sp-choose > div:first-child{border:2px solid #141414;border-radius:28px;background:#fff;color:#141414;--d-text:#141414;--d-text-2:#3b3833;--d-muted:#55504a;--d-line:rgba(20,20,20,.16);--rose:#141414;--ok:#0f7a3d;}
div.mcv-sp .sp-choose > div:first-child{background:#fff48d}
div.mcv-sp .sp-choose small{color:#141414;font-weight:800}
div.mcv-sp .sp-choose p{color:#141414}
div.mcv-sp .sp-choose a{color:#141414;text-decoration-color:#ff678b;text-decoration-thickness:3px;font-weight:700}
div.mcv-sp .sp-sixday{background:#ff678b;border:2px solid #141414;border-radius:28px;color:#141414}
div.mcv-sp .sp-sixday h3,div.mcv-sp .sp-sixday p,div.mcv-sp .sp-sixday small{color:#141414}

/* ---- timelines and process ---- */
div.mcv-sp .sp-flow-line{background:rgba(255,255,255,.25);height:3px}
div.mcv-sp .sp-flow-line::after{background:#fff48d}
div.mcv-sp .sp-step-ic{background:#1d1c1c;border:2px solid #fff;color:#fff;border-radius:50%;box-shadow:none}
div.mcv-sp .sp-flow.in .sp-step-ic,div.mcv-sp .sp-noanim .sp-step-ic,div.mcv-sp .mcv-sp:not(.sp-anim) .sp-step-ic,div.mcv-sp:not(.sp-anim) .sp-step-ic{background:#fff48d;color:#141414;border:2px solid #fff48d;box-shadow:none}
div.mcv-sp .sp-step h3{color:#fff}

/* ---- FAQ: pills that open to yellow ---- */
div.mcv-sp .sp-faq details{border-radius:28px}
div.mcv-sp .sp-faq details[open]{background:#fff48d;box-shadow:5px 5px 0 #141414;border-color:#141414}
div.mcv-sp .lt-stone .sp-faq details[open]{background:#fff}
div.mcv-sp .sp-faq summary{font-weight:800;font-family:var(--display);letter-spacing:-.02em}
div.mcv-sp .sp-faq summary:hover{color:#141414}
div.mcv-sp .sp-faq summary::after{flex:0 0 36px;height:36px;border:2px solid #141414;box-sizing:border-box;color:#141414;
  background:linear-gradient(currentColor,currentColor) center/14px 2.4px no-repeat,linear-gradient(currentColor,currentColor) center/2.4px 14px no-repeat,#ff678b}
div.mcv-sp .sp-faq details[open] summary::after{background:linear-gradient(currentColor,currentColor) center/14px 2.4px no-repeat,linear-gradient(currentColor,currentColor) center/2.4px 14px no-repeat,#fff}
div.mcv-sp .sp-faq p{color:#141414}

/* ---- group-page business-model band (pink) and about beliefs ---- */
div.mcv-sp .lt-wine .sp-h2,div.mcv-sp .lt-wine .sp-gates-wrap .sub,div.mcv-sp .lt-wine .sp-gates-wrap > p,div.mcv-sp .lt-wine .sp-body,div.mcv-sp .lt-wine .pg-para{color:#141414}
div.mcv-sp .sp-gate,div.mcv-sp .sp-proofc{background:#fff;border:2px solid #141414;border-radius:28px;color:#141414}
div.mcv-sp .sp-gate:hover,div.mcv-sp .sp-proofc:hover{border-color:#141414;transform:translate(-4px,-4px);box-shadow:6px 6px 0 #141414}
div.mcv-sp .sp-gate h4,div.mcv-sp .sp-proofc h3{color:#141414}
div.mcv-sp .sp-gate p,div.mcv-sp .sp-proofc p{color:#3b3833}
div.mcv-sp .sp-gate b,div.mcv-sp .sp-proofc > b{background:#fff48d;color:#141414;border:2px solid #141414;border-radius:50%}
div.mcv-sp .sp-proofc span{color:#141414;font-weight:700}
div.mcv-sp .sp-std li{background:#fff;border:2px solid #141414;color:#141414}
div.mcv-sp .sp-promises{background:#141414;border:2px solid #141414;border-radius:32px;box-shadow:8px 8px 0 #fff;color:#fff;--rose:#fff48d;--d-text-2:#e4dfd0;--d-line:rgba(255,255,255,.2)}
div.mcv-sp .sp-promises-hd h3,div.mcv-sp .sp-promises li h4{color:#fff}
div.mcv-sp .sp-promises-hd p,div.mcv-sp .sp-promises li p{color:#e4dfd0}
div.mcv-sp .sp-promises li h4 i{color:#fff48d}
div.mcv-sp .sp-promises .sp-link{color:#fff;text-decoration-color:#fff48d}

/* ---- price cards (contact channels) ---- */
div.mcv-sp .sp-price.feat{animation:none;background:#ff678b;border:2px solid #141414;box-shadow:6px 6px 0 #141414;color:#141414;--d-text:#141414;--d-text-2:#141414;--d-muted:#3b3833;--d-line:rgba(20,20,20,.22);--rose:#141414;--ok:#0f7a3d;}
div.mcv-sp .sp-price.feat h3,div.mcv-sp .sp-price.feat .sp-amt,div.mcv-sp .sp-price.feat .sp-amt small,div.mcv-sp .sp-price.feat .sp-terms,div.mcv-sp .sp-price.feat li{color:#141414}
div.mcv-sp .sp-price.feat ul,div.mcv-sp .sp-price.feat li{border-color:rgba(20,20,20,.3)}
div.mcv-sp .sp-amt{font-family:var(--mono);letter-spacing:-.06em;color:#141414}
div.mcv-sp .sp-amt small{color:#55504a}
div.mcv-sp .sp-terms,div.mcv-sp .sp-price li{color:#3b3833}

/* ---- hero panel: the live-data window and device art, white ink-outlined card with hard shadow ---- */
div.mcv-sp .sp-art::before{display:none}
div.mcv-sp .sp-ipad{background:#fff;border:2px solid #141414;border-radius:32px;box-shadow:10px 10px 0 #141414}
div.mcv-sp .sp-ipad::after{display:none}
div.mcv-sp .sp-scr{background:#fffdf0;color:#3b3833;border-radius:22px;border:2px solid #141414}
div.mcv-sp .sp-xbar{border-bottom:2px solid #141414;color:#3b3833}
div.mcv-sp .sp-xbar b,div.mcv-sp .sp-xhead,div.mcv-sp .sp-xkv b{color:#141414}
div.mcv-sp .sp-xbar b::before{background:#ff678b;border:2px solid #141414;border-radius:50%;box-sizing:border-box}
div.mcv-sp .sp-xbox{background:#fff;border:2px solid #141414;border-radius:16px}
div.mcv-sp .sp-xhead .tag{background:#fff48d;color:#141414;border:1.5px solid #141414}
div.mcv-sp .sp-xhead em,div.mcv-sp .sp-xok{color:#0f7a3d}
div.mcv-sp .sp-xok{border-top-color:rgba(20,20,20,.3)}
div.mcv-sp .sp-xok span{color:#55504a}
div.mcv-sp .sp-xprog{background:rgba(20,20,20,.12)}
div.mcv-sp .sp-xprog::after{background:#ff678b}
div.mcv-sp .sp-xtabs{border-top:2px solid #141414}
div.mcv-sp .sp-xtabs span{color:#55504a}
div.mcv-sp .sp-xtabs span.on{color:#141414;font-weight:700;box-shadow:inset 0 -3px 0 #ff678b}
div.mcv-sp .sp-anim .sp-xsteps li:not(.done)::before{box-shadow:inset 0 0 0 1.5px #55504a}
div.mcv-sp .sp-anim .sp-xsteps li.run::before{box-shadow:inset 0 0 0 2px #141414}
div.mcv-sp .sp-chip{background:#fff;border:2px solid #141414;border-radius:20px;color:#3b3833;box-shadow:4px 4px 0 #141414;backdrop-filter:none;-webkit-backdrop-filter:none}
div.mcv-sp .sp-chip b{color:#141414}
div.mcv-sp .sp-chip.a{background:#fff48d}
div.mcv-sp .sp-watch{background:#fff;border:2px solid #141414;box-shadow:5px 5px 0 #141414}
div.mcv-sp .sp-wscr{background:#ffd3dd;color:#141414}
div.mcv-sp .sp-wscr small{color:#3b3833}
div.mcv-sp .sp-recog-box{background:#fffdf0;border-color:#141414;color:#3b3833}

/* ---- long reading (tldr / deep guide) ---- */
div.mcv-sp .sp-deep-list{border-top:2px solid #141414}
div.mcv-sp .sp-deep-list article{border-bottom:2px solid rgba(20,20,20,.18)}
div.mcv-sp .sp-deep-list li::before{border-radius:50%;background:#ff678b;border:2px solid #141414;width:10px;height:10px;top:.55em;box-sizing:border-box}
div.mcv-sp .sp-tldr small{color:#141414}
