/* ==========================================================================
   MotorSales.AI /dev — styles.css
   One file, one system. Tokens are the contract (scratchpad/rework/design-system.md).
   Sections: 1 tokens · 2 base · 3 utilities · 4 buttons · 5 forms & states
   6 chrome (announce/header/menu) · 7 home hero + flow mock · 8 sources strip
   9 core · 10 trustbar · 11 steps · 12 extras tiers · 13 everything · 14 compare
   15 proof · 16 team · 17 signup · 18 closing · 19 footer · 20 mobile CTA
   21 pricing page · 22 product pages + mock primitives · 23 partners
   24 legacy compat · 25 responsive · 26 touch / reduced motion / print
   ========================================================================== */

/* 1. TOKENS ------------------------------------------------------------- */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600 900;font-display:swap;src:url("/site/assets/fonts/montserrat-latin.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("/site/assets/fonts/open-sans-latin.woff2") format("woff2")}
/* metric-matched fallbacks (Arial) so text set before the webfonts land occupies the same space */
@font-face{font-family:"Montserrat Fallback";src:local("Arial");ascent-override:84.95%;descent-override:22.03%;line-gap-override:0%;size-adjust:113.95%}
@font-face{font-family:"Open Sans Fallback";src:local("Arial");ascent-override:101.18%;descent-override:27.73%;line-gap-override:0%;size-adjust:105.64%}
:root{
  /* colour */
  /* colour tokens mirror assets/v2.css .v2t - keep the two in sync */
  --pink:#D1145A; --hot:#FF2E78; --pink-text:#B30F4C; --pink-tint:#FFF0F6; --pink-line:#F6C9DA;
  --purple:#6C2BD9; --purple-tint:#F3EEFF; --purple-line:#E3D6FB;
  --grad:linear-gradient(100deg,#D1145A 0%,#6C2BD9 100%);
  --ink:#0E0B14; --ink-2:#17121F; --ink-soft:#4E4753; --ink-faint:#6B6470;
  --paper:#FBF8FA; --white:#FFFFFF; --line:#ECE5EE; --line-strong:#D9D2DC;
  --on-ink:#FFFFFF; --on-ink-soft:#CFC8D3; --on-ink-faint:#A39BA9;
  /* legacy aliases still referenced inline on pages not yet re-templated */
  /* type */
  --display:"Montserrat","Montserrat Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Open Sans","Open Sans Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:'Open Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --t-display:clamp(34px,4.4vw,60px);
  --t-h2:clamp(30px,3.3vw,44px);
  --t-h3:clamp(22px,2.1vw,28px);
  --t-h4:clamp(17px,1.4vw,19px);
  --t-lede:clamp(16.5px,1.4vw,19px);
  --t-body:clamp(15.5px,1.15vw,16px);
  --t-small:14px; --t-body-s:14.5px; --t-caption:13px; --t-mono:12px;
  --t-figure:clamp(44px,5vw,64px);
  --t-price-xl:clamp(60px,7vw,88px);
  /* spacing */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px; --s10:128px;
  --section-y:96px; --card-pad:32px; --gutter:24px; --maxw:1180px;
  /* radius */
  --r1:6px; --r2:10px; --r3:16px; --r-pill:999px;
  /* elevation */
  --e1:0 1px 2px rgba(14,11,20,.06),0 1px 0 rgba(14,11,20,.02);
  --e2:0 8px 24px -8px rgba(14,11,20,.16);
  --e3:0 24px 48px -16px rgba(14,11,20,.24);
  --e-pink:0 8px 20px -6px rgba(209,20,90,.35);
  /* z */
  --z-raised:10; --z-sticky:100; --z-menu:200; --z-fixed:300; --z-skip:400;
  /* motion */
  --ease-out:cubic-bezier(.2,.7,.2,1); --fast:150ms; --slow:520ms;
  /* chrome */
  --header-h:64px; --announce-h:36px;
}

/* 2. BASE --------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:var(--t-body);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--pink-text);text-decoration:none}
a:hover{color:var(--pink)}
p{margin:0 0 1em;text-wrap:pretty}
p:last-child{margin-bottom:0}
ul,ol{margin:0;padding:0;list-style:none}
strong,b{font-weight:600}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:700;color:var(--ink);margin:0;text-wrap:balance;letter-spacing:-.02em}
h1{font-size:var(--t-display);font-weight:800;line-height:1.02;letter-spacing:-.03em}
h2,.h2{font-size:var(--t-h2);line-height:1.08;letter-spacing:-.025em}
h3{font-size:var(--t-h3);line-height:1.15}
h4{font-size:var(--t-h4);line-height:1.3;letter-spacing:-.01em}
h5{font-size:var(--t-small);line-height:1.3;letter-spacing:.02em;text-transform:uppercase}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus{outline:none}
:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:var(--r1)}
::selection{background:var(--pink);color:#fff}
.num,.price,.mono,table,[data-count]{font-variant-numeric:tabular-nums}
main{display:block}
section{padding:var(--section-y) 0}
.section-soft{background:var(--paper)}
.section-ink{background:var(--ink);color:var(--on-ink)}
.section-ink h2,.section-ink h3{color:var(--on-ink)}

/* 3. UTILITIES ---------------------------------------------------------- */
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:12px;top:-60px;z-index:var(--z-skip);background:var(--ink);color:#fff;padding:10px 14px;border-radius:var(--r2);font-weight:600;transition:transform var(--fast) var(--ease-out)}
.skip-link:focus{top:12px;color:#fff}
h1 .grad-text{display:inline-block;text-wrap:balance}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.kicker,.kicker-sm{display:block;font-family:var(--mono);font-weight:500;font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--pink-text);margin:0 0 var(--s4)}
.kicker-sm{font-size:11px}
.h1{font-size:var(--t-display)}
.sub{font-size:var(--t-lede);color:var(--ink-soft);max-width:62ch;margin:var(--s4) 0 0}
.lede{font-size:var(--t-lede);line-height:1.55;color:var(--ink-soft);max-width:56ch;margin:var(--s5) 0 0}
.section-ink .sub,.section-ink .lede{color:var(--on-ink-soft)}
.tick{color:var(--pink);font-weight:700}
hr{border:0;border-top:1px solid var(--line);margin:var(--s6) 0}

/* 4. BUTTONS ------------------------------------------------------------ */
.btn{--btn-bg:var(--white);--btn-fg:var(--ink);--btn-bd:var(--line-strong);
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 20px;border-radius:var(--r2);border:1.5px solid var(--btn-bd);
  background:var(--btn-bg);color:var(--btn-fg);font-family:var(--body);font-weight:600;font-size:15px;line-height:1.2;
  white-space:nowrap;text-decoration:none;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;
  transition:background-color var(--fast) var(--ease-out),border-color var(--fast) var(--ease-out),color var(--fast) var(--ease-out),transform var(--fast) var(--ease-out),box-shadow var(--fast) var(--ease-out)}
.btn:hover{color:var(--btn-fg)}
.btn-primary{--btn-bg:var(--pink);--btn-fg:#fff;--btn-bd:var(--pink)}
.btn-primary:hover{--btn-bg:var(--pink-text);--btn-bd:var(--pink-text);box-shadow:var(--e-pink);transform:translateY(-1px)}
.btn-primary:active{--btn-bg:var(--hot);--btn-bd:var(--hot);transform:translateY(0);box-shadow:none}
.btn-outline{--btn-bg:transparent;--btn-fg:var(--ink);--btn-bd:var(--line-strong)}
.btn-outline:hover{--btn-bd:var(--ink);--btn-bg:var(--white)}
.btn-outline:active{--btn-bg:var(--paper)}
.btn-white{--btn-bg:#fff;--btn-fg:var(--ink);--btn-bd:#fff}
.btn-white:hover{--btn-bg:#fff;--btn-fg:var(--pink-text);transform:translateY(-1px);box-shadow:var(--e2)}
.btn-white:active{transform:none;box-shadow:none}
.btn-ghost{--btn-bg:transparent;--btn-fg:var(--pink-text);--btn-bd:transparent;padding:0 10px}
.btn-ghost:hover{--btn-bg:var(--pink-tint)}
.btn-sm{min-height:38px;padding:0 14px;font-size:14px}
.btn-lg{min-height:52px;padding:0 26px;font-size:16px}
.btn[disabled],.btn.is-disabled{opacity:.45;pointer-events:none;box-shadow:none;transform:none}
.btn.is-loading{color:transparent!important;pointer-events:none}
.btn.is-loading::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .7s linear infinite}
.btn-outline.is-loading::after,.btn-white.is-loading::after{border-color:rgba(14,11,20,.25);border-top-color:var(--ink)}
@keyframes spin{to{transform:rotate(360deg)}}
.section-ink .btn-outline{--btn-fg:#fff;--btn-bd:rgba(255,255,255,.4)}
.section-ink .btn-outline:hover{--btn-bd:#fff;--btn-bg:rgba(255,255,255,.08)}

/* 5. FORMS & STATES ----------------------------------------------------- */
.form-grid{display:grid;gap:12px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{display:block;font-size:13px;font-weight:600;color:var(--ink-soft);margin-bottom:6px}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:46px;padding:10px 14px;border:1.5px solid var(--line-strong);border-radius:var(--r2);background:#fff;color:var(--ink);font-size:15px;transition:border-color var(--fast),box-shadow var(--fast)}
.form-grid input::placeholder{color:var(--ink-faint)}
.form-grid input:hover,.form-grid select:hover{border-color:var(--ink-faint)}
.form-grid input:focus-visible,.form-grid select:focus-visible,.form-grid textarea:focus-visible{outline:3px solid var(--pink);outline-offset:2px;border-color:var(--pink)}
.form-grid input[aria-invalid="true"],.form-grid .is-invalid input,.form-grid input:user-invalid{border-color:var(--pink);background:var(--pink-tint)}
.field-error{display:none;font-size:13px;color:var(--pink-text);margin-top:6px;font-weight:600}
.is-invalid .field-error,input[aria-invalid="true"] + .field-error{display:block}
.form-sub{width:100%;margin-top:4px}
.form-note{font-size:13px;color:var(--ink-faint);margin:10px 0 0}
.form-note a{color:var(--pink-text);font-weight:600}
.form-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);margin-bottom:18px}
.form-toggle button{min-height:40px;border-radius:calc(var(--r2) - 3px);font-weight:600;font-size:14px;color:var(--ink-soft);transition:background-color var(--fast),color var(--fast),box-shadow var(--fast)}
.form-toggle button:hover{color:var(--ink)}
.form-toggle button.on{background:#fff;color:var(--ink);box-shadow:var(--e1)}
.demo-only{display:none}
.demo-only.show{display:block}
.form-success{outline:none;padding:18px 20px;border-radius:var(--r2);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--ink)}
.form-success strong{color:var(--pink-text)}
/* skeleton + empty */
.skeleton,.skeleton-text{position:relative;overflow:hidden;background:var(--paper);border-radius:var(--r1);animation:pulse 1.2s ease-in-out 3}
.skeleton{min-height:16px}
.skeleton-text{height:.9em;margin:.35em 0;width:100%}
.skeleton-text:nth-child(2n){width:82%}
.skeleton-text:nth-child(3n){width:64%}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.55}}
.empty{padding:32px;border:1.5px dashed var(--line-strong);border-radius:var(--r3);text-align:center;color:var(--ink-faint);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}

/* 6. CHROME: announce · header · menu ---------------------------------- */
.announce{background:var(--ink-2);color:var(--on-ink);font-size:13px;line-height:1.4;text-align:center;padding:9px 16px}
.announce strong{color:#fff;font-weight:600}
.announce a{color:#fff;white-space:nowrap;text-decoration:underline;text-decoration-color:var(--hot);text-underline-offset:3px}
.announce a:hover{color:#fff;text-decoration-color:#fff}
.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:#fff;border-bottom:1px solid var(--line);transition:box-shadow var(--fast)}
.site-header.scrolled{box-shadow:var(--e1)}
.header-inner{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;gap:20px;min-height:var(--header-h);position:relative}
.logo{display:inline-flex;align-items:center;flex:0 0 auto}
.logo-img{height:36px;width:auto}
.logo-img.rev{filter:brightness(0) invert(1)}
.main-nav{display:flex;align-items:center;gap:2px;margin-left:8px}
.main-nav a{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:var(--r2);font-size:14px;font-weight:600;color:var(--ink-soft);transition:background-color var(--fast),color var(--fast)}
.main-nav a:hover{color:var(--ink);background:var(--paper)}
.main-nav a.active,.main-nav a[aria-current="page"]{color:var(--pink-text);background:var(--pink-tint)}
.header-cta{display:flex;align-items:center;gap:6px;margin-left:auto}
.link-login{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:var(--r2);font-size:14px;font-weight:600;color:var(--ink-soft)}
.link-login:hover{color:var(--ink);background:var(--paper)}
.menu-btn{display:none;width:44px;height:44px;border-radius:var(--r2);align-items:center;justify-content:center;color:var(--ink);margin-right:-8px}
.menu-btn:hover{background:var(--paper)}
.menu-btn svg{width:22px;height:22px}
.mobile-menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--e2);z-index:var(--z-menu);padding:8px 0 16px}
.mobile-menu.open{display:block}
.mobile-menu a{display:flex;align-items:center;min-height:48px;padding:0 var(--gutter);font-weight:600;font-size:16px;color:var(--ink);border-bottom:1px solid var(--line)}
.mobile-menu a:hover{background:var(--paper)}
.mobile-menu a.active{color:var(--pink-text)}
.mobile-menu .mm-login{border-top:1px solid var(--line-strong);margin-top:8px;color:var(--ink-soft)}
.mobile-menu .mm-cta,.mobile-menu .mm-wa{margin:12px var(--gutter) 0;min-height:48px;border-radius:var(--r2);justify-content:center;border-bottom:0}
.mobile-menu .mm-cta{background:var(--pink);color:#fff}
.mobile-menu .mm-cta:hover{background:var(--pink-text)}
.mobile-menu .mm-wa{border:1.5px solid var(--line-strong);color:var(--ink);margin-top:8px}

/* 7. HOME HERO + FLOW MOCK --------------------------------------------- */
.hero{background:var(--paper);padding:72px 0 64px;border-bottom:1px solid var(--line)}
.hero-home{padding-top:32px}
.hero-home .wrap{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:var(--s7);align-items:start}
.hero-copy{padding-top:12px}
.hero-home .hero-copy{position:sticky;top:calc(var(--header-h) + 28px)}
.hero-copy h1{margin:0}
.hero .lede{margin-top:20px}
.price-line{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.01em;margin:22px 0 0;font-variant-numeric:tabular-nums}
.price-line small{font-family:var(--body);font-weight:400;font-size:14px;color:var(--ink-faint);margin-left:6px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.hero-note{font-size:13px;color:var(--ink-faint);margin:14px 0 0;line-height:1.6}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-soft)}
.chip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--pink)}
.hero-visual{position:relative}
/* the flow: three product fragments on a rail, entering once in narrative order */
.flow{position:relative;display:grid;gap:8px;padding-left:26px}
.flow::before{content:"";position:absolute;left:8px;top:14px;bottom:14px;width:2px;background:var(--line-strong);border-radius:2px}
.flow-step{position:relative;min-width:0;opacity:0;transform:translateY(16px);animation:rise var(--slow) var(--ease-out) forwards}
.flow-step:nth-child(1){animation-delay:.12s}
.flow-step:nth-child(2){animation-delay:.42s}
.flow-step:nth-child(3){animation-delay:.72s}
html.js .flow:not(.play) .flow-step{animation-play-state:paused}
@keyframes rise{to{opacity:1;transform:none}}
.fs-label{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 6px;position:relative}
.fs-label::before{content:"";position:absolute;left:-23px;top:50%;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--pink);transform:translateY(-50%)}
.fs-label b{color:var(--ink);font-weight:500}
.fs-label .t{margin-left:auto;letter-spacing:0}
.flow .mock{box-shadow:var(--e2)}
.flow .avatar{background:var(--pink);}
.flow-step:nth-child(2) .mock{box-shadow:var(--e3)}

/* 8. SOURCES STRIP (was the looping ticker; now static) --------------- */
.ticker{padding:22px 0;border-bottom:1px solid var(--line);background:#fff}
.ticker .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.t-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);flex:0 0 auto}
.ticker-track{display:flex;flex-wrap:wrap;gap:8px 10px}
.ticker-track span{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:var(--r1);border:1px solid var(--line);font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:-.01em;color:var(--ink-soft);background:var(--paper)}

