
:root{--black:var(--night);--paper:#F3F0E9;--violet:#6e11f0;--lime:var(--lav);--ink:var(--paper-text);--line:#CBC7BE;--dark-line:var(--line);--muted:var(--sec)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.7 Manrope,'Manrope',sans-serif}img{display:block;max-width:100%;height:auto}p{margin:0 0 24px;max-width:68ch}p:last-child{margin-bottom:0}h1,h2,h3{font-family:'Manrope',sans-serif,sans-serif;text-transform: none;margin:0;text-wrap:balance}h1{font-size:clamp(60px,6.6vw,96px);line-height:.9;letter-spacing:-.045em;font-weight:900;max-width:15ch;margin:24px 0 32px}h2{font-size:clamp(40px,4.6vw,66px);line-height:.97;letter-spacing:-.035em;font-weight:700;max-width:min(22ch,1120px);margin:16px 0 32px}h3{font-size:28px;line-height:1.08;letter-spacing:-.015em;margin:0 0 24px}strong{font-weight:700}.shell{width:min(1248px,calc(100% - 80px));margin-inline:auto}.section{padding-block:104px}.dark{background:var(--black);color:var(--text)}.paper{background:var(--paper)}.eyebrow{font:500 11px/1.6 'IBM Plex Mono','Courier New',monospace;letter-spacing:.08em;text-transform: none;color:var(--violet)}.dark .eyebrow{color:var(--lav)}.brand-row{display:flex;justify-content:space-between;align-items:center;gap:32px;min-height:104px;border-bottom:1px solid var(--dark-line)}.wordmark{width:118px}.brand-row .eyebrow{color:var(--muted)}.hero{padding-bottom:88px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:64px;padding-top:64px;align-items:center}.hero-grid>*,.split>*,.founder-grid>*,.product>*,.terms>*,.proof-grid>*,.faq-grid>*,.closing-bottom>*{min-width:0}.lead{font-size:18px;line-height:1.7}.hero-copy .lead{max-width:60ch}.action{margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:56px;padding:17px 22px;background:var(--violet);border:1px solid var(--violet);color:white;font:500 12px/1.5 'IBM Plex Mono',monospace;letter-spacing:.035em;text-transform: none;text-decoration:none}.button span{font:24px/1 'Manrope',sans-serif}.button:hover{background:#5900CC;border-color:#5900CC}.button:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:5px}.dark .button:focus-visible{outline-color:var(--lav)}.note{font-size:13px;line-height:1.7}.action .note{margin-top:16px;max-width:47ch;color:var(--paper-sec)}.dark .action .note{color:var(--muted)}.hero-offer{border:1px solid var(--dark-line);box-shadow:12px 12px 0 #171A20;background:var(--surface)}.credential{display:grid;grid-template-columns:136px minmax(0,1fr);align-items:center;gap:20px;padding:28px;border-bottom:1px solid var(--dark-line)}.partner{width:136px;background:white}.credential p{font-size:14px;line-height:1.65}.offer-teaser{padding:32px}.offer-teaser .eyebrow{margin-bottom:24px}.value{font:700 34px/1.12 'Manrope',sans-serif;letter-spacing:-.01em}.offer-teaser .note{color:#C6CAD1}.logo-strip{background:#FAF8F3;padding:28px 0;border-bottom:1px solid var(--line)}.logo-strip .shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);align-items:center;gap:32px}.logo-strip .eyebrow{color:var(--paper-sec)}.logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:24px}.logo-grid>div{min-height:64px;display:flex;align-items:center;justify-content:center}.logo-grid img{width:88px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px}.standout{font-weight:600;border-left:3px solid var(--violet);padding-left:24px}.product{margin-top:72px;border-top:1px solid var(--line);padding-top:64px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px}.product h2{max-width:18ch}.founder-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center}figure{margin:0}.portrait{width:100%;aspect-ratio:1;object-fit:contain}figcaption{padding:22px 0;border-bottom:1px solid var(--dark-line);display:flex;justify-content:space-between;align-items:center;gap:16px}.founder-note{padding-top:24px;border-top:1px solid var(--dark-line);color:#C6CAD1}.offer-intro{max-width:850px}.offer-intro h2{max-width:22ch}.included{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line)}.included-card{padding:32px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:24px;background:#FAF8F3}.included-card+li{border-left:1px solid var(--line)}.included-card strong{display:block;font:700 28px/1.1 'Manrope',sans-serif;text-transform: none;margin-bottom:16px}.step{font:600 36px/1 'Manrope',sans-serif;color:var(--violet)}.combined{background:var(--black);color:var(--text);padding:28px 32px}.combined p{max-width:none;font-size:20px}.combined strong{color:var(--lav)}.terms{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;margin-top:48px}.terms h3{font-size:34px;max-width:20ch}.deadline{border-top:1px solid var(--line);padding-top:24px;font-size:15px}.offer-action{padding-top:24px;border-top:1px solid var(--line)}.proof-section{background:#E7E3DA}.proof-section h2{max-width:22ch}.proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}.proof-card{padding:28px;background:#FAF8F3;border:1px solid var(--line);display:flex;flex-direction:column}.proof-brand{height:82px;display:flex;align-items:flex-start;margin-bottom:24px;border-bottom:1px solid var(--line)}.proof-brand img{width:88px;margin-top:8px}.type-mark{font:600 23px/1.2 'Manrope',sans-serif;display:block}.type-mark span{display:block;font:500 12px/1.6 Manrope,sans-serif;margin-top:4px}.proof-card h3{font-size:25px}.proof-card p{font-size:15px}.proof-card blockquote{margin:0 0 24px;padding-top:24px;border-top:2px solid var(--violet)}.proof-card blockquote p{font-size:17px}.proof-card .attribution{margin-top:auto;font-size:13px;font-weight:600}.case-label{margin-top:auto;padding-top:40px}.migration{padding-bottom:80px}.migration-copy p:first-child{font-weight:600}.faq{padding-top:0}.faq-grid{border-top:1px solid var(--line);padding-top:64px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}.faq h2{font-size:48px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font-weight:700;line-height:1.5;min-height:64px}summary::-webkit-details-marker{display:none}summary:after{content:'+';flex:0 0 20px;font:400 26px/1 'Manrope',sans-serif;color:var(--violet)}details[open] summary:after{content:'−'}details>div{padding:0 32px 24px 0;font-size:15px}.closing{border-top:6px solid var(--lav)}.closing-rule{border-bottom:1px solid var(--dark-line);padding-bottom:24px;margin-bottom:40px}.closing h2{font-size:clamp(48px,6vw,84px);max-width:22ch}.closing-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:96px}.closing-bottom .action{margin-top:0}.closing-bottom .lead{max-width:48ch}
@media(min-width:1500px){.section{padding-block:120px}}
@media(max-width:1100px){.shell{width:calc(100% - 48px)}.hero-grid{gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}h1{font-size:72px}.credential{grid-template-columns:100px minmax(0,1fr);padding:20px;gap:16px}.partner{width:100px}.offer-teaser{padding:24px}.split,.product,.founder-grid,.terms,.faq-grid{gap:40px}.proof-grid{gap:12px}.proof-card{padding:24px}.section{padding-block:80px}.faq{padding-top:0}}
@media(max-width:849px){.shell{width:calc(100% - 40px)}.brand-row{min-height:88px}.hero-grid{grid-template-columns:minmax(0,1fr);padding-top:40px;gap:40px}.hero-copy{max-width:680px}h1{max-width:18ch}.hero-offer{box-shadow:none;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.credential{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-bottom:0;border-right:1px solid var(--dark-line);padding:24px}.partner{width:128px}.value{font-size:30px}.logo-strip .shell{grid-template-columns:minmax(0,1fr);gap:16px}.split,.product,.founder-grid,.terms,.faq-grid,.closing-bottom{grid-template-columns:minmax(0,1fr);gap:24px}.founder-grid{gap:40px}.founder figure{max-width:480px}.product{margin-top:48px;padding-top:48px}.included-card{grid-template-columns:minmax(0,1fr);gap:16px;padding:24px}.proof-grid{grid-template-columns:minmax(0,1fr);gap:20px}.proof-card{padding:32px}.proof-brand{height:64px}.proof-card h3{font-size:30px}.proof-card .attribution{margin-top:0}.proof-card p{max-width:68ch}.faq h2{font-size:44px}.closing-bottom{gap:32px}.section{padding-block:72px}.faq{padding-top:0}h2{font-size:48px}}
@media(max-width:680px){.shell{width:calc(100% - 30px)}.brand-row{min-height:78px}.wordmark{width:108px}.brand-row .eyebrow{max-width:18ch;font-size:9px;text-align:right}.hero{padding-bottom:48px}h1{font-size:clamp(44px,12.2vw,58px);line-height:.93;max-width:19ch;margin-top:20px}.lead{font-size:17px}.hero-grid{padding-top:32px}.button{width:100%;gap:16px;padding:17px 18px;font-size:11px}.hero-offer{grid-template-columns:minmax(0,1fr)}.credential{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;padding:24px;border-right:0;border-bottom:1px solid var(--dark-line)}.partner{width:112px}.credential p{font-size:13px}.offer-teaser{padding:24px}.value{font-size:32px}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.logo-grid>div{min-height:72px;border:1px solid #E7E3DA}.section{padding-block:64px}h2{font-size:42px}.product h2{max-width:22ch}.included{grid-template-columns:minmax(0,1fr)}.included-card{grid-template-columns:32px minmax(0,1fr);gap:16px;padding:24px 20px}.included-card+li{border-left:0;border-top:1px solid var(--line)}.step{font-size:28px}.included-card strong{font-size:25px}.combined{padding:24px}.combined p{font-size:18px}.terms{gap:24px;margin-top:32px}.deadline{margin-bottom:8px}.proof-grid{margin-top:32px}.proof-card{padding:24px}.proof-card h3{font-size:27px}.faq{padding-top:0}.faq-grid{padding-top:48px}.faq h2{font-size:42px}summary{font-size:16px;gap:16px}details>div{padding-right:0}.closing h2{font-size:48px}.closing-rule{margin-bottom:32px}figcaption{align-items:flex-start;flex-direction:column;gap:4px}.eyebrow{font-size:10px}.action .note{max-width:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.skip-link{position:absolute;top:-100px;left:16px;z-index:1000;padding:12px;background:var(--violet);color:#fff}.skip-link:focus{top:16px}

/* CLCK visual refresh. The September 2026 site brief supersedes the old
   system-font display treatment. Shared rules also cover existing inner pages. */
@font-face {
  font-family: 'Manrope';
  src: url('/fonts/manrope.a30ddcd34970.woff2') format('woff2');
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('/fonts/plex-mono-400.08949f728dc5.woff2') format('woff2');
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('/fonts/plex-mono-600.0d1f0b8d0722.woff2') format('woff2');
  font-style: normal;
  font-weight: 600 800;
  font-display: swap;
}
:root {
  --night: #070b14;
  --surface: #0c1422;
  --elev: #111b2d;
  --line: rgba(166,199,229,.16);
  --text: #f3f7ff;
  --sec: #a9b9cb;
  --violet: #6e11f0;
  --lav: #b495ff;
  --paper: #f3f0e9;
  --paper-text: #07111d;
  --paper-sec: #3f5368;
  /* Existing route vocabulary maps to the same palette. */
  --black: var(--night);
  --panel: var(--surface);
  --panel-2: var(--surface);
  --violet-bright: var(--lav);
  --muted: var(--sec);
  --ink: var(--paper-text);
  --paper-2: var(--paper);
  --bg: var(--night);
  --bg-deep: var(--surface);
  --surface-light: var(--paper);
  --surface-card: var(--paper);
  --surface-dark-card: var(--surface);
  --surface-muted: #e7e3da;
  --text-soft: var(--paper-sec);
  --text-inverse: var(--text);
  --accent: var(--violet);
  --accent-strong: var(--lav);
  --accent-text: var(--lav);
  --accent-soft: rgba(110,17,240,.08);
  --line-light: rgba(7,17,29,.18);
  --border-light: var(--line-light);
  --heading: 'Manrope', sans-serif;
  --body: 'Manrope', sans-serif;
  --mono: 'IBM Plex Mono', monospace;
  --gutter: clamp(16px, 4vw, 40px);
  --shell: min(1200px, calc(100% - var(--gutter) * 2));
  --max: 1200px;
  --radius: 18px;
  --shadow: none;
  --section-space: clamp(64px, 7.5vw, 112px);
}
html, body { font-family: var(--body); }
body { font-size:17px; font-weight:500; line-height:1.6; color:var(--text); background:var(--night); }
.container, .shell { width:var(--shell); max-width:1200px; margin-inline:auto; }
h1, h2, h3, .h1, .h2 {
  font-family:var(--heading) !important;
  text-transform:none !important;
  min-width:0;
  max-width:100%;
  overflow-wrap:normal !important;
  word-break:normal;
  hyphens:none;
  text-wrap:balance !important;
}
h1, .h1 { font-size:clamp(44px,5.3vw,76px) !important; font-weight:800 !important; line-height:1 !important; letter-spacing:-.045em !important; }
h2, .h2 { font-size:clamp(32px,3.7vw,52px) !important; font-weight:800 !important; line-height:1.05 !important; letter-spacing:-.04em !important; }
h3 { font-size:clamp(20px,2vw,26px) !important; font-weight:750; line-height:1.2 !important; letter-spacing:-.02em !important; }
p, li, blockquote { font-size:17px; line-height:1.6; }
p { max-width:66ch; }
small, .small, .footer-meta, .footer-disclaimer, .blog-card-meta, .blog-article-meta,
.blog-newsletter-note, .strategy-reassurance, .strategy-form-note { font-size:14px !important; line-height:1.5; }
.section-code, .eyebrow, .section-kicker, .card-badge, .credential-label,
.change-number, .service-number, .resource-badge, .directory-badge, .status-label {
  font-family:var(--mono); font-size:12px !important; font-weight:600;
  line-height:1.4; letter-spacing:.1em; text-transform:uppercase;
}
.section-code, .eyebrow, .section-kicker-light, .card-badge, .change-number { color:var(--lav); }
.section, .page-hero, .service-hero, .blog-hero, .legal-hero, .contact-hero,
.support-hero, .resource-hero, .case-study-hero, .section-white, .acq-proof,
.acq-routes, .acq-faqs, .blog-section, .article-section, .legal-section,
.contact-section, .resource-section, .acq-pillars, .acq-framework-dark,
.home-proof-highlight-dark, .acq-bottom-cta, .section-dark, .dark-section,
.bottom-cta { padding-block:var(--section-space); }
.section-heading-row { grid-template-columns:minmax(0,1fr); gap:16px; margin-bottom:44px; }
.section-heading-row .section-code { margin:0; }
.section-heading, .h2 { max-width:900px; }
:where(.page-hero,.service-hero,.blog-hero,.contact-hero,.resource-hero,.case-study-hero) h1 { max-width:22ch; }
:where(.hero-copy,.lead,.intro-copy,.section-subtitle) { max-width:680px; font-size:17px; line-height:1.6; }
.button, .button-acq, .button-acq-secondary, .button-acq-inverse,
.header-cta, .lead-magnet-form button, .blog-newsletter-native-form button,
.hubspot-form-shell input[type='submit'], .clck-form-step-button, .hs-button {
  border-radius:999px !important; min-height:48px;
  font-family:var(--mono) !important; font-size:13px !important; font-weight:600;
  line-height:1.35; letter-spacing:.04em; text-transform:none; padding:14px 22px;
}
.button-primary, .button-acq, .header-cta, .lead-magnet-form button,
.blog-newsletter-native-form button { background:var(--violet); border-color:var(--violet); color:#fff; }
.button-secondary, .button-acq-secondary { background:transparent; border:1px solid var(--lav); color:var(--lav); }
.button-secondary:hover, .button-acq-secondary:hover { background:var(--elev); border-color:var(--lav); color:var(--text); }
.text-link { font-family:var(--mono); font-size:13px; font-weight:600; line-height:1.4; letter-spacing:.04em; text-transform:none; color:var(--lav); }
:where(.light,.section-white,.acq-proof,.acq-routes,.acq-faqs,.resource-section,.article-section,.blog-section,.contact-section) { color:var(--paper-text); }
:where(.light,.section-white,.acq-proof,.acq-routes,.acq-faqs,.resource-section,.article-section,.blog-section,.contact-section) :where(.section-code,.eyebrow,.section-kicker,.card-badge,.text-link,.signal,.testimonial-stars) { color:var(--violet); }
:where(.light,.section-white,.acq-proof,.acq-routes,.acq-faqs,.resource-section,.article-section,.blog-section,.contact-section) :where(.button-secondary,.button-acq-secondary) { border-color:var(--violet); color:var(--violet); }
.site-header { background:rgba(7,11,20,.96); }
.header-inner { grid-template-columns:auto minmax(0,1fr) auto; gap:24px; }
.header-location { font-size:14px; }
.site-nav { gap:16px; font-size:13px; font-weight:600; line-height:1.3; letter-spacing:.04em; text-transform:none; }
.site-nav .button { padding-inline:18px; }
.nav-toggle { border-radius:999px; }
.hero { padding:var(--section-space) 0 64px; }
.homepage-human .hero-grid { grid-template-columns:minmax(0,1.55fr) minmax(0,.8fr); gap:56px; align-items:start; }
.homepage-human h1 { max-width:760px; }
.homepage-human .hero-copy { margin-top:28px; color:var(--sec); font-size:17px; line-height:1.65; }
.homepage-human .homepage-help { padding:8px 0 8px 28px; border-left:1px solid var(--line); }
.homepage-human .homepage-help h2 { font-size:24px !important; line-height:1.2 !important; letter-spacing:-.02em !important; margin-bottom:20px; }
.homepage-help li, .homepage-help p { font-size:16px; color:var(--sec); }
.credential-rail { margin-top:56px; gap:24px; }
.credential-rail strong { font-size:14px; line-height:1.5; font-weight:600; }
.client-section { padding-block:48px; }
.client-heading p, .client-heading span { font-family:var(--mono); font-size:12px; font-weight:600; line-height:1.4; letter-spacing:.1em; text-transform:uppercase; }
.logo-grid { overflow:hidden; border-radius:var(--radius); border:1px solid var(--line); }
.logo-grid :is(.logo-card,.logo-cell), .pipeline-home .logo-grid .logo-cell {
  background:var(--surface) !important; border-color:var(--line) !important; min-height:120px;
}
.logo-grid :is(.logo-card,.logo-cell) img, .pipeline-home .logo-grid .logo-cell img { background:transparent; filter:grayscale(1) brightness(0) invert(1); opacity:.85; }
.homepage-human .proof-grid { grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:56px; align-items:stretch; }
.homepage-human .proof-copy h2 { font-size:clamp(22px,2vw,26px) !important; font-weight:700 !important; line-height:1.2 !important; letter-spacing:-.02em !important; max-width:680px; }
.homepage-human .proof-copy p { max-width:680px; margin-top:24px; color:var(--sec); font-size:17px; line-height:1.6; }
.homepage-human .proof-copy .text-link { margin:20px 20px 0 0; }
.homepage-human .homepage-results { align-content:stretch; grid-template-rows:repeat(2,minmax(0,1fr)); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--surface); }
.homepage-human .homepage-results > div { display:flex; flex-direction:column; justify-content:center; padding:28px 24px; border:0; }
.homepage-human .homepage-results > div:nth-child(odd) { border-right:1px solid var(--line); }
.homepage-human .homepage-results > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
.homepage-human .homepage-results dt { font-family:var(--mono); font-size:12px; font-weight:600; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; color:var(--sec); }
.homepage-human .homepage-results dd { font-family:var(--heading); font-size:clamp(36px,4vw,56px); font-weight:800; letter-spacing:-.045em; }
.homepage-human .homepage-results .result-ongoing { font-size:28px; }
.homepage-human .homepage-results .result-duration { white-space:nowrap; font-size:clamp(28px,3vw,40px) !important; }
.no-wrap { white-space:nowrap; }
.service-route p { font-size:17px; color:var(--sec); line-height:1.6; }
.service-route .card-badge { display:block; margin-bottom:16px; }
.changes-section { background:radial-gradient(ellipse at 95% 0%,rgba(110,17,240,.1),transparent 50%),var(--night); }
.homepage-human .change-flow { gap:24px; border:0; }
.homepage-human .change-step { min-height:0; padding:26px 22px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.homepage-human .change-step h3 { margin:18px 0 18px; font-size:22px !important; }
.homepage-human .change-step p { margin:0; color:var(--sec); font-size:16px; line-height:1.6; }
.directory-row h3, .resource-row h3 { font-size:clamp(20px,2vw,26px) !important; }
.directory-row p, .resource-row p { font-size:17px; line-height:1.6; color:var(--paper-sec); }
.testimonial-section { background:var(--night); }
.testimonial-grid { gap:24px; border:0; }
.testimonial, .testimonial:nth-child(1), .testimonial:nth-child(4) { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:32px; }
.testimonial blockquote { margin-inline:0; padding-inline:0; font-size:17px; color:var(--text); line-height:1.65; }
.testimonial cite { font-size:14px; line-height:1.5; color:var(--sec); text-transform:none; }
.testimonial-stars, .homepage-human .testimonial-quote-mark { color:var(--lav); }
.homepage-human .outcome-grid { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:64px; }
.homepage-human .outcome-copy h2 { max-width:660px; font-size:clamp(32px,3.2vw,46px) !important; }
.homepage-human .outcome-copy p { color:var(--paper-sec); font-size:17px; line-height:1.6; max-width:680px; }
.homepage-human .homepage-checklist { border-left:1px solid var(--line-light); padding:12px 0 12px 32px; }
.homepage-checklist li { color:var(--paper-sec); font-size:17px; }
.faq-list summary, .faq-item summary, .faq-item-acq summary, .faq-item-light summary { text-transform:none; font-family:var(--heading); font-size:clamp(18px,1.6vw,22px); font-weight:700; line-height:1.4; letter-spacing:-.02em; min-height:60px; }
.faq-list summary::after, .faq-item summary::after { color:var(--lav); }
.light .faq-list summary::after, .faq-item-light summary::after { color:var(--violet); }
.faq-intro p, .faq-list p { color:var(--sec); font-size:17px; line-height:1.6; }
.bottom-cta::before, .pipeline-home .bottom-cta::before, .acq-bottom-cta::before, .mammoth-final-cta::before { content:none; display:none; }
.homepage-human .cta-grid { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:64px; align-items:center; }
.bottom-cta h2 { max-width:680px; }
.bottom-cta .cta-side p { font-size:17px; line-height:1.6; }
.footer.site-footer .footer-main { align-items:stretch; grid-template-columns:minmax(0,1.25fr) repeat(3,minmax(0,1fr)); gap:0; }
.footer.site-footer .footer-main > * { align-self:stretch; padding:30px 22px; }
.footer-link-group { align-content:start; }
.footer.site-footer .footer-label { font-family:var(--mono); font-size:14px; font-weight:600; line-height:1.5; letter-spacing:.1em; color:var(--lav); text-transform:uppercase; }
.footer.site-footer .footer-links a, .footer.site-footer .footer-identity-links a, .footer.site-footer .legal-links a { font-family:var(--mono); font-size:13px; line-height:1.5; text-transform:none; }
.footer-brand p { font-size:16px; line-height:1.6; color:var(--sec); }
.footer-links { gap:4px; }
/* Explicitly supersede route-scoped and older high-specificity declarations. */
.site-nav > a:not(.header-cta), .site-nav .header-cta { font-size:13px !important; }
.pipeline-home .hero .button-secondary { color:var(--lav); border-color:var(--lav); }
.homepage-human .homepage-help { border-left:1px solid var(--line) !important; padding:8px 0 8px 28px !important; }
.homepage-human .homepage-help li, .homepage-human .homepage-help p { color:var(--sec); }
.faq-intro p:last-child { font-size:17px; }
.service-side-note, .footer-disclaimer p, .footer-bottom p { font-size:14px !important; line-height:1.5; }
/* Existing card families retain their layout and copy, with one shared shape. */
.card, .light-card, .acq-card, .acq-feature-card, .money-card, .step-card, .fit-panel,
.testimonial-card-acq, .blog-card, .blog-featured-card, .resource-tool-card,
.case-study-card, .service-side-card, .contact-form-card, .contact-note-card,
.blog-newsletter-inline, .hero-media-card, .system-console { border-radius:var(--radius); overflow:hidden; box-shadow:none; }
.card-grid-acq, .money-grid, .steps-grid, .fit-grid, .testimonial-grid-acq,
.resource-tool-grid, .blog-card-grid, .case-study-grid { gap:24px !important; border:0; }
:is(.card-grid-acq,.money-grid,.steps-grid,.fit-grid,.testimonial-grid-acq,.resource-tool-grid,.blog-card-grid,.case-study-grid) > * { border:1px solid var(--line-light) !important; border-radius:var(--radius); background:var(--paper) !important; }
:is(.acq-pillars,.acq-framework-dark,.section-dark,.home-proof-highlight-dark) :is(.card-grid-acq,.money-grid,.steps-grid,.fit-grid,.testimonial-grid-acq) > * { border-color:var(--line) !important; background:var(--surface) !important; }
/* Popup stays subordinate and leaves the right-hand chat control clear. */
.blog-newsletter-slide { left:24px; right:auto; bottom:24px; width:320px; padding:16px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:0 12px 40px rgba(0,0,0,.22); }
.blog-newsletter-slide h2 { max-width:none; padding-right:28px; font-size:20px !important; line-height:1.2 !important; letter-spacing:-.025em !important; }
.blog-newsletter-slide p:not(.section-kicker) { font-size:14px; line-height:1.5; color:var(--sec); }
.blog-newsletter-slide-form { padding:0; background:transparent; border:0; box-shadow:none; backdrop-filter:none; }
.blog-newsletter-native-form label span { font-size:14px; font-weight:500; letter-spacing:0; text-transform:none; }
.blog-newsletter-native-form input { border-radius:10px; color:var(--paper-text); font-size:16px; min-height:44px; }
.blog-newsletter-close { width:44px; height:44px; top:8px; right:8px; }
#strategy-application .booking-label { font-family:var(--mono) !important; font-size:14px !important; font-weight:600 !important; letter-spacing:.04em !important; text-transform:none; }
/* The shell remains 1200px wide: never restore the long location line above desktop. */
@media(min-width:1101px) { .header-location { display:none; } .header-inner { grid-template-columns:auto minmax(0,1fr); } }
@media(max-width:1100px) {
  .homepage-human .hero-grid, .homepage-human .proof-grid, .homepage-human .outcome-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .homepage-human .hero-copy-block { max-width:800px; }
  .homepage-human .homepage-help { max-width:680px; }
  .change-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer.site-footer .footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:850px) { .homepage-human .cta-grid { grid-template-columns:minmax(0,1fr); gap:32px; } }
@media(max-width:680px) {
  :root { --section-space:64px; }
  .hero { padding-top:56px; }
  .homepage-human h1 { font-size:44px !important; }
  .homepage-human .hero-grid { gap:40px; }
  .homepage-human .homepage-help { padding-left:20px; }
  .hero-actions { gap:12px; }
  .hero-actions .button { justify-content:space-between; }
  .credential-rail { margin-top:40px; }
  .section-heading-row { margin-bottom:32px; }
  .homepage-human .change-flow, .testimonial-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
  .homepage-human .change-step, .testimonial { padding:24px; }
  .homepage-human .homepage-results > div { padding:24px 16px; }
  .homepage-human .homepage-results dd { font-size:36px; }
  .homepage-human .homepage-results .result-ongoing { font-size:24px; }
  .footer.site-footer .footer-main { grid-template-columns:minmax(0,1fr); }
  .footer.site-footer .footer-main > * { padding:28px 24px; }
  .blog-newsletter-slide { display:none !important; }
  .site-nav a, .footer a, .text-link, button, input:not([type=radio]):not([type=checkbox]), select { min-height:44px; }
  main a:not(:has(h2,h3,img,p)) { display:inline-flex; align-items:center; min-height:44px; }
  .button-link-acq, .page-links a { font-size:13px; line-height:1.4; }
  .blog-article-content a, .article-content a { display:inline-block; min-height:44px; padding-block:9px; }
  .footer-legal-links a, .footer-identity-links a { display:inline-flex; align-items:center; }
}
.clck-chat-launcher { border-radius:999px; font-family:var(--mono) !important; font-size:13px; }
@media(max-width:680px) {
  .clck-chat-launcher { position:relative !important; right:auto !important; bottom:auto !important; margin:0 var(--gutter) 24px auto; display:flex; width:max-content; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Surface-local tokens: light panels must not inherit dark-page text. */
:where(.light, .paper, .section-white, .acq-proof, .acq-routes, .acq-faqs,
  .resource-section, .article-section, .blog-section, .contact-section,
  .legal-section, .strategy-intro, .strategy-expect, .logo-strip,
  .mammoth-toc, .mammoth-section:not(.mammoth-section-dark), .mammoth-card,
  .mammoth-answer-card, .mammoth-platform-row, .mammoth-roadmap-step,
  .lead-magnet-form-card, .blog-newsletter-inline, .contact-note-card,
  .linkedin-guide-step-card, .ai-playbook-step-card,
  .auto-light, .auto-paper, .b2b-light, .b2b-paper, .support-light, .support-paper) {
  --text: var(--paper-text);
  --sec: var(--paper-sec);
  --muted: var(--paper-sec);
  --text-soft: var(--paper-sec);
  --text-muted: var(--paper-sec);
  --lav: var(--violet);
  --violet-bright: var(--violet);
  --accent-strong: var(--violet);
  --accent-text: var(--violet);
  color: var(--paper-text);
}
/* The standalone HubSpot offer's proof section is also a light surface. */
body:has(.hero-offer) .proof-section,
body:has(.hero-offer) .proof-card {
  --text: var(--paper-text);
  --sec: var(--paper-sec);
  --muted: var(--paper-sec);
  --text-soft: var(--paper-sec);
  --lav: var(--violet);
  color: var(--paper-text);
}
/* Explicit dark islands reset inherited light-surface aliases. */
:where(.dark, .section-dark, .dark-section, .mammoth-section-dark,
  .acq-pillars, .acq-framework-dark, .home-proof-highlight-dark,
  .acq-bottom-cta, .bottom-cta, .mammoth-final-cta,
  .construction-proof-feature, .manufacturing-hierarchy, .manufacturing-kingfisher-story,
  .professional-regroup-story, .property-super-story, .property-super-quote,
  .nonprofit-parish-path, .nonprofit-servegate-story, .tech-proof-story blockquote,
  .tech-choice-map, .tech-campaign-section) {
  --text: #f3f7ff;
  --sec: #a9b9cb;
  --muted: var(--sec);
  --text-soft: var(--sec);
  --lav: #b495ff;
  --violet-bright: var(--lav);
  --accent-strong: var(--lav);
  --accent-text: var(--lav);
  color:var(--text);
}
/* Keep body copy readable even when a page-local style supplied a wider measure. */
main p, .paper p, .dark p { max-width:680px !important; }

body:has(.hero-offer) .combined {
  --text:#f3f7ff; --sec:#a9b9cb; --lav:#b495ff;
  color:var(--text);
}
.dark a:not(.button), .combined a:not(.button) { color:var(--lav); }

/* Use the foreground accent, never a button-fill token, for text. */
.button-link-acq, .acq-card-badge, .feature-index, .step-number,
.construction-journey-number, .manufacturing-journey li > span,
.professional-journey > article > span, .tech-phase-label { color:var(--accent-text) !important; }
:is(.acq-bottom-cta, .bottom-cta, .mammoth-final-cta, .migration-guide-decision) {
  --text:#fff; --sec:#fff; --muted:#fff; --text-soft:#fff; --accent-text:#fff;
}
:is(.acq-bottom-cta, .bottom-cta, .mammoth-final-cta, .migration-guide-decision)
  :is(p,li,.section-kicker,.section-code,.eyebrow) { color:#fff !important; }
:is(.acq-bottom-cta, .bottom-cta, .mammoth-final-cta) .button-secondary {
  background:transparent !important; color:#fff !important; border-color:#fff !important;
}
/* Table headers and the solid-colour diagram node have explicit foregrounds. */
main th { background:var(--night) !important; color:#fff !important; --accent-text:#b495ff; }
main th a { color:#b495ff !important; }
.hermes-vm-node-centre { background:var(--violet) !important; color:#fff !important; }

/* Compact desktop slide-in: retain both labelled fields and the original submit handler. */
.blog-newsletter-slide .blog-newsletter-native-form { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.blog-newsletter-slide .blog-newsletter-native-form button,
.blog-newsletter-slide .blog-newsletter-message { grid-column:1 / -1; }
.blog-newsletter-slide .blog-newsletter-native-form input { padding:10px; min-height:44px; }
