/* Public page families share the marketing design. Existing content, diagrams,
   forms and scripts retain their own layout and behaviour. Guest scope is deliberate. */
body.ad-public-site {
  --public-ink:#0d1b2a;
  --public-muted:#4a5568;
  --public-blue:#1e4fd8;
  --public-navy:#0b1422;
  --public-line:#dce1e8;
  --public-soft:#f7f9fb;
}
.ad-public-site :is(.ad-public,.ad-publication,.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-demo-page,.ad-auth-page,.ad-region-page,.ad-investor-page,.ad-threat-page,.ad-pricing,.blog-card,.ad-public-architecture) {
  --ap-ink:var(--public-ink);--ap-muted:var(--public-muted);--ap-accent:var(--public-blue);--ap-line:var(--public-line);--ap-soft:var(--public-soft);
  --ad-primary:var(--public-blue);--ad-primary-dark:#163ba6;--ad-primary-soft:#eef3ff;
  --ad-ink:var(--public-ink);--ad-ink-2:#2b3548;--ad-muted:var(--public-muted);--ad-line:var(--public-line);--ad-bg:var(--public-soft);
  --ad-shadow-sm:0 3px 12px #0b142206;--ad-shadow-md:0 8px 24px #0b14220a;--ad-shadow-lg:0 12px 32px #0b14220d;
  font-family:Inter,system-ui,sans-serif!important;
  color:var(--public-ink);
  background:#fff;
  font-size:16px;
  line-height:1.7;
}
.ad-public-site :is(.ad-public,.ad-publication,.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-demo-page,.ad-auth-page,.ad-region-page,.ad-investor-page,.ad-threat-page,.ad-pricing,.blog-card,.ad-public-architecture) :is(h1,h2,h3,h4) {
  font-family:'Space Grotesk',Inter,sans-serif!important;
  font-weight:600!important;
  letter-spacing:-.03em;
}
.ad-public-site :is(.ad-publication,.ad-investor-page,.ad-threat-page,.ad-pricing,.ad-auth-page) :where(p,a,li,td,th,label,input,select,textarea,button,small,span,strong) {font-family:Inter,system-ui,sans-serif!important}
.ad-public-site :is(.ad-publication,.ad-investor-page,.ad-threat-page,.ad-pricing,.ad-auth-page) :is(h1,h2,h3,h4) :is(span,strong,em,b) {font-family:inherit!important}
.ad-public-site :is(.ad-public,.ad-publication,.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-demo-page,.ad-auth-page,.ad-region-page,.ad-investor-page,.ad-threat-page,.ad-pricing,.blog-card,.ad-public-architecture) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline:3px solid #6c9bff!important;
  outline-offset:4px;
}
.ad-public-site :is(.ad-public,.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-region-page,.blog-card) :is(p,li,td,dd) {
  overflow-wrap:break-word;
}
.ad-public-site :is(.ad-public,.ad-publication,.ad-docs) pre {
  max-width:100%;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  background:var(--public-navy);
  color:#d9e4f3;
  border-radius:12px;
}

