/* Shared blue-and-white design language for every public route. */
.site2026 {
 --ink:#152646; --navy:#152646; --blue:#265eab; --cyan:#297aab;
 --body:#576780; --muted:#617087; --line:#e0e8f2; --line-soft:#edf1f7;
 --bg-soft:#f8faff; --bg-mist:#f3f7fc;
}
.site2026 .site-header { background:#ffffffed; border-color:#edf1f8; }
.site2026 .brand-text small { color:#446589; }
.site2026 .nav-links a { color:#576780; }
.site2026 .nav-links a:hover,.site2026 .nav-links .is-active { color:#245e9e; }
.site2026 .header-cta,.site2026 .button.primary { background:#172c4e; border-color:#172c4e; }
.site2026 .header-cta:hover,.site2026 .button.primary:hover { background:#284b7b; }
.site2026 .button.ghost { border-color:#d1dceb; color:#334c70; background:#fff9; }
.site2026 .button.ghost:hover { background:#f1f7fc; border-color:#7699c1; }
.site2026 .eyebrow { color:#416693; font-weight:500; letter-spacing:2px; }
.site2026 :where(a,button,input,select,textarea,summary):focus-visible { outline-color:#367eb6; }
.site2026 .inline-link,.site2026 .product-try,.site2026 .lightbox-original { color:#315f94; }
.site2026 .site-footer { background:#fff; border-color:#edf1f7; color:#576b86; gap:24px; }
.site2026 .site-footer>span:first-child,.site2026 .site-footer>a:first-child { color:#263f61; }
.site2026 .mobile-drawer,.site2026 .mobile-drawer a:not(.button) { border-color:#e1e8f2; }
.site2026 .mobile-drawer a:not(.button) { color:#334c70; }
.site2026 .mobile-drawer .is-active { color:#245e9e; text-decoration:underline; text-underline-offset:6px; }
.site2026 .menu-toggle { border-color:#dce6f3; color:#172c4e; }
.site-detail { background:#fff; }
.site-detail .one-page-stage { padding:154px 0 76px; min-height:calc(100vh - 95px); background:linear-gradient(180deg,#f2f7fd 0,#fff 420px); }
.site-detail .one-page-inner { gap:48px; }
.site-detail .one-page-head { max-width:none; text-align:center; padding:0 0 24px; }
.site-detail .one-page-head h1 { font-size:clamp(32px,3.4vw,48px); line-height:1.3; font-weight:600; letter-spacing:-1.5px; }
.site-detail .one-page-head .eyebrow { margin-bottom:22px; }
.site-detail .one-page-lead { max-width:640px; margin:22px auto 0; color:#60718a; font-size:16px; line-height:1.9; }
.site-detail .product-jump-links { justify-content:center; gap:12px; }
.site-detail .product-jump-links a { border-color:#dce5f0; color:#456487; border-radius:5px; background:#fff; }
.site-detail .product-jump-links a:hover { background:#f1f7fc; border-color:#9cb9d7; }
.site-detail .product-detail-row { border-color:#e1e8f2; padding:48px 0; gap:64px; align-items:center; }
.site-detail .product-detail-intro h2 { font-size:30px; font-weight:550; }
.site-detail .product-detail-intro>p:not(.eyebrow) { color:#60718a; font-size:15px; margin:18px 0; }
.site-detail .product-deliverables { background:#f6f9fd; border:0; border-radius:12px; padding:30px; }
.site-detail .product-columns h3 { color:#496b93; }
.site-detail .product-columns ul { color:#435b7b; }
.site-detail .review-reminder { border-color:#dce5f0; color:#60718a; }
.site-detail .review-reminder strong { color:#4d688b; }
.site-detail .demo-card { border-color:#e1e8f2; border-radius:12px; background:#fff; padding:16px 16px 24px; }
.site-detail .demo-card:hover { border-color:#9cb9d7; box-shadow:0 12px 32px #314a710c; transform:translateY(-2px); }
.site-detail .demo-card h2 { font-weight:550; font-size:22px; margin:22px 8px 8px; }
.site-detail .demo-card p { color:#60718a; margin:0 8px; font-size:14px; }
.site-detail .demo-card figure { border-color:#edf1f7; border-radius:6px; }
.site-detail .one-page-demo-grid { gap:32px; }
.site-detail .architecture-flow { gap:12px; padding:28px; border:1px dashed #aac2de; border-radius:12px; background:#f6f9fd; }
.site-detail .architecture-flow span { background:#fff; border-color:#dce5f0; color:#456487; box-shadow:none; border-radius:6px; }
.site-detail .architecture-flow span::after { color:#627b9a; }
.site-detail .boundary-check-grid { gap:0 36px; }
.site-detail .boundary-check-grid article { border:0; border-top:1px solid #e0e8f2; border-radius:0; background:transparent; padding:24px 0; }
.site-detail .boundary-check-grid strong { color:#304d73; font-size:16px; font-weight:550; }
.site-detail .boundary-check-grid span { color:#60718a; font-size:14px; line-height:1.9; }
.site-detail .deployment-facts { grid-template-columns:1fr; gap:24px; }
.site-detail .deployment-facts article { border:0; padding:30px; border-radius:12px; background:#f3f7fc; }
.site-detail .deployment-facts h2 { font-size:21px; font-weight:550; }
.site-detail .deployment-facts p { color:#576d89; font-size:14px; line-height:1.9; }
.site-detail .deployment-requirements { border-top:1px solid #e0e8f2; border-bottom:1px solid #e0e8f2; padding:20px 4px; }
.site-detail .deployment-requirements summary { cursor:pointer; color:#34577f; font-size:15px; }
.site-detail .deployment-requirements p { margin-bottom:0; }
.site-detail .one-page-steps { gap:32px; }
.site-detail .step { border:0; border-top:2px solid #d3e2f3; border-radius:0; background:none; padding:28px 0; }
.site-detail .step>span { background:#edf4fc; color:#416c9f; border-radius:8px; box-shadow:none; }
.site-detail .step h2 { font-size:24px; font-weight:550; }
.site-detail .step p { color:#60718a; font-size:14px; }
.site-detail .prep-grid b { color:#34577f; }
.site-detail .prep-grid span { color:#60718a; }
.site-detail .prep-grid>div { border-color:#e0e8f2; }
.site-detail .checklist-download { background:#f1f6fd; border-color:#d9e6f5; color:#315b8a; border-radius:10px; }
.site-detail .checklist-download:hover { background:#e9f2fc; }
.site-detail .checklist-download small { color:#586f8d; }
.site-detail .faq-list-compact { display:block; max-width:860px; width:100%; margin:0 auto; }
.site-detail .faq-list-compact details { background:transparent; border:0; border-bottom:1px solid #dde6f1; border-radius:0; padding:0; }
.site-detail .faq-list-compact details:first-child { border-top:1px solid #dde6f1; }
.site-detail .faq-list-compact summary { padding:26px 4px; color:#27476d; font-size:18px; font-weight:500; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.site-detail .faq-list-compact summary::-webkit-details-marker { display:none; }
.site-detail .faq-list-compact summary::after { content:'+'; flex-shrink:0; color:#43668f; font-size:22px; }
.site-detail .faq-list-compact details[open] summary::after { content:'−'; }
.site-detail .faq-list-compact p { margin:0; padding:0 36px 26px 4px; color:#60718a; font-size:15px; line-height:1.9; }
.site-detail .privacy-grid { max-width:920px; margin:auto; }
.site-detail .privacy-updated { max-width:920px; width:100%; margin:0 auto; color:#617087; font-size:13px; line-height:1.9; }
.site-detail .detail-next { background:#f5f8fc; border:0; border-radius:12px; padding:28px 32px; margin-top:12px; }
.site-detail .detail-next p { color:#3e597d; font-size:19px; }
@media(max-width:900px) {
 .site-detail .one-page-stage { padding-top:128px; }
 .site-detail .product-detail-row { gap:32px; }
 .site-detail .product-detail-intro h2 { font-size:26px; }
}
@media(max-width:600px) {
 .site-detail .one-page-stage { padding:116px 0 48px; }
 .site-detail .one-page-inner { gap:32px; }
 .site-detail .one-page-head { padding-bottom:8px; }
 .site-detail .one-page-head h1 { font-size:30px; letter-spacing:-1px; }
 .site-detail .one-page-lead { font-size:15px; margin-top:18px; }
 .site-detail .product-detail-row { padding:32px 0; gap:24px; }
 .site-detail .product-deliverables { padding:24px; }
 .site-detail .one-page-demo-grid { gap:24px; }
 .site-detail .demo-card { padding:12px 12px 20px; }
 .site-detail .demo-card h2 { font-size:20px; }
 .site-detail .architecture-flow { padding:20px; gap:10px; }
 .site-detail .boundary-check-grid { gap:0 20px; }
 .site-detail .boundary-check-grid article { padding:20px 0; }
 .site-detail .deployment-facts article { padding:24px; }
 .site-detail .step { padding:24px 0; }
 .site-detail .one-page-steps { gap:8px; }
 .site-detail .faq-list-compact summary { font-size:16px; padding:22px 4px; }
 .site-detail .faq-list-compact p { font-size:14px; padding-right:4px; }
 .site-detail .detail-next { padding:24px; }
 .site-detail .detail-next p { font-size:18px; }
 .site2026 .site-footer { gap:16px 24px; }
}
.site-detail .step>span { display:inline-grid; place-items:center; width:46px; height:46px; font-size:23px; line-height:1; margin-bottom:18px; }
.site-detail .boundary-check-grid span { font-weight:400; }
.site-detail .faq-list-compact details { box-shadow:none; }
/* Product reading size: normal body copy 18px, supporting text at least 16px. */
.products-page .one-page-lead { font-size:18px; }
.products-page .product-detail-intro>p:not(.eyebrow) { font-size:18px; line-height:1.9; color:#526681; }
.products-page .product-columns ul { font-size:18px; line-height:1.9; }
.products-page .product-columns h3,.products-page .review-reminder strong { font-size:16px; }
.products-page .review-reminder { font-size:16px; line-height:1.9; color:#526681; }
.products-page .product-try,.products-page .product-jump-links a,.products-page a.inline-link { font-size:16px; }
.products-page .product-detail-intro .eyebrow { font-size:14px; }
@media(max-width:600px) {
 .products-page .one-page-lead,.products-page .product-detail-intro>p:not(.eyebrow),.products-page .product-columns ul { font-size:17px; }
 .products-page .product-deliverables { padding:24px 20px; }
 .products-page .product-jump-links a { font-size:15px; }
}
