/* =====================================================================
   Workvolve theme v2: core pages. Service pages, case studies, partners,
   facts, legal pages, 404 and the about page. Load after theme-v2.css.
   Theme tokens only. Pieces copied from templates-v2.css (demo K) are
   marked "from K" so both files can be compared.
   1 shared . 2 client strip . 3 example windows . 4 service pages
   5 audit card . 6 FAQ and tables . 7 related . 8 case studies
   9 partners . 10 facts and legal . 11 404 . 12 about . 13 breakpoints
   14 reduced motion
   ===================================================================== */

/* ---------- 1. shared ---------- */
main{position:relative;isolation:isolate}
.nav-link[aria-current]{color:var(--ink);background:rgba(29,29,31,.05)}
.mm-links a[aria-current]{color:var(--gold-ink)}
/* warm haze behind the top of the page (from K) */
.pg-sky{position:absolute;left:0;right:0;top:0;height:clamp(640px,86vh,920px);z-index:-1;pointer-events:none;background:
  radial-gradient(44% 54% at 88% 6%,rgba(240,222,180,.62),rgba(240,222,180,0) 72%),
  radial-gradient(40% 46% at 6% 0%,rgba(255,255,255,.95),rgba(255,255,255,0) 70%),
  linear-gradient(180deg,#fbf6ec 0%,#fcf9f2 55%,#fdfcf8 100%)}
.pg-sky::after{content:"";position:absolute;inset:0;opacity:.3;mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent);mask-image:linear-gradient(180deg,#000 30%,transparent);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .5 0 0 0 0 .42 0 0 0 0 .28 0 0 0 .09 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.ph{border-radius:50%;object-fit:cover;flex:none;background:var(--gold-tint);box-shadow:0 0 0 2px #fff,0 0 0 3.5px rgba(200,164,85,.55)}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;margin-bottom:22px;font-size:13.5px;color:var(--ink-3)}
.crumbs a{color:var(--ink-2);transition:color .25s}
.crumbs a:hover{color:var(--ink)}
.crumbs .sep{color:var(--ink-4)}
.pg-tag{display:block;margin-bottom:14px;font-size:14px;font-weight:550;letter-spacing:-.01em;color:var(--gold-ink)}
.pg-link{color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color .25s}
.pg-link:hover{color:var(--gold-ink)}
/* links inside running text */
.sv-text a,.sv-list a,.sv-ex a,.wv-faq a,.cs-prose a,.pt-foot a,.fx-intro a,.lg-body a,.e404 p a,.pt-q-a a,.sv-fine a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color .25s}
.sv-text a:hover,.sv-list a:hover,.sv-ex a:hover,.wv-faq a:hover,.cs-prose a:hover,.pt-foot a:hover,.fx-intro a:hover,.lg-body a:hover,.e404 p a:hover,.pt-q-a a:hover,.sv-fine a:hover{color:var(--gold-ink)}

/* example windows and their pieces (from K and the homepage) */
.dm-win{position:relative;display:flex;flex-direction:column;border-radius:16px;background:#fff;box-shadow:var(--sh-win);overflow:hidden}
.dm-bar{display:flex;align-items:center;gap:10px;height:40px;flex:none;padding:0 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fcfaf6)}
.dm-dots{display:flex;gap:5px;flex:none}
.dm-dots i{width:9px;height:9px;border-radius:50%;background:#ebe5d9;box-shadow:inset 0 0 0 1px rgba(29,29,31,.05)}
.dm-title{display:inline-flex;align-items:center;gap:7px;min-width:0;font-size:12.5px;font-weight:550;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}
.dm-title img,.dm-title .i{width:14px;height:14px;color:var(--ink-3)}
.dm-ex{display:inline-flex;align-items:center;height:14px;margin-left:3px;padding-left:9px;border-left:1px solid var(--line-2);font-size:11px;font-weight:500;letter-spacing:0;color:var(--ink-3);white-space:nowrap}
.dm-chip{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:550;color:var(--gold-ink);white-space:nowrap}
.dm-chip .i{width:12px;height:12px}
.tk{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--gold-fill);color:#fff;box-shadow:0 0 0 2px #fff,0 3px 8px -3px rgba(140,109,44,.7)}
.tk .i{width:11px;height:11px}
.sw{display:inline-grid;align-items:center}
.sw>*{grid-area:1/1;transition:opacity .3s var(--ease),transform .3s var(--ease)}
.stage{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(80% 90% at 15% 0%,#fffdf8 0%,rgba(255,253,248,0) 62%),radial-gradient(70% 80% at 100% 100%,#f2e3bf 0%,rgba(242,227,191,0) 70%),#f9f4e9;box-shadow:inset 0 0 0 1px rgba(29,29,31,.05)}
.stage::before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(122,93,34,.15) 1px,transparent 1.25px);background-size:16px 16px;-webkit-mask-image:radial-gradient(95% 90% at 50% 45%,#000 25%,transparent 88%);mask-image:radial-gradient(95% 90% at 50% 45%,#000 25%,transparent 88%);pointer-events:none}

/* booking pieces (from K) */
.book-av.is-photo{padding:0;overflow:hidden;border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3.5px rgba(200,164,85,.5)}
.book-av.is-photo img{width:100%;height:100%;object-fit:cover}
.book-rows li .i{flex:none}
.cta-from{display:flex;align-items:center;gap:13px;margin-bottom:24px}
.cta-from .ph{width:54px;height:54px}
.cta-from>span{display:flex;flex-direction:column;line-height:1.35;font-size:13.5px;color:var(--ink-3)}
.cta-from b{font-size:15px;font-weight:600;letter-spacing:-.015em;color:var(--ink)}
.pg-end{padding-top:clamp(72px,9vw,120px)}
.pg-end .cta-h{font-size:clamp(2rem,1.3rem + 2vw,3.25rem);line-height:1.06;text-wrap:balance}
.book-rail{justify-self:auto;width:100%;padding:18px 18px 16px}
.book-rail .book-who{gap:12px;padding-bottom:14px}
.book-rail .book-av{width:42px;height:42px}
.book-rail .book-t{font-size:16.5px}
.book-rail .book-rows{flex-direction:row;flex-wrap:wrap;gap:6px 16px;padding:14px 0}
.book-rail .book-rows li{font-size:13.5px;gap:7px}
.book-rail .btn{--h:46px;font-size:14.5px}
.book-rail .btn .btn-ico{width:34px;height:34px}

/* the trust row (about page, from K) */
.trust{display:inline-flex;align-items:center;gap:10px;height:42px;padding:0 14px 0 6px;border-radius:var(--r-pill);background:rgba(255,255,255,.7);border:1px solid var(--line);box-shadow:var(--sh-xs),inset 0 1px 0 #fff;transition:transform .4s var(--ease),border-color .3s,background-color .3s}
.trust:hover{transform:translateY(-1px);background:#fff;border-color:var(--line-2)}
.trust-avs{display:flex}
.trust-avs .av{width:30px;height:30px;font-size:12px;box-shadow:0 0 0 2px #fff,0 2px 6px -2px rgba(60,44,12,.35)}
.trust-avs .av+.av{margin-left:-9px}
.trust-stars{display:inline-flex;gap:1px;color:var(--gold)}
.trust-stars .i{width:14px;height:14px}
.trust-t{font-size:14px;font-weight:550;letter-spacing:-.012em;color:var(--ink)}
.trust-arr{width:14px;height:14px;color:var(--ink-3);transition:transform .4s var(--ease)}
.trust:hover .trust-arr{transform:translateY(2px)}

/* ---------- 2. client strip: full colour, never stops, no heading ---------- */
.pg-logos{position:relative;margin-top:clamp(56px,6.5vw,92px);padding:24px 0 20px}
.pg-logos::before{content:"";position:absolute;left:50%;top:0;width:min(var(--container),100% - 2 * var(--gutter));height:1px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(29,29,31,0),rgba(29,29,31,.1) 18%,rgba(29,29,31,.1) 82%,rgba(29,29,31,0))}
.pg-logos .mq{width:min(1240px,100% - 32px);margin:0 auto}
/* same as the final homepage strip: Carer Sharers as a wordmark in their dark green, PassNotes' own logo */
.wm-cs{font-size:22px;font-weight:550;line-height:1;letter-spacing:-.04em;color:#16342f;white-space:nowrap}
.cl-pn img{height:29px}

/* ---------- 3. example windows on service pages ---------- */
.mk{display:flex;flex-direction:column;gap:8px;padding:16px}
.mk-row{display:flex;align-items:center;gap:11px;min-height:48px;padding:9px 12px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px var(--line),0 4px 10px -8px rgba(60,44,12,.3)}
.mk-ico{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none;background:#fff;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink-2)}
.mk-ico img{width:17px;height:17px;object-fit:contain}
.mk-ico .i{width:16px;height:16px}
.mk-ico.gold{background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.42);color:var(--gold-ink)}
.mk-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.mk-t b{font-size:13px;font-weight:600;letter-spacing:-.012em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mk-t span{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mk-chip{display:inline-flex;align-items:center;gap:5px;flex:none;height:24px;padding:0 9px;border-radius:7px;background:#faf8f3;box-shadow:inset 0 0 0 1px var(--line);font-size:11.5px;font-weight:550;color:var(--ink-2);white-space:nowrap}
.mk-chip .i{width:12px;height:12px}
.mk-chip.gold{background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.42);color:var(--gold-ink)}
.mk-chip.ink{background:var(--ink);box-shadow:none;color:#fff}
.mk-chip.mute{color:var(--ink-4)}
.mk-down{display:flex;justify-content:center;height:14px;margin:-2px 0}
.mk-down::before{content:"";width:2px;height:100%;border-radius:2px;background:linear-gradient(#e5d3a6,#c8a455)}
.mk-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mk-two .mk-row{padding:9px 10px}
.mk-foot{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--line);background:#fbf9f4;font-size:12px;font-weight:500;color:var(--ink-2)}
.mk-foot .i{width:13px;height:13px;color:var(--gold-deep)}
.mk-foot .tk{width:16px;height:16px;box-shadow:none}
.mk-foot .tk .i{width:10px;height:10px;color:#fff}
.mk-foot span:last-child{margin-left:auto;color:var(--ink-3)}
.mk-av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:11px;font-weight:600;letter-spacing:-.03em;background:linear-gradient(160deg,#f2e2bb,#d9bf86);color:#4e3c14}
.mk-av.b{background:linear-gradient(160deg,#efe4d1,#cfbe9f);color:#3e3626}
.mk-av.c{background:linear-gradient(160deg,#ead8b6,#c7a670);color:#43320f}
.mk-av.d{background:linear-gradient(160deg,#f3efe7,#ddd5c6);color:#4b4840}
/* chat and call bubbles */
.mk-chat{display:flex;flex-direction:column;gap:9px;padding:16px}
.mk-msg{max-width:84%;padding:9px 12px;border-radius:14px;font-size:12.5px;line-height:1.45;letter-spacing:-.005em}
.mk-msg.in{align-self:flex-start;background:#f4f0e7;color:var(--ink);border-bottom-left-radius:5px}
.mk-msg.out{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:5px}
.mk-who{font-size:11px;font-weight:550;color:var(--ink-3);margin-bottom:-4px}
.mk-who.r{align-self:flex-end}
.mk-src{align-self:flex-end;display:inline-flex;align-items:center;gap:5px;margin-top:-3px;font-size:11px;font-weight:500;color:var(--gold-ink)}
.mk-src .i{width:11px;height:11px}
.mk-src.l{align-self:flex-start}
/* hub diagram */
.mk-hub{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative}
.mk-core{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:9px;height:46px;border-radius:12px;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.5),0 8px 18px -12px rgba(140,109,44,.6);font-size:13px;font-weight:600;color:var(--gold-ink)}
.mk-core .i{width:15px;height:15px}
.mk-tile{display:flex;align-items:center;gap:9px;height:42px;padding:0 11px;border-radius:11px;background:#fff;box-shadow:0 0 0 1px var(--line);font-size:12.5px;font-weight:550;color:var(--ink)}
.mk-tile img,.mk-tile .i{width:16px;height:16px;color:var(--ink-3)}
/* chart */
.mk-chart{padding:14px 16px 10px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px var(--line)}
.mk-ch{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:12.5px;font-weight:600;color:var(--ink)}
.mk-leg{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--ink-3)}
.mk-leg i{width:8px;height:8px;border-radius:2px;background:var(--gold)}
.mk-leg i.b{background:#e3d8c2;margin-left:6px}
.mk-bars{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;height:96px;padding-bottom:18px;position:relative;border-bottom:1px solid var(--line-2)}
.mk-day{position:relative;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:3px;height:100%}
.mk-day i{display:block;width:30%;max-width:12px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,#d8bb73,#c39d4c);height:calc(var(--h) * 100%)}
.mk-day i.b{background:#e8dfcc;height:calc(var(--g) * 100%)}
.mk-day span{position:absolute;bottom:-18px;font-size:10.5px;color:var(--ink-3)}
/* app window (custom software) */
.mk-app{display:grid;grid-template-columns:108px 1fr;min-height:236px}
.mk-side{display:flex;flex-direction:column;gap:3px;padding:12px 8px;border-right:1px solid var(--line);background:#fcfaf6}
.mk-side span{display:flex;align-items:center;gap:7px;height:30px;padding:0 9px;border-radius:8px;font-size:12px;font-weight:500;color:var(--ink-3)}
.mk-side span .i{width:13px;height:13px}
.mk-side span.on{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--line)}
.mk-app .mk{padding:12px;min-width:0}
.mk-h .mk-chip{margin-left:8px}
.mk-h{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;color:var(--ink);padding:2px 2px 4px}
/* canvas of steps (n8n) */
.mk-steps{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px 16px 14px 16px}
.mk-steps .mk-row{position:relative}
.mk-err{border:1.5px dashed rgba(200,164,85,.6);box-shadow:none;background:#fffdf7}
/* question box (document Q&A) */
.mk-ask{display:flex;align-items:center;gap:9px;height:44px;padding:0 12px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px var(--line-2);font-size:12.5px;color:var(--ink)}
.mk-ask .i{width:15px;height:15px;color:var(--ink-3);flex:none}
.mk-ans{padding:13px 14px;border-radius:12px;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.34);font-size:12.5px;line-height:1.5;color:var(--ink)}
.mk-ans b{display:flex;align-items:center;gap:6px;margin-bottom:5px;font-size:11.5px;font-weight:600;color:var(--gold-ink)}
.mk-ans b .i{width:12px;height:12px}
.mk-cites{display:flex;flex-wrap:wrap;gap:6px}
/* entrance: rows rise in once on load */
.js .mk-seq>*{animation:mkIn .55s var(--ease) both}
.js .mk-seq>*:nth-child(2){animation-delay:.12s}
.js .mk-seq>*:nth-child(3){animation-delay:.24s}
.js .mk-seq>*:nth-child(4){animation-delay:.36s}
.js .mk-seq>*:nth-child(5){animation-delay:.48s}
.js .mk-seq>*:nth-child(6){animation-delay:.6s}
.js .mk-seq>*:nth-child(7){animation-delay:.72s}
@keyframes mkIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ---------- 4. service pages ---------- */
.sv-hero{position:relative;padding-top:clamp(118px,12vw,160px)}
.sv-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,5vw,76px);align-items:center}
.sv-h1{font-size:clamp(2.5rem,1.3rem + 3vw,3.75rem);line-height:1.02;letter-spacing:-.05em;font-weight:500;color:var(--ink);text-wrap:balance}
.sv-h1 .soft{display:block;color:#6f6656}
.sv-h1 .kw{display:block;margin-bottom:16px;font-size:15px;line-height:1.4;font-weight:550;letter-spacing:-.01em;color:var(--gold-ink)}
.sv-kw{margin-top:18px;font-size:15px;line-height:1.4;font-weight:550;letter-spacing:-.01em;color:var(--ink-3)}
.sv-sub{margin-top:22px;max-width:580px;font-size:clamp(1.0625rem,.98rem + .35vw,1.25rem);line-height:1.56;color:var(--ink-2);text-wrap:pretty}
.sv-ctas{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.sv-vis{position:relative;display:grid;place-items:center;min-height:400px;padding:clamp(22px,3vw,38px);border-radius:28px}
.sv-vis .dm-win{width:100%;max-width:440px}
.sv-vis figcaption.vh{position:absolute}
.sv-wrap{padding-top:clamp(64px,8vw,112px)}
.sv-grid{display:grid;grid-template-columns:minmax(0,740px) 280px;justify-content:space-between;align-items:start}
.sv-main{min-width:0}
.sv-sec{padding:clamp(44px,5.4vw,68px) 0;border-top:1px solid var(--line-2)}
.sv-main>.sv-sec:first-of-type{padding-top:0;border-top:0}
.sv-label{margin-bottom:12px;font-size:13.5px;font-weight:550;letter-spacing:-.005em;color:var(--gold-ink)}
.sv-h2{max-width:19em;font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem);line-height:1.08;letter-spacing:-.042em;font-weight:500;color:var(--ink);text-wrap:balance}
.sv-text{margin-top:20px}
.sv-text p{max-width:35em;font-size:clamp(1.03rem,.97rem + .25vw,1.125rem);line-height:1.72;color:var(--ink-2);text-wrap:pretty}
.sv-text p+p{margin-top:1em}
.sv-sec>*+.sv-text{margin-top:24px}
.sv-list{margin-top:24px;border-radius:20px;background:rgba(255,255,255,.9);border:1px solid #fff;box-shadow:var(--sh-sm)}
.sv-list li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;padding:18px 22px 18px 18px}
.sv-list li+li{border-top:1px solid var(--line)}
.sv-list .n{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--gold-wash);box-shadow:inset 0 0 0 1px var(--line-gold);font-size:12px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--gold-ink)}
.sv-list .t{padding-top:3px;font-size:16px;line-height:1.62;color:var(--ink-2);text-wrap:pretty}
.sv-list .t strong{color:var(--ink);font-weight:600}
.sv-ex{position:relative;margin-top:24px;padding:26px 28px 26px 30px;border-radius:22px;background:linear-gradient(180deg,#fffdf8,#fbf5e7);box-shadow:inset 0 0 0 1px rgba(200,164,85,.36),0 26px 54px -40px rgba(60,44,12,.5)}
.sv-ex::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:0 3px 3px 0;background:var(--gold)}
.sv-ex-l{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-size:13.5px;font-weight:600;letter-spacing:-.005em;color:var(--gold-ink)}
.sv-ex-l .i{width:15px;height:15px}
.sv-ex p{font-size:16.5px;line-height:1.66;color:var(--ink);text-wrap:pretty}
.sv-ex p+p{margin-top:12px}
.sv-price{margin-top:24px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 26px;padding:22px 26px;border-radius:20px;background:rgba(255,255,255,.9);border:1px solid #fff;box-shadow:var(--sh-sm)}
.sv-price .pl{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--gold-ink)}
.sv-price .pl .i{width:15px;height:15px}
.sv-price .pa{flex:1;min-width:min(260px,100%);font-size:clamp(1.125rem,1rem + .4vw,1.3125rem);line-height:1.4;letter-spacing:-.022em;font-weight:500;color:var(--ink);text-wrap:pretty}
.sv-fine{margin-top:16px;max-width:42em;font-size:14px;line-height:1.6;color:var(--ink-3)}
.sv-rail{position:sticky;top:100px;display:flex;flex-direction:column;gap:28px}
.toc-h{margin-bottom:12px;font-size:13px;font-weight:600;letter-spacing:-.005em;color:var(--ink)}
.toc-list{max-height:max(150px,calc(100vh - 460px));overflow:auto;overscroll-behavior:contain;border-left:1px solid var(--line-2);scrollbar-width:thin;scrollbar-color:#e2d6bc transparent}
.toc-list a{display:block;margin-left:-1px;padding:6px 0 6px 15px;border-left:2px solid transparent;font-size:13.5px;line-height:1.42;color:var(--ink-3);transition:color .25s,border-color .25s}
.toc-list a:hover{color:var(--ink)}
.toc-list a[aria-current="true"]{color:var(--ink);font-weight:500;border-left-color:var(--gold)}
.toc-m{display:none;margin-bottom:36px;border-radius:16px;background:rgba(255,255,255,.82);border:1px solid #fff;box-shadow:var(--sh-sm)}
.toc-m summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;list-style:none;cursor:pointer;font-size:15px;font-weight:550;letter-spacing:-.015em;color:var(--ink);border-radius:16px}
.toc-m summary::-webkit-details-marker{display:none}
.toc-m summary .i{width:16px;height:16px;color:var(--ink-3);transition:transform .35s var(--ease)}
.toc-m[open] summary .i{transform:rotate(180deg)}
.toc-m .toc-list{max-height:none;margin:0 18px 14px}

/* ---------- 5. the audit card (shared with blog posts, from K) ---------- */
.offer{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(28px,4vw,56px);padding:clamp(28px,4.2vw,56px);border-radius:var(--r-2xl);background:
  radial-gradient(48% 56% at 78% 92%,rgba(233,203,138,.5),rgba(233,203,138,0) 72%),
  radial-gradient(40% 52% at 0% 0%,rgba(255,255,255,.95),rgba(255,255,255,0) 70%),
  radial-gradient(48% 60% at 100% 0%,rgba(244,232,204,.85),rgba(244,232,204,0) 70%),
  linear-gradient(180deg,#fbf7ee,#f5ebd3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.85),0 50px 100px -70px rgba(60,44,12,.55)}
.offer::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background-image:radial-gradient(rgba(122,93,34,.13) 1px,transparent 1.2px);background-size:20px 20px;-webkit-mask-image:radial-gradient(56% 60% at 78% 70%,#000 10%,transparent 82%);mask-image:radial-gradient(56% 60% at 78% 70%,#000 10%,transparent 82%)}
.offer-h{font-size:clamp(1.75rem,1.15rem + 1.7vw,2.625rem);line-height:1.06;letter-spacing:-.042em;font-weight:500;color:var(--ink);text-wrap:balance}
.offer-h span{display:block;color:var(--gold-ink)}
.offer-p{margin-top:18px;max-width:520px;font-size:16.5px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.offer-deal{margin-top:20px;display:flex;align-items:center;gap:16px;max-width:520px;padding:14px 18px;border-radius:18px;background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px rgba(200,164,85,.38),0 10px 24px -18px rgba(60,44,12,.4)}
.offer-price{flex:none;font-size:clamp(1.625rem,1.3rem + .9vw,2rem);font-weight:600;letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}
.offer-deal>span:last-child{font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.offer-deal b{font-weight:600;color:var(--ink)}
.offer-small{margin-top:12px;max-width:520px;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.offer-ctas{margin-top:24px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
.offer-note{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink-3)}
.offer-note .i{width:15px;height:15px;color:var(--gold-deep)}
.rm{position:relative;z-index:1;width:100%;max-width:420px;justify-self:center;display:flex;flex-direction:column;border-radius:18px;background:#fff;box-shadow:var(--sh-win);overflow:hidden}
.rm-h{display:flex;align-items:center;gap:11px;padding:13px 16px 12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fcfaf6)}
.rm-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.35);color:var(--gold-ink)}
.rm-ico .i{width:17px;height:17px}
.rm-t{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.rm-t b{font-size:14px;font-weight:600;letter-spacing:-.015em;color:var(--ink)}
.rm-t span{font-size:12px;color:var(--ink-3)}
.rm-h .dm-ex{margin-left:auto}
.rm-sec{padding:12px 16px 4px;font-size:11.5px;font-weight:600;color:var(--ink-3)}
.rm-list{display:flex;flex-direction:column;gap:2px;padding:0 10px 8px}
.rm-list li{display:flex;align-items:center;gap:10px;min-height:38px;padding:7px 8px;border-radius:10px;font-size:13px;line-height:1.3;color:var(--ink)}
.rm-list li>span:nth-child(2){flex:1;min-width:0}
.rm-mk{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.45);color:var(--gold-ink)}
.rm-mk .i{width:11px;height:11px}
.rm-tg{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:550;color:var(--gold-ink);white-space:nowrap}
.rm-tg .i{width:12px;height:12px}
.rm-list .no{color:var(--ink-3)}
.rm-list .no .rm-mk{background:#f3f0ea;box-shadow:inset 0 0 0 1px rgba(29,29,31,.08);color:var(--ink-3)}
.rm-list .no .rm-tg{color:var(--ink-3);font-weight:500}
.rm-st{display:flex;align-items:center;gap:9px;min-height:46px;padding:9px 16px;border-top:1px solid var(--line);background:#fbf9f4;font-size:12.5px;font-weight:550;color:var(--ink)}
.rm-st .tk{width:20px;height:20px}
.rm-st small{margin-left:auto;font-size:11.5px;font-weight:500;color:var(--ink-3);white-space:nowrap}
.rm-st .sw-a{color:var(--ink-3);font-weight:500}
.rm .sw-b{opacity:0}
.rm.on .sw-a{opacity:0}
.rm.on .sw-b{opacity:1}
.js .rm[data-play] .rm-list li{opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease),transform .5s var(--ease)}
.js .rm[data-play] .rm-st .tk{transform:scale(0);transition:transform .3s var(--spring) 1.5s}
.js .rm[data-play] .sw>*{transition-delay:1.5s}
.rm.on .rm-list li{opacity:1!important;transform:none!important}
.rm.on .rm-list li:nth-child(2){transition-delay:.18s}
.rm.on .rm-list li:nth-child(3){transition-delay:.36s}
.rm.on .rm-list.no-list li:nth-child(1){transition-delay:.62s}
.rm.on .rm-list.no-list li:nth-child(2){transition-delay:.8s}
.rm.on .rm-st .tk{transform:none!important}
/* the compact card inside a page's main column */
.pg-offer{margin:clamp(44px,5.4vw,68px) 0 0;padding:clamp(24px,3.4vw,40px);border-radius:var(--r-xl);grid-template-columns:minmax(0,1fr) minmax(0,300px);grid-template-areas:"head head" "copy rm";align-items:start;row-gap:22px;column-gap:clamp(24px,3vw,36px)}
.pg-offer .offer-h{grid-area:head;font-size:clamp(1.5rem,1.1rem + 1.1vw,2rem)}
.pg-offer .offer-copy{grid-area:copy}
.pg-offer .offer-p{margin-top:0;font-size:15.5px}
.pg-offer .rm{grid-area:rm;max-width:none}
.pg-offer .rm-list li{font-size:12.5px}

/* ---------- 6. FAQ (native details, homepage look) and tables ---------- */
.wv-faq{margin-top:clamp(56px,7vw,88px)}
.wv-faq h2{margin-bottom:22px;font-size:clamp(1.75rem,1.3rem + 1.3vw,2.375rem);line-height:1.1;letter-spacing:-.04em;font-weight:500;color:var(--ink)}
.wv-faq details{border-bottom:1px solid var(--line-2)}
.wv-faq details:first-of-type{border-top:1px solid var(--line-2)}
.wv-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 2px;list-style:none;cursor:pointer;font-size:17.5px;font-weight:500;letter-spacing:-.02em;line-height:1.4;color:var(--ink);border-radius:8px}
.wv-faq summary::-webkit-details-marker{display:none}
.wv-faq summary::after{content:"";width:30px;height:30px;flex:none;border-radius:50%;background:linear-gradient(var(--ink),var(--ink)) center/11px 1.5px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1.5px 11px no-repeat,#fff;box-shadow:inset 0 0 0 1px var(--line-2);transition:background-color .3s}
.wv-faq details[open] summary::after{background:linear-gradient(var(--ink),var(--ink)) center/11px 1.5px no-repeat,var(--gold);box-shadow:none}
.wv-faq details p{padding:0 60px 22px 2px;font-size:16px;line-height:1.68;color:var(--ink-2);animation:faqIn .3s var(--ease)}
.wv-faq details p+p{margin-top:-8px}
.wv-table-wrap{position:relative;margin-top:26px;overflow-x:auto;border-radius:18px;background:#fff;box-shadow:var(--sh-sm);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#e2d6bc transparent}
.wv-table-wrap.can-scroll:not(.at-end){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}
.wv-table{width:100%;min-width:560px;border-collapse:collapse;font-size:14.5px;line-height:1.55}
.wv-table thead th{padding:14px 16px;text-align:left;vertical-align:bottom;font-size:13px;font-weight:600;letter-spacing:-.005em;color:var(--ink);background:#fbf8f1;border-bottom:1px solid var(--line-2)}
.wv-table tbody th{width:24%;padding:15px 16px;text-align:left;vertical-align:top;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line)}
.wv-table td{padding:15px 16px;vertical-align:top;color:var(--ink-2);border-bottom:1px solid var(--line)}
.wv-table tbody tr:last-child th,.wv-table tbody tr:last-child td{border-bottom:0}
.wv-table tbody tr:hover th,.wv-table tbody tr:hover td{background:#fdfbf6}

/* ---------- 7. related ---------- */
.rel{padding:clamp(72px,9vw,120px) 0 clamp(72px,9vw,112px)}
.rel-group+.rel-group{margin-top:clamp(48px,6vw,72px)}
.rel-h{font-size:clamp(1.625rem,1.25rem + 1.15vw,2.25rem);line-height:1.1;letter-spacing:-.04em;font-weight:500;color:var(--ink)}
.rel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.rel-card{position:relative;display:flex;flex-direction:column;gap:8px;min-height:176px;padding:22px 22px 20px;border-radius:var(--r-lg);background:rgba(255,255,255,.82);border:1px solid #fff;box-shadow:var(--sh-sm);transition:box-shadow .5s var(--ease),transform .5s var(--ease)}
.rel-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.rel-tag{font-size:12.5px;font-weight:550;color:var(--gold-ink)}
.rel-t{font-size:19.5px;line-height:1.24;letter-spacing:-.026em;font-weight:550;color:var(--ink);text-wrap:balance}
.rel-go{margin-top:auto;padding-top:16px;display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink-2)}
.rel-go .i{width:15px;height:15px;transition:transform .4s var(--ease)}
.rel-card:hover .rel-go{color:var(--ink)}
.rel-card:hover .rel-go .i{transform:translateX(3px)}
.rel-card:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* ---------- 8. case studies ---------- */
.pg-head{position:relative;padding-top:clamp(124px,13vw,172px)}
.pg-h1{font-size:clamp(2.5rem,1.2rem + 3.6vw,4.25rem);line-height:1.03;letter-spacing:-.05em;font-weight:500;color:var(--ink);text-wrap:balance}
.pg-lead{margin-top:20px;max-width:620px;font-size:clamp(1.0625rem,.98rem + .35vw,1.25rem);line-height:1.56;color:var(--ink-2);text-wrap:pretty}
.ci-grid{margin-top:clamp(44px,5vw,64px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ci-card{position:relative;display:flex;flex-direction:column;border-radius:28px;background:rgba(255,255,255,.78);border:1px solid #fff;box-shadow:var(--sh-md);transition:box-shadow .5s var(--ease),transform .5s var(--ease)}
.ci-card:hover{box-shadow:var(--sh-lg);transform:translateY(-2px)}
.ci-vis{margin:8px 8px 0;border-radius:21px;height:300px;display:grid;place-items:center;padding:20px 18px}
.ci-vis .dm-win{width:100%;max-width:330px}
.ci-body{display:flex;flex-direction:column;gap:8px;flex:1;padding:22px 24px 22px}
.ci-tag{font-size:13px;font-weight:550;color:var(--gold-ink)}
.ci-t{font-size:21px;line-height:1.22;letter-spacing:-.028em;font-weight:550;color:var(--ink);text-wrap:balance}
.ci-t a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.ci-t a:focus-visible{outline:none}
.ci-card:has(.ci-t a:focus-visible){outline:2px solid var(--ink);outline-offset:3px}
.ci-m{font-size:14.5px;line-height:1.5;color:var(--ink-3)}
.ci-go{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink-2)}
.ci-go .i{width:15px;height:15px;transition:transform .4s var(--ease)}
.ci-card:hover .ci-go{color:var(--ink)}
.ci-card:hover .ci-go .i{transform:translateX(3px)}
/* route diagram (from K's about page) */
.rt{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;padding:24px 16px 16px}
.rt-n{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;line-height:1.25}
.rt-i{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 1px var(--line-2),0 6px 14px -8px rgba(60,44,12,.45);color:var(--ink-2)}
.rt-i img{width:22px;height:22px}
.rt-i .i{width:20px;height:20px}
.rt-n.mid .rt-i{background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.5),0 6px 14px -8px rgba(140,109,44,.6)}
.rt-n b{font-size:12.5px;font-weight:600;color:var(--ink)}
.rt-n small{font-size:11px;color:var(--ink-3)}
.rt-l{position:relative;width:clamp(24px,4vw,46px);height:2px;margin-bottom:34px;border-radius:2px;background:linear-gradient(90deg,#e5d3a6,#c8a455)}
.rt-l::after{content:"";position:absolute;right:-1px;top:50%;width:7px;height:7px;border-top:2px solid #c8a455;border-right:2px solid #c8a455;transform:translateY(-50%) rotate(45deg);border-radius:1px}
.rt-facts{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--line)}
.rt-facts li{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:8px;background:#fbf9f4;box-shadow:inset 0 0 0 1px var(--line);font-size:11.5px;font-weight:500;color:var(--ink-2);white-space:nowrap}
.rt-facts .i,.rt-facts img{width:13px;height:13px;color:var(--gold-deep)}
/* a case study article */
.cs-top{position:relative;padding-top:clamp(118px,12vw,156px)}
.cs-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,4.5vw,64px);align-items:center;max-width:1080px;margin:0 auto}
.cs-title{font-size:clamp(2.125rem,1.15rem + 2.75vw,3.5rem);line-height:1.05;letter-spacing:-.045em;font-weight:500;color:var(--ink);text-wrap:balance}
.cs-meta{margin-top:18px;font-size:14px;color:var(--ink-3)}
.cs-cover{border-radius:26px;padding:clamp(20px,2.6vw,32px);display:grid;place-items:center;min-height:300px}
.cs-cover .dm-win{width:100%;max-width:420px}
.cs-cover figcaption{margin-top:12px;font-size:12.5px;color:var(--ink-3);text-align:center}
.cs-wrap{padding-top:clamp(52px,6vw,88px)}
.cs-col{max-width:740px;margin:0 auto}
.cs-glance{padding:22px 24px 10px;border-radius:22px;background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:var(--sh-sm)}
.cs-glance h2{margin-bottom:6px;font-size:13.5px;font-weight:600;letter-spacing:-.005em;color:var(--gold-ink)}
.cs-glance li{display:grid;grid-template-columns:118px minmax(0,1fr);gap:16px;padding:11px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.55;color:var(--ink-2)}
.cs-glance li:first-child{border-top:0}
.cs-glance li strong{font-weight:600;color:var(--ink)}
.cs-prose{margin-top:clamp(36px,4.5vw,56px);font-size:clamp(1.03rem,.95rem + .3vw,1.15625rem);line-height:1.72;color:var(--ink-2)}
.cs-prose>*+*{margin-top:1.15em}
.cs-prose>p:first-child{font-size:1.1em;line-height:1.62;color:var(--ink)}
.cs-prose h2{margin-top:2.1em;font-size:clamp(1.5rem,1.18rem + .95vw,2rem);line-height:1.16;letter-spacing:-.036em;font-weight:500;color:var(--ink)}
.cs-prose h2+*{margin-top:.6em}
.cs-prose strong{color:var(--ink);font-weight:600}
.cs-prose ul{list-style:none;padding-left:1.2em}
.cs-prose ul li{position:relative}
.cs-prose ul li::before{content:"";position:absolute;left:-1.05em;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.cs-prose li+li{margin-top:.55em}
.cs-quote{position:relative;margin:2em 0;padding:30px 32px 28px;border-radius:24px;background:#fff;box-shadow:var(--sh-md)}
.cs-quote .q-mark{display:block;height:40px;margin:-4px 0 6px -3px;font-size:84px;line-height:.92;font-weight:400;color:var(--gold);user-select:none}
.cs-quote blockquote{margin:0;font-size:clamp(1.1875rem,1rem + .6vw,1.4375rem);line-height:1.45;letter-spacing:-.022em;font-weight:450;color:var(--ink);text-wrap:pretty}
.cs-quote figcaption{margin-top:16px;font-size:13.5px;color:var(--ink-3)}
/* compliance case study */
.cp-facts{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px 22px}
.cp-facts li{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink-2)}
.cp-facts .i{width:16px;height:16px;color:var(--gold-deep)}
.cp-h1{font-size:clamp(2.75rem,1.25rem + 4vw,4.625rem);line-height:1;letter-spacing:-.055em;font-weight:500;color:var(--ink);text-wrap:balance}
.cp-h1 .soft{display:block;color:#6f6656}
.cp-lede{margin-top:24px;max-width:640px;font-size:clamp(1.0625rem,.98rem + .4vw,1.3125rem);line-height:1.55;color:var(--ink-2);text-wrap:pretty}
.cp-sec{padding:clamp(80px,9vw,128px) 0 0}
.cp-label{margin-bottom:14px;font-size:13.5px;font-weight:550;letter-spacing:-.005em;color:var(--gold-ink)}
.cp-h2{max-width:17em;font-size:clamp(2rem,1.3rem + 2.1vw,3.125rem);line-height:1.05;letter-spacing:-.045em;font-weight:500;color:var(--ink);text-wrap:balance}
.cp-sub{margin-top:18px;max-width:640px;font-size:var(--fs-lead);line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.cp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:24px 64px;align-items:end}
.cp-split .cp-sub{margin-top:0;justify-self:end;max-width:440px}
/* the six-point cadence */
.cp-rail{position:relative;margin-top:clamp(40px,5vw,60px);padding:34px clamp(20px,3vw,40px) 30px;border-radius:28px;background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-md)}
.cp-track{position:absolute;left:calc(clamp(20px,3vw,40px) + 8.33%);right:calc(clamp(20px,3vw,40px) + 8.33%);top:57px;height:2px;border-radius:2px;background:#ece5d6}
.cp-fill{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,#e2cd98,#c8a455);transform-origin:0 50%;transform:scaleX(1)}
.cp-nodes{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.cp-node{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.cp-knob{width:22px;height:22px;margin-bottom:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px var(--gold),0 6px 14px -6px rgba(140,109,44,.7);display:grid;place-items:center}
.cp-knob::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold)}
.cp-num{font-size:clamp(1.5rem,1.1rem + 1.2vw,2.125rem);line-height:1;font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--ink)}
.cp-cap{font-size:13px;color:var(--ink-3)}
.cp-chip{margin-top:4px;display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:7px;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.38);font-size:11.5px;font-weight:600;color:var(--gold-ink)}
.cp-node.late .cp-chip{background:var(--ink);box-shadow:none;color:#fff}
.js .cp-rail[data-play] .cp-fill{transform:scaleX(0);transition:transform 2.2s var(--ease) .2s}
.js .cp-rail[data-play] .cp-node{opacity:.35;transition:opacity .4s var(--ease)}
.js .cp-rail.on[data-play] .cp-fill{transform:scaleX(1)}
.js .cp-rail.on[data-play] .cp-node{opacity:1}
.cp-rail.on .cp-node:nth-child(2){transition-delay:.45s}
.cp-rail.on .cp-node:nth-child(3){transition-delay:.85s}
.cp-rail.on .cp-node:nth-child(4){transition-delay:1.25s}
.cp-rail.on .cp-node:nth-child(5){transition-delay:1.65s}
.cp-rail.on .cp-node:nth-child(6){transition-delay:2.05s}
/* before and after */
.cp-ba{margin-top:clamp(36px,4.4vw,56px);display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:center}
.cp-pane{border-radius:22px;background:#fff;box-shadow:var(--sh-md);overflow:hidden}
.cp-pane-h{display:flex;align-items:center;justify-content:space-between;gap:10px;height:46px;padding:0 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fcfaf6)}
.cp-pane-t{font-size:13.5px;font-weight:600;color:var(--ink)}
.cp-state{font-size:12px;font-weight:550;color:var(--ink-3)}
.cp-pane.after .cp-state{color:var(--gold-ink)}
.cp-mail,.cp-reg{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:10px 18px;border-top:1px solid var(--line);font-size:14px;color:var(--ink-2)}
.cp-mail:first-child,.cp-reg:first-child{border-top:0}
.cp-mail .when{flex:none;font-size:12.5px;color:var(--ink-4)}
.cp-mail.key{color:var(--ink);font-weight:550;background:#fffbf1}
.cp-reg.key{color:var(--ink);font-weight:550;background:#fffbf1}
.cp-st{flex:none;display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:7px;background:#faf8f3;box-shadow:inset 0 0 0 1px var(--line);font-size:11.5px;font-weight:600;color:var(--ink-2)}
.cp-reg.key .cp-st{background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.42);color:var(--gold-ink)}
.cp-foot{display:flex;align-items:center;gap:9px;padding:12px 18px;border-top:1px solid var(--line);background:#fbf9f4;font-size:13px;font-weight:500;color:var(--ink-2)}
.cp-foot .tk{width:16px;height:16px;box-shadow:none}
.cp-foot .tk .i{width:10px;height:10px}
.cp-buried{padding:12px 18px;border-top:1px solid var(--line);background:#fbf9f4;font-size:13px;color:var(--ink-3)}
.cp-arrow{display:grid;place-items:center;color:var(--gold-deep)}
.cp-arrow span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:var(--sh-sm)}
.cp-arrow .i{width:17px;height:17px}
/* the four builds */
.cp-builds{margin-top:clamp(36px,4.4vw,56px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cp-build{display:flex;flex-direction:column;gap:12px;padding:28px 28px 26px;border-radius:26px;background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-md)}
.cp-build-n{font-size:13.5px;font-weight:600;color:var(--gold-ink)}
.cp-build h3{font-size:clamp(1.25rem,1.1rem + .45vw,1.5rem);line-height:1.2;letter-spacing:-.03em;font-weight:550;color:var(--ink);text-wrap:balance}
.cp-build p{font-size:15.5px;line-height:1.64;color:var(--ink-2);text-wrap:pretty}
.cp-tags{margin-top:auto;padding-top:14px;display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line)}
.cp-tags span{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:8px;background:#fbf9f4;box-shadow:inset 0 0 0 1px var(--line);font-size:12px;font-weight:500;color:var(--ink-2)}
/* safety net */
.cp-net{margin-top:clamp(80px,9vw,128px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center;padding:clamp(32px,4.4vw,60px);border-radius:var(--r-2xl);background:radial-gradient(45% 60% at 0% 0%,rgba(255,255,255,.9),rgba(255,255,255,0) 70%),radial-gradient(55% 60% at 100% 100%,rgba(233,210,160,.45),rgba(233,210,160,0) 72%),linear-gradient(180deg,#faf5ea,#f6eedb);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 40px 90px -70px rgba(60,44,12,.5)}
.cp-net h2{font-size:clamp(1.875rem,1.3rem + 1.7vw,2.75rem);line-height:1.06;letter-spacing:-.043em;font-weight:500;color:var(--ink);text-wrap:balance}
.cp-net p{margin-top:18px;max-width:520px;font-size:16.5px;line-height:1.62;color:var(--ink-2);text-wrap:pretty}
.cp-alert{border-radius:18px;background:#fff;box-shadow:var(--sh-win);overflow:hidden}
.cp-alert-bar{display:flex;align-items:center;gap:10px;height:44px;padding:0 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fcfaf6)}
.cp-alert-bar .t{font-size:13px;font-weight:600;color:var(--ink)}
.cp-alert-bar .time{margin-left:auto;font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.cp-alert-bar .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(200,164,85,.2)}
.cp-alert-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px}
.cp-wf{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-3)}
.cp-wf b{font-weight:600;color:var(--ink)}
.cp-wf .i{width:14px;height:14px;color:var(--ink-3)}
.cp-step{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 10px;border-radius:10px;background:#fbf9f4;box-shadow:inset 0 0 0 1px var(--line);font-size:13px;color:var(--ink)}
.cp-step .b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;flex:none;background:#fff;box-shadow:inset 0 0 0 1px var(--line-2);font-size:11px;font-weight:600;color:var(--ink-2)}
.cp-step.warn{background:#fffaf0;box-shadow:inset 0 0 0 1px rgba(200,164,85,.4)}
.cp-step.warn .b{background:var(--gold);box-shadow:none;color:#fff}
.cp-out{display:flex;align-items:center;gap:9px;margin-top:2px;padding:10px 12px;border-radius:10px;background:var(--ink);font-size:13px;font-weight:500;color:#fff}
.cp-out .i{width:14px;height:14px;color:var(--gold-soft)}
.js .cp-alert[data-play] .cp-step,.js .cp-alert[data-play] .cp-out{opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease),transform .5s var(--ease)}
.cp-alert.on .cp-step,.cp-alert.on .cp-out{opacity:1!important;transform:none!important}
.cp-alert.on .cp-step:nth-of-type(3){transition-delay:.35s}
.cp-alert.on .cp-step:nth-of-type(4){transition-delay:.7s}
.cp-alert.on .cp-out{transition-delay:1.1s}
/* delivery spec */
.cp-spec{margin-top:clamp(32px,4vw,48px);border-radius:24px;background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:var(--sh-sm);padding:6px 28px}
.cp-spec-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:17px 0;border-top:1px solid var(--line)}
.cp-spec-row:first-child{border-top:0}
.cp-spec-k{font-size:14px;font-weight:600;color:var(--ink)}
.cp-spec-v{font-size:15.5px;line-height:1.6;color:var(--ink-2)}

/* ---------- 9. partners ---------- */
.pt-hero{position:relative;padding-top:clamp(124px,12.5vw,168px)}
.pt-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(36px,5vw,80px);align-items:center}
.pt-for{display:inline-flex;align-items:center;gap:11px;font-size:16px;font-weight:550;letter-spacing:-.014em;color:var(--gold-ink)}
.pt-for-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;flex:none;background:#fff;color:var(--gold-ink);box-shadow:0 0 0 1px rgba(200,164,85,.42),0 6px 14px -8px rgba(140,109,44,.5)}
.pt-for-ico .i{width:16px;height:16px}
.pt-h1{margin-top:20px;font-size:clamp(3rem,1.3rem + 4.2vw,4.375rem);line-height:1;letter-spacing:-.055em;font-weight:500;color:var(--ink);text-wrap:balance}
.pt-h1 .soft{display:block;color:#6f6656}
.pt-key{margin-top:24px;max-width:560px;font-size:clamp(1.0625rem,.99rem + .3vw,1.1875rem);line-height:1.5;font-weight:550;letter-spacing:-.014em;color:var(--ink)}
.pt-lede{margin-top:12px;max-width:560px;font-size:clamp(1.03rem,.97rem + .25vw,1.125rem);line-height:1.62;color:var(--ink-2);text-wrap:pretty}
.pt-ctas{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px}
.pt-card{width:100%;max-width:420px;justify-self:center;border-radius:20px;background:#fff;box-shadow:var(--sh-lg);overflow:hidden}
.pt-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 14px;border-bottom:1px solid var(--line)}
.pt-brand{display:flex;align-items:center;gap:10px;min-width:0}
.pt-sq{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--ink);color:#fff;font-size:14px;font-weight:600}
.pt-sq img{width:20px;height:20px}
.pt-sq.wv{background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.4)}
.pt-name{font-size:15px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.pt-card-tag{font-size:12px;font-weight:550;color:var(--ink-3)}
.pt-card-t{padding:16px 18px 6px;font-size:19px;line-height:1.25;letter-spacing:-.028em;font-weight:550;color:var(--ink)}
.pt-rows{display:flex;flex-direction:column;padding:6px 10px 10px}
.pt-rows li{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 8px;font-size:14px;color:var(--ink-2)}
.pt-rows .tk{width:20px;height:20px}
.pt-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:10px 18px;border-top:1px solid var(--line);background:#fbf9f4;font-size:13.5px;color:var(--ink-3)}
.pt-card-foot b{font-weight:600;color:var(--ink)}
.pt-badge{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:7px;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.42);font-size:11.5px;font-weight:600;color:var(--gold-ink)}
.pt-swap{display:inline-grid}
.pt-swap>*{grid-area:1/1;transition:opacity .45s var(--ease),transform .45s var(--ease)}
.pt-swap .b{opacity:0;transform:translateY(6px)}
.pt-card.on .pt-swap .a{opacity:0;transform:translateY(-6px)}
.pt-card.on .pt-swap .b{opacity:1;transform:none}
.js .pt-card[data-play] .pt-badge{opacity:0;transform:scale(.9);transition:opacity .4s var(--ease) .5s,transform .4s var(--spring) .5s}
.pt-card.on .pt-badge{opacity:1!important;transform:none!important}
.pt-sec{padding:clamp(88px,10vw,136px) 0 0}
.pt-deal{margin-top:clamp(72px,8vw,112px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(140,109,44,.2)}
.pt-fact{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px 24px 4px 0}
.pt-fact+.pt-fact{padding-left:24px;border-left:1px solid rgba(140,109,44,.16)}
.pt-ico{flex:none;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#fff;color:var(--gold-ink);box-shadow:0 0 0 1px rgba(200,164,85,.4),0 10px 18px -12px rgba(140,109,44,.6)}
.pt-ico .i{width:19px;height:19px}
.pt-fact h2{margin-top:4px;font-size:17px;line-height:1.35;font-weight:600;letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.pt-fact p{font-size:15px;line-height:1.55;color:var(--ink-2);text-wrap:pretty}
.pt-h2{max-width:16em;font-size:var(--fs-h2);line-height:var(--lh-tight);letter-spacing:var(--tr-h2);font-weight:500;color:var(--ink);text-wrap:balance}
.pt-h2 .soft{display:block;color:#6f6656}
.pt-label{margin-bottom:16px;font-size:13.5px;font-weight:550;letter-spacing:-.005em;color:var(--gold-ink)}
.pt-sub{margin-top:18px;max-width:660px;font-size:var(--fs-lead);line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.pt-sub+.pt-sub{margin-top:12px}
.pt-who{margin-top:clamp(36px,4.4vw,56px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pt-who-card{display:flex;flex-direction:column;gap:10px;padding:24px 24px 22px;border-radius:var(--r-lg);background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-sm)}
.pt-who-card .pt-ico{width:40px;height:40px;border-radius:12px;margin-bottom:4px}
.pt-who-card .pt-ico .i{width:18px;height:18px}
.pt-who-card h3{font-size:17.5px;line-height:1.3;letter-spacing:-.022em;font-weight:600;color:var(--ink)}
.pt-who-card p{font-size:15px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.pt-foot{margin-top:28px;max-width:900px;font-size:15px;line-height:1.7;color:var(--ink-3)}
/* how a build runs: steps on the right drive the panel on the left */
.pt-flow{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(36px,6vw,96px);align-items:start}
.pt-sticky{position:sticky;top:110px}
.pt-panel{margin-top:30px;border-radius:20px;background:#fff;box-shadow:var(--sh-md);overflow:hidden}
.pt-panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px;height:46px;padding:0 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fcfaf6)}
.pt-panel-l{font-size:13px;font-weight:600;color:var(--ink)}
.pt-panel-s{font-size:12.5px;font-weight:550;color:var(--gold-ink);font-variant-numeric:tabular-nums}
.pt-panel-b{position:relative;display:grid;min-height:96px;padding:22px 20px}
.pt-ln{grid-area:1/1;align-self:center;font-size:clamp(1.25rem,1.05rem + .6vw,1.5625rem);line-height:1.3;letter-spacing:-.025em;font-weight:500;color:var(--ink);opacity:0;transform:translateY(8px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.pt-ln.on{opacity:1;transform:none}
.pt-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 20px 20px}
.pt-meter i{height:4px;border-radius:4px;background:#efe9dc;transition:background-color .4s var(--ease)}
.pt-meter i.on{background:var(--gold)}
.pt-steps{display:flex;flex-direction:column;gap:18px;padding-top:6px}
.pt-step{padding:26px 28px 26px;border-radius:24px;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.9);box-shadow:var(--sh-xs);transition:background-color .4s,box-shadow .4s}
.pt-step.on{background:#fff;box-shadow:var(--sh-md)}
.pt-step-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.pt-step-n{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--gold-wash);box-shadow:inset 0 0 0 1px var(--line-gold);font-size:12px;font-weight:600;color:var(--gold-ink);font-variant-numeric:tabular-nums}
.pt-step.on .pt-step-n{background:var(--gold-fill);box-shadow:none;color:#fff}
.pt-step-who{font-size:13px;font-weight:550;color:var(--ink-3)}
.pt-step h3{font-size:clamp(1.25rem,1.1rem + .45vw,1.5rem);line-height:1.2;letter-spacing:-.03em;font-weight:550;color:var(--ink)}
.pt-step p{margin-top:10px;font-size:15.5px;line-height:1.64;color:var(--ink-2);text-wrap:pretty}
/* what you can sell */
.pt-cap{margin-top:clamp(36px,4.4vw,56px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.pt-cap-card{display:flex;flex-direction:column;gap:12px;padding:28px 28px 24px;border-radius:26px;background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-md)}
.pt-cap-card h3{font-size:clamp(1.25rem,1.1rem + .45vw,1.5rem);line-height:1.2;letter-spacing:-.03em;font-weight:550;color:var(--ink)}
.pt-cap-card p{font-size:15.5px;line-height:1.64;color:var(--ink-2);text-wrap:pretty}
.pt-chips{margin-top:auto;padding-top:14px;display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line)}
.pt-chips span{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:8px;background:#fbf9f4;box-shadow:inset 0 0 0 1px var(--line);font-size:12px;font-weight:500;color:var(--ink-2)}
/* scope */
.pt-scope{margin-top:clamp(36px,4.4vw,56px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.pt-col{padding:28px 28px 22px;border-radius:26px;background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-md)}
.pt-col.no{background:rgba(255,255,255,.5);box-shadow:var(--sh-xs)}
.pt-col h3{margin-bottom:10px;font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.pt-col li{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-top:1px solid var(--line);font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.pt-col li:first-child{border-top:0}
.pt-col .m{width:22px;height:22px;margin-top:1px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--gold-wash);box-shadow:inset 0 0 0 1px rgba(200,164,85,.45);color:var(--gold-ink)}
.pt-col.no .m{background:#f3f0ea;box-shadow:inset 0 0 0 1px rgba(29,29,31,.08);color:var(--ink-3)}
.pt-col .m .i{width:12px;height:12px}
/* partner questions: heading left, rows right */
.pt-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,6vw,96px);align-items:start}
.pt-faq-side{position:sticky;top:120px}
.pt-faq-btns{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}
.pt-faq .wv-faq{margin-top:0}
.wv-faq .pt-q-a p{padding:0 60px 12px 2px;margin:0;font-size:16px;line-height:1.68;color:var(--ink-2)}
.wv-faq .pt-q-a p:last-child{padding-bottom:22px}

/* ---------- 10. facts and legal pages ---------- */
.fx-intro{margin-top:28px;max-width:720px}
.fx-intro p{font-size:clamp(1.03rem,.97rem + .25vw,1.125rem);line-height:1.7;color:var(--ink-2);text-wrap:pretty}
.fx-intro p+p{margin-top:1em}
.fx-table{max-width:980px;margin-top:clamp(36px,4.4vw,52px);border-radius:24px;background:rgba(255,255,255,.9);border:1px solid #fff;box-shadow:var(--sh-sm);overflow:hidden}
.fx-table table{width:100%;border-collapse:collapse}
.fx-table td{padding:18px 26px;vertical-align:top;border-top:1px solid var(--line);font-size:15.5px;line-height:1.65;color:var(--ink-2)}
.fx-table tr:first-child td{border-top:0}
.fx-table td:first-child{width:236px;color:var(--ink)}
.fx-table td:first-child strong{font-weight:600}
.fx-table td strong{color:var(--ink);font-weight:600}
.fx-table td br+strong{display:inline-block;margin-top:10px}
.lg-wrap{padding-top:clamp(48px,5.6vw,80px)}
.lg-grid{display:grid;grid-template-columns:minmax(0,740px) 260px;justify-content:space-between;align-items:start}
.lg-meta{margin-top:16px;font-size:14px;color:var(--ink-3)}
.lg-body{min-width:0;font-size:16.5px;line-height:1.72;color:var(--ink-2)}
.lg-sec+.lg-sec{margin-top:clamp(30px,3.4vw,42px)}
.lg-sec h2{margin-bottom:14px;font-size:clamp(1.375rem,1.15rem + .7vw,1.75rem);line-height:1.2;letter-spacing:-.034em;font-weight:500;color:var(--ink);text-wrap:balance;scroll-margin-top:110px}
.lg-sec h2 .lg-part{display:block;margin-bottom:6px;font-size:13.5px;font-weight:600;letter-spacing:-.005em;color:var(--gold-ink)}
.lg-sec.lg-major{padding-top:clamp(30px,3.4vw,42px);border-top:1px solid var(--line-2)}
.lg-sec.lg-major h2{font-size:clamp(1.75rem,1.3rem + 1.3vw,2.375rem);letter-spacing:-.04em}
.lg-sec p+p,.lg-sec p+ul,.lg-sec ul+p{margin-top:.9em}
.lg-sec strong{font-weight:600;color:var(--ink)}
.lg-sec ul{list-style:none;padding-left:1.2em}
.lg-sec ul li{position:relative}
.lg-sec ul li::before{content:"";position:absolute;left:-1.05em;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.lg-sec li+li{margin-top:.45em}
.lg-cl{position:relative;padding-left:56px}
.lg-cl+.lg-cl{margin-top:.75em}
.lg-cl .cn{position:absolute;left:0;top:0;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--gold-ink);line-height:1.95}
.lg-cl+ul{margin-left:56px}
.lg-dl li{display:grid;grid-template-columns:minmax(0,210px) minmax(0,1fr);gap:4px 18px}
.lg-dl li::before{top:.72em}
.lg-dl li span{color:var(--ink-2)}
.lg-rail{position:sticky;top:100px}
.lg-rail .toc-list{max-height:calc(100vh - 170px)}

/* ---------- 11. 404 ---------- */
.e404{position:relative;padding:clamp(150px,16vw,210px) 0 clamp(24px,3vw,40px);text-align:center}
.e404-n{font-size:clamp(6rem,3rem + 12vw,12rem);line-height:.86;font-weight:600;letter-spacing:-.07em;background:linear-gradient(180deg,rgba(200,164,85,.75) 0%,rgba(200,164,85,.18) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;user-select:none}
.e404 .pg-h1{margin-top:14px}
.e404 p{margin:18px auto 0;max-width:520px;font-size:var(--fs-lead);line-height:1.6;color:var(--ink-2)}
.e404-ctas{margin-top:30px;display:flex;justify-content:center;flex-wrap:wrap;gap:12px}

/* ---------- 12. about (demo K's page, styles moved here) ---------- */
.ab-hero{position:relative;overflow-x:clip;padding-top:clamp(124px,12.5vw,168px)}
.ab-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,.68fr);grid-template-areas:"copy photo" "copy card";align-items:center;column-gap:clamp(40px,6vw,96px)}
.ab-copy{grid-area:copy}
.ab-copy .h1{font-size:clamp(2.75rem,1.35rem + 3.5vw,4.25rem);line-height:1.02}
.ab-copy .h1 span{display:block;color:#6f6656}
.ab-lead{margin-top:24px;max-width:560px;font-size:clamp(1.0625rem,.95rem + .45vw,1.25rem);line-height:1.55;color:var(--ink-2);text-wrap:pretty}
.ab-ctas{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.ab-proof{margin-top:20px}
.me{grid-area:photo;position:relative;justify-self:center;align-self:end;width:clamp(220px,23vw,300px);aspect-ratio:1;margin-top:14px}
.me::before{content:"";position:absolute;inset:-30%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(228,192,116,.42),rgba(228,192,116,.14) 58%,rgba(228,192,116,0));pointer-events:none}
.me img{position:relative;z-index:1;width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--gold-tint);box-shadow:0 0 0 6px #fff,0 2px 6px rgba(48,36,12,.08),0 36px 70px -34px rgba(60,44,12,.6)}
.me-ring{position:absolute;left:-26px;top:-26px;width:calc(100% + 52px);height:calc(100% + 52px);max-width:none;overflow:visible;pointer-events:none}
.me-ring circle{fill:none;stroke:url(#ringGrad);stroke-width:.42;stroke-linecap:round}
.me-ring .dot{fill:var(--gold);stroke:none}
.js .me-ring .arc{stroke-dasharray:100;animation:ringDraw 1.7s var(--ease) .15s both}
.js .me-ring .dot{animation:dotIn .4s var(--ease) 1.5s both}
@keyframes ringDraw{from{stroke-dashoffset:100}to{stroke-dashoffset:9}}
@keyframes dotIn{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
.me-ring .arc{stroke-dasharray:100;stroke-dashoffset:9}
.me-card{grid-area:card;justify-self:center;align-self:start;position:relative;z-index:2;width:min(100%,330px);margin-top:-24px;padding:16px 18px 14px;border-radius:20px;background:rgba(255,255,255,.94);border:1px solid #fff;box-shadow:var(--sh-md)}
.me-name{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.me-name b{display:block;font-size:17px;font-weight:600;letter-spacing:-.025em;color:var(--ink);line-height:1.25}
.me-name span{display:block;font-size:13.5px;color:var(--ink-3)}
.me-name img{width:30px;height:30px}
.me-rows{display:flex;flex-direction:column;gap:8px;padding-top:12px}
.me-rows li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-2)}
.me-rows .i{width:15px;height:15px;color:var(--gold-deep)}
.me-rows a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(200,164,85,.7);text-underline-offset:3px}
.ab-logos{position:relative;margin-top:clamp(64px,7vw,96px);padding:24px 0 20px}
.ab-logos::before{content:"";position:absolute;left:50%;top:0;width:min(var(--container),100% - 2 * var(--gutter));height:1px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(29,29,31,0),rgba(29,29,31,.1) 18%,rgba(29,29,31,.1) 82%,rgba(29,29,31,0))}
.ab-logos .mq{width:min(1240px,100% - 32px);margin:0 auto}
.ab-story{padding:var(--section-y) 0 clamp(40px,5vw,64px)}
.ab-story-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,6vw,96px);align-items:start}
.ab-story-text p{max-width:640px;font-size:clamp(1.0625rem,.98rem + .35vw,1.25rem);line-height:1.62;color:var(--ink-2);text-wrap:pretty}
.ab-story-text p:first-child{color:var(--ink)}
.ab-story-text p+p{margin-top:1em}
.ab-built{padding:clamp(40px,5vw,72px) 0 var(--section-y)}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.work{display:flex;flex-direction:column;border-radius:28px;background:rgba(255,255,255,.72);border:1px solid #fff;box-shadow:var(--sh-md)}
.work-vis{margin:8px 8px 0;border-radius:21px;min-height:316px;display:grid;place-items:center;padding:30px clamp(16px,2.4vw,30px)}
.work-vis .dm-win{width:100%;max-width:450px}
.work-body{display:flex;flex-direction:column;gap:10px;flex:1;padding:24px 28px 24px}
.work-body p{font-size:15.5px;line-height:1.62;color:var(--ink-2);text-wrap:pretty}
.work-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-3)}
.work-foot img{height:15px;width:auto}
.work-foot .wf-mark{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.work-foot .wf-mark img{height:20px;width:20px}
.pp{padding:16px}
.pp-doc{border-radius:12px;box-shadow:inset 0 0 0 1px var(--line-2);overflow:hidden}
.pp-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;padding:12px 14px 10px}
.pp-top b{font-size:13px;font-weight:600;color:var(--ink)}
.pp-ai{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:550;color:var(--gold-ink);white-space:nowrap}
.pp-ai .i{width:12px;height:12px}
.pp-lines{display:flex;flex-direction:column;gap:7px;padding:2px 14px 14px}
.pp-lines i{display:block;height:7px;border-radius:4px;background:#efeae0}
.pp-lines i:nth-child(2){width:88%}
.pp-lines i:nth-child(3){width:62%}
.pp-row{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink)}
.pp-row>span:nth-child(2){flex:1}
.pp-row img{width:15px;height:15px;border-radius:4px}
.pp-row .i{width:15px;height:15px;color:var(--ink-3)}
.ab-how{padding:0 0 var(--section-y)}
.terms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
.term{display:flex;flex-direction:column;gap:10px;padding-top:22px;border-top:1px solid var(--line-2)}
.term-i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;margin-bottom:6px;background:#fff;box-shadow:var(--sh-sm);color:var(--gold-deep)}
.term-i .i{width:19px;height:19px}
.term h3{font-size:17px;line-height:1.3;letter-spacing:-.02em;font-weight:550;color:var(--ink)}
.term p{font-size:15px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.ab-how .offer{margin-top:clamp(48px,6vw,80px)}
.ab-revs{padding:0 0 var(--section-y)}
.ab-revs .sec-head .label{justify-content:center}
.rev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.rev-card{display:flex;flex-direction:column;gap:16px;padding:28px 28px 24px;border-radius:var(--r-lg);background:rgba(255,255,255,.86);border:1px solid #fff;box-shadow:var(--sh-md)}
.rev-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rev-tag{font-size:12.5px;font-weight:550;letter-spacing:-.005em;color:var(--gold-ink);white-space:nowrap}
.review-quote{font-size:16.5px;line-height:1.62;letter-spacing:-.008em;color:var(--ink);text-wrap:pretty}
.rev-meta{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid var(--line)}
.rev-meta strong{display:block;font-size:15px;font-weight:600;letter-spacing:-.015em;line-height:1.3}
.rev-meta .role{display:block;font-size:13.5px;color:var(--ink-3);line-height:1.4}

/* ---------- 13. breakpoints ---------- */
@media (max-width:1180px){
  .sv-grid,.lg-grid{grid-template-columns:minmax(0,1fr);max-width:760px;margin:0 auto}
  .sv-rail,.lg-rail{display:none}
  .toc-m{display:block}
  .toc-m[hidden]{display:none!important}
  .cs-head{max-width:760px;grid-template-columns:1fr;gap:34px}
}
@media (max-width:1080px){
  .terms{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}
  .rev-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rev-grid .rev-card:last-child{grid-column:1/-1}
  .ci-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-deal{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-fact:nth-child(3){padding-left:0;border-left:0}
  .pt-fact:nth-child(n+3){border-top:1px solid rgba(140,109,44,.13)}
  .pt-who{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:940px){
  .sv-hero-grid,.pt-grid{grid-template-columns:1fr;gap:44px}
  .sv-vis{min-height:0}
  .rel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .offer,.pg-offer{grid-template-columns:1fr}
  .pg-offer{grid-template-areas:"head" "copy" "rm"}
  .rm{justify-self:start}
  .cp-split{grid-template-columns:1fr}
  .cp-split .cp-sub{justify-self:start}
  .cp-ba{grid-template-columns:1fr;gap:14px}
  .cp-arrow span{transform:rotate(90deg)}
  .cp-net{grid-template-columns:1fr}
  .pt-flow{grid-template-columns:1fr}
  .pt-sticky{position:static}
  .pt-faq{grid-template-columns:1fr}
  .pt-faq-side{position:static}
  .ab-grid{grid-template-columns:1fr;grid-template-areas:"photo" "copy" "card";row-gap:0}
  .me{width:clamp(180px,42vw,240px);margin:0 auto 40px}
  .ab-copy{text-align:center;display:flex;flex-direction:column;align-items:center}
  .ab-lead{margin-left:auto;margin-right:auto}
  .ab-ctas{justify-content:center}
  .me-card{margin-top:36px}
  .ab-story-grid{grid-template-columns:1fr;gap:20px}
  .work-grid{grid-template-columns:1fr}
  .work-vis{min-height:0}
}
@media (max-width:720px){
  .sv-hero,.cs-top{padding-top:104px}
  .pg-head,.pt-hero{padding-top:108px}
  .crumbs{margin-bottom:16px}
  .sv-h1,.pg-h1{font-size:clamp(2.375rem,10vw,2.875rem);line-height:1.04}
  .cp-h1{font-size:clamp(2.625rem,11vw,3.25rem)}
  .pt-h1{font-size:clamp(2.75rem,12.4vw,3.5rem)}
  .cs-title{font-size:clamp(2rem,8.4vw,2.375rem);line-height:1.08}
  .sv-ctas .btn,.pt-ctas .btn,.e404-ctas .btn{flex:1 1 auto;justify-content:space-between}
  .sv-vis{padding:16px;border-radius:22px}
  .mk{padding:12px}
  .mk-two{grid-template-columns:1fr}
  .sv-vis .dm-chip,.ci-vis .dm-chip{display:none}
  .mk-row .mk-chip .i{display:none}
  .mk-app{grid-template-columns:1fr}
  .mk-side{flex-direction:row;overflow:hidden;border-right:0;border-bottom:1px solid var(--line);padding:8px}
  .mk-side span{flex:none}
  .sv-wrap{padding-top:56px}
  .sv-list li{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:16px 16px 16px 14px}
  .sv-list .n{width:28px;height:28px}
  .sv-list .t{font-size:15.5px}
  .sv-ex{padding:22px 20px 22px 22px}
  .sv-ex p{font-size:16px}
  .sv-price{padding:20px}
  .wv-faq summary{font-size:16.5px;padding:20px 2px}
  .wv-faq details p,.pt-q-a p{padding-right:8px}
  .pg-offer{margin-top:48px;padding:26px 18px 20px;border-radius:24px;grid-template-areas:"head" "copy"}
  .pg-offer .rm{display:none}
  .offer{border-radius:28px;padding:30px 18px 18px}
  .offer-ctas .btn{width:100%;justify-content:space-between}
  .offer-deal{align-items:flex-start;flex-direction:column;gap:6px}
  .rel-grid,.ci-grid{grid-template-columns:1fr;gap:14px}
  .ci-vis{height:auto;min-height:0}
  .rel-card{min-height:0}
  .wv-table-wrap .wv-table tbody th{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 var(--line-2)}
  .cs-glance{padding:18px 18px 6px}
  .cs-glance li{grid-template-columns:1fr;gap:2px}
  .cs-quote{padding:24px 22px 22px}
  .rt{padding:18px 8px 12px;gap:4px}
  .rt-i{width:40px;height:40px}
  .rt-l{width:18px}
  .cp-rail{padding:24px 20px}
  .cp-track{left:30px;right:auto;top:36px;bottom:36px;width:2px;height:auto}
  .cp-fill{transform-origin:50% 0}
  .js .cp-rail[data-play] .cp-fill{transform:scaleY(0)}
  .js .cp-rail.on[data-play] .cp-fill{transform:scaleY(1)}
  .cp-nodes{grid-template-columns:1fr;gap:16px}
  .cp-node{display:grid;grid-template-columns:22px 64px minmax(0,1fr) auto;align-items:center;gap:14px;text-align:left}
  .cp-knob{margin:0}
  .cp-chip{margin:0}
  .cp-builds{grid-template-columns:1fr}
  .cp-build{padding:24px 22px 22px}
  .cp-net{padding:28px 20px 20px;border-radius:28px}
  .cp-spec{padding:4px 20px}
  .cp-spec-row{grid-template-columns:1fr;gap:4px}
  .pt-deal{grid-template-columns:1fr}
  .pt-fact,.pt-fact+.pt-fact,.pt-fact:nth-child(3){display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;row-gap:4px;padding:18px 0 16px;border-left:0}
  .pt-fact .pt-ico{grid-row:span 2;width:40px;height:40px}
  .pt-fact h2{margin-top:0}
  .pt-fact+.pt-fact{border-top:1px solid rgba(140,109,44,.13)}
  .pt-who,.pt-cap,.pt-scope{grid-template-columns:1fr}
  .pt-step{padding:22px 20px}
  .pt-cap-card,.pt-col{padding:24px 22px 20px}
  .fx-table td{display:block;width:auto!important;padding:4px 20px}
  .fx-table td:first-child{padding-top:16px}
  .fx-table td:last-child{padding-bottom:16px;border-top:0}
  .lg-cl{padding-left:46px}
  .lg-cl+ul{margin-left:46px}
  .lg-dl li{grid-template-columns:1fr}
  .ab-hero{padding-top:108px}
  .ab-copy .h1{font-size:clamp(2.5rem,10vw,3rem)}
  .ab-ctas .btn{flex:1 1 auto;justify-content:space-between}
  .me-ring{left:-20px;top:-20px;width:calc(100% + 40px);height:calc(100% + 40px)}
  .ab-logos,.pg-logos{margin-top:56px;padding:18px 0 14px}
  .wm-cs{font-size:19px}
  .cl-pn img{height:25px}
  .ab-proof .trust-avs .av:nth-child(n+4){display:none}
  .terms{grid-template-columns:1fr;row-gap:28px}
  .rev-grid{grid-template-columns:1fr}
  .rev-grid .rev-card:last-child{grid-column:auto}
  .rev-card{padding:24px 22px 20px}
  .work{border-radius:24px}
  .work-vis{border-radius:18px;padding:22px 12px}
  .work-body{padding:20px 20px 20px}
}

/* ---------- 14. reduced motion: finished frames ---------- */
@media (prefers-reduced-motion:reduce){
  .js .mk-seq>*{animation:none}
  .js .me-ring .arc,.js .me-ring .dot{animation:none}
  .js .rm[data-play] .rm-list li,.js .cp-alert[data-play] .cp-step,.js .cp-alert[data-play] .cp-out{opacity:1;transform:none}
  .js .rm[data-play] .rm-st .tk{transform:none}
  .rm .sw-a{opacity:0}.rm .sw-b{opacity:1}
  .js .cp-rail[data-play] .cp-fill{transform:none}
  .js .cp-rail[data-play] .cp-node{opacity:1}
  .pt-swap .a{opacity:0}.pt-swap .b{opacity:1;transform:none}
  .js .pt-card[data-play] .pt-badge{opacity:1;transform:none}
  .rel-card,.ci-card{transition:none}
  .rel-card:hover,.ci-card:hover{transform:none}
}