/* 9. CORE ---------------------------------------------------------------- */
.core-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);border-radius:var(--r3);overflow:hidden;border:1px solid var(--line);margin-top:var(--s7);box-shadow:var(--e2)}
.core-left{background:var(--ink);color:var(--on-ink);padding:44px 40px;display:flex;flex-direction:column;gap:18px}
.core-left .tag{align-self:flex-start;display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:var(--r-pill);background:var(--pink);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.core-left h3{color:#fff;font-size:var(--t-h3)}
.core-price{font-family:var(--display);font-weight:800;font-size:var(--t-figure);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#fff}
.core-price small,.core-price span{font-size:16px;font-weight:600;letter-spacing:0;color:var(--on-ink-soft);margin-left:6px}
.core-desc{color:var(--on-ink-soft);font-size:16px}
.core-left .btn{align-self:flex-start;margin-top:auto}
.core-footnote{font-size:13px;color:var(--on-ink-faint);margin:0}
.core-footnote a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.core-right{background:#fff;padding:36px 40px;display:grid;gap:0}
.feature-group{padding:18px 0;border-top:1px solid var(--line)}
.feature-group:first-child{border-top:0;padding-top:0}
.feature-group h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;margin:0 0 10px}
.feature-group ul{display:grid;gap:8px}
.feature-group li{position:relative;padding-left:24px;font-size:15px;color:var(--ink-soft);line-height:1.5}
.feature-group li::before{content:"";position:absolute;left:0;top:.42em;width:14px;height:14px;border-radius:50%;background:var(--pink-tint);border:1px solid var(--pink-line)}
.feature-group li::after{content:"";position:absolute;left:5px;top:calc(.42em + 3px);width:4px;height:7px;border:solid var(--pink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.core-shots{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5);margin-top:var(--s6);align-items:start}

/* 10. TRUSTBAR ------------------------------------------------------------ */
.trustbar{background:var(--ink);color:var(--on-ink);padding:64px 0}
.trustbar .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s6)}
.stat{padding-top:18px;border-top:2px solid var(--pink)}
.stat .num{font-family:var(--display);font-weight:800;font-size:var(--t-figure);line-height:1;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums}
.stat .lbl{margin-top:12px;font-size:15px;line-height:1.45;color:var(--on-ink-soft)}
.src{display:block;margin-top:8px;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-faint)}
.hero-note+.src{margin-top:-4px;margin-bottom:12px}
.stat .src{margin-top:10px;color:var(--on-ink-faint)}

/* 11. STEPS --------------------------------------------------------------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s7);counter-reset:step}
.step-card{background:#fff;border:1px solid var(--line);border-radius:var(--r3);padding:28px;position:relative}
.step-num{display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--pink-text);background:var(--pink-tint);border:1px solid var(--pink-line);border-radius:var(--r-pill);min-height:26px;padding:0 10px;margin-bottom:16px}
.step-card h3{font-size:var(--t-h4);margin-bottom:8px}
.step-card p{color:var(--ink-soft);font-size:15px}

/* 12. EXTRAS TIERS -------------------------------------------------------- */
.tiers{display:grid;gap:0;margin-top:var(--s7);border-top:1px solid var(--line)}
.tier{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--s6);padding:28px 0;border-bottom:1px solid var(--line);align-items:start}
.tier-label{position:sticky;top:calc(var(--header-h) + 16px);font-variant-numeric:tabular-nums}
.tier-label .tl-price{font-family:var(--display);font-weight:800;font-size:34px;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}
.tier-label .tl-per{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:8px}
.tier-label .tl-n{display:block;font-size:13px;color:var(--ink-soft);margin-top:10px}
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.tier[data-tier="75"] .tier-grid,.tier[data-tier="99"] .tier-grid{grid-template-columns:1fr}
.extras-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:var(--s7)}
.extra-card{display:flex;flex-direction:column;gap:10px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--r3);transition:border-color var(--fast),box-shadow var(--fast),transform var(--fast)}
.extra-card h3{font-size:17px;letter-spacing:-.015em}
.extra-card p{color:var(--ink-soft);font-size:14.5px;line-height:1.55}
.x-icon{width:36px;height:36px;border-radius:var(--r2);display:grid;place-items:center;background:var(--pink-tint);color:var(--pink);border:1px solid var(--pink-line)}
.x-icon svg{width:18px;height:18px}
.x-price{font-family:var(--display);font-weight:700;font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:auto}
.x-price small,.x-price span{font-family:var(--body);font-weight:400;color:var(--ink-faint);font-size:13px}
.x-more{font-size:14px;font-weight:600;color:var(--pink-text)}
.x-in{font-size:13px;font-weight:600;color:var(--pink-text);white-space:nowrap}
.tier[data-tier="75"] .x-in,.tier[data-tier="99"] .x-in{grid-column:3;grid-row:2;justify-self:end;align-self:start}
.tier[data-tier="99"] .x-in{color:var(--hot)}
.tier-grid .x-more{min-height:3.2em}
.x-more:hover{text-decoration:underline;text-underline-offset:3px}
/* scale rises with the price */
.tier[data-tier="49"] .extra-card{padding:24px}
.tier[data-tier="49"] .extra-card h3{font-size:19px}
.tier[data-tier="49"] .x-icon{width:40px;height:40px}
.tier[data-tier="75"] .extra-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;column-gap:20px;align-items:center;padding:32px;background:var(--paper)}
.tier[data-tier="75"] .extra-card h3{font-size:24px;grid-column:2}
.tier[data-tier="75"] .extra-card p{grid-column:2;font-size:15.5px;max-width:60ch}
.tier[data-tier="75"] .x-icon{width:48px;height:48px;grid-row:1 / span 3;align-self:start}
.tier[data-tier="75"] .x-icon svg{width:22px;height:22px}
.tier[data-tier="75"] .x-price{grid-column:3;grid-row:1;font-size:22px;align-self:start;margin:0}
.tier[data-tier="75"] .x-more{grid-column:3;grid-row:3;justify-self:end}
.tier[data-tier="99"] .extra-card{display:grid;grid-template-columns:56px minmax(0,1fr) auto;column-gap:22px;align-items:center;padding:32px;background:var(--ink);border-color:var(--ink);color:var(--on-ink)}
.tier[data-tier="99"] .extra-card h3{font-size:28px;color:#fff;grid-column:2}
.tier[data-tier="99"] .extra-card p{grid-column:2;color:var(--on-ink-soft);font-size:16px;max-width:64ch}
.tier[data-tier="99"] .x-icon{width:56px;height:56px;grid-row:1 / span 3;align-self:start;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:var(--hot)}
.tier[data-tier="99"] .x-icon svg{width:26px;height:26px}
.tier[data-tier="99"] .x-price{grid-column:3;grid-row:1;font-size:26px;color:#fff;margin:0;align-self:start}
.tier[data-tier="99"] .x-price small{color:var(--on-ink-faint)}
.tier[data-tier="99"] .x-more{grid-column:3;grid-row:3;justify-self:end;color:#fff}
.tier[data-tier="99"] .x-more:hover{text-decoration-color:var(--hot)}
.tiers-cta{display:flex;justify-content:center;margin-top:var(--s6)}

/* 13. EVERYTHING (the gradient moment) --------------------------------- */
.everything{background:linear-gradient(rgba(14,11,20,.2),rgba(14,11,20,.2)),var(--grad);color:#fff;border-radius:var(--r3);padding:44px 48px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s6);align-items:center;box-shadow:var(--e2)}
.everything h3{color:#fff;font-size:clamp(28px,3vw,40px);letter-spacing:-.03em;margin:12px 0 10px}
.everything p{color:#fff;max-width:52ch}
.save-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:var(--r-pill);background:rgba(14,11,20,.28);border:1px solid rgba(255,255,255,.5);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#fff}
.big-price{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;font-variant-numeric:tabular-nums}
.big-price .strike{font-family:var(--display);font-weight:600;font-size:20px;color:#fff;opacity:1;text-decoration:line-through;font-variant-numeric:tabular-nums}
.big-price .amount{font-family:var(--display);font-weight:800;font-size:var(--t-price-xl);line-height:1;letter-spacing:-.035em;color:#fff;font-variant-numeric:tabular-nums}
.big-price .per{font-size:14px;color:#fff}
.big-price .btn{margin-top:12px}

/* 14. COMPARE -------------------------------------------------------------- */
.compare{position:relative;margin-top:var(--s7);overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r3);background:#fff}
.compare table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;font-size:15px}
.compare th,.compare td{padding:14px 18px;text-align:center;border-bottom:1px solid var(--line);vertical-align:middle}
.compare tr:last-child td{border-bottom:0}
.compare thead th{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);background:var(--paper)}
.compare th.us,.compare td.us{background:var(--pink-tint);color:var(--pink-text);font-weight:600}
.compare thead th.us{color:var(--pink-text)}
.compare .row-label,.compare td:first-child,.compare th:first-child{text-align:left;font-weight:600;color:var(--ink)}
.compare .yes{color:var(--pink);font-weight:700}
.compare .no{color:var(--ink-faint)}
.compare td small{display:block;margin-top:2px;font-size:12.5px;font-weight:400;color:var(--ink-faint)}
.compare td.us small{color:var(--pink-text)}

/* 15. PROOF ---------------------------------------------------------------- */
.testimonial{margin:0;max-width:880px}
.testimonial blockquote{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(22px,2.6vw,32px);line-height:1.25;letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.testimonial .hl{color:var(--pink-text)}
.testimonial figcaption{margin-top:20px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ink-faint)}
.testimonial figcaption strong{color:var(--ink);font-weight:500}
.testimonial .stars{color:var(--pink);letter-spacing:2px;font-size:14px;display:block;margin-bottom:14px}
.proof-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s7)}
.pq{background:#fff;border:1px solid var(--line);border-radius:var(--r3);padding:24px;font-size:15px;color:var(--ink-soft)}
.pq p{color:var(--ink);font-weight:600;line-height:1.5}
.pq .stars{color:var(--pink);font-size:13px;display:block;margin-bottom:10px;letter-spacing:2px}
.pq footer,.pq cite,.pq small{display:block;margin-top:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;font-style:normal;color:var(--ink-faint)}

/* 16. TEAM ------------------------------------------------------------------ */
.team-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--s7);align-items:center}
.team-panel{background:#fff;border:1px solid var(--line);border-radius:var(--r3);padding:32px;box-shadow:var(--e1)}
.team-avatars{display:flex;margin-bottom:18px}
.team-avatars img,.avatar-img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:var(--e1);margin-left:-14px}
.team-avatars img:first-child{margin-left:0}
.team-figure{margin:0}
.team-figure img{border-radius:var(--r2)}
.team-panel h3{font-size:var(--t-h4);margin-bottom:6px}
.team-panel p{color:var(--ink-soft);font-size:15px}
.team-copy .kicker-sm{margin-bottom:12px}
.team-copy h2{margin-bottom:18px}
.team-copy > p{color:var(--ink-soft);max-width:58ch}
.team-points{display:grid;gap:14px;margin-top:var(--s5)}
.team-point{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:start}
.tp-ico{width:36px;height:36px;border-radius:var(--r2);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink);display:grid;place-items:center}
.tp-ico svg{width:18px;height:18px}
.team-point strong,.team-point h3{display:block;font-family:var(--display);font-size:16px;letter-spacing:-.01em;margin-bottom:2px}
.tp-note{color:var(--ink-soft);font-size:15px}

/* 17. SIGNUP ---------------------------------------------------------------- */
.signup-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border-radius:var(--r3);overflow:hidden;border:1px solid var(--line);box-shadow:var(--e3);margin-top:var(--s6);background:#fff}
.wrap > .signup-card:first-child{margin-top:0} /* pages with no section heading above the card */
.signup-left{background:var(--ink);color:var(--on-ink);padding:44px 40px;display:flex;flex-direction:column}
.signup-left h2,.signup-left h3{color:#fff;font-size:var(--t-h3);margin-bottom:12px}
.signup-left p{color:var(--on-ink-soft)}
.next-steps{display:grid;gap:14px;margin-top:24px}
.next-step{display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;align-items:start;color:var(--on-ink-soft);font-size:15px}
.next-step strong,.next-step h4{color:#fff;display:block;font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:-.01em;margin:0 0 3px}
.next-step p{color:var(--on-ink-soft);font-size:14.5px;line-height:1.5}
.ns-num{width:32px;height:32px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;font-family:var(--mono);font-size:12px;font-weight:500}
.contact-alt{margin-top:auto;padding-top:24px;font-size:14px;color:var(--ink-soft)}
.contact-alt a{color:var(--pink-text);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.signup-left .contact-alt{color:var(--on-ink-faint)}
.signup-left .contact-alt a{color:#fff;font-weight:400}
.signup-right{padding:40px}
.signup-right h3{font-size:var(--t-h4);margin-bottom:16px}

/* 18. CLOSING STRIP --------------------------------------------------------- */
section:has(> .wrap > .closing-strip){padding-top:0}
.closing-strip{border-top:1px solid var(--line);padding:24px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px}
.cs-items{display:flex;flex-wrap:wrap;gap:10px 28px}
.cs-item{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-soft);font-weight:600}
.cs-item .tick{color:var(--pink)}
@media (hover:none) and (max-width:700px){.cs-item a{display:inline-block;padding:12px 0;margin:-12px 0}}

/* 19. FOOTER ---------------------------------------------------------------- */
.site-footer{background:var(--ink-2);color:var(--on-ink-soft);padding:64px 0 40px;font-size:14px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--s7)}
@media (min-width:1101px){.footer-grid{grid-template-columns:1.2fr 1.35fr 1fr .9fr}}
.footer-brand p,.footer-grid > div > p{color:var(--on-ink-soft);max-width:36ch;margin:16px 0 0}
.site-footer h5{color:#fff;font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.12em;margin-bottom:14px}
.site-footer ul{display:grid;gap:2px}
.site-footer li{color:var(--on-ink-faint)}
.site-footer li a{display:inline-flex;align-items:center;min-height:32px;color:var(--on-ink-soft);transition:color var(--fast)}
.site-footer li a:hover{color:#fff}
.footer-contact a{color:#fff}
.app-badges{display:flex;gap:10px;margin-top:20px}
.app-badges img{height:40px;width:auto}
.app-badges a{display:inline-flex;border-radius:var(--r1)}
.footer-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.footer-badges span{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:var(--r1);border:1px solid rgba(255,255,255,.14);font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--on-ink-soft)}
.footer-legal{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:12.5px;color:var(--on-ink-faint);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
.footer-legal a{color:var(--on-ink-soft)}
.footer-legal a:hover{color:#fff}
.footer-legal p{margin:0}

/* 20. MOBILE CTA (fixed, safe-area) ---------------------------------------- */
.mobile-cta{display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:var(--z-fixed);min-height:52px;align-items:center;justify-content:center;border-radius:var(--r2);background:var(--pink);color:#fff;font-weight:700;font-size:16px;box-shadow:var(--e-pink);transition:transform 200ms var(--ease-out),opacity 200ms var(--ease-out)}
.mobile-cta:hover{color:#fff;background:var(--pink-text)}
.mobile-cta.hidden{transform:translateY(140%);opacity:0;pointer-events:none}

/* 21. PRICING PAGE ----------------------------------------------------------- */
.hero-pricing{padding-bottom:0;border-bottom:0}
.hero-pricing .lede{max-width:60ch}
.price-cards-section{padding-top:0;background:linear-gradient(var(--paper) 0,var(--paper) 188px,#fff 188px)}
.price-cards-section > .wrap{padding-top:var(--s7)} /* padding, not margin, so the paper band starts at the hero edge */
.price-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
.price-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r3);padding:32px;display:flex;flex-direction:column;gap:14px;transition:border-color var(--fast),box-shadow var(--fast),transform var(--fast)}
.price-card h3{font-size:var(--t-h4)}
.pc-sub{color:var(--ink-soft);font-size:14.5px;min-height:2.6em}
.pc-price{font-family:var(--display);font-weight:800;font-size:56px;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ink)}
.pc-price small,.pc-price span{font-family:var(--body);font-weight:400;font-size:14px;letter-spacing:0;color:var(--ink-faint);margin-left:4px}
.price-card ul{display:grid;gap:8px;padding:14px 0 4px;border-top:1px solid var(--line)}
.price-card li{position:relative;padding-left:24px;font-size:14.5px;color:var(--ink-soft);line-height:1.5}
.price-card li::before{content:"";position:absolute;left:0;top:.45em;width:14px;height:14px;border-radius:50%;background:var(--pink-tint);border:1px solid var(--pink-line)}
.price-card li::after{content:"";position:absolute;left:5px;top:calc(.45em + 3px);width:4px;height:7px;border:solid var(--pink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.price-card .btn{margin-top:auto}
.price-card.featured{border:2px solid var(--ink);box-shadow:var(--e2)}
.pc-tag{position:absolute;top:-13px;left:24px;display:inline-flex;align-items:center;min-height:26px;padding:0 12px;border-radius:var(--r-pill);background:var(--pink);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.calc-note{font-size:13px;color:var(--ink-faint);margin-top:18px}
.calc{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--s6);margin-top:var(--s7);align-items:start}
.calc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.calc-item{position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;background:#fff;border:1.5px solid var(--line);border-radius:var(--r2);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:border-color var(--fast),background-color var(--fast),box-shadow var(--fast),transform var(--fast)}
.calc-item:hover{border-color:var(--line-strong);box-shadow:var(--e1)}
.calc-item:focus-visible,.calc-item:has(.ci-head:focus-visible){outline:3px solid var(--pink);outline-offset:3px}
.ci-head:focus-visible{outline:none}
.ci-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ci-head .ci-name{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:-.01em;line-height:1.25;color:var(--ink)}
.ci-check{flex:0 0 auto;width:22px;height:22px;border-radius:var(--r1);border:1.5px solid var(--line-strong);background:#fff;position:relative;transition:background-color var(--fast),border-color var(--fast)}
.ci-check::after{content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform var(--fast) var(--ease-out)}
.calc-item p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin:0}
.ci-price{font-family:var(--display);font-weight:700;font-size:15px;font-variant-numeric:tabular-nums;color:var(--ink);margin-top:4px}
.calc-tier{grid-column:1/-1;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;padding:14px 0 2px;border-top:1px solid var(--line);margin-top:6px;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}
.calc-tier:first-child{border-top:0;margin-top:0;padding-top:0}
.calc-tier small{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}
.calc-tier .ct-n{font-family:var(--body);font-weight:400;font-size:13px;letter-spacing:0;color:var(--ink-soft)}
.calc-item[data-tier="75"],.calc-item[data-tier="99"]{grid-column:1/-1}
.calc-item[data-tier="99"]{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}
.calc-item[data-tier="99"] .ci-name,.calc-item[data-tier="99"] .ci-price{color:#fff}
.calc-item[data-tier="99"] p{color:var(--on-ink-soft)}
.calc-item[data-tier="99"] .ci-check{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.4)}
.calc-item[data-tier="99"].on{background:var(--ink);border-color:var(--pink)}
.calc-item[data-tier="99"].on .ci-check{background:var(--pink);border-color:var(--pink)}
.calc-item[data-tier="99"]:hover{border-color:var(--ink-soft)}
.calc-item[data-tier="99"] .ci-incl{color:var(--hot)}
.ci-incl{display:none;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--pink-text);margin-top:4px}
.calc-item.on{border-color:var(--pink);background:var(--pink-tint)}
.calc-item.on .ci-check{background:var(--pink);border-color:var(--pink)}
.calc-item.on .ci-check::after{transform:rotate(45deg) scale(1)}
.calc-grid.bundled .calc-item:not(.on){border-style:dashed;border-color:var(--pink-line)}
.calc-grid.bundled .calc-item:not(.on) .ci-price{text-decoration:line-through;color:var(--ink-faint);font-weight:600}
.calc-grid.bundled .calc-item:not(.on) .ci-incl{display:block}
.calc-grid.bundled .calc-item:not(.on) .ci-check{border-style:dashed;border-color:var(--pink-line)}
.calc-total{position:sticky;top:calc(var(--header-h) + 16px);background:var(--ink);color:var(--on-ink);border-radius:var(--r3);padding:28px;box-shadow:var(--e2)}
.ct-live{display:block}
.ct-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink-faint);margin:0 0 10px}
.ct-amount{font-family:var(--display);font-weight:800;font-size:56px;line-height:1;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.ct-amount small{font-family:var(--body);font-weight:400;font-size:14px;letter-spacing:0;color:var(--on-ink-soft)}
.ct-strike{font-size:20px;font-weight:600;color:var(--on-ink-faint);text-decoration:line-through;letter-spacing:-.01em}
.ct-save{margin:14px 0 0;padding:10px 12px;border-radius:var(--r2);background:rgba(255,255,255,.07);border-left:3px solid var(--pink);color:var(--on-ink);font-size:13.5px;line-height:1.45;font-variant-numeric:tabular-nums}
.ct-save:empty{display:none}
.calc-total .btn{width:100%;margin-top:22px}
.calc-total .calc-note{color:var(--on-ink-faint);margin-top:14px;font-size:12.5px}
.pkg-line{padding:12px 14px;border-radius:var(--r2);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--ink);font-size:14px;font-weight:600;margin:0 0 14px}
.fairuse{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s7)}
.fu-card{background:#fff;border:1px solid var(--line);border-radius:var(--r3);padding:28px}
.fu-ico{width:40px;height:40px;border-radius:var(--r2);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink);display:grid;place-items:center;margin-bottom:16px}
.fu-ico svg{width:20px;height:20px}
.fu-card h3{font-size:var(--t-h4);margin-bottom:8px}
.fu-card p{color:var(--ink-soft);font-size:15px}
.reassure{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r3);overflow:hidden;margin-top:var(--s7)}
.r-item{background:#fff;padding:24px 28px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.r-item .tick{font-size:16px;line-height:1.4}
.r-item strong{display:block;font-family:var(--display);font-size:16px;letter-spacing:-.01em;margin-bottom:2px}
.r-item span:not(.tick),.r-item p{color:var(--ink-soft);font-size:var(--t-body-s)}
.faq{margin-top:var(--s7);border-top:1px solid var(--line);max-width:880px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 0;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.01em;color:var(--ink);transition:color var(--fast)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:0 0 auto;width:10px;height:10px;border:solid var(--ink-faint);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform var(--fast) var(--ease-out);margin-right:6px}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq summary:hover{color:var(--pink-text)}
.faq details p{padding:0 0 20px;color:var(--ink-soft);max-width:70ch}

/* 22. PRODUCT PAGES + MOCK PRIMITIVES ------------------------------------- */
.prod-hero{background:var(--paper);padding:64px 0 64px;border-bottom:1px solid var(--line)}
.prod-hero .wrap,.prod-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:var(--s7);align-items:start}
.prod-hero .hero-copy{padding-top:24px}
.prod-copy{min-width:0}
.prod-visual .mock-cap{margin-top:12px}
.prod-hero h1{font-size:clamp(34px,4vw,54px)}
.price-badge{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 12px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--line);font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--ink-soft);margin-bottom:20px}
.pb-dot{width:8px;height:8px;border-radius:50%;background:var(--pink)}
.prod-visual{position:relative}
.fc-ico{width:30px;height:30px;border-radius:var(--r1);background:var(--pink-tint);color:var(--pink);display:grid;place-items:center;flex:0 0 auto}
.fc-ico svg{width:16px;height:16px}
.fc-1{top:-16px;left:-18px}
.fc-2{bottom:-16px;right:-14px}
.fc-3{top:40%;right:-20px}
.shot{margin:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e2);overflow:hidden}
.shot .mock-body{flex:1}
.shot .shot-cap{margin-top:auto}
.shot img{width:100%;height:auto}
.shot-cap{padding:12px 16px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint);border-top:1px solid var(--line);background:var(--paper)}
.shot-cap a{color:var(--pink-text);font-weight:600}
.shot-cap a:hover{text-decoration:underline;text-underline-offset:3px}
.shot .mock-body{background:#fff}
.center{text-align:center}
/* mock primitives */
.mock{min-width:0;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e3);overflow:hidden;text-align:left;font-size:13px;line-height:1.4;color:var(--ink)}
.mock > *{min-width:0}
.mock-bar{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--paper)}
.mock-dots{display:inline-flex;gap:4px}
.mock-dots::before,.mock-dots::after,.mock-dots i{content:"";display:block;width:7px;height:7px;border-radius:50%;background:var(--line-strong)}
.mock-title{min-width:0;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mock-tag{margin-left:auto;display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:var(--r-pill);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink-text);font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;flex:0 0 auto}
.mock-body{padding:14px;display:flex;flex-direction:column;gap:10px}
.mock-head{display:flex;flex-direction:column;gap:4px}
.mh-src{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-faint);text-transform:uppercase}
.src-tag{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:var(--r1);background:var(--ink);color:#fff;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.02em;text-transform:none}
.mh-title{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--ink)}
.mh-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.plate{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border-radius:var(--r1);background:#F3EEF0;border:1px solid var(--line-strong);font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.08em;color:var(--ink)}
.mock-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r2);background:#fff}
.mock-row.is-on{background:var(--pink-tint);border-color:var(--pink-line)}
.mock-row .mr-main{min-width:0}
.mock-row .mr-name,.mock-row .mr-meta{display:block}
.mock-row .mr-name{font-weight:600;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mock-row .mr-meta{font-size:12px;color:var(--ink-faint)}
.mock-row .mr-fig{text-align:right;font-family:var(--display);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.mock-row .mr-fig small{display:block;font-family:var(--mono);font-weight:500;font-size:10px;color:var(--ink-faint);letter-spacing:.04em}
.mock-row .mr-end{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.avatar{width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;font-family:var(--display);font-weight:700;font-size:11px;display:grid;place-items:center;flex:0 0 auto;letter-spacing:.02em}
.avatar.plain{background:var(--paper);color:var(--ink-soft);border:1px solid var(--line)}
.mock-kvs{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}
.mock-kv{padding:8px 10px;border-radius:var(--r2);background:var(--paper);border:1px solid var(--line)}
.mock-kv .k{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:3px}
.mock-kv .v{display:block;font-family:var(--display);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.status{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 8px;border-radius:var(--r-pill);font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.status.ok{background:var(--pink-tint);color:var(--pink-text);border:1px solid var(--pink-line)}
.status.ok::before{content:"";width:5px;height:8px;border:solid var(--pink);border-width:0 2px 2px 0;transform:rotate(45deg);margin:-3px 2px 0 0}
.status.wait{background:var(--paper);color:var(--ink-faint);border:1px solid var(--line)}
.status.ink{background:var(--ink);color:#fff;border:1px solid var(--ink)}
.mock-btn{display:flex;align-items:center;justify-content:center;min-height:36px;border-radius:var(--r2);background:var(--pink);color:#fff;font-weight:600;font-size:13px;pointer-events:none}
.mock-btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line-strong)}
.mock-msg{position:relative;max-width:88%;padding:9px 12px;border-radius:12px;font-size:13px;line-height:1.45;color:var(--ink)}
.mock-msg.in{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.mock-msg.out{align-self:flex-end;background:var(--paper);border:1px solid var(--line);border-bottom-right-radius:4px}
.mock-msg.ai{align-self:flex-end;background:var(--pink-tint);border:1px solid var(--pink-line);border-bottom-right-radius:4px}
.mock-msg .ai-tag{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--pink-text);margin-bottom:3px}
.mock-msg .t{display:block;margin-top:4px;font-family:var(--mono);font-size:10px;color:var(--ink-faint);text-align:right}
.mock-cap{margin:12px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-soft);line-height:1.5}
.mock-divider{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}
.mock-divider::before,.mock-divider::after{content:"";flex:1;height:1px;background:var(--line)}
/* features as a ruled grid */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r3);overflow:hidden;margin-top:var(--s7)}
.feat-card{background:#fff;padding:28px;display:flex;flex-direction:column;gap:10px}
.feat-card h3{font-size:var(--t-h4)}
.feat-card p{color:var(--ink-soft);font-size:15px}
/* journey */
.journey{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--s5);margin-top:var(--s7);position:relative}
.j-step{position:relative;padding-top:18px;border-top:2px solid var(--line-strong)}
.j-step::before{content:"";position:absolute;left:0;top:-2px;width:36px;height:2px;background:var(--pink)}
.j-num{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--pink-text);margin-bottom:10px;display:block}
.j-step h3{font-size:17px;margin-bottom:6px;letter-spacing:-.01em}
.j-step p{font-size:14.5px;color:var(--ink-soft)}
/* upsell strip */
.upsell-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s6);align-items:center;background:var(--ink);color:var(--on-ink);border-radius:var(--r3);padding:36px 40px;box-shadow:var(--e2)}
.upsell-strip h3{color:#fff;font-size:var(--t-h3);margin-bottom:8px}
.upsell-strip p{color:var(--on-ink-soft);max-width:56ch}
.us-price{font-family:var(--display);font-weight:800;font-size:40px;line-height:1;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums;text-align:right;margin-bottom:12px}
.us-price small,.us-price span{font-family:var(--body);font-weight:400;font-size:14px;letter-spacing:0;color:var(--on-ink-soft)}
.us-cta{text-align:right} /* wraps .us-price + .btn-white on extras pages, replaces the inline text-align/margin */
.us-cta .btn{margin-top:14px}
/* cross-sell */
.x-sell{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5);margin-top:var(--s7)}
.x-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:24px 26px;background:#fff;border:1px solid var(--line);border-radius:var(--r3);color:var(--ink);transition:border-color var(--fast),box-shadow var(--fast),transform var(--fast)}
.x-card h3{font-size:var(--t-h4);margin-bottom:4px}
.x-card p{color:var(--ink-soft);font-size:14.5px}
.x-go{white-space:nowrap;font-family:var(--display);font-weight:700;font-size:14px;color:var(--pink-text);transition:color var(--fast)}
.x-card:hover{color:var(--ink);border-color:var(--line-strong);box-shadow:var(--e1)}
.x-card:hover .x-go{color:var(--pink)}
@media (max-width:700px){.x-card{grid-template-columns:auto minmax(0,1fr);padding:18px 18px}.x-go{grid-column:2}}

/* 23. PARTNERS ----------------------------------------------------------------- */
/* hero: same split grid as every product page (.prod-grid) — no single-column override */
.pp-mark{display:inline-flex;align-items:center;min-height:16px;padding:0 6px;margin-right:6px;border-radius:var(--r-pill);background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink-text);font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle}
.mock-row .mr-name .pp-mark{margin:0 0 0 6px}
.pp-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4)}
.pp-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s4);margin-top:var(--s7)}
.pp-fit{padding:var(--card-pad)}
.pp-fit h3{font-size:var(--t-h3)}
.pp-ask-split{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:var(--s7);align-items:start}
.pp-ask-head .h2{margin-bottom:0}
.pp-asks{display:grid;gap:var(--s3)}
.pp-ask{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--s4);align-items:start;padding:var(--card-pad);background:var(--white);border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e1)}
.pp-ask p{font-size:var(--t-body);color:var(--ink);margin:0;padding-top:10px}
.pp-ask-num{width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--on-ink);display:grid;place-items:center;font-family:var(--mono);font-size:15px;letter-spacing:.04em}
.pp-thats-it{font-family:var(--display);font-weight:800;font-size:var(--t-h2);letter-spacing:-.03em;line-height:1.1;margin:var(--s4) 0 0;color:var(--ink)}
.pp-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5);margin-top:var(--s7)}
.pp-step{padding-top:var(--s4);border-top:2px solid var(--line-strong);position:relative}
.pp-step::before{content:"";position:absolute;left:0;top:-2px;width:36px;height:2px;background:var(--pink)}
.pp-num{display:block;font-family:var(--mono);font-size:var(--t-caption);letter-spacing:.1em;text-transform:uppercase;color:var(--pink-text);margin-bottom:10px}
.pp-step h4{font-size:var(--t-h4);margin-bottom:6px}
.pp-step p{font-size:var(--t-small);color:var(--ink-soft)}
.pp-note{margin-top:var(--s6);padding:var(--s4) var(--s5);border-left:3px solid var(--pink);background:var(--paper);border-radius:0 var(--r2) var(--r2) 0;color:var(--ink-soft);font-size:var(--t-small);max-width:72ch}
.pp-note strong{color:var(--ink)}
.pp-contact{display:grid;grid-template-columns:160px minmax(0,1fr);gap:var(--s6);align-items:center;margin-top:var(--s7);padding:var(--s6);background:var(--white);border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e3);max-width:880px}
.pp-contact img,.pp-avatar{width:160px;height:160px;aspect-ratio:1/1;border-radius:50%;object-fit:cover;object-position:center top;border:4px solid var(--white);box-shadow:var(--e1);background:var(--paper)}
.pp-contact h3{font-size:var(--t-h3);margin-bottom:4px}
.pp-role{font-family:var(--mono);font-size:var(--t-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s4)}
.pp-lines{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3);margin-bottom:var(--s4)}
.pp-lines .btn{font-variant-numeric:tabular-nums}
.pp-closing{color:var(--ink-soft);margin:0;font-size:var(--t-small)}

/* 24. LEGACY COMPAT ---------------------------------------------------------- */
.reveal,.reveal-d1,.reveal-d2,.reveal-d3,.reveal.in{opacity:1;transform:none;transition:none}

