/* Shared editorial system for services, publications, scenarios and documents. */
body:not(.home-v2) {
  --paper: #f4f1ea;
  --cream: #e8edf3;
  --ink: #15202b;
  --muted: #455868;
  --line: #c8c8c2;
  --blue-dark: #175cd3;
  --sheet: #fffdf8;
  --wash: #edf3fc;
  --radius: 0;
  --shadow: none;
  background: var(--paper);
}
body:not(.home-v2) .site-header { background: rgba(244,241,234,.94); border-color: var(--line); }
body:not(.home-v2) .nav-wrap { height: 74px; }
body:not(.home-v2) .main-nav { gap: 27px; }
body:not(.home-v2) .main-nav > a:not(.button) { font-size: .82rem; }
body:not(.home-v2) .button { min-height: 52px; border-radius: 7px; background: var(--blue-dark); box-shadow: none; }
body:not(.home-v2) .button:hover { background: #124aa9; transform: translateY(-1px); }
body:not(.home-v2) .main-nav .button { min-height: 42px; padding: 10px 18px; border-radius: 6px; }
body:not(.home-v2) main :is(h1,h2,h3) { font-family: inherit; font-weight: 750; letter-spacing: -.045em; text-wrap: balance; overflow-wrap: break-word; }
body:not(.home-v2) main :is(h1,h2) em { font: inherit; color: inherit; background: linear-gradient(transparent 76%,#2878ff33 76%); }
body:not(.home-v2) .eyebrow { color: var(--blue-dark); font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: .66rem; letter-spacing: .105em; gap: 12px; }
body:not(.home-v2) .eyebrow > span:empty { display: none; }
body:not(.home-v2) .eyebrow::before { content: ''; flex: 0 0 28px; height: 2px; background: currentColor; }
body:not(.home-v2) .section { padding-block: 88px; }
body:not(.home-v2) .section h2 { font-size: clamp(2.2rem,3.8vw,3.65rem); line-height: 1.06; }
body:not(.home-v2) :is(.service-hero,.blog-hero,.cases-hero,.article-hero,.case-hero) { padding-block: 72px 80px; background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--line); }
body:not(.home-v2) :is(.service-hero,.blog-hero,.cases-hero,.article-hero,.case-hero) h1 { font-size: clamp(2.8rem,5.2vw,5rem); line-height: 1.03; }
body:not(.home-v2) :is(.service-hero-grid,.blog-hero-grid,.cases-hero-grid,.article-hero-grid,.case-hero-grid) { gap: 56px; }
body:not(.home-v2) .article-breadcrumb { flex-wrap: wrap; margin-bottom: 42px; color: var(--muted); }
body:not(.home-v2) .article-breadcrumb span { color: var(--muted); }
body:not(.home-v2) :is(.service-hero .lead,.article-intro>p,.cases-hero-grid>p,.case-hero-grid>div>p,.blog-hero-note p,.feature-copy>p:not(.post-meta)) { color: var(--muted); }
body:not(.home-v2) .answer-card { border: 1px solid var(--ink); border-top: 5px solid var(--blue); border-radius: 0; background: var(--sheet); color: var(--ink); box-shadow: none; padding: 30px; }
body:not(.home-v2) .answer-card > span { color: var(--blue-dark); font-family: ui-monospace,monospace; }
body:not(.home-v2) .answer-card p { color: var(--muted); }
body:not(.home-v2) :is(.service-details,.service-faq) { background: var(--sheet); }
body:not(.home-v2) :is(.service-method,.service-applications,.ticket-demo,.case-outcomes) { background: var(--paper); border-block: 1px solid var(--line); }
body:not(.home-v2) .service-application-grid { border-color: var(--ink); }
body:not(.home-v2) .service-application-grid article { background: var(--sheet); padding: 30px; }
body:not(.home-v2) .method-grid { border: 1px solid var(--line); background: var(--sheet); }
body:not(.home-v2) .method-grid article { border-color: var(--line); }
body:not(.home-v2) .method-grid article:first-child { border-left: 0; }
body:not(.home-v2) .method-grid b { font-family: ui-monospace,monospace; color: var(--blue-dark); }
body:not(.home-v2) :is(.service-content-head,.faq-grid) { gap: 32px 64px; }
body:not(.home-v2) .service-related { flex-wrap: wrap; gap: 16px 28px; }
body:not(.home-v2) :is(.service-cta,.contact,.case-flow-section,.article-cta) { background: var(--ink); color: var(--sheet); }
body:not(.home-v2) :is(.contact,.article-cta,.case-flow-section) .eyebrow { color: #a7c6ff; }
body:not(.home-v2) .contact { padding-block: 88px; }
body:not(.home-v2) .contact h2 { font-size: clamp(2.4rem,4.2vw,4.1rem); }
body:not(.home-v2) .contact-form { background: var(--sheet); border: 1px solid var(--line); border-top: 5px solid var(--blue); border-radius: 0; box-shadow: none; }
body:not(.home-v2) .contact-form input:not([type=checkbox]),body:not(.home-v2) .contact-form textarea { border-radius: 4px; border-color: #a6afaF; background: white; font-size: 16px; min-height: 48px; }
body:not(.home-v2) .contact-form input:focus-visible,body:not(.home-v2) .contact-form textarea:focus-visible { outline-color: var(--blue-dark); }
body:not(.home-v2) .contact-form .check { line-height: 1.6; }
body:not(.home-v2) .form-note { color: var(--muted); }
body:not(.home-v2) .form-status:focus { outline-color: var(--blue-dark); }
body:not(.home-v2) .ticket-demo-panel { background: var(--sheet); border-radius: 0; border-color: var(--line); border-top: 3px solid var(--blue); box-shadow: none; max-width: none; }
body:not(.home-v2) .ticket-demo-controls button { border-radius: 6px; border-color: var(--line); }
body:not(.home-v2) .ticket-demo-controls button[aria-pressed=true] { background: var(--blue-dark); border-color: var(--blue-dark); }
body:not(.home-v2) .ticket-demo video { border-radius: 0 !important; border: 1px solid var(--line); }
body:not(.home-v2) .blog-hero::after { display: none; }
body:not(.home-v2) .blog-hero-note { border-color: var(--line); }
body:not(.home-v2) .blog-hero-note span { color: var(--blue-dark); }
body:not(.home-v2) .post-featured { border: 1px solid var(--ink); border-radius: 0; min-height: 380px; background: var(--sheet); margin-bottom: 72px; }
body:not(.home-v2) .feature-visual { background: var(--wash); color: var(--ink); min-height: 360px; border-right: 1px solid var(--ink); }
body:not(.home-v2) .feature-mark { font-family: inherit; font-weight: 800; font-size: 10rem; }
body:not(.home-v2) .feature-lines { border-radius: 0; border-color: #15202b25; box-shadow: none; transform: rotate(12deg); width: 230px; height: 230px; }
body:not(.home-v2) .feature-visual small { font-family: ui-monospace,monospace; color: var(--blue-dark); }
body:not(.home-v2) .feature-copy { padding: 38px; }
body:not(.home-v2) .feature-copy h2 { font-size: clamp(2rem,3.2vw,3rem); }
body:not(.home-v2) :is(.post-card,.related-grid article) { background: var(--sheet); min-height: 320px; }
body:not(.home-v2) .post-card:hover { background: var(--wash); }
body:not(.home-v2) :is(.post-number,.case-row-index,.story-number) { font-family: ui-monospace,monospace; font-size: 1rem; color: var(--blue-dark); }
body:not(.home-v2) .post-card-top { margin-bottom: 40px; }
body:not(.home-v2) :is(.post-meta,.post-kind,.aside-label) { color: var(--muted); }
body:not(.home-v2) .post-meta span { border-radius: 4px; }
body:not(.home-v2) :is(.round-link,.case-row-result a) { border-radius: 6px; }
body:not(.home-v2) .blog-empty { border-radius: 0; background: var(--sheet); border: 1px solid var(--line); }
body:not(.home-v2) .article-page { background: var(--sheet); }
body:not(.home-v2) .article-content { font-family: inherit; font-size: 1.08rem; line-height: 1.85; color: var(--ink); }
body:not(.home-v2) .article-content > p:first-child { font-size: 1.15rem; }
body:not(.home-v2) .article-content h2 { font-size: clamp(1.85rem,3vw,2.7rem); }
body:not(.home-v2) .article-content ul { border-radius: 0; background: var(--wash); }
body:not(.home-v2) .answer-box { border-radius: 0; background: var(--wash); border-left: 3px solid var(--blue); }
body:not(.home-v2) :is(.answer-box p,.article-toc a) { color: var(--muted); }
body:not(.home-v2) .author-mark { font-family: inherit; font-weight: 800; border-radius: 6px; background: var(--ink); }
body:not(.home-v2) .article-service-link { border-radius: 0; border-top: 3px solid var(--blue); }
body:not(.home-v2) .aside-cta { border-radius: 6px; }
body:not(.home-v2) .article-cta { border-radius: 0; padding: 48px; }
body:not(.home-v2) .reading-progress { top: 74px; }
body:not(.home-v2) .model-disclaimer { border-radius: 0; background: var(--sheet); border-color: var(--line); border-left: 3px solid var(--blue); color: var(--muted); margin-top: 40px; }
body:not(.home-v2) .model-disclaimer strong { color: var(--ink); }
body:not(.home-v2) .model-badge { border-radius: 4px; background: var(--wash); color: var(--blue-dark); }
body:not(.home-v2) .cases-cta { border-radius: 0; background: var(--sheet); border: 1px solid var(--ink); padding: 48px; }
body:not(.home-v2) :is(.case-story,.case-context,.case-result) { padding-block: 80px; gap: 64px; }
body:not(.home-v2) .outcomes-grid,body:not(.home-v2) .case-outcomes blockquote { border-color: var(--line); }
body:not(.home-v2) .outcomes-grid article { background: var(--sheet); }
body:not(.home-v2) .case-outcomes blockquote p { font-family: inherit; font-size: 1.3rem; line-height: 1.6; }
body:not(.home-v2) .legal { padding-block: 72px 88px; background: var(--paper); }
body:not(.home-v2) .legal .container { max-width: 900px; }
body:not(.home-v2) .legal h1 { max-width: 900px; font-size: clamp(2.5rem,5vw,4.6rem); }
body:not(.home-v2) .legal h2 { font-size: 1.6rem; line-height: 1.25; padding-top: 24px; border-top: 1px solid var(--line); }
body:not(.home-v2) .legal-summary { border-radius: 0; background: var(--sheet); border: 1px solid var(--line); border-left: 3px solid var(--blue); }
body:not(.home-v2) .legal th { background: var(--wash); }
body:not(.home-v2) .legal td { background: var(--sheet); }
body:not(.home-v2) .legal-updated { color: var(--muted) !important; }
body:not(.home-v2) .site-footer { background: #0d1925; }
body:not(.home-v2) .cookie-banner { border-radius: 8px; background: var(--sheet); border: 1px solid var(--line); }
body:not(.home-v2) .cookie-reject { border-radius: 6px; }
body:not(.home-v2) main :is(article,section,aside,figure,div) { min-width: 0; }
@media (max-width: 900px) {
  body:not(.home-v2) :is(.service-hero-grid,.blog-hero-grid,.cases-hero-grid,.article-hero-grid,.case-hero-grid) { grid-template-columns: 1fr; gap: 36px; }
  body:not(.home-v2) .main-nav { background: var(--paper); }
  body:not(.home-v2) .feature-visual { min-height: 250px; border-right: 0; border-bottom: 1px solid var(--ink); }
  body:not(.home-v2) .article-cta { padding: 32px; }
}
@media (max-width: 620px) {
  body:not(.home-v2) .container { width: calc(100% - 32px); }
  body:not(.home-v2) :is(.service-hero,.blog-hero,.cases-hero,.article-hero,.case-hero,.legal) { padding-block: 42px 56px; }
  body:not(.home-v2) :is(.service-hero,.blog-hero,.cases-hero,.article-hero,.case-hero) h1 { font-size: clamp(2.25rem,9.5vw,3.2rem); }
  body:not(.home-v2) :is(.section,.contact) { padding-block: 60px; }
  body:not(.home-v2) .section h2 { font-size: clamp(1.9rem,8vw,2.6rem); }
  body:not(.home-v2) :is(.service-content-head,.faq-grid) { gap: 24px; }
  body:not(.home-v2) .answer-card { padding: 24px; }
  body:not(.home-v2) .method-grid article { padding: 24px; }
  body:not(.home-v2) .feature-copy { padding: 25px; }
  body:not(.home-v2) .feature-visual { min-height: 200px; }
  body:not(.home-v2) .feature-mark { font-size: 7rem; }
  body:not(.home-v2) .feature-lines { width: 150px; height: 150px; }
  body:not(.home-v2) :is(.contact-form,.cases-cta,.article-cta) { padding: 24px; }
  body:not(.home-v2) :is(.case-story,.case-context,.case-result) { padding-block: 60px; gap: 30px; }
  body:not(.home-v2) .article-layout { padding-top: 40px; }
  body:not(.home-v2) .article-content { font-size: 1rem; }
  body:not(.home-v2) .article-content > p:first-child { font-size: 1.05rem; }
  body:not(.home-v2) .legal h2 { font-size: 1.35rem; }
  body:not(.home-v2) .legal-table-wrap { margin-inline: 0; padding-inline: 0; }
}