/* Integration, solution, company and industry templates. */
.ad-public-site .ad-public .ap-wrap {width:min(1200px,calc(100% - 48px))}
.ad-public-site .ad-public section {padding:72px 0}
.ad-public-site .ad-public .ap-hero {padding:76px 0;background:var(--public-navy);color:#fff}
.ad-public-site .ad-public h1 {font-size:clamp(36px,4.4vw,58px);line-height:1.08;letter-spacing:-.035em}
.ad-public-site .ad-public h2 {font-size:clamp(28px,3vw,40px);line-height:1.15}
.ad-public-site .ad-public .ap-hero h1 {color:#fff;max-width:1000px}
.ad-public-site .ad-public .ap-hero h1 span {color:#93b4ff}
.ad-public-site .ad-public .ap-hero .ap-wrap>p,
.ad-public-site .ad-public .ap-hero .ap-wrap>div:first-child>p,
.ad-public-site .ad-public .ap-hero .ap-breadcrumb {color:#bfcbdd}
.ad-public-site .ad-public .ap-hero .ap-solution-visual figcaption {color:#9fb0cc}
.ad-public-site .ad-public .ap-hero :is(.ap-eyebrow,.ap-breadcrumb a) {color:#9cb8e8}
.ad-public-site .ad-public .ap-eyebrow {font-size:12px;font-weight:600;letter-spacing:.1em}
.ad-public-site .ad-public .ap-lead {font-size:18px;line-height:1.75}
.ad-public-site .ad-public .ap-card {border-radius:12px;padding:26px;box-shadow:none}
.ad-public-site .ad-public .ap-card h2 {font-size:26px}
.ad-public-site .ad-public .ap-card h3 {font-size:21px}
.ad-public-site .ad-public .ap-button {border-radius:10px;font-weight:600}
.ad-public-site .ad-public .ap-button-primary {background:var(--public-blue);border-color:var(--public-blue);color:#fff}
.ad-public-site .ad-public .ap-hero .ap-button:not(.ap-button-primary) {background:transparent;border-color:#42536e;color:#e3eaf5}
.ad-public-site .ad-public .ap-hero .ap-button:not(.ap-button-primary):hover {background:#19273c;color:#fff!important}
.ad-public-site .ad-public .ap-hero a:not(.ap-button) {color:#a7c3ff}
.ad-public-site .ad-public .ap-soft {background:var(--public-soft)}
.ad-public-site .ad-public :is(.ap-boundary,.ap-onboarding-callout) {background:#f1f5ff;border-color:#d6e1fa;border-radius:12px}
.ad-public-site .ad-public .ap-closing {background:var(--public-navy)}
.ad-public-site .ad-public .ap-closing .ap-button-primary {background:var(--public-blue);border-color:var(--public-blue);color:#fff}
.ad-public-site .ad-public .ap-closing .ap-button-primary:hover {color:#fff!important;background:#163ba6}
.ad-public-site .ad-public :is(.ap-demo,.ap-example) {background:var(--public-navy);border-color:#314159;border-radius:14px;box-shadow:none}

/* Research remains a readable publication, including all technical figures. */
.ad-public-site .ad-publication .ad-pub-container {width:min(1200px,calc(100% - 48px))}
.ad-public-site .ad-publication .ad-pub-hero {padding:72px 0 60px;background:var(--public-navy);text-align:left}
.ad-public-site .ad-publication .ad-pub-hero::before {background:none}
.ad-public-site .ad-publication .ad-pub-hero .ad-pub-title {max-width:1000px;margin:18px 0 20px;color:#fff!important;font-size:clamp(36px,4.4vw,58px)!important;line-height:1.1!important}
.ad-public-site .ad-publication .ad-pub-title :is(span,.ad-pub-title-highlight) {background:none!important;color:#93b4ff!important;-webkit-text-fill-color:#93b4ff!important}
.ad-public-site .ad-publication .ad-pub-hero .ad-pub-subtitle {max-width:880px;margin:0;color:#bfcbdd!important;font-size:18px!important}
.ad-public-site .ad-publication .ad-pub-hero :is(.ad-pub-subtitle strong,.ad-pub-meta,.ad-pub-meta span) {color:#d0dcef!important}
.ad-public-site .ad-publication .ad-pub-meta {justify-content:flex-start;font-size:13px!important}
.ad-public-site .ad-publication .ad-pub-meta span:not(:nth-child(even)) {background:#142237;border-color:#314159}
.ad-public-site .ad-publication .ad-pub-pill {background:#142237;border-color:#314159;color:#adc7f3!important;box-shadow:none;font-weight:600}
.ad-public-site .ad-publication .ad-pub-actions {justify-content:flex-start}
.ad-public-site .ad-publication :is(.ad-pub-card,.ad-research-path,.ad-pub-toc,.ad-gov-card,.ad-gov-flow-card) {border-radius:12px;box-shadow:none}
.ad-public-site .ad-publication .ad-pub-card::before {background:var(--public-blue)}
.ad-public-site .ad-publication :is(.ad-pub-card,.ad-research-path):hover {transform:none;box-shadow:0 8px 24px #0b14220a;border-color:#b7c8eb}
.ad-public-site .ad-publication .ad-pub-section-soft {background:var(--public-soft)}
.ad-public-site .ad-publication .ad-pub-prose article>p:first-of-type {background:#f5f8ff;border-color:#dce5f7;border-radius:12px;box-shadow:none}
.ad-public-site .ad-publication .ad-pub-prose :is(p,li) {line-height:1.85!important}
.ad-public-site .ad-publication .ad-pub-prose a {color:var(--public-blue);text-decoration:underline;text-underline-offset:3px}
.ad-public-site .ad-publication .ad-pub-btn {border-radius:10px;box-shadow:none!important;font-weight:600!important;white-space:normal!important}
.ad-public-site .ad-publication .ad-pub-btn-primary,
.ad-public-site .ad-publication .ad-pub-btn-primary:is(:link,:visited,:hover,:focus,:active) {
  background:var(--public-blue)!important;border-color:var(--public-blue)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.ad-public-site .ad-publication .ad-pub-hero .ad-pub-btn-ghost {background:transparent!important;border-color:#42536e!important;color:#e3eaf5!important;-webkit-text-fill-color:#e3eaf5!important}
.ad-public-site .ad-publication .ad-pub-cta-box {background:var(--public-navy);border-radius:14px;box-shadow:none}

/* Documentation, Trust, Support and partner pages keep their own navigation. */
.ad-public-site :is(.ad-docs,.ad-trust,.ad-support,.ad-partners) {padding:56px 24px 76px;background:#fff}
.ad-public-site :is(.ad-docs-wrap,.ad-trust-wrap,.ad-support-wrap,.ad-partners-wrap) {width:min(1200px,100%);margin-inline:auto}
.ad-public-site :is(.ad-docs-hero,.ad-trust-hero,.ad-support-hero,.ad-partners-hero,.ad-region-header,.ad-public-architecture-hero) {
  max-width:none;padding:44px;border-radius:16px;margin-bottom:32px;background:var(--public-navy);color:#fff;
}
.ad-public-site :is(.ad-docs-hero,.ad-trust-hero,.ad-support-hero,.ad-partners-hero,.ad-region-header,.ad-public-architecture-hero) h1 {color:#fff;font-size:clamp(34px,4.3vw,54px);line-height:1.12;margin-top:12px}
.ad-public-site :is(.ad-docs-hero,.ad-trust-hero,.ad-support-hero,.ad-partners-hero,.ad-region-header,.ad-public-architecture-hero) p {color:#bfcbdd;font-size:17px;line-height:1.75}
.ad-public-site :is(.ad-docs-kicker,.ad-trust-kicker,.ad-support-kicker,.ad-partners-kicker) {color:#1e4fd8;font-size:12px;font-weight:600;letter-spacing:.1em}
.ad-public-site :is(.ad-docs-hero,.ad-trust-hero,.ad-support-hero,.ad-partners-hero) [class$=-kicker] {color:#9cb8e8}
.ad-public-site :is(.ad-docs-section,.ad-docs-nav,.ad-trust-card,.ad-support-card,.ad-partners-card,.ad-partners-panel) {border-color:var(--public-line);border-radius:12px;box-shadow:none}
.ad-public-site .ad-docs-nav {top:24px}
.ad-public-site .ad-docs-nav a {border-radius:7px;font-size:14px;font-weight:500}
.ad-public-site .ad-docs-nav a:hover {background:#eef3ff;color:var(--public-blue)}
.ad-public-site .ad-docs-section {padding:28px;scroll-margin-top:24px}
.ad-public-site .ad-docs-section h2 {font-size:25px}
.ad-public-site :is(.ad-trust-card,.ad-support-card,.ad-partners-card) h2 {font-size:21px}
.ad-public-site :is(.ad-partners-qualifier,.ad-partners-hero .ad-partners-qualifier) {background:#142237;border-color:#314159;border-radius:12px}
.ad-public-site .ad-partners-qualifier strong {color:#e2ebf9}
.ad-public-site .ad-partners-qualifier p {color:#bfcbdd;font-size:15px}
.ad-public-site .ad-partners-form-shell {border-radius:16px;background:var(--public-navy)}
.ad-public-site .ad-partners-form {border-radius:12px}
.ad-public-site .ad-partners-submit {background:var(--public-blue);font-weight:600}

/* Public requests and account-entry forms: presentation only. */
.ad-public-site :is(.ad-demo-page,.ad-auth-page,.ad-region-page) {background:var(--public-soft);padding:64px 24px}
.ad-public-site :is(.ad-demo-shell,.ad-auth-shell,.ad-region-shell) {width:min(1200px,100%)}
.ad-public-site :is(.ad-demo-copy,.ad-auth-copy) {padding:38px;border-radius:16px;background:var(--public-navy);color:#fff}
.ad-public-site :is(.ad-demo-copy,.ad-auth-copy) :is(h1,h2) {color:#fff!important;font-size:clamp(34px,4vw,50px)!important;line-height:1.12}
.ad-public-site :is(.ad-demo-copy,.ad-auth-copy) :is(h1 span,h2 span) {color:#93b4ff!important}
.ad-public-site :is(.ad-demo-subtitle,.ad-auth-subtitle,.ad-demo-point,.ad-auth-point) {color:#bfcbdd}
.ad-public-site :is(.ad-demo-subtitle,.ad-auth-subtitle) {font-size:17px;line-height:1.75}
.ad-public-site :is(.ad-demo-point,.ad-auth-point) {font-size:14px;line-height:1.65}
.ad-public-site :is(.ad-demo-card-title,.ad-auth-card-title) {font-size:24px}
.ad-public-site :is(.ad-demo-card-text,.ad-auth-card-text) {font-size:14px;line-height:1.65}
.ad-public-site :is(.ad-demo-label,.ad-auth-label) {font-size:13px;font-weight:600}
.ad-public-site :is(.ad-demo-input,.ad-demo-textarea,.ad-auth-input) {font-size:15px;line-height:1.5}
.ad-public-site :is(.ad-demo-submit,.ad-auth-submit) {font-size:15px;min-height:48px}
.ad-public-site :is(.ad-demo-note,.ad-auth-legal,.ad-auth-footer) {font-size:12px;line-height:1.6}
.ad-public-site :is(.ad-demo-badge,.ad-auth-badge) {background:#142237;border-color:#314159;color:#adc7f3;box-shadow:none;font-size:12px;font-weight:600}
.ad-public-site :is(.ad-demo-card,.ad-auth-card,.ad-region-card) {border:1px solid var(--public-line);border-radius:14px;background:#fff;box-shadow:0 8px 28px #0b142207;backdrop-filter:none}
.ad-public-site :is(.ad-demo-submit,.ad-auth-submit,.ad-region-btn) {background:var(--public-blue);border-color:var(--public-blue);color:#fff;font-weight:600;box-shadow:none}
.ad-public-site :is(.ad-demo-submit,.ad-auth-submit,.ad-region-btn):hover {background:#163ba6;color:#fff}
.ad-public-site .ad-auth-page :is(p,a,label,input,select,textarea,button,small,span) {font-family:Inter,system-ui,sans-serif!important}
.ad-public-site :is(.ad-demo-input,.ad-demo-textarea,.ad-auth-input,.ad-partners-field input,.ad-partners-field select,.ad-partners-field textarea) {border-color:#cbd5e1;border-radius:9px;background:#fff}
.ad-public-site :is(.ad-demo-page,.ad-auth-page,.ad-partners) :is(input,select,textarea):is(.is-invalid,.error,[aria-invalid=true]) {border-color:#dc2626}
.ad-public-site .ad-region-eyebrow {background:#142237;border-color:#314159;color:#adc7f3;font-weight:600;letter-spacing:.08em}
.ad-public-site .ad-region-grid {grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.ad-public-site .ad-region-header {margin-bottom:28px}

/* Established public reports and legacy billing retain their tables/calculators. */
.ad-public-site :is(.ad-investor-hero,.ad-threat-hero,.ad-pricing-hero) {background:var(--public-navy);padding:76px 0 64px}
.ad-public-site :is(.ad-investor-hero,.ad-threat-hero,.ad-pricing-hero)::after {background:none}
.ad-public-site :is(.ad-investor-container,.ad-threat-container,.ad-pricing-container) {width:min(1200px,calc(100% - 48px))}
.ad-public-site :is(.ad-investor-hero-title,.ad-threat-hero-title,.ad-pricing-title) {color:#fff!important;font-size:clamp(36px,4.4vw,58px)!important;line-height:1.1!important;font-weight:600!important}
.ad-public-site :is(.ad-investor-highlight,.ad-threat-highlight,.ad-pricing-highlight) {background:none!important;color:#93b4ff!important;-webkit-text-fill-color:#93b4ff!important}
.ad-public-site :is(.ad-investor-hero-sub,.ad-threat-hero-sub,.ad-pricing-subtitle) {color:#bfcbdd!important;font-size:18px!important}
.ad-public-site :is(.ad-investor-pill,.ad-threat-pill,.ad-pricing-pill) {background:#142237;border-color:#314159;color:#adc7f3!important;box-shadow:none;font-weight:600!important}
.ad-public-site :is(.ad-investor-card,.ad-threat-card,.ad-pricing-card,.ad-pricing-flow-card,.ad-pricing-scenario) {border-color:var(--public-line);border-radius:12px;box-shadow:none}
.ad-public-site .ad-pricing .ad-pricing-flow {grid-template-columns:repeat(4,minmax(0,1fr))}
.ad-public-site .ad-pricing .ad-pricing-flow-card {background:#142237;border-color:#314159;backdrop-filter:none}
.ad-public-site .ad-pricing .ad-pricing-flow-card::after {background:none}
.ad-public-site .ad-pricing .ad-pricing-flow-price {color:#fff!important;font-size:28px!important;line-height:1.15!important;font-weight:600!important}
.ad-public-site .ad-pricing :is(.ad-pricing-flow-kicker,.ad-pricing-flow-platform) {color:#bfcbdd!important;font-size:14px!important;line-height:1.6!important;font-weight:500!important}
.ad-public-site :is(.ad-investor-section-soft,.ad-threat-section-soft,.ad-pricing-section-soft) {background:var(--public-soft)}
.ad-public-site :is(.ad-investor-btn,.ad-threat-btn,.ad-pricing-btn) {border-radius:10px;box-shadow:none!important;font-weight:600!important;white-space:normal}
.ad-public-site :is(.ad-investor-page,.ad-threat-page,.ad-pricing) :is(.ad-investor-btn-primary,.ad-threat-btn-primary,.ad-pricing-btn-primary) {background:var(--public-blue)!important;border-color:var(--public-blue)!important;color:#fff!important}
.ad-public-site :is(.ad-investor-hero,.ad-threat-hero,.ad-pricing-hero) :is(.ad-investor-btn-ghost,.ad-threat-btn-ghost,.ad-pricing-btn-ghost) {background:transparent!important;border-color:#42536e!important;color:#e3eaf5!important}

/* Privacy text and archived posts keep every existing section and byline. */
body.ad-public-site #csai-industry-report {
  --csai-primary:var(--public-blue);--csai-primary-dark:#163ba6;--csai-primary-soft:#eef3ff;--csai-ink-dark:var(--public-ink);--csai-line:var(--public-line);
  background:#fff;padding:56px 0 76px;font-family:Inter,system-ui,sans-serif!important;
}
.ad-public-site #csai-industry-report :where(p,a,li,span,small,strong,td,th) {font-family:Inter,system-ui,sans-serif!important}
.ad-public-site #csai-industry-report .csai-wrap {width:min(1200px,calc(100% - 48px))}
.ad-public-site #csai-industry-report .csai-hero {max-width:none;background:var(--public-navy);padding:44px;border-radius:16px;text-align:left}
.ad-public-site #csai-industry-report .csai-hero h1 {margin:16px 0;color:#fff;font-family:'Space Grotesk',sans-serif!important;font-size:clamp(34px,4.3vw,54px)!important;font-weight:600!important}
.ad-public-site #csai-industry-report .csai-hero p {margin:0;color:#bfcbdd}
.ad-public-site #csai-industry-report .csai-pill {background:#142237;border-color:#314159;color:#adc7f3;box-shadow:none}
.ad-public-site #csai-industry-report :is(.csai-tabs-shell,.csai-card) {border-color:var(--public-line);border-radius:12px;box-shadow:none;background:#fff}
.ad-public-site #csai-industry-report .csai-tabs-bar {background:var(--public-soft)}
.ad-public-site #csai-industry-report .csai-tab-btn {border-radius:8px;font-weight:600}
.ad-public-site #csai-industry-report :is(h3,h4,h5) {font-family:'Space Grotesk',sans-serif!important;font-weight:600}
.ad-public-site .blog-card {width:min(960px,calc(100% - 48px));max-width:none;margin:56px auto 72px;padding:38px;border:1px solid var(--public-line);border-radius:16px;box-shadow:none}
.ad-public-site .blog-card>h1 {font-size:clamp(32px,4vw,46px)!important;color:var(--public-ink);line-height:1.15}
.ad-public-site .blog-card .blog-meta {color:var(--public-muted);font-size:13px;padding-bottom:24px;border-bottom:1px solid var(--public-line)}
.ad-public-site .blog-card .read-link {background:var(--public-blue);color:#fff;border-radius:10px;font-weight:600}
.ad-public-site .ad-public-architecture {width:min(1200px,calc(100% - 48px));max-width:1200px!important;margin:56px auto 72px;padding:0!important}
.ad-public-site .ad-public-architecture-hero a {color:#a7c3ff}

@media(max-width:780px) {
  .ad-public-site .ad-pricing .ad-pricing-flow {grid-template-columns:repeat(2,minmax(0,1fr))}
  .ad-public-site :is(.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-demo-page,.ad-auth-page,.ad-region-page) {padding:32px 20px 48px}
  .ad-public-site .ad-docs-nav {position:static}
  .ad-public-site .ad-docs-section {padding:22px}
  .ad-public-site :is(.ad-docs-hero,.ad-trust-hero,.ad-support-hero,.ad-partners-hero,.ad-region-header,.ad-public-architecture-hero) {padding:28px 24px;border-radius:12px}
  .ad-public-site .ad-publication .ad-pub-hero {padding:48px 0}
  .ad-public-site .ad-publication .ad-pub-hero .ad-pub-subtitle {font-size:16px!important}
  .ad-public-site .ad-publication .ad-pub-actions {width:100%}
  .ad-public-site .ad-publication .ad-pub-prose article {padding:32px 0}
  .ad-public-site :is(.ad-investor-hero,.ad-threat-hero,.ad-pricing-hero) {padding:48px 0}
  .ad-public-site :is(.ad-demo-copy,.ad-auth-copy) {padding:28px 24px}
}
@media(max-width:600px) {
  .ad-public-site .ad-pricing .ad-pricing-flow {grid-template-columns:1fr}
  .ad-public-site .ad-public .ap-wrap,.ad-public-site .ad-publication .ad-pub-container,
  .ad-public-site :is(.ad-investor-container,.ad-threat-container,.ad-pricing-container),
  .ad-public-site #csai-industry-report .csai-wrap {width:calc(100% - 40px)}
  .ad-public-site .ad-public :is(section,.ap-hero) {padding:48px 0}
  .ad-public-site .ad-public .ap-card {padding:22px}
  .ad-public-site .ad-public .ap-hero .ap-lead {font-size:16px}
  .ad-public-site :is(.blog-card,.ad-public-architecture) {width:calc(100% - 40px);margin:32px auto 48px}
  .ad-public-site .blog-card {padding:24px}
  .ad-public-site #csai-industry-report {padding:32px 0 48px}
  .ad-public-site #csai-industry-report .csai-hero {padding:28px 24px}
}
@media(prefers-reduced-motion:reduce) {
  .ad-public-site :is(.ad-public,.ad-publication,.ad-docs,.ad-trust,.ad-support,.ad-partners,.ad-region-page) * {scroll-behavior:auto!important;transition:none!important}
}