/* 25. RESPONSIVE ---------------------------------------------------------------- */
@media (max-width:1100px){
  .tier{grid-template-columns:120px minmax(0,1fr)}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:var(--s6)}
}
@media (max-width:1024px){
  .calc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  :root{--section-y:80px}
  .hero-home .wrap,.prod-hero .wrap,.prod-grid{grid-template-columns:minmax(0,1fr);gap:var(--s7)}
  .prod-hero.pp-hero .wrap{grid-template-columns:minmax(0,1fr)}
  .hero-visual,.prod-visual{max-width:640px}
  /* single column: the product sits directly under the CTAs; note + chips follow it */
  .hero-home .wrap{gap:0}
  .hero-home .hero-copy{display:contents}
  .hero-home .hero-visual{order:1;margin-top:28px}
  .hero-home .hero-note,.hero-home .hero-chips{order:2}
  .hero-home .hero-note{margin-top:24px}
  .prod-hero .hero-copy{padding-top:0}
  .trustbar .wrap{grid-template-columns:repeat(2,1fr)}
  .tier-grid,.extras-grid,.feat-grid,.fairuse,.reassure,.proof-quotes,.pp-grid-3,.steps{grid-template-columns:repeat(2,1fr)}
  .tier[data-tier="75"] .tier-grid,.tier[data-tier="99"] .tier-grid{grid-template-columns:1fr}
  .journey,.pp-rail{grid-template-columns:repeat(3,1fr)}
  .core-card,.team-split,.signup-card{grid-template-columns:minmax(0,1fr)}
  .calc{grid-template-columns:minmax(0,1fr)}
  .calc-total{position:static}
  .price-cards{grid-template-columns:minmax(0,1fr);max-width:560px}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  :root{--header-h:60px}
  .main-nav,.link-login{display:none}
  .menu-btn{display:inline-flex}
  .mobile-cta{display:flex}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .site-footer{padding-bottom:calc(40px + 72px + env(safe-area-inset-bottom,0px))}
  .everything,.upsell-strip{grid-template-columns:minmax(0,1fr)}
  .big-price{align-items:flex-start;text-align:left}
  .us-price,.us-cta{text-align:left}
  .x-sell{grid-template-columns:minmax(0,1fr)}
  .pp-contact{grid-template-columns:minmax(0,1fr);text-align:left}
  .pp-contact img{width:120px;height:120px}
}
@media (max-width:700px){
  :root{--section-y:48px;--gutter:18px;--card-pad:24px;--header-h:56px}
  .announce{font-size:12px;padding:7px 14px;line-height:1.35}
  .an-full{display:none}
  .header-cta .btn{display:none}
  .header-inner{gap:12px}
  .logo-img{height:30px}
  .hero{padding:32px 0 44px}
  .hero-pricing{padding-bottom:0}
  .prod-hero{padding:32px 0 44px}
  .prod-hero .wrap,.prod-grid{gap:36px}
  .mock-row{gap:8px}
  .mock-row .status{font-size:9.5px;letter-spacing:.04em;padding:0 6px;gap:4px}
  .price-cards-section > .wrap{padding-top:28px}
  .price-cards-section{background:linear-gradient(var(--paper) 0,var(--paper) 124px,#fff 124px)}
  .hero .kicker{margin-bottom:12px}
  .hero .lede{margin-top:14px;font-size:16px}
  .price-line{margin-top:14px;font-size:18px}
  .hero-ctas{margin-top:16px;gap:10px}
  .hero-ctas .btn{width:100%}
  .hero-note{font-size:12.5px}
  .hero-home .hero-visual{margin-top:24px}
  .hero-chips{margin-top:16px}
  .flow{padding-left:22px;gap:12px}
  .flow::before{left:6px}
  .fs-label::before{left:-20px}
  .ticker{padding:16px 0}
  .core-left,.core-right,.signup-left,.signup-right{padding:28px 22px}
  .core-shots{grid-template-columns:1fr}
  .trustbar{padding:48px 0}
  .trustbar .wrap{grid-template-columns:1fr 1fr;gap:var(--s5)}
  .steps,.tier-grid,.extras-grid,.feat-grid,.fairuse,.reassure,.proof-quotes,.pp-grid-3,.pp-grid-2,.journey,.pp-rail,.calc-grid,.price-cards{grid-template-columns:minmax(0,1fr)}
  .tiers{margin-top:var(--s6)}
  .tier{grid-template-columns:minmax(0,1fr);gap:14px;padding:22px 0}
  .tier-label{position:sticky;top:var(--header-h);z-index:var(--z-raised);background:var(--white);display:flex;align-items:baseline;gap:12px;padding:10px 0;margin-top:-10px;border-bottom:1px solid var(--line)}
  .tier[data-tier="29"] .extra-card{flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px 14px;padding:14px 16px}
  .tier[data-tier="29"] .x-icon{width:36px;height:36px}
  .tier[data-tier="29"] .extra-card h3{flex:1 1 0;min-width:0;font-size:16px}
  .tier[data-tier="29"] .extra-card p{flex:1 1 100%;font-size:13.5px;order:3}
  .tier[data-tier="29"] .x-price{margin:0;order:2}
  .tier[data-tier="29"] .x-more{order:4}
  .tier[data-tier="29"] .x-in{order:5;flex:1 1 100%}
  .tier[data-tier="75"] .x-in,.tier[data-tier="99"] .x-in{justify-self:start}
  .tier-grid .x-more{min-height:0}
  .tier-label .tl-price{font-size:26px}
  .tier-label .tl-per,.tier-label .tl-n{margin:0}
  .tier[data-tier="75"] .extra-card,.tier[data-tier="99"] .extra-card{display:flex;flex-direction:column;padding:24px}
  .tier[data-tier="75"] .extra-card h3{font-size:22px}
  .tier[data-tier="99"] .extra-card h3{font-size:24px}
  .tier[data-tier="75"] .x-more,.tier[data-tier="99"] .x-more{justify-self:start}
  .everything{padding:28px 22px}
  .everything h3{font-size:28px}
  .compare{overflow:visible;border:0;background:transparent;border-radius:0}
  .compare table{min-width:0}
  .compare table,.compare tbody,.compare tfoot,.compare tr,.compare td,.compare tbody th,.compare tfoot th{display:block;width:100%}
  .compare thead{display:none}
  .compare caption{display:block;width:100%;white-space:normal;text-align:left;font-size:12px;color:var(--ink-faint);margin-bottom:10px}
  .compare tbody tr,.compare tfoot tr{border:1px solid var(--line);border-radius:var(--r2);background:var(--white);margin-bottom:10px;padding:14px 16px}
  .compare td,.compare tbody th,.compare tfoot th{border:0;padding:3px 0;text-align:left}
  .compare .row-label{font-size:15px;margin-bottom:6px}
  .compare td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px}
  .compare td.us{background:transparent}
  .compare td.us::before{content:"MotorSales.AI";font-weight:400;font-size:12.5px;color:var(--ink-faint)}
  .compare td:not(.us)::before{content:"Finance-only tools";font-weight:400;font-size:12.5px;color:var(--ink-faint)}
  .compare td small{display:inline;margin-top:0;font-size:12px}
  .compare tfoot td{font-size:15px;font-weight:700}
  .compare tfoot td.us{color:var(--pink-text)}
  .testimonial blockquote{font-size:22px}
  .team-panel{padding:24px}
  .form-row{grid-template-columns:1fr}
  .form-toggle{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)} /* "Get started — £149/mo" needs the wider tab */
  .form-toggle button{min-height:44px;font-size:13.5px;padding:0 6px}
  .calc-total{padding:22px}
  .ct-amount{font-size:48px}
  .pc-price{font-size:48px}
  .upsell-strip{padding:26px 22px}
  .us-price{font-size:34px}
  .x-card{padding:20px}
  .footer-grid{grid-template-columns:1fr;gap:var(--s6)}
  .site-footer li a{min-height:40px}
  .footer-legal{flex-direction:column}
  .mobile-menu a{min-height:48px}
  .pp-ask{grid-template-columns:36px minmax(0,1fr);padding:18px}
  .pp-ask-num{width:36px;height:36px;font-size:15px}
  .cs-items{gap:8px 18px}
  .cs-item{font-size:13px}
  .mock-body{padding:12px}
  .mock-msg{max-width:92%}
  .mock-bar{flex-wrap:wrap;height:auto;min-height:38px;padding:6px 12px;row-gap:4px}
  .mock-title{white-space:normal;overflow:visible;text-overflow:clip;max-width:none;line-height:1.3}
  .mock-row .mr-name{white-space:normal;overflow:visible;text-overflow:clip}
  .hero-chips .chip{font-size:11px;min-height:0;height:auto;padding:6px 10px;line-height:1.3;white-space:normal}
  .steps{gap:12px}
  /* Phones: step number sits beside the text so the three steps read as one list, not three screens */
  .step-card{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;padding:18px 18px 16px}
  .step-card .step-num{grid-row:1/3;align-self:start;margin:2px 0 0}
  .step-card h3{font-size:17px;margin-bottom:4px}
  .step-card p{font-size:14px}
}
@media (max-width:400px){
  .mock-kvs{grid-template-columns:repeat(2,1fr)}
}

