/* Shared public-site composition: full-width header surface, restrained navigation and reading width. */
body:not(.site-preview-mode) { background: #fff; color: #18243b; }
.site-header { border-bottom: 1px solid #e8edf4; background: rgba(255,255,255,.96); backdrop-filter: blur(16px); }
.site-header .site-nav { width: min(1600px, calc(100% - 64px)); max-width: none; height: 76px; grid-template-columns: auto minmax(0,1fr) 44px auto; gap: clamp(12px,1.7vw,28px); }
.site-brand { gap: 10px; font-size: 20px; font-weight: 780; letter-spacing: -.04em; }
.site-brand img { width: 33px; height: 33px; }
.site-nav > nav > ul { align-items: center; gap: clamp(2px,.5vw,9px); }
.site-nav > nav > ul > li > a { padding: 12px clamp(11px,.85vw,17px); border-radius: 10px; color: #42516a; font-size: 14px; font-weight: 650; }
.site-nav > nav > ul > li > a:hover { color: #2457f5; background: #f3f6ff; }
.site-nav > nav > ul > li > a[aria-current="page"] { color: #2457f5; background: #edf2ff; }
.site-nav > nav > ul > li > a::after { display: none; }
.site-nav > nav > ul > li:has(> .site-submenu-toggle) { display: flex; align-items: center; padding-right: 0; border-radius: 10px; }
.site-nav > nav > ul > li:has(> .site-submenu-toggle):hover,
.site-nav > nav > ul > li.is-submenu-open { background: #f3f6ff; }
.site-nav > nav > ul > li:has(> .site-submenu-toggle) > a { padding-right: 4px; background: transparent; }
.site-nav > nav > ul > li > .site-submenu-toggle { position: static; width: 28px; height: 32px; margin-right: 5px; border-radius: 7px; color: #65738b; }
.site-nav > nav > ul > li.is-submenu-open > .site-submenu-toggle { color: #2457f5; transform: rotate(180deg); }
.site-nav > nav > ul > li > ul { top: calc(100% + 8px); left: 0; min-width: 210px; padding: 8px; border-color: #e0e8f5; border-radius: 13px; box-shadow: 0 18px 40px rgba(22,42,80,.12); }
.site-nav > nav > ul > li > ul a { padding: 10px 12px; border-radius: 8px; color: #3d4c65; white-space: nowrap; }
.site-nav > nav > ul > li > ul a:hover { color: #2457f5; background: #f2f5ff; }
.site-nav > .site-member-nav { justify-self: end; margin-left: 0; }
.site-header-cta { padding: 11px 18px !important; border-radius: 10px !important; }
.site-channel-page .site-block > .site-container { width: min(1240px, calc(100% - clamp(36px, 7vw, 112px))); }
.site-channel-page .site-block-hero > .site-container { width: min(1480px, calc(100% - 40px)); max-width: none; }
.site-channel-page .site-block-hero { padding-top: 20px; }
.site-channel-page .site-block-hero .site-hero { border-radius: 22px; }
.site-channel-page .site-section-heading { align-items: end; margin-bottom: 34px; }
.site-channel-page .site-section-heading :is(h1,h2) { color: #17243d; font-size: clamp(32px, 3.25vw, 46px); font-weight: 760; letter-spacing: -.045em; }
.site-channel-page .site-section-heading p { max-width: 740px; color: #68768d; font-size: 16px; line-height: 1.75; }
.site-channel-page .site-section-heading > a { color: #3654dd; }
.site-channel-page .site-content-card, .site-channel-page .site-component-card, .site-channel-page .site-showcase-card { border-color: #e5eaf3; box-shadow: 0 14px 36px rgba(31,49,87,.045); }
.site-channel-page .site-content-card:hover, .site-channel-page .site-component-card:hover, .site-channel-page .site-showcase-card:hover { border-color: #cad6f4; box-shadow: 0 18px 42px rgba(35,62,119,.09); }
.site-footer { border-top: 0; background: #111e38; color: #aebbd0; text-align: left; }
.site-footer .site-container { width: min(1360px, calc(100% - clamp(40px, 7vw, 112px))); }
.site-footer-main { gap: clamp(36px, 6vw, 90px); padding: 68px 0 54px; }
.site-footer-identity strong { color: #fff; font-size: 25px; letter-spacing: -.035em; }
.site-footer-identity p { max-width: 340px; color: #aebbd0; line-height: 1.8; }
.site-footer-links { gap: 12px 28px; }
.site-footer-links a { color: #d2dded; }
.site-footer-contact small { color: #8295b2; }
.site-footer-bottom { border-top: 1px solid rgba(255,255,255,.12); color: #8fa0b9; }

/* Home: one clear promise, then a deliberate progression from value to product. */
.site-channel-home { background: #fff; }
.site-channel-home .site-block-hero > .site-container { width: min(1560px, calc(100% - 40px)); }
.site-channel-home .site-region-hero .site-hero:not(.has-media) { min-height: min(690px, calc(100svh - 110px)); padding: clamp(64px, 7vw, 104px) clamp(32px, 6vw, 100px); gap: clamp(44px, 6vw, 96px); border: 1px solid #e4e9fb; color: #192844; background: radial-gradient(circle at 90% 8%, #e4e7ff 0, transparent 32%), radial-gradient(circle at 10% 92%, #eaf4ff 0, transparent 36%), linear-gradient(135deg,#f9fbff,#f3f5ff 58%,#f7f8ff); }
.site-channel-home .site-region-hero .site-hero-content { align-items: flex-start; text-align: left; }
.site-channel-home .site-region-hero .site-hero-actions { justify-content: flex-start; }
.site-channel-home .site-region-hero .site-hero-eyebrow { display: inline-flex; align-items: center; gap: 10px; padding: 9px 13px; border: 1px solid #d9e1f8; border-radius: 999px; color: #4a5bd2; background: #fff; font-size: 11px; letter-spacing: .13em; opacity: 1; }
.site-channel-home .site-region-hero .site-hero-eyebrow::before { width: 7px; height: 7px; border-radius: 50%; background: #6368e8; content: ""; }
.site-channel-home .site-region-hero .site-hero h1 { color: #15223e; font-size: clamp(44px, 4.5vw, 72px); line-height: 1.12; }
.site-channel-home .site-region-hero .site-hero p { color: #586983; font-size: clamp(16px, 1.2vw, 19px); line-height: 1.85; opacity: 1; }
.site-channel-home .site-region-hero .site-hero-action { color: #fff; background: #505ce3; box-shadow: 0 14px 26px rgba(68,77,206,.18); }
.site-channel-home .site-region-hero .site-hero-action:hover { background: #3746cd; }
.site-channel-home .site-region-hero .site-hero-secondary { color: #34496b; border-color: #d7dfed; background: #fff; }
.site-channel-home .site-home-visual { max-width: 550px; border-color: #e0e6f5; background: #fff; box-shadow: 0 30px 70px rgba(39,59,112,.13); }
.site-channel-home .site-variant-trust { margin-top: -43px; }
.site-channel-home .site-variant-trust .site-trust-strip { border: 1px solid #e5eaf3; border-radius: 16px; background: #fff; box-shadow: 0 18px 42px rgba(27,45,82,.08); }
.site-channel-home .site-block:has(.site-product-bento) { padding: 110px 0; background: #fff; }
.site-channel-home .site-variant-solutions { padding: 100px 0; background: #f6f8fc; }
.site-channel-home .site-variant-process { padding: 100px 0 !important; }
.site-channel-home .site-variant-team { padding: 100px 0; background: #fff; }
.site-channel-home .site-variant-insights { padding: 96px 0; background: #f7f9fc; }
/* Both the modular and region-based page renderers use the same home composition. */
.site-channel-home .site-block-hero .site-hero:not(.has-media) { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); align-items: center; min-height: min(690px, calc(100svh - 110px)); padding: clamp(64px,7vw,104px) clamp(32px,6vw,100px); gap: clamp(44px,6vw,96px); border: 1px solid #e4e9fb; color: #192844; text-align: left; background: radial-gradient(circle at 90% 8%, #e4e7ff 0, transparent 32%), radial-gradient(circle at 10% 92%, #eaf4ff 0, transparent 36%), linear-gradient(135deg,#f9fbff,#f3f5ff 58%,#f7f8ff); }
.site-channel-home .site-block-hero .site-hero-content { align-items: flex-start; max-width: 690px; text-align: left; }
.site-template-corporate .site-channel-home .site-block-hero .site-hero:not(.has-media) .site-hero-content { align-items: flex-start; text-align: left; }
.site-channel-home .site-block-hero .site-hero-actions { justify-content: flex-start; }
.site-channel-home .site-block-hero .site-hero-eyebrow { display: inline-flex; align-items: center; gap: 10px; padding: 9px 13px; border: 1px solid #d9e1f8; border-radius: 999px; color: #4a5bd2; background: #fff; font-size: 11px; letter-spacing: .13em; opacity: 1; }
.site-channel-home .site-block-hero .site-hero-eyebrow::before { width: 7px; height: 7px; border-radius: 50%; background: #6368e8; content: ""; }
.site-channel-home .site-block-hero .site-hero h1 { color: #15223e; font-size: clamp(44px,4.5vw,72px); line-height: 1.12; }
.site-channel-home .site-block-hero .site-hero p { color: #586983; font-size: clamp(16px,1.2vw,19px); line-height: 1.85; opacity: 1; }
.site-channel-home .site-block-hero .site-hero-action { color: #fff; background: #505ce3; box-shadow: 0 14px 26px rgba(68,77,206,.18); }
.site-channel-home .site-block-hero .site-hero-secondary { color: #34496b; border-color: #d7dfed; background: #fff; }
.site-channel-home .site-block-hero .site-home-visual { max-width: 550px; border-color: #e0e6f5; background: #fff; box-shadow: 0 30px 70px rgba(39,59,112,.13); }

/* Home value cards: quiet surfaces and one soft focal card instead of a dark color block. */
.site-channel-home .site-block:has(.site-product-bento) { --home-card-accent: color-mix(in srgb,var(--site-primary) 28%,#626d83); background: #f8f9fc; }
.site-channel-home .site-product-heading > span { color: var(--home-card-accent); }
.site-channel-home .site-product-heading h2 { color: #222b43; }
.site-channel-home .site-product-heading p { color: #657188; }
.site-channel-home .site-product-bento { gap: 18px; }
.site-channel-home .site-product-card { position: relative; min-height: 248px; border-color: #e4e8f0; border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(42,52,87,.035); }
.site-channel-home .site-product-card:nth-child(1) { color: #243456; border-color: #dce2f1; background: radial-gradient(circle at 90% 15%,rgba(126,137,200,.13),transparent 35%),linear-gradient(145deg,#f0f2fa,#e9edf8); box-shadow: 0 12px 28px rgba(50,66,119,.055); }
.site-channel-home .site-product-card b,.site-channel-home .site-product-card:nth-child(1) b { display: inline-flex; align-items: center; min-width: 34px; height: 28px; margin: 0; padding: 0 7px; border: 1px solid #dce2ef; border-radius: 7px; color: var(--home-card-accent); background: #f7f8fc; font-size: 11px; letter-spacing: .08em; }
.site-channel-home .site-product-card:nth-child(1) b { border-color: #d0d8ed; background: rgba(255,255,255,.66); }
.site-channel-home .site-product-card h3,.site-channel-home .site-product-card:nth-child(1) h3 { margin-top: 34px; color: #26344e; }
.site-channel-home .site-product-card p,.site-channel-home .site-product-card:nth-child(1) p { color: #607087; }
.site-channel-home .site-product-card span,.site-channel-home .site-product-card:nth-child(1) span { color: #76839a; }
.site-channel-home .site-product-card:hover { border-color: #bdc9e4; box-shadow: 0 18px 42px rgba(42,58,103,.085); }

/* Interior pages share a quiet editorial entry; their content remains individually configured. */
.site-channel-team .site-block-hero .site-hero,
.site-channel-insights .site-block-hero .site-hero,
.site-channel-about .site-block-hero .site-hero { min-height: 390px; align-items: flex-start; justify-content: center; padding: clamp(58px,7vw,98px) clamp(34px,7vw,112px); border: 1px solid #e1e8f6; border-radius: 20px; color: #1b2945; text-align: left; background: radial-gradient(circle at 90% 15%,#e2e8ff,transparent 32%),linear-gradient(120deg,#f7faff,#edf3ff); }
.site-channel-team .site-block-hero .site-hero::before,
.site-channel-insights .site-block-hero .site-hero::before,
.site-channel-about .site-block-hero .site-hero::before { display: none; }
.site-channel-team .site-block-hero .site-hero-content,
.site-channel-insights .site-block-hero .site-hero-content,
.site-channel-about .site-block-hero .site-hero-content { width: min(790px,100%); max-width: 790px; align-items: flex-start; text-align: left; }
.site-channel-team .site-block-hero .site-hero-eyebrow,
.site-channel-insights .site-block-hero .site-hero-eyebrow,
.site-channel-about .site-block-hero .site-hero-eyebrow { color: #4d5fd2; opacity: 1; }
.site-channel-team .site-block-hero .site-hero h1,
.site-channel-insights .site-block-hero .site-hero h1,
.site-channel-about .site-block-hero .site-hero h1 { color: #182640; font-size: clamp(38px,4.4vw,64px); line-height: 1.16; letter-spacing: -.045em; }
.site-channel-team .site-block-hero .site-hero p,
.site-channel-insights .site-block-hero .site-hero p,
.site-channel-about .site-block-hero .site-hero p { max-width: 690px; color: #5b6c85; font-size: 17px; opacity: 1; }
.site-channel-team .site-block-hero .site-hero-action,
.site-channel-insights .site-block-hero .site-hero-action,
.site-channel-about .site-block-hero .site-hero-action { color: #fff; background: #505ce3; box-shadow: none; }
.site-channel-team .site-block-hero .site-hero-secondary,
.site-channel-insights .site-block-hero .site-hero-secondary,
.site-channel-about .site-block-hero .site-hero-secondary { color: #2f4264; border-color: #d4dff0; background: #fff; }
.site-channel-solutions .site-block-content_list:first-child { padding-top: 0; }
.site-channel-solutions .site-block-content_list:first-child > .site-container { padding-top: 68px; }
.site-channel-solutions .site-block-content_list:first-child .site-section-heading { align-items: flex-start; margin-bottom: 42px; padding: 64px clamp(32px,6vw,82px); border: 1px solid #e1e8f6; border-radius: 20px; background: radial-gradient(circle at 90% 15%,#e2e8ff,transparent 32%),linear-gradient(120deg,#f7faff,#edf3ff); }
.site-channel-solutions .site-block-content_list:first-child .site-section-heading > div { max-width: 850px; }
.site-channel-solutions .site-block-content_list:first-child .site-section-heading :is(h1,h2) { font-size: clamp(42px,4.6vw,62px); }
.site-channel-solutions .site-block-content_list:first-child .site-section-heading p { font-size: 18px; }
.site-channel-solutions .site-showcase-media { color: #2e4cc4; background: linear-gradient(145deg,#eef3ff,#e1eaff); }
.site-channel-solutions .site-showcase-card { border-color: #dfe6f5; border-radius: 17px; }
.site-docs-index-hero { margin: 20px 20px 0; padding: 64px 0 58px; border: 1px solid #e1e8f6; border-radius: 20px; text-align: left; background: radial-gradient(circle at 90% 15%,#e2e8ff,transparent 32%),linear-gradient(120deg,#f7faff,#edf3ff); }
.site-docs-index-hero .site-container { width: min(1240px,calc(100% - clamp(36px,7vw,112px))); }
.site-docs-index-hero span { color: #4d5fd2; }
.site-docs-index-hero h1 { margin: 15px 0 12px; color: #182640; font-size: clamp(40px,4.5vw,64px); letter-spacing: -.045em; }
.site-docs-index-hero p { color: #5b6c85; font-size: 17px; }
.site-docs-search { max-width: 680px; margin: 28px 0 0; box-shadow: 0 12px 30px rgba(31,49,87,.07); }
.site-docs-sections { width: min(1240px,calc(100% - clamp(36px,7vw,112px))); }

@media (max-width: 1050px) {
  .site-channel-home .site-region-hero .site-hero:not(.has-media) { min-height: 600px; padding: 64px 42px; gap: 30px; }
  .site-channel-home .site-block-hero .site-hero:not(.has-media) { min-height: 600px; padding: 64px 42px; gap: 30px; }
  .site-header .site-nav { width: calc(100% - 36px); }
}
@media (min-width: 1051px) and (max-width: 1250px) {
  .site-header .site-nav { width: calc(100% - 40px); grid-template-columns: auto minmax(0,1fr) 42px auto; gap: 10px; }
  .site-nav > nav > ul { gap: 0; }
  .site-nav > nav > ul > li > a { padding-right: 10px; padding-left: 10px; }
}
@media (min-width: 801px) and (max-width: 1050px) {
  .site-header .site-nav { grid-template-columns: minmax(0,1fr) 44px 44px; gap: 10px; }
  .site-nav > .site-member-nav { display: none; }
  .site-header-search { grid-column: 2; grid-row: 1; }
  .site-menu-toggle { width: 44px; height: 44px; display: grid; grid-column: 3; grid-row: 1; align-content: center; justify-items: center; gap: 4px; padding: 0; border: 0; border-radius: 10px; color: #344054; background: #f2f4f7; cursor: pointer; }
  .site-menu-toggle span { width: 17px; height: 1.5px; display: block; border-radius: 2px; background: currentColor; }
  .site-nav > nav { position: absolute; z-index: 30; top: calc(100% + 8px); right: 0; left: auto; width: min(340px,100%); display: block; max-height: calc(100dvh - 92px); overflow-y: auto; padding: 10px; border: 1px solid #e1e7ef; border-radius: 14px; background: #fff; box-shadow: 0 18px 44px rgba(30,48,79,.16); opacity: 0; visibility: hidden; pointer-events: none; }
  .site-header.is-menu-open .site-nav > nav { opacity: 1; visibility: visible; pointer-events: auto; }
  .site-nav > nav > ul { display: grid; gap: 2px; }
  .site-nav > nav > ul > li > a { padding: 11px 13px; border-radius: 9px; }
  .site-nav > nav > ul > li > a::after { display: none; }
  .site-nav > nav > ul > li:has(> .site-submenu-toggle) { display: block; padding-right: 0; }
  .site-nav > nav > ul > li:has(> .site-submenu-toggle) > a { padding-right: 44px; }
  .site-nav > nav > ul > li > .site-submenu-toggle { position: absolute; top: 8px; right: 4px; width: 32px; height: 32px; margin-right: 0; }
  .site-nav > nav > ul > li > ul { min-width: 0; }
  .site-nav > nav li ul { position: static; min-width: 0; margin: 2px 0 5px; padding: 0 0 0 14px; border: 0; box-shadow: none; }
  .site-mobile-nav-action { display: block; margin-top: 7px; padding-top: 8px; border-top: 1px solid #edf0f4; }
  .site-mobile-nav-action > a { display: flex !important; justify-content: space-between; padding: 11px 14px !important; border-radius: 10px !important; color: #fff !important; background: var(--site-primary) !important; font-weight: 700; }
}
@media (max-width: 800px) {
  .site-header .site-nav { width: 100%; height: 64px; grid-template-columns: minmax(0,1fr) 44px 44px; gap: 8px; padding: 0 14px; }
  .site-nav > nav { right: 14px; left: 14px; width: calc(100% - 28px); justify-self: stretch; max-height: calc(100dvh - 82px); overflow-y: auto; }
  .site-nav > nav > ul > li:has(> .site-submenu-toggle) { display: block; padding-right: 0; }
  .site-nav > nav > ul > li:has(> .site-submenu-toggle) > a { padding-right: 44px; }
  .site-nav > nav > ul > li > .site-submenu-toggle { position: absolute; top: 8px; right: 4px; width: 32px; height: 32px; margin-right: 0; }
  .site-nav > nav > ul > li > ul { min-width: 0; }
  .site-channel-page .site-block > .site-container { width: calc(100% - 36px); }
  .site-channel-page .site-block-hero > .site-container, .site-channel-home .site-block-hero > .site-container { width: calc(100% - 24px); }
  .site-channel-page .site-block-hero { padding-top: 12px; }
  .site-channel-page .site-block-hero .site-hero { border-radius: 16px; }
  .site-channel-home .site-region-hero .site-hero:not(.has-media) { min-height: 0; padding: 54px 28px 42px; }
  .site-channel-home .site-block-hero .site-hero:not(.has-media) { grid-template-columns: 1fr; min-height: 0; padding: 54px 28px 42px; }
  .site-channel-home .site-region-hero .site-hero h1 { font-size: clamp(38px, 8vw, 54px); }
  .site-channel-home .site-variant-trust { margin-top: -16px; }
  .site-channel-home .site-block:has(.site-product-bento), .site-channel-home .site-variant-solutions, .site-channel-home .site-variant-team, .site-channel-home .site-variant-insights { padding: 68px 0; }
  .site-channel-home .site-variant-process { padding: 68px 0 !important; }
  .site-footer .site-container { width: calc(100% - 40px); }
  .site-footer-main { padding: 52px 0 38px; }
  .site-channel-team .site-block-hero .site-hero,
  .site-channel-insights .site-block-hero .site-hero,
  .site-channel-about .site-block-hero .site-hero { min-height: 0; padding: 58px 28px; }
  .site-channel-team .site-block-hero .site-hero-content,
  .site-channel-insights .site-block-hero .site-hero-content,
  .site-channel-about .site-block-hero .site-hero-content { align-items: flex-start; text-align: left; }
  .site-channel-solutions .site-block-content_list:first-child > .site-container { padding-top: 48px; }
  .site-channel-solutions .site-block-content_list:first-child .site-section-heading { padding: 42px 28px; }
  .site-docs-index-hero { margin: 12px 12px 0; padding: 46px 0; border-radius: 16px; }
  .site-docs-index-hero .site-container,.site-docs-sections { width: calc(100% - 36px); }
}
@media (max-width: 520px) {
  .site-channel-home .site-region-hero .site-hero:not(.has-media) { padding: 46px 22px 34px; gap: 32px; }
  .site-channel-home .site-block-hero .site-hero:not(.has-media) { padding: 46px 22px 34px; gap: 32px; }
  .site-channel-home .site-region-hero .site-hero h1 { font-size: 39px; }
  .site-channel-home .site-region-hero .site-hero p { font-size: 15px; }
  .site-channel-page .site-section-heading { align-items: start; flex-direction: column; gap: 12px; }
  .site-channel-page .site-section-heading :is(h1,h2) { font-size: 32px; }
}

/* Keep dark surfaces for product previews and the footer, not editorial sections. */
.site-variant-process { color: #17243a; background: #f5f8fd; }
.site-variant-process .site-process-head h2 { color: #17243a; }
.site-variant-process .site-process-head p,
.site-variant-process .site-process-grid p { color: #52637c; }
.site-variant-process .site-process-head span,
.site-variant-process .site-process-grid b { color: #2457f5; }
.site-variant-process .site-process-grid article { border-color: #dce5f2; color: #17243a; background: #fff; box-shadow: 0 12px 32px rgba(24,48,87,.05); }
.site-variant-process .site-process-grid article:hover { background: #fff; }
.site-community-cta { border-color: #dce5f2; color: #17243a; background: #f5f8fd; }
.site-community-cta h2 { color: #17243a; }
.site-community-cta p { color: #52637c; }
.site-community-cta nav a { border-color: #cbd8ed; color: #2457f5; background: #fff; }
.site-community-cta nav a.primary { border-color: #2457f5; color: #fff; background: #2457f5; }
.site-edition-cta { border: 1px solid #dce5f2; color: #17243a; background: #f5f8fd; }
.site-edition-cta p { color: #52637c; }
.site-edition-cta a { border-color: #cbd8ed; color: #2457f5; background: #fff; }
.site-edition-cta a.primary { border-color: #2457f5; color: #fff; background: #2457f5; }