/* 26. INPUT MODALITY · REDUCED MOTION · PRINT ------------------------------ */
@media (hover:hover) and (pointer:fine){
  .extra-card:hover,.price-card:hover,.x-card:hover,.step-card:hover,.pq:hover{border-color:var(--line-strong);box-shadow:var(--e2);transform:translateY(-2px)}
  .tier[data-tier="99"] .extra-card:hover{border-color:var(--ink)}
  .calc-item:hover{transform:translateY(-1px)}
}
@media (hover:none){
  .btn:hover,.btn-primary:hover,.btn-white:hover{transform:none;box-shadow:none}
  .btn:active{transform:scale(.98)}
  .extra-card:active,.price-card:active,.x-card:active,.calc-item:active,.step-card:active{transform:scale(.985)}
  .mobile-cta:active{transform:scale(.98)}
  .mobile-cta.hidden{transform:translateY(140%)}
  /* standalone text links get a 44px hit area on touch without moving the layout */
  .x-more,.shot-cap a,.contact-alt a,.form-note a,.core-footnote a,.tl-more,.us-more{display:inline-block;padding:12px 0;margin:-12px 0}
  .logo{min-height:44px}
  .site-footer li a{min-height:44px;min-width:44px}
  .announce a{display:inline-block;padding:14px 8px;margin:-14px -8px}
  .app-badges a{min-height:44px;align-items:center}
  .site-footer .ft-contact a,.site-footer p a{display:inline-block;padding:12px 0;margin:-12px 0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .flow-step{opacity:1;transform:none;animation:none}
  .skeleton,.skeleton-text{animation:none}
}
@media print{
  .announce,.site-header,.mobile-menu,.mobile-cta,.skip-link{display:none!important}
  body{padding-bottom:0}
  section{padding:24px 0}
}

/* ---- partners ---- */
/* Responsive rules for the .pp-* partner page components. Kept at the end so
   they win by cascade over the shared breakpoint lists above. */
@media (max-width:1024px){
  .pp-ask-split{grid-template-columns:minmax(0,1fr);gap:var(--s5)}
  .pp-ask-head .h2{margin-bottom:0}
}
@media (max-width:900px){
  .pp-contact{grid-template-columns:120px minmax(0,1fr);align-items:center;padding:var(--s5)}
}
@media (max-width:700px){
  .pp-hero .mock-row .mr-meta{white-space:normal}
  .pp-ask p{padding-top:6px}
  .pp-ask-num{font-size:13px}
  .pp-thats-it{font-size:var(--t-h2)}
  .pp-contact{grid-template-columns:minmax(0,1fr);justify-items:start;text-align:left}
  .pp-contact img,.pp-avatar{width:120px;height:120px}
  .pp-lines{width:100%}
  .pp-lines .btn{flex:1 1 100%}
}
@media (max-width:560px){
  .pp-hero .mock-row{flex-wrap:wrap;gap:6px 8px;padding:8px 10px}
  .pp-hero .mock-row .mr-fig small{display:block;white-space:nowrap}
}

/* ---- your package (package.js): sheet, tray, calculator links ---- */
/* Build token: .ps-sheet-v1 */
.ci-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.ci-foot .ci-price{margin-top:0}
.ci-more{font-size:13px;font-weight:600;color:var(--pink-text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--pink-line);padding:6px 0;margin:-6px 0;border-radius:4px}
.ci-more:hover{text-decoration-color:currentColor}
.ci-more:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.calc-item[data-tier="99"] .ci-more{color:var(--hot);text-decoration-color:rgba(255,255,255,.35)}
.ct-clear{display:inline-block;margin-top:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--on-ink-faint);text-decoration:underline;text-underline-offset:3px;min-height:32px;padding:0 4px;border-radius:4px}
.ct-clear:hover{color:#fff}
.ct-clear:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ct-clear+.btn{margin-top:14px}

/* product-page CTA once the extra is in the package */
a[data-add].is-added{--btn-bg:var(--pink-tint);--btn-fg:var(--pink-text);--btn-bd:var(--pink-line)}
a[data-add].is-added .ok{font-weight:800}
.btn-white[data-add].is-added{--btn-bg:rgba(255,255,255,.12);--btn-fg:#fff;--btn-bd:rgba(255,255,255,.4)}

/* product sheet (<dialog>) */
.ps{position:fixed;inset:0;width:min(480px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 0 0 auto;padding:0;border:0;border-radius:24px 0 0 24px;background:#fff;color:var(--ink);box-shadow:var(--e3);overflow:auto;overscroll-behavior:contain}
.ps::backdrop{background:rgba(14,11,20,.55)}
.ps[open]{animation:ps-in 200ms var(--ease-out)}
.ps[open]::backdrop{animation:ps-fade 200ms var(--ease-out)}
@keyframes ps-in{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
@keyframes ps-fade{from{opacity:0}to{opacity:1}}
html.ps-open{overflow:hidden}
.ps-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px 12px;background:#fff}
.ps-head .price-badge{margin-bottom:0}
.ps-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-right:-10px;border-radius:50%;color:var(--ink-soft);transition:background-color var(--fast),color var(--fast)}
.ps-close:hover{background:var(--paper);color:var(--ink)}
.ps-close:focus-visible{outline:3px solid var(--pink);outline-offset:2px}
.ps-body{padding:4px 24px calc(28px + env(safe-area-inset-bottom,0px))}
.ps-body .h2{font-size:26px;line-height:1.15;margin:0 0 12px;outline:none}
.ps-body .lede{font-size:15.5px;line-height:1.6;color:var(--ink-soft);margin:0 0 18px}
.ps-points{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:8px}
.ps-points li{position:relative;padding-left:26px;font-weight:600;font-size:15px;color:var(--ink)}
.ps-points li::before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:var(--pink)}
.ps-points li::after{content:"";position:absolute;left:5px;top:6px;width:5px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ps-actions{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.ps-actions .btn{width:100%}
.ps-body .calc-note{margin-top:14px;text-align:center}
.ps-save{margin:0 0 18px;padding:10px 12px;border-radius:var(--r2);background:var(--pink-tint);border-left:3px solid var(--pink);color:var(--ink);font-size:13.5px;line-height:1.45;font-variant-numeric:tabular-nums}
.pk-list{list-style:none;padding:0;margin:0 0 16px;border-top:1px solid var(--line)}
.pk-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:48px;padding:8px 0;border-bottom:1px solid var(--line);font-size:15px}
.pk-name{font-weight:600;color:var(--ink)}
.pk-price{font-family:var(--display);font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}
.pk-fixed,.pk-remove{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;min-width:64px;text-align:right}
.pk-fixed{color:var(--ink-faint)}
.pk-remove{color:var(--pink-text);text-decoration:underline;text-underline-offset:3px;min-height:32px;padding:0 4px;border-radius:4px}
.pk-remove:hover{color:var(--ink)}
.pk-remove:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.pk-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 18px;font-size:14px;color:var(--ink-soft)}
.pk-total strong{font-family:var(--display);font-weight:800;font-size:32px;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.pk-total strong s{font-size:16px;font-weight:600;color:var(--ink-faint);margin-right:6px}
.pk-total small{font-family:var(--body);font-weight:400;font-size:13px;letter-spacing:0;color:var(--ink-soft)}

/* desktop tray: bottom-right pill */
.pkg-tray{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;z-index:var(--z-fixed);display:flex;align-items:stretch;height:52px;border-radius:var(--r-pill);background:var(--ink);color:#fff;box-shadow:var(--e3);overflow:hidden;animation:tray-in 200ms var(--ease-out)}
.pkg-tray[hidden]{display:none}
@keyframes tray-in{from{transform:translate(-50%,12px);opacity:0}to{transform:translate(-50%,0);opacity:1}}
.pt-sum{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;padding:0 18px 0 20px;color:#fff;text-align:left;transition:background-color var(--fast)}
.pt-sum:hover{background:rgba(255,255,255,.08)}
.pt-sum:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.pt-k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink-faint)}
.pt-v{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pt-go{display:inline-flex;align-items:center;padding:0 20px;background:var(--pink);color:#fff;font-weight:700;font-size:15px;white-space:nowrap;transition:background-color var(--fast)}
.pt-go:hover{background:var(--pink-text);color:#fff}
.pt-go:focus-visible{outline:2px solid #fff;outline-offset:-4px}

/* mobile: the sticky bar becomes the package bar */
.mobile-cta.has-pkg{justify-content:space-between;gap:12px;padding:0 6px 0 16px}
.mc-sum{font-size:14px;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.mc-go{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:calc(var(--r2) - 3px);background:#fff;color:var(--pink-text);font-weight:700;font-size:15px;white-space:nowrap}

@media (max-width:900px){
  .pkg-tray{display:none}
  .ps{top:auto;width:100vw;height:auto;max-height:88dvh;margin:auto 0 0;border-radius:24px 24px 0 0}
  @keyframes ps-in{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
}
@media (max-width:700px){
  .ps-head{padding:16px 18px 10px}
  .ps-body{padding:2px 18px calc(24px + env(safe-area-inset-bottom,0px))}
  .ps-body .h2{font-size:23px}
  .pk-list li{font-size:14px}
}
@media (prefers-reduced-motion:reduce){
  .ps[open],.ps[open]::backdrop,.pkg-tray{animation:none}
}
@media print{
  .ps,.pkg-tray{display:none!important}
}

/* 23. PRODUCT IDENTITY KIT (round 2): per-tier grounds, device frames, motifs */
/* Build token: .pv-kit-v1 */
.alt-row > .alt-media:only-child{grid-column:1/-1}
/* ground = pricing tier: Core paper (default) · AI extras purple · workflow extras pink · Storefront white · Inventory ink */
.prod-hero.tint-purple{background:linear-gradient(180deg,var(--purple-tint) 0,var(--paper) 100%)}
.prod-hero.tint-pink{background:linear-gradient(180deg,var(--pink-tint) 0,var(--paper) 100%)}
.prod-hero.tint-white{background:#fff}
.prod-hero.tint-ink{background:var(--ink);color:var(--on-ink);border-bottom-color:var(--ink-2)}
.prod-hero.tint-ink h1{color:var(--on-ink)}
.prod-hero.tint-ink .lede{color:var(--on-ink-soft)}
.prod-hero.tint-ink .hero-note{color:var(--on-ink-faint)}
.prod-hero.tint-ink .btn-outline{--btn-fg:#fff;--btn-bd:rgba(255,255,255,.45);--btn-bg:transparent}
.prod-hero.tint-ink .btn-outline:hover{--btn-bg:rgba(255,255,255,.08)}
.prod-hero.tint-ink .mock-cap{color:var(--on-ink-faint)}
.prod-hero.tint-ink .price-badge{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:var(--on-ink-soft)}
.prod-hero.rule-pink{box-shadow:inset 0 4px 0 var(--pink)}

/* hero grid variants + hero-note sits under the copy, after the visual on phones */
.prod-hero.is-wide .prod-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.prod-hero.is-wide h1{font-size:clamp(34px,3.6vw,48px)}
.prod-hero.is-narrow .prod-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.prod-hero.is-narrow .prod-visual{display:flex;flex-direction:column;align-items:center}
.prod-hero.is-narrow .prod-visual > *{width:100%}
.prod-hero .prod-grid{row-gap:0;grid-template-rows:auto 1fr}
.prod-grid > .prod-copy{grid-column:1;grid-row:1}
.prod-grid > .prod-visual{grid-column:2;grid-row:1 / span 2}
.prod-grid > .hero-note{grid-column:1;grid-row:2;margin-top:18px}

/* device frames */
.device{position:relative;margin:0;width:100%;background:#fff;border:1px solid var(--line-strong);border-radius:var(--r3);box-shadow:var(--e3);overflow:hidden}
.device img{display:block;width:100%;height:auto}
.device.browser::before{content:"";display:block;height:30px;border-bottom:1px solid var(--line);background-color:var(--paper);background-image:radial-gradient(circle at 16px 15px,var(--line-strong) 4px,transparent 4.6px),radial-gradient(circle at 32px 15px,var(--line-strong) 4px,transparent 4.6px),radial-gradient(circle at 48px 15px,var(--line-strong) 4px,transparent 4.6px)}
.device.card{border-color:var(--line);box-shadow:var(--e2);border-radius:var(--r3)}
.device.bare{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
.device.bare img{filter:drop-shadow(0 18px 32px rgba(14,11,20,.16))}
.device.max-720{max-width:720px}.device.max-640{max-width:640px}.device.max-560{max-width:560px}.device.max-520{max-width:520px}.device.max-400{max-width:400px}
.illus{position:absolute;right:12px;bottom:12px;z-index:1;font-family:var(--mono);font-weight:600;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:var(--r-pill);background:rgba(255,255,255,.94);color:var(--ink-soft);border:1px solid var(--line-strong)}
.illus.tr{top:12px;bottom:auto}
.device.bare .illus{right:0;bottom:-8px}
.prod-visual .device + .mock-cap{margin-top:12px}

/* enquiry: source chips (names already in the frozen copy) */
.src-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.src-chips span{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 8px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--line-strong);font-family:var(--mono);font-size:10.5px;letter-spacing:.03em;color:var(--ink-soft)}
.src-chips span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--pink)}
.src-chips .in{margin-right:2px;border:0;background:none;padding:0;color:var(--ink-faint)}
.src-chips .in::before{display:none}

/* storefront: "your colours" swatch row (the one place non-brand hues are allowed) */
.brand-dots{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.brand-dots i{width:22px;height:22px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line-strong)}
.brand-dots .cap{margin-left:4px;font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-faint)}

/* appraisal: viewfinder corners as the page motif (hero card + feature icons) */
.vf-frame{position:relative}
.vf-frame::before,.vf-frame::after,.vf-frame > .vf-b::before,.vf-frame > .vf-b::after{content:"";position:absolute;width:22px;height:22px;border:3px solid var(--pink);pointer-events:none;z-index:2}
.vf-frame::before{top:-6px;left:-6px;border-right:0;border-bottom:0;border-radius:6px 0 0 0}
.vf-frame::after{top:-6px;right:-6px;border-left:0;border-bottom:0;border-radius:0 6px 0 0}
.vf-frame > .vf-b::before{bottom:-6px;left:-6px;border-right:0;border-top:0;border-radius:0 0 0 6px}
.vf-frame > .vf-b::after{bottom:-6px;right:-6px;border-left:0;border-top:0;border-radius:0 0 6px 0}
.x-icon.vf{background:#fff;border-color:var(--line);background-image:linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink)),linear-gradient(var(--pink),var(--pink));background-repeat:no-repeat;background-size:9px 2px,2px 9px,9px 2px,2px 9px,9px 2px,2px 9px,9px 2px,2px 9px;background-position:6px 6px,6px 6px,right 6px top 6px,right 6px top 6px,6px bottom 6px,6px bottom 6px,right 6px bottom 6px,right 6px bottom 6px}
.x-icon.vf svg{width:14px;height:14px}
.kv-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.kv-strip .mock-kv{background:#fff}

/* inventory (ink ground): the stock card */
.tint-ink .device.card{border-color:rgba(255,255,255,.12);box-shadow:0 30px 60px rgba(0,0,0,.45)}
.ink-kvs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.ink-kvs .mock-kv{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.ink-kvs .mock-kv .k{color:var(--on-ink-faint)}.ink-kvs .mock-kv .v{color:var(--on-ink)}

/* AI connectors: terminal-style feature icons · agent hub: monogram icons */
.x-icon.mono{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:0;background:var(--ink);border-color:var(--ink);color:#fff}
.x-icon.gram{border-radius:50%;background:var(--purple);border-color:var(--purple);color:#fff;font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.02em}
.tint-purple .price-badge .pb-dot{background:var(--purple)}

/* call hub: incoming-call card + waveform */
.call-card{margin:0 auto;max-width:400px;background:#fff;border:1px solid var(--line);border-radius:var(--r3);box-shadow:var(--e3);padding:28px 24px 22px;text-align:center}
.call-card .cc-avatar{width:72px;height:72px;border-radius:50%;margin:0 auto 12px;background:var(--pink-tint);border:1px solid var(--pink-line);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:22px;color:var(--pink-text)}
.call-card .cc-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.call-card .cc-name{display:block;font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink)}
.call-card .cc-meta{display:block;margin-top:4px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-faint)}
.call-card .cc-wave{display:block;width:180px;height:26px;margin:16px auto 14px}
.call-card .cc-wave rect{fill:var(--pink)}
.call-card .cc-wave rect:nth-child(odd){opacity:.55}
.call-card .cc-btns{display:flex;justify-content:center;gap:28px;margin:4px 0 18px}
.call-card .cc-btn{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:var(--e2)}
.call-card .cc-btn svg{width:24px;height:24px}
.call-card .cc-btn.acc{background:var(--pink)}
.call-card .cc-btn.dec{background:var(--ink)}
.call-card .cc-log{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);text-align:left}
.call-card .cc-log li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:40px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
.call-card .cc-log .mr-name{font-weight:600}
.call-card .cc-log .mr-meta{font-family:var(--mono);font-size:11px;color:var(--ink-faint)}
.x-icon.wave svg{width:20px;height:16px}

/* vehicle boost: sparkline beside the badge and as the feature icon */
.spark{display:inline-block;width:88px;height:26px;vertical-align:middle;margin-left:12px;overflow:visible}
.spark path.l{fill:none;stroke:var(--pink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.spark path.a{fill:var(--pink);opacity:.14}
.x-icon.spark-ico svg{width:22px;height:16px}

/* second-section alternating rows (only where a second, truth-cleared visual exists) */
.alt-rows{display:grid;gap:var(--s7);margin-top:var(--s7)}
.alt-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s7);align-items:center}
.alt-row:nth-child(even) .alt-media{order:-1}
.alt-row h3{font-size:24px;margin:0 0 10px}
.alt-row p{color:var(--ink-soft)}
.alt-row .mock{box-shadow:var(--e2)}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.photo-pair img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r2);border:1px solid var(--line)}
.photo-pair figcaption{grid-column:1 / -1;font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-faint)}

@media (max-width:900px){
  .prod-hero.is-wide .prod-grid,.prod-hero.is-narrow .prod-grid{grid-template-columns:minmax(0,1fr)}
  .prod-hero .prod-grid{row-gap:0;grid-template-rows:none}
  .prod-grid > .prod-copy,.prod-grid > .prod-visual,.prod-grid > .hero-note{grid-column:auto;grid-row:auto}
  .prod-grid > .prod-visual{margin-top:28px}
  .prod-grid > .hero-note{margin-top:16px}
  .alt-row{grid-template-columns:minmax(0,1fr)}
  .alt-row:nth-child(even) .alt-media{order:0}
}
@media (max-width:700px){
  .prod-visual .device{max-height:300px}
  .prod-visual .device.bare{max-height:none}
  .prod-visual .device.bare img{max-height:280px;width:auto;max-width:100%;margin:0 auto}
  .device.max-720,.device.max-640,.device.max-560,.device.max-520{max-width:none}
  .call-card{padding:22px 18px 16px}
  .call-card .cc-log li:nth-child(n+3){display:none}
  .kv-strip{grid-template-columns:repeat(2,1fr)}
  .src-chips{gap:6px}
  .src-chips span{min-height:26px;padding:0 8px;font-size:10.5px}
}
@media (prefers-reduced-motion:reduce){.device.bare img{filter:none}}
@media print{.illus{display:none}}

/* =========================================================
   24. CODED PRODUCT SURFACES (round 3) — every hero visual is HTML/CSS,
   portable to React at cutover. Site tokens only. All data illustrative.
   Build token: .pv-surf-v1
   ========================================================= */
.sf{position:relative;width:100%;background:#fff;border:1px solid var(--line-strong);border-radius:var(--r3);box-shadow:var(--e3);overflow:hidden;text-align:left;font-size:13px;line-height:1.4;color:var(--ink);font-family:var(--body)}
.sf *{min-width:0;box-sizing:border-box}
.sf.max-720{max-width:720px}.sf.max-640{max-width:640px}
.tint-ink .sf{border-color:rgba(255,255,255,.12);box-shadow:0 30px 60px rgba(0,0,0,.45)}
/* app top bar: product name + tabs + status */
.sf-top{display:flex;align-items:center;gap:14px;min-height:42px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--paper)}
.sf-top .sf-app{flex:0 0 auto;font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}
.sf-top .sf-app i{display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--pink);margin-right:7px;vertical-align:1px}
.sf-tabs{display:flex;gap:2px;flex:1 1 auto;min-width:0;overflow:hidden}
.sf-tabs span{flex:0 0 auto;padding:6px 9px;border-radius:6px;font-size:12px;color:var(--ink-faint);white-space:nowrap}
.sf-tabs span.on{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 1px 0 var(--line)}
.sf-top .sf-user{margin-left:auto;display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-faint);white-space:nowrap}
.sf-top .sf-user b{flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink-text);font-family:var(--display);font-weight:700;font-size:10px;display:grid;place-items:center}
/* body + panes */
.sf-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sf-cols.w-38{grid-template-columns:minmax(0,.62fr) minmax(0,1fr)}
.sf-cols.w-62{grid-template-columns:minmax(0,1fr) minmax(0,.62fr)}
.sf-cols > * + *{border-left:1px solid var(--line)}
.sf-pane{padding:14px;display:flex;flex-direction:column;gap:10px}
.sf-pane.soft{background:var(--paper)}
.sf-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}
.sf-h b{font-family:var(--display);font-weight:700;font-size:13.5px;letter-spacing:-.01em;text-transform:none;color:var(--ink)}
.sf-title{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--ink)}
.sf-title small{display:block;font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.05em;color:var(--ink-faint);margin-top:2px}
/* status chips */
.sf-badge{display:inline-flex;align-items:center;gap:5px;min-height:20px;padding:0 8px;border-radius:var(--r-pill);font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:var(--paper);border:1px solid var(--line-strong);color:var(--ink-soft)}
.sf-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}
.sf-badge.ok{background:var(--pink-tint);border-color:var(--pink-line);color:var(--pink-text)}
.sf-badge.ink{background:var(--ink);border-color:var(--ink);color:#fff}
.sf-badge.purple{background:var(--purple-tint);border-color:var(--purple-line);color:var(--purple)}
.sf-badge.no::before{display:none}
/* vehicle "photo" placeholder: car silhouette on a soft gradient (no real photos) */
.sf-photo{position:relative;flex:0 0 auto;width:64px;aspect-ratio:4/3;border-radius:8px;background:linear-gradient(160deg,#F3EEF0 0,#E6DEE2 100%);overflow:hidden}
.sf-photo::after{content:"";position:absolute;inset:18% 10% 16%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 48'%3E%3Cpath fill='%230E0B14' fill-opacity='.42' d='M10 36l4-12q2-4 8-5l16-9q4-3 10-3h26q6 0 12 4l14 8 10 2q6 2 6 9v6z'/%3E%3Ccircle cx='32' cy='38' r='7' fill='%230E0B14' fill-opacity='.55'/%3E%3Ccircle cx='92' cy='38' r='7' fill='%230E0B14' fill-opacity='.55'/%3E%3C/svg%3E") center/contain no-repeat}
.sf-photo.pink{background:linear-gradient(160deg,var(--pink-tint) 0,#F6D9E4 100%)}
.sf-photo.plain::after{display:none}
.sf-photo.plain::before{content:"";position:absolute;inset:22% 14%;border-radius:6px;border:1.5px solid rgba(14,11,20,.22)}
.sf-photo .n{position:absolute;left:6px;bottom:5px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--ink-soft);background:rgba(255,255,255,.85);padding:1px 5px;border-radius:4px}
/* rows / tables */
.sf-list{display:flex;flex-direction:column;gap:8px}
.sf-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--r2);background:#fff}
.sf-row.on{background:var(--pink-tint);border-color:var(--pink-line)}
.sf-row.on .r-meta{color:var(--ink-soft)}
.sf-row .r-main{min-width:0}
.sf-row .r-name{display:block;font-weight:600;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-row .r-meta{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.02em;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-row .r-fig{text-align:right;font-family:var(--display);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.sf-row .r-fig small{display:block;font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.04em;color:var(--ink-faint)}
.sf-row .r-end{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.sf-table{width:100%;border-collapse:collapse;font-size:12.5px}
.sf-table th{font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);text-align:left;padding:0 8px 8px 0;border-bottom:1px solid var(--line)}
.sf-table th:first-child,.sf-table td:first-child{padding-left:8px}
.sf-table th:last-child,.sf-table td:last-child{padding-right:8px}
.sf-table tr.on td:first-child{border-radius:6px 0 0 6px}.sf-table tr.on td:last-child{border-radius:0 6px 6px 0}
.sf-table td{padding:8px 8px 8px 0;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}
.sf-table td.num,.sf-table th.num{text-align:right;font-variant-numeric:tabular-nums}
.sf-table tr.on td{background:var(--pink-tint)}
.sf-table .veh{display:flex;align-items:center;gap:10px;font-weight:600}
.sf-table .veh .sf-photo{width:40px;border-radius:6px}
.sf-table .veh small{display:block;font-family:var(--mono);font-weight:500;font-size:10px;color:var(--ink-faint)}
/* key figures */
.sf-kvs{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:8px}
.sf-kv{display:flex;flex-direction:column;justify-content:flex-end;padding:8px 10px;border-radius:var(--r2);background:var(--paper);border:1px solid var(--line)}
.sf-kv .k{display:block;flex:1 1 auto;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:3px}
.sf-kv .v{display:block;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.sf-kv .v small{font-family:var(--body);font-weight:400;font-size:11px;color:var(--ink-faint);letter-spacing:0}
.sf-kv.hi{background:var(--pink-tint);border-color:var(--pink-line)}
.sf-kv.hi .v{color:var(--pink-text)}
.sf-kv.hi .k{color:var(--ink-soft)}
.sf-big{font-family:var(--display);font-weight:800;font-size:28px;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1}
.sf-big small{font-family:var(--body);font-weight:400;font-size:12px;letter-spacing:0;color:var(--ink-faint);margin-left:3px}
/* buttons / inputs / toggles (inert) */
.sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;border-radius:8px;background:var(--pink);color:#fff;font-weight:600;font-size:12.5px;white-space:nowrap;pointer-events:none}
.sf-btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line-strong)}
.sf-btn.ink{background:var(--ink)}
.sf-btn.sm{min-height:26px;padding:0 9px;font-size:11.5px;border-radius:6px}
.sf-btns{display:flex;gap:8px;flex-wrap:wrap}
.sf-input{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:12.5px;color:var(--ink-soft)}
.sf-input.plate{font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.12em;color:var(--ink);background:#FFD84D;border-color:#E3BE2E;justify-content:center;max-width:150px}
.sf-toggle{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--ink)}
.sf-toggle i{width:32px;height:18px;border-radius:9px;background:var(--pink);position:relative;flex:0 0 auto}
.sf-toggle i::after{content:"";position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:#fff}
.sf-toggle.off i{background:var(--line-strong)}.sf-toggle.off i::after{right:auto;left:2px}
/* chat */
.sf-chat{display:flex;flex-direction:column;gap:8px}
.sf-msg{position:relative;max-width:86%;padding:9px 12px;border-radius:12px;font-size:12.5px;line-height:1.45;color:var(--ink)}
.sf-msg.in{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.sf-msg.out{align-self:flex-end;background:var(--paper);border:1px solid var(--line);border-bottom-right-radius:4px}
.sf-msg.ai{align-self:flex-end;background:var(--pink-tint);border:1px solid var(--pink-line);border-bottom-right-radius:4px}
.sf-msg.ai.purple{background:var(--purple-tint);border-color:var(--purple-line)}
.sf-msg .tag{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--pink-text);margin-bottom:3px}
.sf-msg.purple .tag{color:var(--purple)}
.sf-msg .t{display:block;margin-top:4px;font-family:var(--mono);font-size:10px;color:var(--ink-faint);text-align:right}
.sf-reply{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:10px;background:#fff;color:var(--ink-faint);font-size:12.5px}
.sf-reply .sf-btn{margin-left:auto}
/* progress / pipeline */
.sf-steps{display:flex;align-items:center;gap:0;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}
.sf-steps span{position:relative;display:flex;align-items:center;gap:6px;padding-right:14px}
.sf-steps span::before{content:"";width:8px;height:8px;border-radius:50%;border:2px solid var(--line-strong);background:#fff;flex:0 0 auto}
.sf-steps span.done::before{background:var(--pink);border-color:var(--pink)}
.sf-steps span.now{color:var(--pink-text);font-weight:600}.sf-steps span.now::before{border-color:var(--pink);box-shadow:0 0 0 3px var(--pink-tint)}
.sf-steps span + span::after{content:"";position:absolute;left:-14px;top:50%;width:14px;height:1px;background:var(--line-strong)}
/* illustrative pill inside a surface */
.sf-top .illus{position:static;margin-left:auto;flex:0 0 auto;transform:none}
.sf-top .sf-user + .illus{margin-left:0}
/* responsive: phones get a single-pane, capped arrangement; .m-hide / .d-hide swap parts */
.d-hide{display:none!important}
@media (max-width:700px){
  .sf-cols,.sf-cols.w-38,.sf-cols.w-62{grid-template-columns:minmax(0,1fr)}
  .sf-cols > * + *{border-left:0;border-top:1px solid var(--line)}
  .sf-pane{padding:12px;gap:8px}
  .sf-top{min-height:38px;padding:0 12px;gap:8px}
  .sf-top .sf-user{display:none}
  .sf-top .sf-user + .illus{margin-left:auto}
  .sf-tabs span{display:none}
  .sf-tabs span.on{display:inline-block}
  .sf-btn.sm{min-height:30px;padding:0 10px}
  .m-hide{display:none!important}
  .d-hide{display:revert!important}
  .sf.max-720,.sf.max-640{max-width:none}
  .sf-big{font-size:24px}
  .prod-visual .sf{max-height:none}
}

/* 23c. SETUP PROMISE + GUARANTEE (build token .pv-guar-v1) ------------------- */
.pv-guar-v1{display:none}
.promise{margin-top:var(--s6)}
.promise-h{margin-bottom:12px}
.promise-grid{grid-template-columns:repeat(2,1fr);margin-top:0}
.promise-grid .r-item{padding:20px 24px}
.hero-note a,.calc-note a,.r-item a,.next-step a,.terms a,.faq details a,.guar-cta .or a{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.hero-note a,.calc-note a,.r-item a,.next-step a{white-space:nowrap}
.nb{white-space:nowrap}
.next-step a{color:#fff}
.next-step a:hover{color:var(--pink-tint)}
.guarantee-note{margin-top:8px;text-wrap:balance}
/* odd item count at the 2-col breakpoint: stretch the last cell instead of showing an empty grey one */
@media (max-width:1024px) and (min-width:701px){.reassure .r-item:last-child:nth-child(odd),.steps .step-card:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:700px){
  .promise-grid{grid-template-columns:minmax(0,1fr)}
  .reassure .r-item,.promise-grid .r-item{padding:14px 18px}
  .hero-home .hero-note{order:0;margin-top:14px;font-size:13px}
  .cs-items{flex-direction:column;gap:8px}.closing-strip .btn{width:100%}
  .guar-cta .btn{width:100%}.guar-cta .or{flex:1 1 100%}
}
/* guarantee page */
.hero-guarantee .lede{max-width:60ch}
.plain-english{margin-top:var(--s6)}
.plain-english+.calc-note{margin-top:14px}
.terms{max-width:680px;margin-top:var(--s6)}
.terms h3{font-size:var(--t-h4);margin:28px 0 8px}
.terms h3:first-child{margin-top:0}
.terms p,.terms li{color:var(--ink-soft);font-size:15px;line-height:1.65}
.terms ol{padding-left:0;margin:0;display:grid;gap:10px}
.terms li strong{color:var(--ink)}
.terms .meta{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-faint);margin-top:28px}
.guar-cta{margin-top:var(--s6);display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.guar-cta .or{font-size:14px;color:var(--ink-soft)}
.terms a[href^="https://wa.me"],.guar-cta a[href^="https://wa.me"]{white-space:nowrap}

/* 23e. MOBILE APP SECTION (build token .pv-app-v1) ------------------------- */
.pv-app-v1{display:none}
.app-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--s7);align-items:center}
.app-points{list-style:none;margin:var(--s5) 0 0;padding:0;display:grid;gap:12px}
.app-points li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;font-size:var(--t-body);color:var(--ink-soft)}
.app-points li strong{display:block;color:var(--ink);font-family:var(--display);font-size:16px;letter-spacing:-.01em}
.app-line{margin-top:var(--s5);font-size:14px;color:var(--ink-faint)}
.app-line+.app-line{margin-top:6px}
.app-section .app-badges{margin-top:20px}
.app-visual{margin:0}
/* device-frame radii (32/24/28px) are deliberate literals, not UI radii */
.phone{position:relative;width:100%;max-width:300px;margin:0 auto;padding:10px;border-radius:32px;background:var(--ink);box-shadow:var(--e3)}
.phone .sf{border-radius:24px;border:0;box-shadow:none;min-height:520px;display:flex;flex-direction:column;overflow:hidden}
.phone .sf-top{padding:0 12px;flex:none}.phone .sf-tabs{display:none}
.phone .sf-pane{padding:12px;flex:1 1 auto;overflow:hidden}
.sf-nav{flex:none;display:flex;justify-content:space-around;padding:10px 8px 12px;border-top:1px solid var(--line);background:#fff;font:600 11.5px/1 var(--body);color:var(--ink-faint)}
.sf-nav span{display:grid;justify-items:center;gap:5px}.sf-nav i{width:18px;height:18px;border-radius:5px;background:currentColor;opacity:.25}
.sf-nav .on{color:var(--pink-text)}.sf-nav .on i{color:var(--pink);opacity:1}
.app-visual .mock-cap{margin-top:14px;text-align:center}
.footer-tm{flex:1 1 100%;margin:0;font-size:12px;color:var(--on-ink-faint)}
@media (max-width:1024px){
  .app-grid{grid-template-columns:minmax(0,1fr)}
  .app-visual{order:2;margin:8px auto 0;max-width:280px}
  .phone{max-width:280px;padding:8px;border-radius:28px}
  .phone .sf{min-height:0}.phone .sf-row:nth-child(n+3){display:none}
}

/* 23d. INTEGRATIONS (build token .pv-int-v1) --- */
.pv-int-v1{display:none}
.pv-rev2-v1{display:none}.pv-hp-v1{display:none}
.phone .r-name small{color:var(--pink-text)}
/* hero surface: body type inside the feed (B1 — mono only on plates), nothing under 11.5px */
.sf-int .sf-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"t n b" "t m m";gap:2px 10px;padding:8px 10px}
.sf-int .sf-row .sf-tile{grid-area:t;align-self:start;margin-top:1px}
.sf-int .sf-row .r-main{grid-area:n;display:contents}
.sf-int .sf-row .r-name{font-size:14px;white-space:normal;grid-area:n;align-self:center}
.sf-int .sf-row .sf-badge{grid-area:b;align-self:center}
.sf-int .sf-row .r-meta{grid-area:m;font-family:var(--body);font-size:12px;letter-spacing:0;white-space:normal}
.sf-int .sf-row .r-meta .sf-vrm{margin-right:4px;vertical-align:1px}
.sf-int .sf-vrm{font-size:11.5px;letter-spacing:.06em}
.sf-int .sf-top .sf-user b{font-size:11.5px}
.sf-int .sf-tile{width:26px;height:26px;font-size:13px;font-weight:700}
.sf-int .sf-badge{min-height:22px}
.sf-int .sf-title.small{font-size:13px}
.sf-int .sf-title small{font-family:var(--body);font-size:11.5px;letter-spacing:0}
.sf-int .sf-meta{font-family:var(--body);font-size:11.5px;letter-spacing:0}
.sf-int .int-flow{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:11.5px;color:var(--ink-soft)}
.sf-int .int-flow span{padding:3px 8px;border-radius:var(--r-pill);background:var(--paper);border:1px solid var(--line);white-space:nowrap}
.sf-int .int-flow i{font-style:normal;color:var(--pink);font-weight:700}
/* three ways */
.int-ways .x-icon.mono{font-size:11.5px}
.int-link{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;font-weight:600;color:var(--pink-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.int-link:hover{color:var(--pink)}
/* recipes */
.int-label{margin-top:var(--s6);margin-bottom:0;text-transform:uppercase;color:var(--ink-faint)}
.int-recipes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:var(--s4)}
.int-recipe{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;padding:var(--s5);background:#fff;border:1px solid var(--line);border-radius:var(--r3)}
.int-recipe small{display:block;font-family:var(--mono);font-weight:600;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:3px}
.int-recipe .ir-from,.int-recipe .ir-to{font-size:var(--t-body-s);line-height:1.45;color:var(--ink)}
.int-recipe .ir-to{color:var(--ink-soft)}
.int-recipe .ir-arrow{color:var(--pink);font-weight:700;font-size:18px}
.int-more{display:none}
.int-tail{margin-top:var(--s6)}
.int-tail .us-cta .btn{margin-top:0}
/* finance vs plumbing */
.reassure.int-two{grid-template-columns:1fr 1fr}
/* developer cards */
.feat-grid.int-dev{grid-template-columns:repeat(4,1fr)}
.int-dev .feat-card h3{font-size:17px}
@media (max-width:1024px){
  .feat-grid.int-dev{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .int-recipes{grid-template-columns:minmax(0,1fr);gap:10px}
  .int-recipes > .ir-x{display:none}
  .int-recipe{grid-template-columns:minmax(0,1fr);gap:8px;padding:var(--s4)}
  .int-recipe .ir-arrow{display:none}
  .int-more{display:block;margin-top:10px}
  .int-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:#fff;font-weight:600;font-size:var(--t-small);color:var(--ink)}
  .int-more summary::-webkit-details-marker{display:none}
  .int-more[open] summary{margin-bottom:10px}
  .int-more .int-recipes{margin-top:0}
  .int-more summary::after{content:"\00a0↓"}
  .int-more[open] summary::after{content:"\00a0↑"}
  .int-more .s-less{display:none}
  .int-more[open] .s-more{display:none}
  .int-more[open] .s-less{display:inline}
  .int-ways .feat-card,.int-dev .feat-card{padding:20px 18px}
  .int-link{min-height:44px}
  .reassure.int-two,.feat-grid.int-dev{grid-template-columns:minmax(0,1fr)}
  .int-tail{padding:28px 22px}
  .int-tail .us-cta{text-align:left}
  .int-tail .us-cta .btn{width:100%}
  .sf-int .sf-row{gap:2px 8px;padding:8px 9px}
  .sf-int .sf-badge{padding:0 6px}
}

/* 24b. SURFACE KIT v2 — controls mirrored from the live portal / DMS (fidelity round).
   Segmented tabs, yellow VRM chips, labelled selects, channel tiles, enquiry-count
   badges, checkboxes, tag pills, AI Agent gradient bubbles, hub chips, DMS card rows.
   Build token: .pv-surf-v2 (+ .pv-simp-v1 at the end of this section) */
.sf-seg{display:inline-flex;align-self:flex-start;padding:2px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:11.5px;font-weight:600;color:var(--ink-faint);white-space:nowrap}
.sf-seg span{padding:4px 10px;border-radius:6px}
.sf-seg span.on{background:var(--ink);color:#fff}
.sf-vrm{display:inline-block;font-family:var(--mono);font-weight:700;font-size:11.5px;letter-spacing:.06em;line-height:1.5;color:var(--ink);background:#FFD84D;border:1px solid #E3BE2E;border-radius:4px;padding:0 6px;white-space:nowrap;vertical-align:middle}
.sf-sel{display:inline-flex;flex-direction:column;gap:3px;min-width:0}
.sf-sel .k{font-size:11.5px;font-weight:600;color:var(--ink-faint);white-space:nowrap}
.sf-sel .v{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px;padding:0 9px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;font-size:11.5px;font-weight:600;color:var(--ink);white-space:nowrap}
.sf-sel .v::after{content:"";width:6px;height:6px;border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);transform:translateY(-2px) rotate(45deg);flex:0 0 auto}
.sf-sel.hi .v{background:var(--pink-tint);border-color:var(--pink-line);color:var(--pink-text)}
.sf-sel.row{flex-direction:row;align-items:center;gap:6px}
.sf-sels{display:flex;gap:10px;flex-wrap:wrap}
.sf-tile{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:11.5px;letter-spacing:.02em;background:var(--paper);border:1px solid var(--line-strong);color:var(--ink-soft);flex:0 0 auto}
.sf-tile.pink{background:var(--pink-tint);border-color:var(--pink-line);color:var(--pink-text)}
.sf-count{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:6px;background:#fff;border:1px solid var(--pink-line);color:var(--pink-text);font-family:var(--display);font-weight:800;font-size:12px;font-variant-numeric:tabular-nums}
.sf-count.mid{background:var(--pink-tint);color:var(--pink-text)}
.sf-count.hi{background:var(--pink);border-color:var(--pink);color:#fff}
.sf-check{display:inline-block;width:14px;height:14px;border:1.5px solid var(--line-strong);border-radius:3px;background:#fff;vertical-align:middle;flex:0 0 auto;position:relative}
.sf-check.on{background:var(--pink);border-color:var(--pink)}
.sf-check.on::after{content:"";position:absolute;left:4px;top:1px;width:3px;height:7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}
.sf-tag{display:inline-block;padding:1px 7px;border-radius:var(--r-pill);font-size:11.5px;font-weight:600;line-height:1.5;background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);white-space:nowrap}
.sf-tag.pink{background:var(--pink-tint);border-color:var(--pink-line);color:var(--pink-text)}
.sf-msg.ai.agent{background:linear-gradient(135deg,var(--purple) 0,var(--pink-text) 100%);border:0;color:#fff}
.sf-msg.ai.agent .tag,.sf-msg.ai.agent .t{color:rgba(255,255,255,.92)}
.sf-live{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:var(--ink-faint);white-space:nowrap}
.sf-live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 3px var(--pink-tint);flex:0 0 auto}
.sf-chips{display:flex;gap:6px;flex-wrap:wrap}
.sf-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 10px;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:#fff;font-size:11.5px;font-weight:600;color:var(--ink-soft);white-space:nowrap}
.sf-chip b{font-weight:500;font-size:11.5px;color:var(--ink-faint)}
.sf-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}
.sf-chip.on b{color:rgba(255,255,255,.7)}
.sf-input.search{color:var(--ink-faint);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-input.search::before{content:"";width:12px;height:12px;flex:0 0 auto;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E0B14' stroke-opacity='.55' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21'/%3E%3C/svg%3E") center/contain no-repeat}
.sf-card{padding:10px 12px;border:1px solid var(--line);border-radius:var(--r2);background:#fff;display:flex;flex-direction:column;gap:6px}
.sf-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11.5px;color:var(--ink-faint)}
.sf-meta b{color:var(--ink);font-weight:600}
.sf-title.small{font-size:13px}
.sf-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sf-card .sf-h b{font-size:11.5px}
@media (max-width:700px){
  .sf-sels{gap:8px}
  .sf-sel .v{min-height:24px;font-size:11.5px}
  .sf-chip{min-height:24px;font-size:11.5px;padding:0 8px}
}

/* — lending-hub surface — */
.sf-lend .sf-top{gap:10px}
.sf-lend .sf-top .sf-seg{flex:0 0 auto}
.sf-lend .sf-top .sf-sel{margin-left:auto;flex:0 0 auto}
.sf-lend .sf-top .sf-sel .v{white-space:nowrap}
.sf-lend .l-tabs{display:flex;gap:2px;padding:6px 14px 0;border-bottom:1px solid var(--line);overflow:hidden;font-size:11.5px;color:var(--ink-faint);white-space:nowrap}
.sf-lend .l-tabs span{padding:6px 9px 8px;border-bottom:2px solid transparent}
.sf-lend .l-tabs span.on{color:var(--pink-text);font-weight:600;border-bottom-color:var(--pink)}
.sf-lend .l-veh{display:flex;align-items:center;gap:10px}
.sf-lend .l-veh .sf-title small{display:flex;align-items:center;gap:6px;margin-top:4px}
.sf-lend .l-body{display:grid;grid-template-columns:minmax(0,1fr)}
.sf-lend .l-kvs{grid-template-columns:repeat(6,minmax(0,1fr))}
.sf-lend .sf-h .sf-badge{align-self:center}
@media (max-width:700px){
  .sf-lend .l-kvs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .sf-lend .sf-kv{padding:7px 7px}
  .sf-lend .sf-kv .k{white-space:normal;line-height:1.2}
  .sf-lend .sf-kv .v{font-size:13px}
}
/* — agent-hub surface — */
.sf-agent .sf-top{gap:10px}
.sf-agent .g-search{flex:1 1 auto;min-height:28px;font-size:12px;border-radius:8px;max-width:220px}
.sf-agent .g-hubs{flex-wrap:wrap}
.sf-agent .g-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sf-agent .g-app{flex-direction:row;align-items:flex-start;gap:10px}
.sf-agent .g-app .n{flex:1 1 auto;min-width:0;font-weight:600;font-size:12.5px;line-height:1.3}
.sf-agent .g-app .n .nm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-agent .g-app .n small{display:block;margin-top:2px;font-weight:400;font-size:11.5px;line-height:1.35;color:var(--ink-faint);white-space:normal}
.sf-agent .g-app .n .sf-badge{margin-top:7px}
.sf-agent .g-run .sf-steps{flex-wrap:wrap;gap:4px 0}
@media (max-width:700px){
  .sf-agent .g-grid{gap:6px}
  .sf-agent .g-app{padding:8px 9px;gap:8px}
  .sf-agent .g-app .n{font-size:12px;line-height:1.25}
  .sf-agent .g-app .n .nm{white-space:normal;overflow:visible}
  .sf-agent .g-app .n small{display:none}
  .sf-agent .g-app .n .sf-badge{display:inline-flex;margin-top:5px;padding:0 6px;min-height:20px}
  .sf-agent .g-app .sf-tile{width:24px;height:24px;font-size:11.5px}
}
/* — ai-connectors surface — */
.sf-con .sf-chat .sf-msg{max-width:90%}
.sf-con .c-ans{align-self:flex-start;max-width:96%}
.sf-con .c-tool{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--paper);font-size:11.5px;color:var(--ink-faint);max-width:96%}
.sf-con .c-tool .sf-tile{width:24px;height:24px;font-size:11.5px}
.sf-con .c-tool-n{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-con .c-tool-n b{color:var(--ink);font-weight:600}
.sf-con .c-tool .sf-badge{flex:0 0 auto}
.sf-con .c-conn{gap:6px}
.sf-con .c-conn .sf-title.small{font-size:12px}
.sf-con .c-conn .sf-title small{white-space:normal}
.sf-con .c-sched{flex-direction:column;gap:4px}
.sf-con .c-sched span{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0}
.sf-con .c-sched span b{white-space:nowrap;flex:0 0 auto}
.sf-con .sf-card .c-sched{max-width:100%}
.sf-con .c-priv{flex-direction:column;gap:4px;color:var(--ink-soft)}
.sf-con .c-priv span::before{content:"✓ ";color:var(--pink-text);font-weight:700}
@media (max-width:700px){
  .sf-con .sf-chat{gap:6px}
  .sf-con .sf-chat .sf-msg{padding:8px 10px}
  .sf-con .sf-msg.out .tag{display:none}
}
/* — ai-engage surface — */
.sf-eng .sf-chat .sf-msg{max-width:88%}
.sf-eng .sf-reply{justify-content:space-between}
.sf-eng .sf-reply .sf-btn{margin-left:0}
.sf-eng .sf-head{align-items:center}
.sf-eng .sf-head .sf-tag{flex:0 0 auto}
.sf-eng .sf-kvs{grid-template-columns:repeat(2,minmax(0,1fr))}
.sf-eng .sf-kv.hi{grid-column:1/-1;flex-direction:row;align-items:baseline;justify-content:space-between}
.sf-eng .sf-kv.hi .k{flex:0 0 auto}
.sf-eng .e-did{gap:5px;align-items:flex-start;padding:9px 11px}
.sf-eng .e-did .sf-title.small{font-size:12px}
.sf-eng .sf-head .sf-title small{white-space:nowrap}
@media (max-width:700px){
  .sf-eng .sf-chat{gap:6px}
  .sf-eng .sf-chat .sf-msg{max-width:94%;padding:7px 10px}
  .sf-eng .sf-title small{display:none}
  .sf-eng .sf-pane{gap:7px}
}
/* — appraisal-hub surface — */
@media (min-width:701px){.sf-apr .a-cols{grid-template-columns:minmax(0,.56fr) minmax(0,.44fr)}}
.sf-apr .a-list .sf-row{grid-template-columns:minmax(0,1fr) auto;padding:8px 10px}
.sf-apr .a-list .r-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-apr .a-list .r-meta{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.sf-apr .a-list .r-meta .sf-vrm{display:inline-flex;vertical-align:middle;margin-right:3px}
.sf-apr .a-list .r-fig{font-size:13px}
.sf-apr .sf-head .sf-title{font-size:12.5px;letter-spacing:-.02em;white-space:nowrap}
.sf-apr .sf-head .sf-btn{padding:0 8px;font-size:11.5px;flex:0 0 auto}
.sf-apr .a-id{display:flex;align-items:center;gap:10px}
.sf-apr .a-id .sf-input.plate{min-height:30px;font-size:13px;max-width:120px;flex:0 0 auto}
.sf-apr .sf-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.sf-apr .sf-photos .sf-photo{width:auto;aspect-ratio:4/3;border-radius:6px}
.sf-apr .sf-photos .sf-photo::after{inset:4% 10% 40%}
.sf-apr .sf-photos .sf-photo .n{left:0;right:0;bottom:0;border-radius:0;text-align:center;font-size:11.5px;padding:2px 0;background:rgba(255,255,255,.9);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-apr .sf-photo.near::after{inset:-14% -26% 36%}
.sf-apr .sf-photos .sf-photo.plain::before{inset:18% 16% 34%}
.sf-apr .a-cond{display:flex;flex-direction:column;gap:5px}
.sf-apr .a-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink)}
.sf-apr .a-val{display:flex;flex-direction:column;gap:6px}
.sf-apr .a-val .sf-big{font-size:24px}
.sf-apr .a-line{font-size:12px;color:var(--ink-soft)}
@media (max-width:700px){
  .sf-apr .sf-photos{gap:5px;margin-bottom:6px}
  .sf-apr .a-cond{display:none}
  .sf-apr .a-val .sf-big{font-size:22px}
}
/* — enquiry-hub surface — */
@media (min-width:701px){.sf-enq .sf-cols{grid-template-columns:minmax(0,.44fr) minmax(0,.56fr)}}
.sf-enq .sf-row{grid-template-columns:auto minmax(0,1fr);align-items:flex-start;padding:7px 10px}
.sf-enq .sf-row .sf-tile{margin-top:2px}
.sf-enq .r-name{display:flex;align-items:baseline;justify-content:space-between;gap:6px;white-space:nowrap}
.sf-enq .r-name small{font-weight:500;font-size:11.5px;color:var(--ink-faint)}
.sf-enq .r-meta{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.sf-enq .r-meta .sf-vrm{display:inline-flex;vertical-align:middle;margin-right:3px}
.sf-enq .r-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}
.sf-enq .sf-head .sf-title{min-width:0}
.sf-enq .sf-head .sf-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-enq .sf-head .sf-live{white-space:nowrap;flex:0 0 auto}
.sf-enq .sf-btns .sf-btn.sm{padding:0 9px;font-size:11.5px}
.sf-enq .sf-chat .sf-msg{max-width:92%}
.sf-enq .sf-reply .e-chan{flex:0 0 auto}
.sf-enq .sf-reply .sf-btn{margin-left:auto}
@media (max-width:700px){
  .sf-enq .sf-list{gap:6px}
  .sf-enq .sf-row{padding:7px 9px}
}
/* — inventory-hub surface — */
.sf-inv .i-filters{display:flex;align-items:center;gap:10px}
.sf-inv .i-filters .sf-input{flex:1 1 auto}
.sf-inv .i-filters .sf-sel .v{min-height:34px}
.sf-inv .i-filters .sf-toggle{font-size:11.5px;color:var(--ink-soft)}
.sf-inv .i-veh{flex-direction:row;align-items:center;gap:12px;padding:10px 12px}
.sf-inv .i-veh .sf-photo{width:56px}
.sf-inv .i-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:5px}
.sf-inv .i-name{display:flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:-.01em;white-space:nowrap}
.sf-inv .i-name .nm{min-width:0;overflow:hidden;text-overflow:ellipsis}
.sf-inv .i-name .sf-badge{flex:0 0 auto;min-height:20px}
.sf-inv .sf-meta{flex-wrap:nowrap;align-items:center;gap:8px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-inv .sf-meta > span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.sf-inv .i-acts{flex:0 0 auto;flex-wrap:nowrap;gap:6px;align-self:center}
.sf-inv .i-acts .sf-btn{justify-content:center}
@media (max-width:700px){
  .sf-inv .sf-list{gap:6px}
  .sf-inv .i-veh{gap:10px;padding:8px 10px}
  .sf-inv .i-veh .sf-photo{width:48px}
  .sf-inv .i-name{font-size:12.5px;white-space:normal;align-items:flex-start;flex-wrap:wrap;gap:4px 8px;line-height:1.25}
  .sf-inv .i-name .nm{overflow:visible}
  .sf-inv .sf-meta{gap:6px}
}
/* — vehicle-boost surface — */
.sf-boost .b-bar{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sf-boost .b-bar .sf-input{flex:0 0 auto;width:110px;min-height:28px}
.sf-boost .b-table th.chk,.sf-boost .b-table td.chk{width:30px;padding-right:6px}
.sf-boost .b-table{table-layout:fixed}
.sf-boost .b-table th.num{width:60px}
.sf-boost .b-table th.num:last-child{width:44px}
.sf-boost .b-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-boost .b-table .veh > span:last-child{display:block;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}
.sf-boost .b-table .veh .sf-photo{flex:0 0 auto}
.sf-boost .b-table .veh small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-boost .b-table .veh .sf-vrm{display:table;margin:1px 0 3px;padding:0 5px}
.sf-boost .b-table td.num .sf-count{margin-left:auto}
.sf-boost .b-sel{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 10px;border-radius:var(--r2);background:var(--pink-tint);border:1px solid var(--pink-line)}
.sf-boost .b-sel-n{font-size:12px;font-weight:600;color:var(--pink-text)}
.sf-boost .b-msg{max-width:none;align-self:stretch;background:#fff}
.sf-boost .b-kvs{grid-template-columns:repeat(2,minmax(0,1fr))}
.sf-balt{box-shadow:var(--e2)}
.sf-balt .sf-head{align-items:center}
.sf-balt .sf-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sf-balt .sf-msg{max-width:90%}
.sf-balt .sf-msg.out .tag{color:var(--ink-faint)}
.sf-balt .b-row{flex-direction:row;align-items:center;gap:10px}
.sf-balt .b-row .sf-title{flex:1 1 auto;min-width:0}
.sf-balt .b-row .sf-title small{display:flex;align-items:center;gap:6px;margin-top:3px}
.alt-media > .sf-balt{margin:0 auto}
@media (max-width:700px){
  .sf-boost .b-table td{padding:6px 6px 6px 0}
  .sf-boost .b-table td:first-child{padding-left:6px}
  .sf-boost .b-table .veh{font-size:12px}
  .sf-boost .b-table .veh .sf-vrm{display:inline-flex;vertical-align:middle;margin:0 3px 0 0}
  .sf-boost .b-sel{padding:7px 9px}
  .sf-boost .b-sel-n{font-size:11.5px}
}
/* — home surfaces (hero flow + core shots) — build token .pv-home-v1 */
.sf-home{box-shadow:var(--e2)}
.sf-home .sf-top{min-height:38px;padding:0 12px}
.sf-home .sf-pane{padding:11px 12px;gap:8px}
.sf-home .sf-title{font-size:14px}
.sf-home .sf-head{align-items:center}
.sf-home .hm-veh{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}
.sf-home .hm-car{font-weight:600;color:var(--ink)}
.sf-home .hm-meta{font-size:11.5px;color:var(--ink-faint)}
.sf-home .sf-msg{max-width:88%;padding:8px 11px;line-height:1.4}
.sf-home .sf-chat{gap:6px}
.sf-home .sf-msg .t{margin-top:2px}
.sf-home .sf-msg.out .tag{color:var(--ink-faint)}
.sf-home .sf-h b .sf-vrm{vertical-align:middle}
.sf-home .hm-kvs{grid-template-columns:repeat(4,minmax(0,1fr))}
.sf-hc2 .hm-kvs{grid-template-columns:repeat(3,minmax(0,1fr))}
.sf-hc2 .hm-acts{margin-top:auto}
.sf-home .sf-kv{padding:7px 9px}
.sf-home .sf-kv .v{font-size:14px}
.sf-home .hm-table{table-layout:fixed}
.sf-home .hm-table th:nth-child(1){width:38%}
.sf-home .hm-table th.num{width:19%}
.sf-home .hm-table td{padding:6px 6px 6px 0;overflow:hidden;text-overflow:ellipsis}
.sf-home .hm-table td small{display:block;font-weight:400;font-size:11.5px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis}
.sf-home .hm-table .sf-badge{padding:0 7px}
.sf-home .sf-btns{display:flex;gap:8px;flex-wrap:wrap}
.sf-home .hm-book{flex-direction:row;align-items:center;gap:10px;background:var(--pink-tint);border-color:var(--pink-line)}
.sf-home .hm-book .sf-title{flex:1 1 auto;min-width:0}
.sf-home .hm-book .sf-title.small{font-size:12.5px}
.sf-home .sf-top .sf-live{margin-left:auto}
.sf-home .sf-top .sf-live + .illus{margin-left:0}
.sf-home .sf-top .sf-sel.row{margin-left:auto;flex:0 1 auto;min-width:0}
.sf-home .sf-top .sf-sel.row + .illus{margin-left:0}
.sf-home .sf-top .sf-sel .v{min-height:24px;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.core-shots{align-items:stretch}
.shot .sf-home{border:0;border-radius:0;box-shadow:none;flex:1;display:flex;flex-direction:column}
.shot .sf-home .sf-pane{flex:1}
.shot .sf-home .sf-top{border-radius:0}
.flow .sf-home{background:#fff}
.flow-step:nth-child(2) .sf-home{box-shadow:var(--e3)}
@media (max-width:700px){
  .sf-home .hm-kvs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sf-home .hm-table th:nth-child(1){width:27%}
  .sf-home .hm-table th.num{width:18%}
  .sf-home .hm-table .sf-badge{padding:0 6px}
  .sf-home .hm-table td small{display:none}
  .sf-home .sf-top .sf-live + .illus,.sf-home .sf-top .sf-sel.row + .illus{margin-left:auto}
  .sf-home .sf-btn.sm{white-space:normal;text-align:center;line-height:1.25;padding:5px 10px}
}

/* — B1 simplicity (build token .pv-simp-v1) — */
.pv-simp-v1{display:none}
/* Product previews speak in the product's own voice: Open Sans, sentence case. Mono is reserved for plates. */
.sf :is(.sf-h, .sf-badge, .sf-kv .k, .sf-sel .k, .sf-msg .tag, .sf-msg .t, .sf-row .r-meta,
        .sf-row .r-fig small, .sf-table th, .sf-table .veh small, .sf-title small, .sf-top .sf-user,
        .sf-steps, .sf-live, .sf-chip b, .sf-meta, .sf-photo .n, .sf-agent .g-app .n small,
        .sf-con .c-tool, .sf-enq .r-name small, .sf-home .hm-meta, .sf-home .hm-table td small, .illus){
  font-family:var(--body); letter-spacing:0; text-transform:none;
}
.sf :is(.sf-h, .sf-kv .k, .sf-sel .k, .sf-table th){font-weight:600; font-size:11.5px}
.sf :is(.sf-badge){font-weight:600; font-size:11.5px}
.sf :is(.sf-msg .tag, .sf-msg .t, .sf-row .r-meta, .sf-row .r-fig small, .sf-title small, .sf-meta){font-size:11.5px}
/* B1 #2 type floor: nothing inside .sf below 11.5px */
.sf{font-size:14px}
.sf .sf-msg{font-size:14px}
.sf .sf-row .r-name{font-size:14px}
.sf .sf-row .r-meta{font-size:12px}
.sf :is(.sf-photo .n, .sf-steps, .sf-live, .sf-chip b, .sf-top .sf-user, .sf-top .sf-user b, .sf-kv .v small, .sf-table .veh small,
        .sf-agent .g-app .n small, .sf-con .c-tool, .sf-enq .r-name small, .sf-home .hm-meta, .sf-home .hm-table td small,
        .sf-tile, .sf-tag, .sf-sel .v, .sf-chip, .sf-btn.sm, .illus){font-size:11.5px}
.sf .sf-vrm{font-size:11.5px}
/* B1 #4 the in-frame "Illustrative" mark: plain sentence-case text, right-aligned */
.sf .illus{font:600 11.5px/1 var(--body);letter-spacing:0;text-transform:none;color:var(--ink-faint);background:none;border:0;padding:0;text-align:right}
/* Same voice for the older home mock kit (partners.html) */
.mock :is(.mock-title, .mock-tag, .mh-src, .mh-meta, .mock-row .mr-fig small, .mock-kv .k, .status, .mock-msg .ai-tag, .mock-msg .t, .mock-divider, .src-chips span, .pp-mark){
  font-family:var(--body); letter-spacing:0; text-transform:none;
}
.mock :is(.mock-title, .mh-src, .mh-meta, .mock-row .mr-fig small, .mock-kv .k, .mock-msg .ai-tag, .mock-msg .t, .mock-divider, .src-chips span){font-size:11.5px}
.mock :is(.mock-tag, .status, .mock-kv .k, .mh-src, .mock-divider){font-weight:600}
.mock :is(.mock-tag, .status, .pp-mark){font-size:11.5px}
.mock .pp-mark{min-height:18px;font-weight:600}
.mock .src-tag{font-size:11.5px}

/* 40. LOGO RAILS (lead sources, lenders, AI providers) --------------------- */
.logo-rail{position:relative;flex:1 1 320px;min-width:0;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.logo-rail-track{display:flex;align-items:center;gap:44px;width:max-content;animation:logo-rail 38s linear infinite}
.logo-rail:hover .logo-rail-track,.logo-rail:focus-within .logo-rail-track{animation-play-state:paused}
.logo-rail img{flex:0 0 auto;width:112px;height:34px;object-fit:contain;object-position:center;
  opacity:.72;filter:grayscale(1);transition:opacity .25s ease,filter .25s ease}
.logo-rail img:hover{opacity:1;filter:grayscale(0)}
@keyframes logo-rail{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.logo-rail.slow .logo-rail-track{animation-duration:52s}
/* On dark sections, knock the marks back to white */
.section-ink .logo-rail img,.logo-rail.on-ink img{filter:grayscale(1) brightness(0) invert(1);opacity:.7}
.section-ink .logo-rail img:hover,.logo-rail.on-ink img:hover{opacity:1}
.section-ink .logo-rail,.logo-rail.on-ink{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
/* Rail used as a standalone band under a hero */
.logo-band{padding:26px 0;border-bottom:1px solid var(--line);background:#fff}
.logo-band .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.logo-band.soft{background:var(--paper)}
@media (max-width:760px){
  .logo-band{padding:18px 0}
  .logo-band .wrap{gap:12px}
  .logo-rail img{width:92px;height:28px}
  .logo-rail-track{gap:32px}
}
@media (prefers-reduced-motion:reduce){
  .logo-rail-track{animation:none;flex-wrap:wrap;width:auto;gap:22px 30px}
  .logo-rail{-webkit-mask-image:none;mask-image:none}
  .logo-rail-track img:nth-child(n+13){display:none}
}

/* Screenshot pairs: show the whole screen, don't crop it */
.photo-pair.screens{align-items:start}
.photo-pair.screens img{aspect-ratio:auto;object-fit:contain;background:#fff}
@media (max-width:760px){.photo-pair.screens{grid-template-columns:1fr}}

.photo-pair.screens.one{grid-template-columns:1fr;max-width:860px}

/* ---------- Call Hub configurator (draft) ---------- */
.cf{display:grid;gap:var(--s5)}
.cf-group{display:grid;gap:10px}
.cf-legend{font-family:var(--mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.cf-opts{display:grid;gap:10px}
@media(min-width:700px){.cf-opts{grid-template-columns:repeat(2,minmax(0,1fr))}.cf .cf-group[aria-label="Call recording"] .cf-opts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cf-opt{display:grid;gap:4px;text-align:left;padding:14px 16px;border:1.5px solid var(--line-strong);border-radius:var(--r2);background:#fff;cursor:pointer;font:inherit;color:inherit;transition:border-color var(--fast),box-shadow var(--fast),background var(--fast)}
.cf-opt:hover{border-color:var(--ink)}
.cf-opt.on{border-color:var(--pink);background:var(--pink-tint);box-shadow:inset 0 0 0 1px var(--pink)}
.cf-name{font-family:var(--display);font-weight:700}
.cf-desc{font-size:13px;color:var(--ink-soft)}
.cf-price{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--pink-text)}
.cf-step{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cf-pm{width:40px;height:40px;border:1.5px solid var(--line-strong);border-radius:var(--r2);background:#fff;font-size:20px;line-height:1;cursor:pointer;color:inherit}
.cf-pm:hover:not(:disabled){border-color:var(--ink)}
.cf-pm:disabled{opacity:.4;cursor:not-allowed}
.cf-count{min-width:2ch;text-align:center;font-family:var(--mono);font-weight:600;font-size:18px}
.cf-sum{border-top:1px solid var(--line);padding-top:var(--s4)}
.cf-lines{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.cf-lines li{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:var(--ink-soft)}
.cf-lines strong{color:var(--ink);font-family:var(--mono);font-size:13px}
.cf-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--display);font-weight:700}
.cf-total strong{font-size:26px}
.cf-total small{font-family:var(--body);font-size:13px;font-weight:500;color:var(--ink-soft)}
.cf-opt{align-content:start;overflow-wrap:break-word;word-break:normal;hyphens:none}
.cf-compact{gap:var(--s4)}
.cf-compact .cf-opt{padding:12px 14px}
.cf-compact .cf-name{font-size:14.5px}
.cf-compact .cf-desc{font-size:12.5px}
.cf-compact .cf-total strong{font-size:22px}
/* Full-width Call Hub panel inside the pricing calculator grid */
.calc-config{grid-column:1/-1;margin:4px 0 2px;padding:20px;background:#fff;
  border:1.5px solid var(--pink);border-radius:var(--r2);cursor:default}
.calc-config[hidden]{display:none}
.calc-config .cc-head{margin-bottom:var(--s4)}
.calc-config .cc-head h3{font-size:17px;margin:0}
.calc-config .cc-head p{margin:4px 0 0;font-size:13.5px;color:var(--ink-soft);max-width:62ch}
/* Options breathe across the full grid width; never squashed into slivers */
.calc-config .cf-opts{grid-template-columns:1fr}
@media(min-width:640px){
  .calc-config .cf-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc-config .cf-group[aria-label="Call recording"] .cf-opts{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:639px){
  .cf .cf-group[aria-label="Call recording"] .cf-opts{grid-template-columns:1fr}
}
.pk-sub{display:block;font-size:12px;color:var(--ink-soft);font-weight:400}
.pk-addon .pk-name{color:var(--ink-soft)}
.rate-tables{display:grid;gap:var(--s6);margin-top:var(--s6)}
@media(min-width:820px){.rate-tables{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rate-table{border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;background:#fff}
.rate-table h3{font-size:16px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--paper)}
.rate-table table{width:100%;border-collapse:collapse}
.rate-table th,.rate-table td{text-align:left;padding:10px 16px;font-size:14px;border-bottom:1px solid var(--line)}
.rate-table th{font-weight:600;color:var(--ink-soft)}
.rate-table td:last-child,.rate-table th:last-child{text-align:right;font-family:var(--mono);font-size:13px}
.rate-table tr:last-child td{border-bottom:0}

/* Call Hub: unlimited users messaging (additive) */
.users-pill{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--pink-tint);border:1px solid var(--pink);font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--pink);margin:0 0 20px 8px}
.users-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pink)}
.noperseat{padding:var(--s7) 0}
.cf-users{margin:10px 0 0;font-size:13px;color:var(--ink-soft)}
.ci-users{display:inline-block;margin-top:8px;padding:4px 10px;border-radius:var(--r-pill);background:var(--pink-tint);color:var(--pink);font-family:var(--mono);font-size:11px;letter-spacing:.05em}
@media(max-width:520px){.users-pill{margin-left:0}}

/* ============================================================
   Draft checkout (/dev only) — guided package builder
   ============================================================ */
.checkout-page .co-header .header-inner { justify-content: space-between; }
.co-head-right { display: flex; align-items: center; gap: 1rem; }
.co-secure { font-size: .8rem; color: var(--muted, #5b6472); }
@media (max-width: 640px) { .co-secure { display: none; } }
.co { padding: 2rem 0 5.5rem; }
.co-wrap { max-width: 1180px; }
/* the step heading is focused programmatically — no ring for mouse users */
.co-h1:focus:not(:focus-visible) { outline: none; }
.co-h1 { font-family: Montserrat, sans-serif; font-size: clamp(1.5rem, 3.6vw, 2.1rem); font-weight: 800; margin: 0 0 .5rem; text-wrap: pretty; }
.co-sub { color: #5b6472; margin: 0 0 1.5rem; max-width: 62ch; text-wrap: pretty; }

/* stepper */
.cst { display: flex; flex-wrap: wrap; gap: .35rem 1.25rem; list-style: none; margin: 0 0 1.75rem; padding: 0; counter-reset: none; }
.cst-i > * { display: flex; align-items: center; gap: .5rem; text-decoration: none; color: #7a8494; font-size: .9rem; font-weight: 600; }
.cst-n { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: #eef0f4; color: #7a8494; font-size: .8rem; }
.cst-i.is-current > * { color: #101828; }
.cst-i.is-current .cst-n { background: var(--pink); color: #fff; }
.cst-i.is-done > * { color: #101828; }
.cst-i.is-done .cst-n { background: #101828; color: #fff; }
@media (max-width: 640px) { .cst-l { display: none; } .cst { gap: .5rem; } }

/* layout */
.co-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 2rem; align-items: start; }
.co-main { padding: 0; }
.co-side { position: sticky; top: 6rem; }
@media (max-width: 960px) { .co-grid { grid-template-columns: 1fr; } .co-side { position: static; order: 2; } }

.co-card { border: 1px solid #e6e8ee; border-radius: .5rem; background: #fff; padding: 1.25rem; margin: 0 0 1rem; }
.cop-top { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.cop-top h2 { margin: 0 0 .25rem; font-size: 1.15rem; }
.cop-top p { margin: 0; color: #5b6472; font-size: .92rem; }
.cop-price { font-family: Montserrat, sans-serif; font-weight: 800; font-size: 1.5rem; white-space: nowrap; }
.cop-price small { display: block; font-size: .7rem; font-weight: 500; color: #7a8494; }
.cop-list { margin: 1rem 0 0; padding-left: 1.1rem; color: #3d4653; font-size: .92rem; display: grid; gap: .25rem; }

/* users */
.cou-head h2 { margin: 0 0 .25rem; font-size: 1.1rem; }
.cou-head p { margin: 0 0 1rem; color: #5b6472; font-size: .92rem; }
.cou-ctrl { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.step-btn { width: 2.5rem; height: 2.5rem; border-radius: .5rem; border: 1px solid #d8dce4; background: #fff; font-size: 1.2rem; cursor: pointer; }
.step-btn:disabled { opacity: .4; cursor: not-allowed; }
.cou-n { display: flex; align-items: baseline; gap: .35rem; min-width: 5.5rem; }
.cou-n strong { font-family: Montserrat, sans-serif; font-size: 1.35rem; }
.cou-n span { color: #7a8494; font-size: .85rem; }
.cou-p { font-weight: 700; font-size: .95rem; }
.cou-note { margin: 1rem 0 0; font-size: .85rem; color: #5b6472; }
/* compact user control: not a primary upsell */
.co-users-compact { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.cuc-inc { font-family: Montserrat, sans-serif; font-weight: 700; font-size: 1.05rem; }
.cuc-toggle { font-size: .85rem; color: var(--pink-text); text-decoration: underline; background: none; border: 0; padding: 0; cursor: pointer; }
.cuc-toggle:hover { color: var(--pink); }
.cuc-panel { margin-top: .75rem; padding-top: .75rem; border-top: 1px solid #e6e8ee; }
.cuc-panel[hidden] { display: none; }
.cuc-hint { margin: 0 0 .6rem; font-size: .85rem; color: #5b6472; }

/* products */
/* Even rows, no ragged holes: fixed 3-up on desktop, 2-up on tablets, 1 on phones */
.co-prods { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 0 0 1.5rem; align-items: stretch; }
@media (max-width: 900px) { .co-prods { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .co-prods { grid-template-columns: 1fr; } }
.co-prod { border: 1px solid #e6e8ee; border-radius: .5rem; padding: 1rem; background: #fff; display: flex; flex-direction: column; gap: .6rem; }
.co-prod.is-on { border-color: var(--pink); box-shadow: 0 0 0 1px var(--pink) inset; }
.co-prod .cop-h { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; }
.co-prod h3 { margin: 0; font-size: 1rem; }
.cop-tag { font-size: .8rem; font-weight: 700; white-space: nowrap; }
.co-prod p { margin: 0; font-size: .9rem; color: #5b6472; }
.co-prod ul { margin: 0; padding-left: 1.05rem; font-size: .85rem; color: #5b6472; }
.co-prod .btn { margin-top: auto; }
.co-callcfg h2 { margin: 0 0 .25rem; font-size: 1.05rem; }
.co-callcfg .cc-sub { margin: 0 0 1rem; font-size: .9rem; color: #5b6472; }

/* nudge */
.co-nudge { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: center; border: 1px solid #f5c6d9; background: #fff5f9; border-radius: .5rem; padding: 1rem; margin: 0 0 1.25rem; }
.co-nudge h3 { margin: 0 0 .25rem; font-size: 1rem; }
.co-nudge p { margin: 0; font-size: .9rem; color: #5b6472; max-width: 52ch; }
.con-act { display: flex; align-items: center; gap: .75rem; }
.con-x { border: 0; background: none; color: #7a8494; font-size: .85rem; text-decoration: underline; cursor: pointer; }

/* integrations */
.co-intgroup { margin: 0 0 1.25rem; }
.co-intgroup h3 { margin: 0 0 .6rem; font-size: .95rem; text-transform: uppercase; letter-spacing: .06em; color: #7a8494; }
.co-ints { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .75rem; }
.co-int { text-align: left; border: 1px solid #e6e8ee; border-radius: .5rem; background: #fff; padding: .85rem; cursor: pointer; display: grid; gap: .3rem; }
.co-int.is-on { border-color: var(--pink); box-shadow: 0 0 0 1px var(--pink) inset; }
.coi-t { display: flex; justify-content: space-between; gap: .5rem; font-weight: 700; font-size: .95rem; }
.coi-tag { font-size: .78rem; color: #7a8494; white-space: nowrap; }
.co-int.is-on .coi-tag { color: var(--pink); }
.coi-d { font-size: .85rem; color: #5b6472; }
.co-free h3 { margin: 0 0 .35rem; font-size: 1rem; }
.co-free p { margin: 0; font-size: .9rem; color: #5b6472; }

/* details form — the fieldset holds the grid, so desktop uses the full width */
.co-form { display: grid; gap: 1rem; }
.co-fields { border: 0; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.co-fields legend { padding: 0; margin: 0 0 .25rem; font-family: Montserrat, sans-serif; font-weight: 700; font-size: .95rem; }
.co-field { margin: 0; display: grid; gap: .35rem; }
.co-fields > .co-field { grid-column: span 2; }
.co-fields > .co-field.half { grid-column: span 1; }
.co-field label { font-size: .85rem; font-weight: 600; }
.co-field .opt { font-weight: 400; color: #9aa3b1; }
.co-field input, .co-field select { width: 100%; padding: .7rem .8rem; border: 1px solid #d8dce4; border-radius: .5rem; font: inherit; background: #fff; }
.co-field input[aria-invalid="true"], .co-field select[aria-invalid="true"] { border-color: #d92d20; }
.co-err { color: #d92d20; font-size: .8rem; }
.co-review { border-top: 1px solid #eef0f4; padding-top: 1rem; }
.co-review h3 { margin: 0 0 .5rem; font-size: .95rem; }
.co-review ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .3rem; font-size: .9rem; }
.co-review li { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; color: #3d4653; }
.cor-name { display: inline-flex; align-items: flex-start; gap: .35rem; min-width: 0; }
.cor-price { flex: none; white-space: nowrap; font-weight: 600; }
.cor-sub { display: block; font-size: .78rem; color: #6b7480; }

.cor-total { display: flex; justify-content: space-between; gap: 1rem; margin: .85rem 0 0; padding-top: .75rem; border-top: 1px solid #eef0f4; font-family: Montserrat, sans-serif; }
.co-check { display: flex; gap: .6rem; align-items: flex-start; font-size: .88rem; color: #3d4653; }
@media (max-width: 640px) { .co-fields { grid-template-columns: 1fr; } .co-fields > .co-field, .co-fields > .co-field.half { grid-column: span 1; } }

/* summary rail */
.co-summary { border: 1px solid #e6e8ee; border-radius: .5rem; background: #fbfbfd; padding: 1.15rem; }
.cs-h { margin: 0 0 .75rem; font-size: 1rem; font-family: Montserrat, sans-serif; }
.cs-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.cs-row { display: flex; justify-content: space-between; align-items: flex-start; gap: .75rem; font-size: .9rem; }
.cs-l { display: grid; gap: .1rem; min-width: 0; }
.cs-name-line { display: flex; align-items: flex-start; gap: .35rem; min-width: 0; }
.cs-name { font-weight: 600; }
.cs-sub { font-size: .78rem; color: #7a8494; }
.cs-p { white-space: nowrap; font-weight: 700; }
.cs-free, .cs-bundled { color: #7a8494; font-weight: 600; font-size: .82rem; }
.cs-bundle .cs-p { color: var(--pink); }
.cs-total { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin: .9rem 0 0; padding-top: .8rem; border-top: 1px solid #e6e8ee; font-family: Montserrat, sans-serif; }
.cs-total strong { font-size: 1.3rem; }
.cs-total small { font-size: .7rem; font-weight: 500; color: #7a8494; }
.cs-save { margin: .5rem 0 0; font-size: .82rem; color: var(--pink); font-weight: 600; }
.cs-reassure { list-style: none; margin: .9rem 0 0; padding: 0; display: grid; gap: .3rem; font-size: .82rem; color: #3d4653; }
.cs-reassure li::before { content: "✓"; color: var(--pink); margin-right: .4rem; font-weight: 700; }
.cs-note { margin: .75rem 0 0; font-size: .76rem; color: #7a8494; }

/* nav + done */
.co-nav { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.5rem 0 0; }
.co-done { text-align: center; padding: 1rem 0 2rem; }
.co-done .co-sub { margin-left: auto; margin-right: auto; }
.cod-tick { width: 3rem; height: 3rem; margin: 0 auto 1rem; border-radius: 50%; background: var(--pink); color: #fff; display: grid; place-items: center; font-size: 1.4rem; }
.cod-next { list-style: none; margin: 0 auto 1.25rem; padding: 0; display: grid; gap: .35rem; font-size: .9rem; color: #3d4653; }
.co-done .co-nav { justify-content: center; }
.co-footer { padding: 2rem 0 6rem; }

/* receipt: included lines, remove controls, value framing */
.cs-row.is-inc .cs-name { font-weight: 500; color: #3d4653; }
.cs-row.is-inc { padding-left: .8rem; border-left: 2px solid #eef0f4; }
.cs-free { color: #0f8a5f; font-weight: 700; font-size: .78rem; letter-spacing: .04em; }
.cs-bundled { color: #7a8494; font-weight: 600; font-size: .82rem; }
.cs-x { position: relative; flex: none; display: inline-grid; place-items: center; width: 1.75rem; height: 1.75rem; margin: -.3rem 0 -.3rem .05rem; border: 1px solid transparent; border-radius: .35rem; background: transparent; color: #7a8494; cursor: pointer; }
.cs-x svg { width: 1rem; height: 1rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cs-x:hover { border-color: #f3b4c8; background: #fff0f6; color: #b42318; }
.cs-x::after { content: attr(data-tip); position: absolute; z-index: 5; left: 50%; bottom: calc(100% + .35rem); transform: translateX(-50%); padding: .25rem .4rem; border-radius: .25rem; background: var(--ink); color: var(--white); font-size: .7rem; line-height: 1; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .15s; }
.cs-x:hover::after, .cs-x:focus-visible::after { opacity: 1; }
.co-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 960px) { .cs-x { width: 2.25rem; height: 2.25rem; margin: -.55rem 0 -.55rem .05rem; } .cs-x svg { width: 1.1rem; height: 1.1rem; } }

/* product card actions */
.cop-act { margin-top: auto; display: flex; align-items: center; gap: .85rem; flex-wrap: wrap; }
.co-prod .cop-act .btn { margin-top: 0; }
.cop-more { font-size: .85rem; color: #5b6472; text-decoration: underline; text-underline-offset: 2px; }
.cop-more:hover { color: var(--hot); }
.co-nudge-sm { padding: .85rem 1rem; }

/* Call Hub — rates beyond the allowance, folded away until wanted */
.cf-usage { display: grid; gap: .6rem; }
.cu-rates summary { font-size: .85rem; cursor: pointer; color: #5b6472; font-weight: 600; }
.cu-list { list-style: none; margin: .5rem 0 0; padding: 0; display: grid; gap: .25rem; font-size: .84rem; max-width: 24rem; }
.cu-list li { display: flex; justify-content: space-between; gap: 1rem; }
.cu-note { margin: .5rem 0 0; font-size: .78rem; color: #7a8494; }

/* Richer nudges + the free website mockup offer */
.co-nudge { align-items: flex-start; }
.con-copy { flex: 1 1 22rem; }
.con-kicker { display: inline-block; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--pink); margin-bottom: .3rem; }
.con-pts { list-style: none; margin: .6rem 0 0; padding: 0; display: grid; gap: .3rem; font-size: .86rem; color: #3d4653; }
.con-pts li { position: relative; padding-left: 1.15rem; }
.con-pts li::before { content: "✓"; position: absolute; left: 0; color: #0f8a5f; font-weight: 700; }
.con-terms { margin: .6rem 0 0 !important; font-size: .8rem !important; color: #7a8494 !important; }
.con-act { flex-wrap: wrap; align-items: center; }
.con-more { font-size: .85rem; font-weight: 600; color: var(--pink); text-decoration: underline; }
.co-offer { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: flex-start; border: 1px solid #d8dce4; background: #fff; border-radius: .5rem; padding: 1.1rem; margin: 0 0 1.25rem; }
.co-offer.is-on { border-color: #a8e0c6; background: #f2fbf6; }
.cof-copy { flex: 1 1 22rem; }
.cof-copy h3 { margin: 0 0 .25rem; font-size: 1rem; }
.cof-copy p { margin: 0; font-size: .9rem; color: #5b6472; max-width: 56ch; }
.cof-kicker { display: inline-block; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #0f8a5f; margin-bottom: .3rem; }
.cof-act { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.co-note-field textarea { width: 100%; padding: .7rem .8rem; border: 1px solid #d8dce4; border-radius: .5rem; font: inherit; background: #fff; resize: vertical; }

/* "learn more, then come back" bar on product pages */
.co-return { position: fixed; inset: auto 0 0 0; z-index: 45; display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; flex-wrap: wrap; padding: .8rem 1.25rem calc(.8rem + env(safe-area-inset-bottom));
  background: #101828; color: #fff; border-top: 1px solid rgba(255,255,255,.12); }
.cor-l { display: grid; }
.cor-l strong { font-family: Montserrat, sans-serif; font-size: .95rem; }
.cor-l span { font-size: .82rem; opacity: .8; }
.cor-a { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.cor-a .btn-outline { border-color: rgba(255,255,255,.5); color: #fff; }
.cor-in { font-size: .85rem; color: #7ee2b8; font-weight: 600; }
.has-return-bar .pkg-tray { display: none; }
.has-return-bar body { padding-bottom: 5rem; }
@media (max-width: 560px) { .co-return { flex-direction: column; align-items: stretch; gap: .5rem; } .cor-a .btn { flex: 1 1 auto; text-align: center; } }

/* mobile total bar, expandable into the full receipt */
.co-mobile-wrap { display: none; }
@media (max-width: 960px) {
  .co-mobile-wrap { display: block; position: fixed; inset: auto 0 0 0; z-index: 40; }
  .co-mobile-sheet { max-height: 60vh; overflow: auto; background: #fff; border-top: 1px solid #e6e8ee; padding: 1rem 1rem 1.25rem;
    box-shadow: 0 -18px 40px rgba(16,24,40,.16); }
  .co-mobile-bar { display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    padding: .85rem 1rem calc(.85rem + env(safe-area-inset-bottom)); border-top: 1px solid #e6e8ee; background: #101828; color: #fff; }
  .cmb-sum { display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: .5rem; border: 0; background: none;
    color: inherit; font: inherit; text-align: left; cursor: pointer; padding: 0; }
  .cmb-k { font-size: .75rem; opacity: .75; grid-column: 1; }
  .cmb-v { font-family: Montserrat, sans-serif; font-weight: 700; grid-column: 1; }
  .cmb-c { grid-column: 2; grid-row: 1 / span 2; font-size: .9rem; opacity: .8; transition: transform .18s ease; }
  .co-mobile-wrap.is-open .cmb-c { transform: rotate(180deg); }
  .cmb-go { border: 0; background: var(--pink); color: #fff; padding: .65rem .9rem; border-radius: .5rem; font: inherit; font-weight: 700;
    font-size: .9rem; white-space: nowrap; cursor: pointer; }
}
@media (prefers-reduced-motion: reduce) { .cmb-c { transition: none; } }

/* ==========================================================================
   27. VISUAL PARITY PASS (draft only)
   Dark brand moments + ambient glow · framed product screens ·
   scroll reveal · hover lift · drag-to-scrub logo rails
   ========================================================================== */

/* --- ambient glow on the dark brand moments ---------------------------- */
.trustbar,
.section-ink,
.prod-hero.tint-ink,
.signup-left,
.everything{position:relative;overflow:hidden;isolation:isolate}
.trustbar::after,
.section-ink::after,
.prod-hero.tint-ink::after,
.signup-left::after,
.everything::after{
  content:"";position:absolute;inset:-30% -10%;z-index:-1;pointer-events:none;
  background:
    radial-gradient(38% 46% at 18% 28%,rgba(209,20,90,.30) 0%,transparent 68%),
    radial-gradient(34% 42% at 82% 74%,rgba(108,43,217,.34) 0%,transparent 70%);
  filter:blur(6px);
  animation:torch-drift 26s ease-in-out infinite alternate;
}
.everything::after{background:
    radial-gradient(40% 50% at 12% 20%,rgba(255,255,255,.22) 0%,transparent 66%),
    radial-gradient(34% 44% at 88% 80%,rgba(14,11,20,.30) 0%,transparent 70%)}
.trustbar > .wrap,.section-ink > .wrap,.prod-hero.tint-ink > .wrap{position:relative;z-index:1}
@keyframes torch-drift{
  from{transform:translate3d(-3%,-2%,0) scale(1)}
  to{transform:translate3d(4%,3%,0) scale(1.08)}
}

/* --- framed product screens ------------------------------------------- */
/* the padding band on the image draws a browser chrome bar, so the real
   screenshots read as a product rather than a flat picture */
.photo-pair.screens img{
  padding:26px 0 0;
  background-color:var(--paper);
  background-repeat:no-repeat;
  background-image:
    radial-gradient(circle at 14px 13px,var(--line-strong) 3.5px,transparent 4.1px),
    radial-gradient(circle at 28px 13px,var(--line-strong) 3.5px,transparent 4.1px),
    radial-gradient(circle at 42px 13px,var(--line-strong) 3.5px,transparent 4.1px);
  border:1px solid var(--line-strong);
  border-radius:var(--r2);
  box-shadow:var(--e2);
  aspect-ratio:auto;
}
.photo-pair.screens figcaption{margin-top:4px}
@media (max-width:600px){
  .photo-pair.screens img{padding-top:20px;
    background-image:
      radial-gradient(circle at 12px 10px,var(--line-strong) 3px,transparent 3.6px),
      radial-gradient(circle at 24px 10px,var(--line-strong) 3px,transparent 3.6px),
      radial-gradient(circle at 36px 10px,var(--line-strong) 3px,transparent 3.6px)}
}

/* --- hover lift on cards ---------------------------------------------- */
@media (hover:hover) and (pointer:fine){
  .extra-card:hover,.price-card:hover,.step-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--e2);
    border-color:var(--line-strong);
  }
  .step-card{transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}
}

/* --- scroll reveal ---------------------------------------------------- */
html.js .reveal-on{opacity:0;transform:translateY(16px);transition:opacity 520ms var(--ease-out),transform 520ms var(--ease-out)}
html.js .reveal-on.in{opacity:1;transform:none}

/* --- drag-to-scrub logo rails ---------------------------------------- */
.logo-rail{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-y}
.logo-rail::-webkit-scrollbar{display:none}
.logo-rail.dragging{cursor:grabbing}
.logo-rail.dragging .logo-rail-track{animation-play-state:paused}
.logo-rail.dragging img{pointer-events:none}

@media (prefers-reduced-motion:reduce){
  .trustbar::after,.section-ink::after,.prod-hero.tint-ink::after,.signup-left::after,.everything::after{animation:none}
  html.js .reveal-on{opacity:1;transform:none;transition:none}
  .extra-card:hover,.price-card:hover,.step-card:hover{transform:none}
}

/* 28. HOME EDITORIAL HERO -------------------------------------------------
   Human first, product proof second. These rules intentionally override the
   older sticky product-led home hero without affecting product-page heroes. */
.hero-editorial{padding:56px 0 64px;background:var(--paper)}
.hero-editorial .wrap{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:64px;align-items:center}
.hero-editorial .hero-copy{position:static;padding:0}
.hero-editorial h1{letter-spacing:0;max-width:11ch}
.hero-editorial .lede{max-width:52ch}
.hero-photo{position:relative;margin:0;min-width:0;aspect-ratio:4/3;border:10px solid var(--white);border-radius:var(--r3);overflow:hidden;box-shadow:var(--e3);transform:rotate(1deg);transition:transform var(--slow) var(--ease-out)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-photo figcaption{position:absolute;left:20px;right:20px;bottom:20px;display:grid;gap:2px;padding:16px 18px;border:1px solid rgba(255,255,255,.55);border-radius:var(--r2);background:rgba(255,255,255,.92);color:var(--ink);box-shadow:var(--e2);backdrop-filter:blur(10px)}
.hero-photo figcaption strong{font-family:var(--display);font-size:16px}
.hero-photo figcaption span{font-size:13px;color:var(--ink-soft)}
.deal-journey .wrap{display:grid;grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr);gap:64px;align-items:start}
.journey-intro{position:sticky;top:calc(var(--header-h) + 28px)}
.deal-journey .hero-visual{max-width:none}
.deal-journey .flow{gap:12px}
@media (hover:hover) and (pointer:fine){.hero-photo:hover{transform:rotate(0)}}
@media (max-width:1024px){
  .hero-editorial .wrap{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:40px}
  .hero-editorial .hero-copy{display:block}
  .deal-journey .wrap{grid-template-columns:minmax(0,1fr);gap:32px}
  .journey-intro{position:static}
  .deal-journey .hero-visual{max-width:760px}
}
@media (max-width:760px){
  .hero-editorial{padding:34px 0 40px}
  .hero-editorial .wrap{display:flex;flex-direction:column;gap:28px}
  .hero-editorial .hero-copy{order:1}
  .hero-editorial .hero-photo{order:2;width:100%;aspect-ratio:16/11;border-width:6px;transform:none}
  .hero-editorial h1{max-width:14ch;font-size:clamp(32px,9.2vw,42px);line-height:1.05}
  .hero-editorial .lede{font-size:16px;max-width:none}
  .hero-editorial .hero-photo{aspect-ratio:16/10}
  .hero-photo figcaption{left:12px;right:12px;bottom:12px;padding:10px 12px}
  .hero-photo figcaption strong{font-size:14px}
  .hero-photo figcaption span{font-size:12px}
  .deal-journey .flow{padding-left:22px}
}

/* 29. SIMPLIFIED DEALER HOMEPAGE ---------------------------------------- */
.simple-head{max-width:720px;margin-bottom:var(--s7)}
.dealer-flow-steps{max-width:900px;margin-left:auto;border-top:1px solid var(--line)}
.dealer-flow-steps li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}
.flow-number,.job-number{font-family:var(--display);font-weight:800;color:var(--pink-text)}
.flow-number{font-size:28px}
.flow-copy{min-width:0}
.flow-state{display:block;font-size:13px;font-weight:700;color:var(--pink-text);margin-bottom:3px}
.flow-copy h3{font-size:20px;letter-spacing:0;margin-bottom:3px}
.flow-copy p{color:var(--ink-soft);font-size:15px}
.flow-action{display:inline-flex;align-items:center;justify-content:center;min-width:112px;min-height:38px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r2);font-weight:600;font-size:13px;background:var(--white)}
.flow-action.is-done{background:var(--pink-tint);border-color:var(--pink-line);color:var(--pink-text)}
.dealer-flow .mock-cap{max-width:900px;margin:14px 0 0 auto}
.core-simple-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:end}
.core-offer{position:relative;display:flex;flex-direction:column;gap:14px;min-width:352px;padding:34px 34px 30px;border-radius:var(--r3);background:linear-gradient(150deg,#1C2029 0%,#151A26 55%,#261B31 100%);color:var(--on-ink);border:1px solid rgba(255,255,255,.09);box-shadow:0 30px 60px -18px rgba(21,26,38,.5),0 0 0 1px rgba(209,20,90,.08)}
.core-offer::after{content:"";position:absolute;inset:-18px -14px -22px;z-index:-1;border-radius:calc(var(--r3) + 14px);background:radial-gradient(60% 60% at 70% 10%,rgba(209,20,90,.18),transparent 70%);filter:blur(22px);pointer-events:none}
.co-label{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-faint)}
.co-price{display:flex;align-items:baseline;gap:8px}
.co-price strong{font-family:var(--display);font-weight:800;font-size:62px;line-height:1;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.co-price small{font-size:14px;color:var(--on-ink-soft)}
.co-list{display:grid;gap:8px;margin:4px 0 10px}
.co-list li{position:relative;padding-left:24px;font-size:14px;color:var(--on-ink-soft)}
.co-list li::before{content:"✓";position:absolute;left:0;color:var(--hot);font-weight:700}
.core-offer .btn{margin-top:4px;width:100%}
/* interactive job showcase */
.job-tabs{margin-top:var(--s7);border:1px solid var(--line);border-radius:var(--r3);background:var(--white);overflow:hidden;box-shadow:var(--e2)}
.job-tablist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.job-tab{position:relative;display:flex;flex-direction:column;gap:8px;align-items:flex-start;text-align:left;padding:22px 26px 20px;background:var(--paper);border:0;border-bottom:1px solid var(--line);cursor:pointer;font:inherit;color:var(--ink-soft);transition:background .18s ease,color .18s ease}
.job-tab+.job-tab{border-left:1px solid var(--line)}
.job-tab::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--grad);opacity:0;transition:opacity .18s ease}
.job-tab:hover{background:var(--white);color:var(--ink)}
.job-tab.is-active{background:var(--white);color:var(--ink)}
.job-tab.is-active::after{opacity:1}
.job-tab .job-number{display:block;font-size:12px}
.job-tab-title{font-family:var(--display);font-weight:700;font-size:17px;line-height:1.25;letter-spacing:0}
.job-tab.is-active .job-tab-title{font-weight:800}
.job-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;align-items:center;padding:34px 34px 34px 34px}
.job-panel[hidden]{display:none}
.job-panel.is-fading{opacity:0}
.job-panel{transition:opacity .22s ease}
.job-panel-copy h3{font-size:26px;letter-spacing:-.01em;margin-bottom:10px}
.job-panel-copy p{color:var(--ink-soft);font-size:16px;margin-bottom:18px}
.job-panel-copy a{font-weight:700;font-size:14px}
.job-panel-shot{margin:0}
@media (prefers-reduced-motion:reduce){.job-panel{transition:none}.job-panel.is-fading{opacity:1}}

.core-includes{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding:24px 0 14px}
.core-includes strong{font-family:var(--display);margin-right:8px}
.core-includes span{position:relative;padding-left:18px;color:var(--ink-soft);font-size:14px}
.core-includes span::before{content:"✓";position:absolute;left:0;color:var(--pink);font-weight:700}
.core-small{color:var(--ink-faint);font-size:13px;margin-top:20px}
.core-conversion-head{max-width:780px;margin:0 auto var(--s7);text-align:center}
.core-conversion-head .sub{max-width:660px;margin-left:auto;margin-right:auto}
.core-conversion-grid{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.62fr);gap:24px;align-items:start}
.core-conversion-grid .core-offer{min-width:0;height:auto;padding:38px 34px 32px}
.core-conversion-grid .co-summary{color:var(--on-ink-soft);font-size:15px;margin-top:-4px;padding:0;border:0;border-radius:0;background:transparent}
.co-reassure{display:block;text-align:center;color:var(--on-ink-faint);font-size:12px;margin-top:0}
.core-jobs{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);align-items:center;gap:0;border:1px solid var(--line);border-radius:var(--r3);background:var(--white);box-shadow:var(--e2);overflow:hidden}
.core-job-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.core-job-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:14px;align-items:start;padding:25px 24px;border-bottom:1px solid var(--line)}
.core-job-list li:last-child{border-bottom:0}
.core-job-number{font-family:var(--display);font-size:13px;font-weight:800;color:var(--pink-text);padding-top:3px}
.core-job-list h3{font-size:18px;line-height:1.25;letter-spacing:0;margin:0 0 5px}
.core-job-list p{font-size:14px;line-height:1.5;color:var(--ink-soft);margin:0}
.core-job-list a{align-self:center;white-space:nowrap;font-size:13px;font-weight:700}
.core-job-list a span{margin-left:3px}
.core-product-shot{display:flex;flex-direction:column;justify-content:center;min-width:0;margin:0;padding:26px;background:var(--paper);border-left:1px solid var(--line)}
.core-product-shot .device{box-shadow:var(--e2)}
.core-product-shot figcaption{margin-top:12px;color:var(--ink-faint);font-size:12px;text-align:center}
.phone-simple{display:flex;flex-direction:column;min-height:100%;padding:28px 20px;background:var(--white)}
.phone-brand{font-family:var(--display);font-weight:800;font-size:14px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.phone-label{align-self:flex-start;margin:22px 0 14px;font-size:12px;font-weight:700;color:var(--pink-text)}
.phone-customer,.phone-car{display:grid;gap:2px;padding:16px 0;border-bottom:1px solid var(--line)}
.phone-customer strong,.phone-car strong{font-family:var(--display);font-size:16px}
.phone-customer small,.phone-car small{color:var(--ink-faint)}
.phone-car .sf-vrm{justify-self:start;margin-bottom:8px}
.phone-simple blockquote{margin:22px 0;color:var(--ink-soft);font-size:15px}
.phone-reply{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:auto;border-radius:var(--r2);background:var(--pink);color:var(--white);font-weight:700}
.setup-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.setup-line li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:28px 26px 28px 0}
.setup-line li+li{padding-left:26px;border-left:1px solid var(--line)}
.setup-line>li>span{font-family:var(--display);font-weight:800;color:var(--pink-text)}
.setup-line h3{font-size:20px;letter-spacing:0;margin-bottom:6px}
.setup-line p{font-size:14px;color:var(--ink-soft)}
.setup-reassure{max-width:900px;margin-top:24px;color:var(--ink-soft)}
.extra-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:var(--s7)}
.extra-groups article{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px;background:var(--card,#fff);border:1px solid var(--line);border-radius:.5rem;box-shadow:0 1px 2px rgba(21,26,38,.05);transition:box-shadow .25s ease,transform .25s ease}
.extra-groups article:hover{transform:translateY(-2px);box-shadow:0 10px 28px -14px rgba(21,26,38,.18)}
.extra-groups h3{font-size:22px;letter-spacing:0;margin:0}
.extra-groups article>p{color:var(--ink-soft);font-size:15px;margin:0}
.extra-price{display:inline-flex;align-self:flex-start;font-weight:700;color:var(--pink-text);background:rgba(209,20,90,.08);border:1px solid rgba(209,20,90,.22);border-radius:999px;padding:4px 12px;font-size:12.5px;letter-spacing:.02em;white-space:nowrap}
.extra-groups nav{display:flex;flex-direction:column;gap:6px;margin-top:8px;border-top:1px solid var(--line);padding-top:12px}
.extra-groups nav a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;margin:0 -12px;border-radius:.5rem;font-size:14px;font-weight:400;color:inherit;text-decoration:none;transition:background .15s ease}
.extra-groups nav a:hover{background:rgba(21,26,38,.04)}
.xp-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.xp-info strong{font-size:14px;font-weight:700}
.xp-info span{font-size:13px;color:var(--ink-soft);line-height:1.4}
.xp-price{font-weight:800;font-size:15px;color:var(--ink);white-space:nowrap}
.xp-price::after{content:" /mo";font-size:11px;font-weight:600;color:var(--ink-soft)}
.extras-bridge{text-align:center;color:var(--ink-soft);font-size:15px;margin:var(--s5,32px) auto 0;max-width:640px}
@media (max-width:760px){
  .dealer-flow-steps{margin:0}
  .dealer-flow-steps li{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:16px 0}
  .flow-number{font-size:22px}
  .flow-copy h3{font-size:17px;margin-bottom:2px}
  .flow-copy p{font-size:14px}
  .flow-action{grid-column:2;justify-self:start;min-width:0;min-height:32px;font-size:12.5px;margin-top:8px}
  .core-simple-head,.setup-line,.extra-groups{grid-template-columns:minmax(0,1fr)}
  .core-offer{min-width:0;width:100%;padding:24px 22px;gap:12px}
  .co-price strong{font-size:46px}
  .co-list li{font-size:14px}
  .job-tabs{margin-top:var(--s6)}
  .job-tablist{grid-template-columns:minmax(0,1fr)}
  .job-tab{flex-direction:row;align-items:baseline;gap:10px;padding:15px 18px}
  .job-tab+.job-tab{border-left:0}
  .job-tab::after{left:0;right:auto;top:0;bottom:0;width:3px;height:auto}
  .job-tab .job-number{font-size:12px;margin-bottom:0}
  .job-tab-title{font-size:16px}
  .job-panel{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 18px 24px}
  .job-panel-shot{order:-1}
  .job-panel-copy h3{font-size:21px;margin-bottom:6px}
  .job-panel-copy p{font-size:15px;margin-bottom:14px}
  .core-conversion-head{text-align:left;margin-bottom:28px}
  .core-conversion-head .h2 br{display:none}
  .core-conversion-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .core-conversion-grid .core-offer{padding:28px 24px}
  .core-jobs{grid-template-columns:minmax(0,1fr)}
  .core-product-shot{order:-1;padding:18px;border-left:0;border-bottom:1px solid var(--line)}
  .core-job-list li{grid-template-columns:26px minmax(0,1fr);gap:10px;padding:19px 18px}
  .core-job-list h3{font-size:17px}
  .core-job-list p{font-size:14px}
  .core-job-list a{grid-column:2;justify-self:start;margin-top:5px}
  .core-small{font-size:12.5px;line-height:1.55}

  .core-includes{display:grid;gap:8px}
  .setup-line li,.setup-line li+li{padding:22px 0;border-left:0;border-top:1px solid var(--line)}
  .setup-line li:first-child{border-top:0}
  .extra-groups article{padding:22px 20px}
  .extra-groups nav a{padding:10px 10px;margin:0 -10px}
  .xp-info span{font-size:13px}
}

/* app section — realistic phone mock (v16) */
.device-phone{position:relative;width:100%;max-width:322px;margin:0 auto;padding:11px;border-radius:44px;
  background:linear-gradient(160deg,#3A3739 0%,#1B1A1B 46%,#302D2F 100%);
  box-shadow:var(--e3),0 0 0 1px rgba(255,255,255,.06) inset}
.device-phone::after{content:"";position:absolute;inset:11px;border-radius:34px;pointer-events:none;
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset}
.dp-screen{position:relative;display:flex;flex-direction:column;height:596px;border-radius:34px;overflow:hidden;background:var(--paper)}
.dp-island{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:84px;height:22px;border-radius:999px;background:#121112;z-index:3}
.dp-status{display:flex;align-items:center;justify-content:space-between;padding:9px 20px 7px;background:var(--white);
  font-size:11px;font-weight:700;font-family:var(--display);color:var(--ink)}
.dp-status-icons{display:flex;align-items:center;gap:5px}
.dp-status-icons i{display:block;background:var(--ink);border-radius:1px}
.dp-sig{width:13px;height:9px;clip-path:polygon(0 66%,18% 66%,18% 100%,0 100%,0 66%,27% 40%,45% 40%,45% 100%,27% 100%,27% 40%,55% 16%,73% 16%,73% 100%,55% 100%,55% 16%,82% 0,100% 0,100% 100%,82% 100%)}
.dp-wifi{width:11px;height:9px;border-radius:2px;opacity:.85;clip-path:polygon(50% 100%,0 34%,50% 0,100% 34%)}
.dp-batt{width:19px;height:9px;border-radius:2px;opacity:.9}
.dp-head{padding:8px 14px 12px;background:var(--white);border-bottom:1px solid var(--line)}
.dp-head-top{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px}
.dp-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:var(--grad);color:var(--white);font-family:var(--display);font-weight:800;font-size:12px}
.dp-who{display:grid;min-width:0}
.dp-who strong{font-family:var(--display);font-size:14px;line-height:1.2}
.dp-who small{font-size:10.5px;color:var(--ink-faint);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-chan{padding:3px 8px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);
  font-size:9.5px;font-weight:700;color:var(--ink-soft);white-space:nowrap}
.dp-car{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:11.5px;color:var(--ink-soft)}
.dp-car .sf-vrm{flex:none}
.dp-thread{flex:1 1 auto;display:flex;flex-direction:column;gap:9px;padding:14px 14px 10px;overflow:hidden;background:var(--paper)}
.dp-day{display:flex;align-items:center;gap:8px;margin-bottom:2px;color:var(--ink-faint);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.dp-day::before,.dp-day::after{content:"";flex:1 1 auto;height:1px;background:var(--line)}
.dp-msg{position:relative;max-width:84%;padding:9px 12px 20px;border-radius:14px;font-size:12.5px;line-height:1.45}
.dp-meta{position:absolute;right:10px;bottom:6px;font-size:9px;opacity:.6}
.dp-in{align-self:flex-start;border-bottom-left-radius:4px;background:var(--white);border:1px solid var(--line);color:var(--ink)}
.dp-out{align-self:flex-end;border-bottom-right-radius:4px;background:var(--grad);color:var(--white);box-shadow:var(--e-pink)}
.dp-card{display:grid;gap:3px;padding:12px;max-width:88%}
.dp-card-label{font-family:var(--display);font-weight:800;font-size:12.5px}
.dp-card-sub{font-size:10.5px;opacity:.85}
.dp-card-btn{margin-top:7px;padding:8px 10px;border-radius:var(--r2);background:var(--white);color:var(--pink-text);
  font-family:var(--display);font-weight:800;font-size:11.5px;text-align:center}
.dp-reply{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:center;
  padding:10px 14px 16px;background:var(--white);border-top:1px solid var(--line)}
.dp-input{padding:9px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);font-size:12px;color:var(--ink-faint)}
.dp-send{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--grad);color:var(--white);font-size:12px}
.dp-home{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:104px;height:4px;border-radius:999px;background:rgba(14,11,20,.22)}
@media (max-width:900px){
  .device-phone{max-width:296px;padding:10px;border-radius:40px}
  .dp-screen{height:548px}
}
@media (max-width:760px){
  .app-visual{max-width:300px}
  .device-phone{max-width:300px}
  .dp-screen{height:600px}
  .dp-chan{display:none}
  .dp-car{font-size:11px}
  .dp-msg{max-width:88%;font-size:12px}
}

/* ---- Essentials one-line strip (homepage, under the logo band) ---- */
.ess-strip{padding:22px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.ess-strip .wrap{display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap;justify-content:space-between}
.ess-strip-lead{margin:0;font-size:1.02rem;color:var(--ink);max-width:34ch}
.ess-strip-lead strong{font-family:var(--display)}
.ess-strip-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.ess-strip-list li{font-size:.92rem;color:var(--ink-soft);background:#fff;border:1px solid var(--line);border-radius:.5rem;padding:7px 12px}
.ess-strip-list li::before{content:"✓";color:var(--pink-text);font-weight:700;margin-right:7px}
@media (max-width:860px){
  .ess-strip{padding:18px 0}
  .ess-strip .wrap{flex-direction:column;align-items:flex-start;gap:12px}
  .ess-strip-lead{max-width:none;font-size:.98rem}
  .ess-strip-list li{font-size:.86rem;padding:6px 10px}
}

/* 30. ESSENTIALS-FIRST HOMEPAGE ------------------------------------------ */
.ess-strip-strong{padding:34px 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ess-strip-strong .wrap{display:grid;gap:24px}
.ess-strip-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end}
.ess-strip-top .kicker-sm{grid-column:1/-1;margin-bottom:-10px}
.ess-strip-main h2{max-width:820px;font-size:clamp(26px,3vw,38px);line-height:1.08;letter-spacing:0}
.ess-strip-main p{max-width:760px;margin-top:10px;color:var(--ink-soft);font-size:var(--t-lede)}
.ess-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ess-value-grid article{display:grid;gap:6px;min-height:132px;padding:18px;border:1px solid var(--line);border-radius:.5rem;background:var(--paper)}
.ess-value-grid strong{font-family:var(--display);font-size:16px;line-height:1.2;color:var(--ink)}
.ess-value-grid strong::before{content:"✓";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:var(--pink-tint);color:var(--pink-text);font-family:var(--body);font-size:13px}
.ess-value-grid span{font-size:14px;line-height:1.45;color:var(--ink-soft)}
.ess-core{background:var(--white)}
.ess-core .core-conversion-head{max-width:900px;margin:0 0 var(--s7);text-align:left}
.ess-core .core-conversion-head .sub{max-width:760px;margin-left:0;margin-right:0}
.ess-core-grid{display:grid;grid-template-columns:minmax(300px,.55fr) minmax(0,1.45fr);gap:24px;align-items:start}
.ess-core-grid .core-offer{position:sticky;top:calc(var(--header-h) + 24px);min-width:0;border-radius:.5rem;padding:38px 34px 32px}
.ess-core-grid .co-summary{color:var(--on-ink-soft);font-size:15px;margin:-2px 0 0;padding:0;border:0;border-radius:0;background:transparent}
.ess-core-content{display:grid;gap:18px;min-width:0}
.ess-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ess-pillar{display:flex;flex-direction:column;gap:14px;min-width:0;padding:28px;border:1px solid var(--line);border-radius:.5rem;background:var(--paper)}
.ess-pillar-kicker{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-text)}
.ess-pillar h3{font-size:clamp(23px,2vw,30px);letter-spacing:0}
.ess-pillar p{color:var(--ink-soft);font-size:15px;line-height:1.55;margin:0}
.ess-pillar ul{display:grid;gap:8px;margin-top:2px}
.ess-pillar li{position:relative;padding-left:22px;color:var(--ink-soft);font-size:14px;line-height:1.45}
.ess-pillar li::before{content:"";position:absolute;left:0;top:.48em;width:10px;height:10px;border-radius:50%;background:var(--pink)}
.ess-pillar a{margin-top:auto;font-weight:700;font-size:14px}
.ess-usecases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ess-usecases article{display:grid;gap:5px;padding:18px;border:1px solid var(--pink-line);border-radius:.5rem;background:var(--pink-tint)}
.ess-usecases strong{font-family:var(--display);font-size:16px;color:var(--ink)}
.ess-usecases span{font-size:14px;line-height:1.45;color:var(--ink-soft)}
.ess-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ess-outcomes span{position:relative;padding:11px 12px 11px 32px;border:1px solid var(--line);border-radius:.5rem;background:var(--white);font-weight:600;font-size:13.5px;line-height:1.3;color:var(--ink)}
.ess-outcomes span::before{content:"✓";position:absolute;left:12px;top:10px;color:var(--pink-text);font-weight:800}
.ess-compare-section{background:var(--white)}
.compare-ess caption{caption-side:bottom;padding:10px 0 0;color:var(--ink-faint);font-size:12px;text-align:left}
.extras-secondary{border-top:1px solid var(--line)}
.extras-secondary .sub{max-width:760px}
.extras-secondary-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-top:var(--s6)}
.everything-secondary{padding-top:0}
.everything-secondary .everything{opacity:.96}
@media (max-width:1024px){
  .ess-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ess-core-grid{grid-template-columns:minmax(0,1fr)}
  .ess-core-grid .core-offer{position:relative;top:auto;max-width:520px}
}
@media (max-width:760px){
  .ess-strip-strong{padding:26px 0}
  .ess-strip-top{grid-template-columns:minmax(0,1fr);gap:14px}
  .ess-strip-top .btn{width:100%}
  .ess-strip-main h2{font-size:26px}
  .ess-strip-main p{font-size:15.5px}
  .ess-value-grid,.ess-pillars,.ess-usecases,.ess-outcomes{grid-template-columns:minmax(0,1fr)}
  .ess-value-grid article{min-height:0;padding:16px}
  .ess-core .core-conversion-head{margin-bottom:28px}
  .ess-core .core-conversion-head .h2{font-size:30px}
  .ess-core-grid .core-offer{max-width:none;padding:28px 24px}
  .ess-pillar{padding:22px 20px}
  .ess-pillar ul{gap:7px}
  .ess-usecases article,.ess-outcomes span{padding-top:14px;padding-bottom:14px}
  .ess-outcomes span{padding-left:34px}
  .extras-secondary-cta .btn{width:100%}
}

/* Keep the conversion-critical homepage sections visible on direct jumps and mobile sticky CTA scrolls. */
html.js .ess-strip-strong.reveal-on,
html.js .dealer-flow.reveal-on,
html.js .ess-core.reveal-on,
html.js .app-section.reveal-on,
html.js .setup-simple.reveal-on,
html.js .ess-compare-section.reveal-on,
html.js .trustbar.reveal-on,
html.js .extras-secondary.reveal-on,
html.js .everything-secondary.reveal-on,
html.js #start.reveal-on{opacity:1;transform:none;transition:none}
@media (max-width:700px){.compare-ess td:not(.us)::before{content:"Separate tools"}}

/* 34. SHOWROOM AND WEBSITE FINANCE ROUTES */
.finance-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}.finance-routes article{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:24px;border:1px solid var(--line);border-radius:.5rem;background:var(--white)}.finance-route-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:.5rem;background:var(--pink-tint);color:var(--pink-text);font:700 13px var(--mono)}.finance-routes small{font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--pink-text)}.finance-routes h3{font-size:20px;margin:6px 0 8px}.finance-routes p{font-size:14px;color:var(--ink-soft)}.route-steps{display:flex;align-items:center;gap:8px;margin-top:18px;font:700 11px var(--display);color:var(--ink)}.route-steps i{flex:1;height:1px;background:var(--pink-line)}.finance-join{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:12px;padding:14px 18px;border:1px solid var(--pink-line);border-radius:.5rem;background:var(--pink-tint);font-size:13px}.finance-join span{color:var(--ink-soft)}.finance-join b{font-family:var(--display);color:var(--ink)}
@media (max-width:760px){.finance-routes{grid-template-columns:1fr}.finance-routes article{grid-template-columns:38px 1fr;padding:18px;gap:12px}.finance-route-icon{width:38px;height:38px}.finance-routes h3{font-size:18px}.finance-join{align-items:flex-start;flex-direction:column;gap:4px}.route-steps{font-size:10px}.payout-line span:nth-of-type(2){white-space:nowrap}}

/* 31. ESSENTIALS SALES STORY --------------------------------------------- */
.essentials-hero .hero-assurance{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;color:var(--ink-soft);font-size:13px;font-weight:600}.hero-assurance span::before{content:"✓";color:var(--pink-text);margin-right:6px}.switch-section{padding-bottom:72px}.switch-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s8);align-items:start}.switch-copy{font-size:var(--t-lede);color:var(--ink-soft);max-width:720px}.one-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:52px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.one-grid article{display:grid;gap:7px;padding:26px 24px}.one-grid article+article{border-left:1px solid var(--line)}.one-grid b{font:700 20px/1.2 var(--display);color:var(--ink)}.one-grid span{font-size:14px;color:var(--ink-soft)}.section-head{max-width:780px;margin-bottom:var(--s7)}.workflow-line{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:34px}.workflow-line article{position:relative;display:grid;grid-template-columns:30px 1fr;gap:12px;padding-right:20px}.workflow-line article:not(:last-child)::after{content:"";position:absolute;top:15px;left:30px;right:0;height:1px;background:var(--pink-line)}.workflow-line>article>span{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pink);color:var(--on-ink);font-weight:700}.workflow-line small,.audience-label{font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--pink-text)}.workflow-line h3{font-size:17px;margin:6px 0}.workflow-line p{font-size:13px;color:var(--ink-soft)}.product-stage{margin:0;border:1px solid var(--line);border-radius:.5rem;overflow:hidden;background:var(--white);box-shadow:var(--e2)}.product-stage img{width:100%;max-height:580px;object-fit:cover;object-position:top}.product-stage figcaption{display:flex;gap:12px;justify-content:center;padding:16px;color:var(--ink-soft);font-size:14px}.story-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--s8);align-items:end;margin-bottom:var(--s7)}.audience-tabs{border:1px solid var(--line);border-radius:.5rem;background:var(--paper);overflow:hidden}.audience-tablist{display:inline-grid;grid-template-columns:1fr 1fr;gap:4px;margin:18px 0 0 18px;padding:4px;background:var(--white);border:1px solid var(--line);border-radius:.5rem}.audience-tablist button{min-width:130px;padding:10px 18px;border-radius:6px;font-weight:700;color:var(--ink-soft)}.audience-tablist button.is-active{background:var(--ink);color:var(--on-ink)}.audience-panel{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:40px;align-items:center;padding:28px}.audience-panel h3{font-size:32px;margin:12px 0}.audience-panel p{color:var(--ink-soft)}.audience-panel ul,.package-grid ul{display:grid;gap:8px;margin-top:18px}.audience-panel li,.package-grid li{position:relative;padding-left:22px}.audience-panel li::before,.package-grid li::before{content:"✓";position:absolute;left:0;color:var(--pink-text);font-weight:700}.audience-panel figure{margin:0;border:1px solid var(--line);overflow:hidden;border-radius:.5rem;background:var(--white)}.audience-panel figure img{width:100%}.capability-ribbon{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.capability-ribbon span{padding:9px 12px;border:1px solid var(--line);border-radius:.5rem;font-size:13px;font-weight:600}.optional-note{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:20px;padding:18px 20px;background:var(--pink-tint);border:1px solid var(--pink-line);border-radius:.5rem}.optional-note span{font-size:14px;color:var(--ink-soft)}.optional-note a{font-weight:700;white-space:nowrap}.finance-stage{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:24px;align-items:stretch}.finance-stage figure{margin:0;border-radius:.5rem;overflow:hidden;border:1px solid var(--line);background:var(--white);box-shadow:var(--e2)}.finance-stage figure img{width:100%;height:100%;object-fit:cover;object-position:top}.finance-benefits{display:grid}.finance-benefits article{padding:19px 0;border-bottom:1px solid var(--line)}.finance-benefits article:first-child{padding-top:0}.finance-benefits b{font-family:var(--display);font-size:17px}.finance-benefits p{font-size:14px;color:var(--ink-soft);margin-top:5px}.payout-line{display:flex;align-items:center;gap:12px;margin-top:32px;font:700 13px var(--display)}.payout-line i{flex:1;height:1px;background:var(--pink-line)}.app-real{margin:0;position:relative}.app-real img{width:100%;border:8px solid var(--ink);border-radius:.5rem;box-shadow:var(--e3)}.app-real figcaption{margin-top:12px;text-align:center;color:var(--ink-soft);font-size:13px}.package-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:40px;align-items:start}.included-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.included-columns article{padding-top:20px;border-top:3px solid var(--pink)}.included-columns h3{font-size:21px}.included-columns li{font-size:14px;color:var(--ink-soft)}.also-included{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px}.also-included b,.also-included span{padding:9px 12px;border-radius:.5rem}.also-included b{background:var(--ink);color:var(--on-ink)}.also-included span{background:var(--white);border:1px solid var(--line);font-size:13px;font-weight:600}.package-grid .core-offer{min-width:0;border-radius:.5rem}.proof-success .wrap{display:grid;gap:72px}.proof-feature,.success-compact{display:grid;grid-template-columns:minmax(240px,.6fr) minmax(0,1.4fr);gap:50px;align-items:center}.proof-number{font:800 clamp(72px,10vw,130px)/1 var(--display);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.proof-feature h2,.success-compact h2{font-size:clamp(28px,3vw,40px);margin-bottom:14px}.proof-feature p,.success-compact p{color:var(--ink-soft);font-size:var(--t-lede)}.proof-feature small{color:var(--ink-faint)}.success-compact{padding-top:54px;border-top:1px solid var(--line)}.success-compact .team-avatars{justify-content:center}.faq-section .faq{max-width:900px}.addons-quiet{padding:54px 0}.addons-quiet .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.addons-quiet h2{font-size:28px}.addons-quiet p{color:var(--ink-soft);margin-top:8px}.final-banner{background:var(--grad);color:var(--on-ink)}.final-banner .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.final-banner h2,.final-banner .kicker-sm{color:var(--on-ink)}.final-banner> .wrap>div:last-child{display:grid;gap:10px;text-align:center}.final-banner span{font-size:13px}.signup-card{margin-top:var(--s7)}
[hidden]{display:none!important}.package-grid .co-summary{margin:0;padding:0;border:0;background:transparent;color:var(--on-ink-soft);font-size:15px}html.js .essentials-hero.reveal-on,html.js .switch-section.reveal-on,html.js .workflow-section.reveal-on,html.js .enquiry-story.reveal-on,html.js .finance-story.reveal-on,html.js .app-section.reveal-on,html.js .package-close.reveal-on,html.js .proof-success.reveal-on,html.js .setup-simple.reveal-on,html.js .faq-section.reveal-on,html.js .addons-quiet.reveal-on,html.js #start.reveal-on,html.js .final-banner.reveal-on{opacity:1;transform:none;transition:none}
@media(max-width:900px){.switch-grid,.story-head,.proof-feature,.success-compact{grid-template-columns:1fr;gap:24px}.one-grid,.workflow-line{grid-template-columns:repeat(2,1fr)}.one-grid article:nth-child(3){border-left:0}.one-grid article:nth-child(n+3){border-top:1px solid var(--line)}.workflow-line{gap:26px}.audience-panel,.finance-stage,.package-grid{grid-template-columns:1fr}.package-grid .core-offer{max-width:520px}.optional-note{grid-template-columns:1fr}.final-banner .wrap{align-items:flex-start}}
@media(max-width:600px){.hero-assurance{display:grid!important}.one-grid,.workflow-line,.included-columns{grid-template-columns:1fr}.one-grid article+article{border-left:0;border-top:1px solid var(--line)}.workflow-line article{padding:0}.workflow-line article:not(:last-child)::after{top:30px;bottom:-26px;left:15px;width:1px;height:auto}.audience-tablist{display:grid;margin:14px 14px 0;width:calc(100% - 28px)}.audience-tablist button{min-width:0}.audience-panel{padding:22px 16px}.audience-panel h3{font-size:25px}.capability-ribbon{display:grid}.optional-note{padding:16px}.payout-line{display:grid;grid-template-columns:1fr}.payout-line i{display:none}.payout-line span{padding:10px;border-left:3px solid var(--pink);background:var(--white)}.also-included{display:grid;grid-template-columns:1fr}.also-included b,.also-included span{width:100%}.proof-number{font-size:72px}.addons-quiet .wrap,.final-banner .wrap{display:grid}.addons-quiet .btn,.final-banner .btn{width:100%}.product-stage figcaption{display:grid}.final-banner{padding:64px 0}.final-banner h2{font-size:30px}}

/* 32. DEALER-FRIENDLY CUSTOMER JOURNEY PREVIEWS -------------------------- */
.journey-preview{padding:0;background:var(--paper)}
.journey-person,.finance-customer{display:flex;align-items:center;gap:13px;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--white)}
.journey-person>div,.finance-customer>div{display:grid;gap:2px;min-width:0}
.journey-person strong,.finance-customer strong{font-family:var(--display);font-size:16px}
.journey-person small,.finance-customer small{color:var(--ink-soft);font-size:12px}
.journey-avatar{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--pink-tint);border:1px solid var(--pink-line);color:var(--pink-text);font:800 13px var(--display)}
.journey-live,.finance-approved{margin-left:auto;padding:7px 10px;border-radius:999px;background:var(--pink-tint);color:var(--pink-text);font-size:11px;font-weight:700;white-space:nowrap}
.journey-moments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:28px 22px 30px}
.journey-moments article{position:relative;display:grid;align-content:start;gap:7px;padding:0 20px}
.journey-moments article+article{border-left:1px solid var(--line)}
.moment-icon,.lead-source{display:grid;place-items:center;width:36px;height:36px;margin-bottom:5px;border-radius:50%;background:var(--ink);color:var(--on-ink);font:800 11px var(--display)}
.moment-wa{background:var(--success)}.moment-finance{background:var(--pink)}.moment-done{background:var(--purple)}
.journey-moments small{color:var(--pink-text);font-size:11px;font-weight:700}
.journey-moments strong{font-family:var(--display);font-size:15px;line-height:1.35;color:var(--ink)}
.journey-moments p{font-size:12.5px;line-height:1.5;color:var(--ink-soft)}
.solo-preview,.team-preview{min-height:360px!important;display:grid!important;place-items:center;padding:24px!important;background:var(--pink-tint)!important}
.mini-phone{width:min(100%,390px);padding:12px;border:7px solid var(--ink);border-radius:28px;background:var(--paper);box-shadow:var(--e2)}
.mini-phone-top{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 14px;font-size:10px;color:var(--ink-soft)}
.mini-phone-top b{font:700 12px var(--display);color:var(--ink)}
.lead-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:.5rem;background:var(--white)}
.lead-alert .journey-avatar{width:38px;height:38px}.lead-alert div{display:grid;gap:3px}.lead-alert small{color:var(--pink-text);font-size:10px;font-weight:700}.lead-alert strong{font-size:13px}.lead-alert p{font-size:12px;color:var(--ink-soft)}.alert-time{font-size:10px;color:var(--ink-faint)}
.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.quick-actions span{padding:9px 5px;border:1px solid var(--line);border-radius:6px;background:var(--white);text-align:center;font-size:10px;font-weight:700;color:var(--ink)}.quick-actions span:first-child{background:var(--pink);color:var(--on-ink);border-color:transparent}
.next-card{display:grid;gap:3px;margin-top:10px;padding:14px;border-left:3px solid var(--pink);background:var(--white)}.next-card small,.next-card span{font-size:10px;color:var(--ink-soft)}.next-card strong{font-size:13px}
.team-preview{place-items:stretch;background:var(--white)!important}
.team-preview header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.team-preview header div{display:grid;gap:3px}.team-preview header small{font-size:11px;color:var(--pink-text);font-weight:700}.team-preview header strong{font-size:16px}.team-preview header>span{padding:7px 10px;border-radius:999px;background:var(--pink-tint);font-size:11px;font-weight:700;color:var(--pink-text)}
.team-leads{display:grid}.team-leads article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.team-leads article>div{display:grid;gap:3px}.team-leads strong{font-size:13px}.team-leads small{font-size:11px;color:var(--ink-soft)}.team-leads article>b{font-size:11px;color:var(--ink-soft)}
.lead-source{width:34px;height:34px}.source-m{background:var(--purple)}.source-web{background:var(--pink)}.lead-status{min-width:54px;padding:6px 8px;border-radius:999px;background:var(--paper);text-align:center;font-size:10px;color:var(--ink-soft)}.status-hot{background:var(--pink-tint);color:var(--pink-text)}.status-new{background:var(--success-tint);color:var(--success)}
.team-preview footer{padding-top:16px;color:var(--pink-text);font-size:12px;font-weight:700}
.finance-preview{display:grid;align-content:start;padding:0!important;background:var(--paper)!important}
.quote-card{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:20px}.quote-card>div{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:.5rem;background:var(--white)}.quote-card small{font-size:11px;color:var(--ink-soft)}.quote-card strong{font:700 18px var(--display)}.quote-card .monthly{grid-column:1/-1;grid-template-columns:1fr auto;align-items:end;border-color:var(--pink-line);background:var(--pink-tint)}.quote-card .monthly small{grid-column:1/-1;color:var(--pink-text);font-weight:700}.quote-card .monthly strong{font-size:30px}.quote-card .monthly span{font-size:11px;color:var(--ink-soft);padding-bottom:4px}
.finance-progress{display:grid;gap:0;padding:0 20px 18px}.finance-progress article{position:relative;display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:center;padding:9px 0}.finance-progress article:not(:last-child)::after{content:"";position:absolute;left:14px;top:37px;bottom:-3px;width:1px;background:var(--pink-line)}.finance-progress article>span{display:grid;z-index:1;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--white);border:1px solid var(--line);font-size:11px;font-weight:800}.finance-progress .complete>span,.finance-progress .current>span{background:var(--pink);border-color:var(--pink);color:var(--on-ink)}.finance-progress div{display:grid;gap:1px}.finance-progress strong{font-size:13px}.finance-progress small{font-size:10px;color:var(--ink-soft)}
.customer-message{margin:0 20px 20px;padding:12px 14px;border-radius:.5rem;background:var(--white);color:var(--ink-soft);font-size:12px;font-style:italic}
.app-phone-preview{display:grid;justify-items:center}.app-phone-preview img{display:none}.phone-shell{position:relative;width:min(100%,340px);min-height:650px;padding:13px 12px 18px;border:9px solid var(--ink);border-radius:36px;background:var(--paper);box-shadow:var(--e3);overflow:hidden}.phone-island{position:absolute;z-index:2;top:8px;left:50%;width:90px;height:23px;transform:translateX(-50%);border-radius:20px;background:var(--ink)}.phone-status{display:flex;justify-content:space-between;padding:5px 8px 16px;font-size:9px;font-weight:700}.phone-shell header{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 4px 14px;border-bottom:1px solid var(--line)}.phone-shell header .journey-avatar{width:37px;height:37px}.phone-shell header div{display:grid;gap:1px}.phone-shell header strong{font-size:13px}.phone-shell header small{font-size:9px;color:var(--ink-soft)}.phone-back{font-size:25px;color:var(--pink-text)}
.phone-thread{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:16px 4px}.day-label{align-self:center;padding:4px 8px;border-radius:999px;background:var(--white);font-size:9px;color:var(--ink-soft)}.bubble{max-width:82%;padding:10px 12px;border-radius:12px;font-size:11px;line-height:1.45}.bubble.customer{background:var(--white);border-bottom-left-radius:3px}.bubble.dealer{align-self:flex-end;background:var(--pink);color:var(--on-ink);border-bottom-right-radius:3px}.bubble-time{font-size:8px;color:var(--ink-faint)}.dealer-time{align-self:flex-end}.phone-finance{display:grid;align-self:stretch;gap:3px;margin:6px 0;padding:13px;border:1px solid var(--pink-line);border-radius:.5rem;background:var(--pink-tint)}.phone-finance small{font-size:9px;color:var(--pink-text);font-weight:700}.phone-finance strong{font:800 18px var(--display)}.phone-finance span{font-size:9px;color:var(--ink-soft)}.phone-next{display:grid;grid-template-columns:auto 1fr;gap:9px;align-self:stretch;align-items:center;margin-top:5px;padding:11px;background:var(--white);border-left:3px solid var(--pink)}.phone-next>span{color:var(--pink-text);font-weight:800}.phone-next div{display:grid}.phone-next small{font-size:8px;color:var(--ink-soft)}.phone-next strong{font-size:10px}.phone-reply{display:flex;justify-content:space-between;align-items:center;margin:0 4px;padding:10px 11px;border:1px solid var(--line);border-radius:999px;background:var(--white);font-size:10px;color:var(--ink-faint)}.phone-reply b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--pink);color:var(--on-ink)}.phone-home{width:90px;height:4px;margin:14px auto 0;border-radius:3px;background:var(--ink)}
@media(max-width:900px){.journey-moments{grid-template-columns:repeat(2,1fr);gap:0}.journey-moments article{padding:18px}.journey-moments article:nth-child(3){border-left:0;border-top:1px solid var(--line)}.journey-moments article:nth-child(4){border-top:1px solid var(--line)}.app-phone-preview{margin-top:12px}}
@media(max-width:600px){.journey-person,.finance-customer{padding:14px}.journey-live{display:none}.journey-moments{grid-template-columns:1fr;padding:8px 14px 14px}.journey-moments article{grid-template-columns:36px 1fr;padding:16px 0;column-gap:12px}.journey-moments article+article,.journey-moments article:nth-child(3),.journey-moments article:nth-child(4){border-left:0;border-top:1px solid var(--line)}.journey-moments .moment-icon{grid-row:1/5}.journey-moments small,.journey-moments strong,.journey-moments p{grid-column:2}.solo-preview,.team-preview{min-height:0!important;padding:14px!important}.mini-phone{border-width:6px;border-radius:24px}.team-leads article{grid-template-columns:auto minmax(0,1fr) auto;gap:9px}.team-leads article>b{display:none}.lead-status{min-width:48px}.quote-card{padding:14px}.finance-progress{padding:0 14px 14px}.customer-message{margin:0 14px 14px}.phone-shell{min-height:620px}.app-phone-preview{max-width:none}}
@media(prefers-reduced-motion:reduce){.journey-preview *,.solo-preview *,.team-preview *,.finance-preview *,.app-phone-preview *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 33. HOMEPAGE ALIGNMENT AND COMPLETE ADD-ONS ---------------------------- */
.essentials-hero h1,.switch-section h2,.workflow-section h2,.story-head h2,.package-close h2,.proof-success h2,.setup-simple h2,.faq-section h2,.addons-quiet h2,.final-banner h2{text-wrap:pretty}
.switch-copy p,.section-head .sub,.story-head .sub,.workflow-line h3,.workflow-line p,.journey-moments strong,.journey-moments p,.finance-benefits p,.included-columns li,.proof-success p,.setup-line p,.faq summary,.faq p{text-wrap:pretty}
.one-grid article,.workflow-line article,.journey-moments article,.finance-benefits article,.included-columns article{min-width:0}
.one-grid article{align-content:start}
.workflow-line h3{min-height:2.5em}
.journey-moments strong{min-height:2.7em}
.finance-benefits{grid-template-rows:repeat(4,minmax(0,1fr))}
.finance-benefits article{display:grid;align-content:center}
.included-columns article{display:flex;flex-direction:column}
.included-columns article ul{flex:1}
.setup-line li{align-content:start}
.addons-quiet{padding:72px 0}
.addons-intro{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end!important}
.addons-intro>div{max-width:760px}
.addons-intro h2{font-size:clamp(30px,3vw,42px);line-height:1.08}
.addons-intro p:not(.kicker-sm){max-width:660px;font-size:var(--t-lede);line-height:1.6}
.addons-quiet .addon-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:34px;align-items:stretch}
.addon-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;min-height:92px;padding:18px 20px;border:1px solid var(--line);border-radius:.5rem;background:var(--white);color:var(--ink);text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.addon-list>a:hover{border-color:var(--pink-line);box-shadow:var(--e2);transform:translateY(-1px)}
.addon-list>a>span{display:grid;gap:4px;min-width:0}
.addon-list strong{font:700 17px/1.25 var(--display)}
.addon-list span>small{font:400 13.5px/1.45 var(--body);color:var(--ink-soft);text-wrap:pretty}
.addon-list>a>b{display:grid;justify-items:end;color:var(--pink-text);font:800 19px/1 var(--display);white-space:nowrap}
.addon-list>a>b small{margin-top:4px;color:var(--ink-faint);font:600 10px/1 var(--body)}
.addons-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-soft)}
.addons-foot a{font-weight:700;white-space:nowrap}
@media(max-width:900px){
  .workflow-line h3,.journey-moments strong{min-height:0}
  .addons-intro{grid-template-columns:1fr}
  .addons-intro .btn{justify-self:start}
}
@media(max-width:600px){
  html{scroll-padding-bottom:84px}
  body{padding-bottom:72px}
  .workflow-line h3,.journey-moments strong{min-height:0}
  .addons-quiet{padding:56px 0}
  .addons-intro h2{font-size:30px}
  .addons-intro p:not(.kicker-sm){font-size:15.5px}
  .addons-intro .btn{width:100%}
  .addons-quiet .addon-list{grid-template-columns:1fr;gap:8px;margin-top:26px}
  .addon-list>a{min-height:0;padding:16px;gap:12px}
  .addon-list strong{font-size:16px}
  .addon-list span>small{font-size:13px}
  .addon-list>a>b{font-size:17px}
  .addons-foot{align-items:flex-start;flex-direction:column;gap:8px}
}

/* =========================================================================
   34. ADD-ON LEARN MORE ROWS · SIGN UP vs BOOK A DEMO
   ========================================================================= */
.addons-quiet .addon-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:34px;align-items:stretch}
.addon-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;min-height:92px;padding:18px 20px;border:1px solid var(--line);border-radius:.5rem;background:var(--white);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.addon-row:hover{border-color:var(--pink-line);box-shadow:var(--e2);transform:translateY(-1px)}
.addon-row>span{display:grid;gap:4px;min-width:0}
.addon-row strong{font:700 17px/1.25 var(--display)}
.addon-row strong a{color:var(--ink);text-decoration:none}
.addon-row strong a:hover{color:var(--pink-text)}
.addon-row span>small{font:400 13.5px/1.45 var(--body);color:var(--ink-soft);text-wrap:pretty}
.addon-row>b{display:grid;justify-items:end;color:var(--pink-text);font:800 19px/1 var(--display);white-space:nowrap}
.addon-row>b small{margin-top:4px;color:var(--ink-faint);font:600 10px/1 var(--body)}
.addon-more{align-self:center;padding:9px 14px;border:1px solid var(--line);border-radius:.5rem;background:var(--paper);color:var(--ink);font:700 13px/1 var(--body);text-decoration:none;white-space:nowrap}
.addon-more:hover{border-color:var(--pink);color:var(--pink-text)}
.link-demo{white-space:nowrap}
.hero-ctas .link-inline{align-self:center;font-weight:700;color:var(--ink-soft);text-decoration:none;white-space:nowrap}
.hero-ctas .link-inline:hover{color:var(--pink-text)}
.final-banner .banner-alt{color:var(--on-ink);font-size:13px;font-weight:700;text-decoration:underline}
.core-offer .co-reassure a{color:var(--on-ink);text-decoration:underline}
@media(max-width:900px){.addons-quiet .addon-list{grid-template-columns:1fr}}
@media(max-width:600px){
  .addons-quiet .addon-list{grid-template-columns:1fr;gap:8px;margin-top:26px}
  .addon-row{grid-template-columns:minmax(0,1fr) auto;min-height:0;padding:16px;gap:10px 12px}
  .addon-row strong{font-size:16px}
  .addon-row span>small{font-size:13px}
  .addon-row>b{font-size:17px}
  .addon-more{grid-column:1/-1;justify-self:start;padding:8px 12px}
  .hero-ctas .link-inline{justify-self:start}
}

/* 35. CHECKOUT DEALERSHIP LOOKUP */
.co-lookup { grid-column: 1 / -1; }
.co-lookup .col-row { display: flex; gap: 8px; }
.co-lookup .col-row input { flex: 1; min-width: 0; }
.co-lookup .col-row .btn { white-space: nowrap; flex-shrink: 0; }
.co-lookup .col-status { margin: 6px 0 0; font-size: 13px; color: var(--muted, #5b6270); }
@media (max-width: 600px) { .co-lookup .col-row { flex-direction: column; } .co-lookup .col-row .btn { width: 100%; } }

/* 36 · ONBOARDING CALL BOOKING */
.co-booking{grid-column:1/-1;border:1px solid hsl(var(--border,220 13% 88%));border-radius:.5rem;padding:16px;background:linear-gradient(135deg,rgba(209,20,90,.05),rgba(108,43,217,.05))}
.bk-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}
.bk-icon{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--pink),var(--purple));font-size:16px}
.bk-title{margin:0;font-family:Montserrat,sans-serif;font-weight:700;font-size:16px}
.bk-sub{margin:2px 0 0;font-size:13px;opacity:.75;text-wrap:pretty}
.bk-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.bk-day{flex:none;width:58px;padding:8px 0;border:1px solid rgba(0,0,0,.14);border-radius:.5rem;background:#fff;display:flex;flex-direction:column;align-items:center;gap:1px;font:inherit;font-size:11px;cursor:pointer;color:inherit}
.bk-day strong{font-size:18px;font-family:Montserrat,sans-serif}
.bk-day.is-on,.bk-time.is-on{border-color:var(--pink);background:var(--pink);color:#fff}
.bk-group{margin-top:12px}
.bk-glabel{display:block;font-size:12px;font-weight:600;opacity:.7;margin-bottom:6px}
.bk-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px}
.bk-time{padding:8px 0;border:1px solid rgba(0,0,0,.14);border-radius:.5rem;background:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer;color:inherit}
.bk-day:hover,.bk-time:hover{border-color:var(--hot)}
.bk-day:focus-visible,.bk-time:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.bk-summary{margin:12px 0 0;font-size:13px}
.bk-clear{background:none;border:0;color:var(--pink);text-decoration:underline;cursor:pointer;font:inherit;padding:0 0 0 4px}
.co-booking{min-width:0;max-width:100%;box-sizing:border-box}.co-fields{min-width:0}
.co-main,.co-form{min-width:0}
fieldset.co-fields{min-width:0;min-inline-size:0}
.co-fields{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:640px){.co-fields{grid-template-columns:minmax(0,1fr)}.co-fields>.co-booking{grid-column:auto}}
.co-form{grid-template-columns:minmax(0,1fr)}

/* ---------- Mobile only (<1024px), v1-index backup page. Added by the mobile pass, 7 Oct 2026. ---------- */
/* Unlinked backup of the old homepage (loads styles.css only). Minimal fixes: 16px inputs, 44px taps,
   nothing under 12px. Scoped with body:not(.v2t):has(.phone-thread); .phone-thread exists only on v1-index. */
@media (max-width:1023px){
  /* 16px inputs: stops iOS zooming into the demo form */
  body:not(.v2t):has(.phone-thread) .form-grid input,
  body:not(.v2t):has(.phone-thread) .form-grid select,
  body:not(.v2t):has(.phone-thread) .form-grid textarea{font-size:16px}
  /* 44px tap targets on stand-alone links and small buttons */
  body:not(.v2t):has(.phone-thread) .header-cta .btn-sm,
  body:not(.v2t):has(.phone-thread) .addon-more{min-height:44px;display:inline-flex;align-items:center}
  body:not(.v2t):has(.phone-thread) .hero-ctas .link-inline,
  body:not(.v2t):has(.phone-thread) .optional-note > a,
  body:not(.v2t):has(.phone-thread) a.banner-alt,
  body:not(.v2t):has(.phone-thread) #extras .wrap > a,
  body:not(.v2t):has(.phone-thread) .wrap > a[href="/pricing"]{display:inline-flex;align-items:center;min-height:44px}
  body:not(.v2t):has(.phone-thread) .co-reassure > a,
  body:not(.v2t):has(.phone-thread) .addon-row strong > a{display:inline-block;padding:13px 0;margin:-13px 0}
  /* labels and mock-UI micro text (8px to 11px) raised to 12px */
  body:not(.v2t):has(.phone-thread) :is(.kicker-sm,.t-label,.co-label,.audience-label,.journey-live,.finance-approved,
    .footer-badges span,footer h5,.moment-icon,.journey-moments small,.journey-preview small,.route-steps span,
    .quote-card small,.monthly small,.monthly span,.finance-progress span,.finance-progress small,
    .mini-phone-top span,.lead-alert small,.alert-time,.quick-actions span,.next-card small,.next-card span,
    .phone-status span,.phone-shell header small,.day-label,.bubble,.bubble-time,.phone-finance small,.phone-finance span,
    .phone-next small,.phone-next strong,.phone-reply span,.phone-reply b,.addon-row b small,
    .workflow-line small,article:has(> .finance-route-icon) small){font-size:12px}
}
@media (max-width:1023px){
  /* v1-index: 44px consent buttons, sticky bar hidden and page locked while the old menu is open */
  body:not(.v2t):has(.phone-thread) #cc-main .cm__btn{min-height:44px}
  body:not(.v2t):has(.phone-thread):has(#mobileMenu.open) .mobile-cta{visibility:hidden}
  html:has(body:not(.v2t) .phone-thread):has(#mobileMenu.open){overflow:hidden}
  html:has(#mobileMenu.open) body:not(.v2t):has(.phone-thread){overflow:clip}
  body:not(.v2t):has(.phone-thread) #mobileMenu.open{max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}
}
