/* ZHI Solution · product family / October 2026. Shared, buildless styles. */
:root { --b-ink:var(--text-primary); --b-muted:var(--text-secondary); --b-blue:var(--primary); --b-line:var(--border); }
[hidden] { display:none!important; }
.b-wrap { width:calc(100% - 96px); max-width:1376px; margin-inline:auto; }
.brand-page { color:var(--b-ink); background:var(--bg-base); }
.brand-page main { overflow:clip; }
.brand-page a { text-decoration:none; }
.brand-page main h1,.brand-page main h2,.brand-page main h3,.brand-page main h4 { color:inherit; letter-spacing:-.025em; }
.brand-page button,.brand-navigation button { font:inherit; cursor:pointer; }
.brand-page :focus-visible,.brand-navigation :focus-visible,.brand-footer :focus-visible { outline:3px solid #20a6d9; outline-offset:5px; }
.brand-page section[id],.brand-page article[id] { scroll-margin-top:100px; }
.b-kicker { display:block; color:var(--b-blue); font-size:13px; font-weight:700; letter-spacing:.13em; line-height:1.65; }
.b-section-head>.b-kicker,.b-hero-copy>.b-kicker,.b-page-hero>.b-wrap>.b-kicker { display:inline-block; padding:6px 16px; border-radius:999px; background:var(--primary-soft); color:var(--primary); letter-spacing:.5px; }
.b-section { padding:100px 0; }
.b-soft { background:linear-gradient(180deg,#f8fafc,#f1f5f9); }
/* Retain the product showcase layout in the site's original light palette. */
.b-dark { background:linear-gradient(135deg,#eff6ff,#f8fafc 60%,#ecfeff); color:var(--text-primary); }
.b-dark .b-kicker { color:var(--primary); }
.b-section-head { max-width:850px; margin-bottom:42px; }
.b-section-head h2 { margin:14px 0 20px; font-size:clamp(28px,3.1vw,44px); line-height:1.35; }
.b-section-head p { color:var(--b-muted); line-height:1.9; font-size:16px; max-width:760px; margin:0; }
.b-dark .b-section-head p { color:var(--text-secondary); }
.b-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin-top:30px; }
.b-button { display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:13px 25px; gap:16px; border:1px solid transparent; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); color:#fff!important; font-size:15px; font-weight:700; border-radius:10px; box-shadow:0 6px 18px rgba(37,99,235,.2); transition:background .2s,transform .2s; }
.b-button:hover { background:var(--primary-dark); transform:translateY(-2px); }
.b-button-light { color:var(--b-ink)!important; background:#fff; border-color:var(--border); box-shadow:none; }
.b-button-light:hover { background:#f0f6ff; }
.b-button-ghost { background:#fff; color:var(--primary)!important; border-color:#bfdbfe; box-shadow:none; }
.b-button-ghost:hover { background:var(--primary-soft); }
.b-text-link { display:inline-flex; align-items:center; color:var(--b-blue); font-size:15px; font-weight:700; line-height:1.7; }
.b-section-foot { display:flex; gap:30px; align-items:center; margin-top:32px; }
.b-tags { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.b-tags span { display:block; color:#4c6381; border:1px solid #dce6f2; border-radius:4px; padding:5px 11px; font-size:13px; line-height:1.6; }
.b-breadcrumb { display:flex; gap:10px; margin-bottom:30px; color:#6d7d93; font-size:14px; }

/* Navigation: all nine destinations are server-rendered in each page. */
.brand-navigation.site-header { height:80px; background:rgba(255,255,255,.97); }
.brand-navigation .container.nav { width:100%; max-width:none; height:80px; padding:0 32px; gap:24px; }
.brand-navigation .brand { flex:none; }
.brand-navigation .brand-logo { height:auto; width:202px; max-width:202px; }
.brand-navigation .nav-panel { gap:20px; }
.brand-navigation .nav-links { gap:4px; list-style:none; }
.brand-navigation .nav-links a { padding:25px 8px; font-size:18px; font-weight:700; border-radius:0; }
.brand-navigation .nav-links a:hover { background:transparent; }
.brand-navigation .nav-links a.active::after { bottom:12px; }
.brand-navigation .nav-cta { gap:16px; }
.brand-navigation .nav-home-education { display:none; }
@media(max-width:1599px) {
 .brand-navigation .nav-home-education { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; color:#1677c8; font-size:15px; font-weight:700; min-height:42px; white-space:nowrap; }
}
@media(max-width:480px) {
 .brand-home .brand-navigation .container.nav { padding:0 12px; gap:6px; }
 .brand-home .brand-navigation .brand-logo { width:120px; max-width:100%; }
 .brand-home .brand-navigation .brand-language-mobile { display:none; }
 .brand-home .brand-navigation .nav-home-education { font-size:14px; min-width:56px; }
 .brand-home .brand-navigation a.nav-cta-bar { min-width:72px; padding:9px 8px; font-size:13px; }
 .brand-home .brand-navigation .nav-toggle { width:32px; min-width:32px; }
}
@media(max-width:359px) { .brand-home .brand-navigation .brand-logo { width:96px; } }
.brand-navigation .nav-cta .nav-education-link { display:inline-flex; min-width:100px; min-height:42px; padding:10px 14px; font-size:15px; border-radius:5px; }
.brand-navigation .nav-cta .btn-primary { min-width:112px; font-size:16px; min-height:42px; padding:10px 16px; border-radius:5px; }
.brand-navigation .language-switch { font-size:15px; white-space:nowrap; border:0; background:none; width:auto; padding:0; }
.brand-navigation .nav-item-label { display:flex; align-items:center; }
.brand-navigation .mega-toggle { width:20px; height:40px; padding:0; background:none; border:0; color:#7c8da7; }
.brand-navigation .nav-item { position:static; }
.brand-navigation .brand-language-mobile { display:none; }
.brand-navigation .brand-mega { position:absolute; top:80px; left:0; right:0; padding:32px max(6vw,40px) 40px; border-top:1px solid var(--b-line); background:#fff; box-shadow:0 25px 40px #132b481a; color:var(--b-ink); z-index:1001; }
.brand-navigation .nav-item.is-mega-open .brand-mega { display:block; }
.brand-navigation .mega-lead { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--b-line); padding-bottom:20px; margin-bottom:20px; }
.brand-navigation .mega-lead strong { font-size:19px; }
.brand-navigation .mega-lead a { padding:0; color:var(--b-blue); font-size:14px; }
.brand-navigation .mega-body { display:grid; grid-template-columns:340px 1fr; gap:56px; max-width:1330px; margin:auto; }
.brand-navigation .mega-body [role=tablist] { display:flex; flex-direction:column; }
.brand-navigation .mega-body [role=tab] { display:flex; justify-content:space-between; align-items:center; padding:16px 18px; text-align:left; border:0; border-bottom:1px solid var(--b-line); background:none; color:var(--b-ink); font-size:17px; font-weight:700; border-radius:3px; }
.brand-navigation .mega-body [role=tab][aria-selected=true] { color:var(--b-blue); background:#f0f5ff; }
.brand-navigation .mega-panels { padding:20px 40px; background:linear-gradient(120deg,#f6f9ff,#f4fafb); border-radius:10px; }
.brand-navigation .mega-panels h2 { font-size:29px; margin:12px 0; max-width:650px; line-height:1.5; }
.brand-navigation .mega-panels p { max-width:700px; font-size:15px; color:var(--b-muted); line-height:1.9; }
.brand-navigation .mega-panels a { color:var(--b-blue); padding:0; font-size:15px; }
.brand-navigation .mega-panels .mega-content-link { display:block; color:inherit; font-size:inherit; font-weight:400; border-radius:6px; }
.mega-content-link:hover h2 { color:var(--primary); }
.mega-content-link:focus-visible { outline:2px solid #4c8ee8; outline-offset:7px; }
.brand-navigation .mega-panels .b-text-link + .b-text-link { margin-left:20px; }
.brand-navigation .mega-panels .b-tags>a { display:inline-flex; align-items:center; min-height:38px; padding:6px 12px; border:1px solid #d6e3f5; border-radius:5px; font-size:14px; line-height:1.6; color:#4c6381; transition:background .2s,color .2s; }
.brand-navigation .mega-panels .b-tags>a:hover,.brand-navigation .mega-panels .b-tags>a:focus-visible { background:#e7f0ff; color:var(--primary); border-color:#9fbff0; }
@media(min-width:1600px) {
 .brand-navigation .brand-mega { max-height:calc(100dvh - 80px); overflow-y:auto; overscroll-behavior:contain; }
 .brand-navigation .nav-toggle,.brand-navigation a.nav-cta-bar { display:none!important; }
 .brand-navigation .nav-panel { display:flex; visibility:visible!important; transform:none!important; pointer-events:auto!important; position:static; padding:0; height:auto; width:auto; overflow:visible; background:none; box-shadow:none; }
 .brand-navigation .nav-links { flex-direction:row; }
}
@media(max-width:1599px) {
 .brand-navigation .container.nav { padding:0 26px; gap:14px; }
 .brand-navigation .brand { flex:1; position:relative; z-index:2002; min-width:0; }
 .brand-navigation .nav-toggle { display:flex!important; position:relative; z-index:2002; order:4; }
 .brand-navigation a.nav-cta-bar { display:inline-flex!important; min-width:108px; padding:10px 16px; border-radius:5px; position:relative; z-index:2002; }
 .brand-navigation .brand-language-mobile { display:block; color:#42536c; font-weight:700; font-size:14px; position:relative; z-index:2002; }
 .brand-navigation .nav-panel { margin:0; position:fixed; inset:80px auto 0 0; width:min(92vw,440px); height:calc(100dvh - 80px); display:flex; flex-direction:column; align-items:stretch; gap:0; padding:18px 20px 32px; background:#fff; overflow-y:auto; visibility:hidden; transform:translateX(-105%); pointer-events:none; border-right:1px solid var(--b-line); box-shadow:10px 20px 40px #0d254321; z-index:2001; }
 .brand-navigation.nav-open .nav-panel { visibility:visible; transform:translateX(0); pointer-events:auto; }
 .brand-navigation .nav-links { flex-direction:column; width:100%; align-items:stretch; gap:0; }
 .brand-navigation .nav-item-label { justify-content:space-between; border-bottom:1px solid #eef1f5; }
 .brand-navigation .nav-links .nav-item-label>a { display:block; flex:1; padding:15px 10px; font-size:19px; }
 .brand-navigation .nav-links a.active::after { display:none; }
 .brand-navigation .mega-toggle { width:44px; height:50px; border-radius:5px; background:#f6f8fc; }
 .brand-navigation .brand-mega { position:static; padding:14px 0; box-shadow:none; border:0; }
 .brand-navigation .mega-lead { display:none; }
 .brand-navigation .mega-body { display:block; }
 .brand-navigation .mega-body [role=tab] { padding:12px 14px; font-size:15px; }
 .brand-navigation .mega-panels { padding:18px; margin-top:8px; }
 .brand-navigation .mega-panels h2 { font-size:19px; }
 .brand-navigation .mega-panels p { font-size:14px; }
 .brand-navigation .mega-panels a { font-size:14px; }
 .brand-navigation .nav-cta { display:flex; flex-direction:column; width:100%; padding-top:18px; margin-top:18px; border-top:1px solid var(--b-line); }
 .brand-navigation .nav-cta .language-switch { width:100%; justify-content:center; }
 .brand-navigation .nav-cta .btn-primary { display:none; }
}

/* Home hero and original architecture illustration. */
.b-home-hero { padding:136px 0 0; background:linear-gradient(125deg,#e2ecfa 0%,#edf3fc 65%,#ddecf5); }
.b-hero-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:50px; }
.b-hero-overline { margin:22px 0 16px; font-size:17px; letter-spacing:.07em; color:#425671; }
.b-hero-copy h1 { margin:0 0 25px; font-size:clamp(36px,4vw,62px); line-height:1.3; font-weight:700; }
.b-hero-copy h1>span { color:var(--primary); background:linear-gradient(135deg,var(--primary),var(--accent)); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.b-hero-desc { font-size:17px; color:var(--b-muted); line-height:1.95; max-width:580px; }
.b-hero-foot { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:38px; color:#6d7f95; font-size:12px; }
.b-hero-foot i { width:3px; height:3px; border-radius:50%; background:#9eafc1; }
.b-orbit { position:relative; background:radial-gradient(ellipse at 70% 0%,#e0f2fe,#f8fbff 65%); border:1px solid #cbdffd; border-radius:28px; box-shadow:0 24px 60px rgba(37,99,235,.12); overflow:hidden; color:var(--text-primary); }
.b-orbit-caption { display:flex; justify-content:space-between; gap:10px; padding:25px 25px 0; font-size:11px; letter-spacing:.1em; color:#536d90; }
.b-orbit-caption i { display:inline-block; width:5px; height:5px; background:#43d9df; border-radius:50%; margin-right:6px; }
.b-orbit-caption small { font-size:11px; letter-spacing:0; }
.b-orbit svg { display:block; width:100%; height:auto; }
.b-orbit-name,.b-orbit-en,.b-orbit-zgt { text-anchor:middle; fill:#fff; font-family:inherit; }
.b-orbit-name { font-size:21px; font-weight:700; }
.b-orbit-en { font-size:11px; fill:#475569; letter-spacing:.03em; }
.b-orbit-node circle { fill:#fff; }
.b-orbit-node .b-orbit-name { fill:var(--text-primary); }
.b-orbit svg>g[fill="none"] { stroke:#608fd0; stroke-opacity:.35; }
.b-orbit-core>path:first-child { fill:#eff6ff; stroke:#60a5fa; }
.b-orbit-zgt { font-size:33px; font-weight:700; }
.b-orbit-core .b-orbit-en { fill:#fff; }
.b-orbit-node { transition:filter .2s; }
.b-orbit a:hover .b-orbit-node { filter:drop-shadow(0 0 8px #4ad8ed); }
.b-orbit-footer { display:flex; justify-content:center; gap:14px; border-top:1px solid #d7e5f8; padding:18px; font-size:12px; color:var(--text-secondary); background:rgba(255,255,255,.65); }
.b-orbit-footer b { color:var(--primary); }
.b-orbit-motion { pointer-events:none; }
.b-orbit-glow { transform-origin:330px 260px; animation:b-orbit-breathe 6s ease-in-out infinite; }
.b-orbit-node { animation:b-orbit-float 7s ease-in-out infinite; animation-delay:var(--node-delay,0s); }
.b-orbit-node .b-orbit-node-halo { fill:none; stroke-width:1.5; opacity:0; animation:b-orbit-halo 6s ease-in-out infinite; animation-delay:var(--node-delay,0s); }
.b-orbit-trail { animation:b-orbit-track 24s linear infinite; opacity:.75; }
.b-orbit-trail-reverse { animation-duration:30s; animation-direction:reverse; }
.b-orbit-runner,.b-orbit-signal { offset-distance:0%; offset-rotate:0deg; filter:drop-shadow(0 0 3px #60a5fa88); }
.b-orbit-runner { animation:b-orbit-travel 24s linear infinite; }
.b-orbit-runner-reverse { animation-duration:30s; animation-direction:reverse; }
.b-orbit-signal { animation:b-orbit-travel var(--signal-duration,4s) ease-in-out infinite alternate; animation-delay:var(--signal-delay,0s); }
.b-orbit.is-orbit-paused * { animation-play-state:paused!important; }
.b-orbit-toggle { display:flex; align-items:center; gap:6px; margin:0 16px 12px auto; padding:5px 9px; background:#ffffffb3; color:#516b8d; border:1px solid #d7e5f8; border-radius:6px; font-size:11px!important; line-height:1.5; }
.b-orbit-toggle:hover { border-color:#93c5fd; color:var(--primary); }
.b-orbit-toggle:focus-visible { outline:3px solid #60a5fa; outline-offset:3px; }
@keyframes b-orbit-breathe { 0%,100% { opacity:.65; transform:scale(.95); } 50% { opacity:1; transform:scale(1.04); } }
@keyframes b-orbit-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-4px); } }
@keyframes b-orbit-halo { 0%,30%,100% { opacity:0; } 55% { opacity:.45; } }
@keyframes b-orbit-track { to { stroke-dashoffset:-100; } }
@keyframes b-orbit-travel { to { offset-distance:100%; } }
@media(prefers-reduced-motion:reduce) {
 .b-orbit * { animation:none!important; }
 .b-orbit-motion,.b-orbit-toggle { display:none; }
 .b-orbit-glow { opacity:.8; }
}
.b-hero-bottom { width:calc(100% - 96px); max-width:1376px; margin:48px auto 0; padding:18px 0; border-top:1px solid #dfe7f1; display:flex; justify-content:space-between; color:#7c8ba1; font-size:11px; letter-spacing:.04em; }
.b-hero-bottom a { color:#4c6789; }
.b-proof { border-bottom:1px solid var(--b-line); }
.b-proof>.b-wrap { display:grid; grid-template-columns:1.05fr repeat(4,1fr); padding:36px 0; gap:20px; }
.b-proof-intro { color:#6d7b90; font-size:18px; align-self:center; line-height:1.8; }
.b-proof-intro strong { color:var(--b-ink); }
.b-proof>.b-wrap>div:not(:first-child) { padding-left:24px; border-left:1px solid var(--b-line); display:flex; flex-direction:column; }
.b-proof strong { font-size:34px; line-height:1.3; font-weight:700; }
.b-proof .b-proof-intro strong { font-size:18px; }
.b-proof span { font-size:14px; margin:8px 0 5px; color:#3b4d67; }
.b-proof small { font-size:11px; color:#8692a4; line-height:1.7; }
.b-architecture { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.b-stack { display:flex; flex-direction:column; gap:10px; }
.b-stack>a { display:flex; align-items:center; padding:21px 24px; gap:20px; color:var(--b-ink); border:1px solid #dce5f0; border-left:3px solid var(--product-color); background:linear-gradient(100deg,#f4f8fd,#fff); border-radius:14px; transition:transform .2s; }
.b-stack>a:hover { transform:translateX(-6px); }
.b-stack>a>span { color:#9aaac0; font-size:13px; }
.b-stack strong { display:flex; min-width:160px; align-items:baseline; gap:10px; font-size:20px; }
.b-stack small { font-size:13px; color:var(--product-color); font-weight:400; }
.b-stack em { font-style:normal; font-size:17px; font-weight:500; line-height:1.65; color:var(--b-muted); }
.b-stack b { margin-left:auto; color:var(--product-color); }

/* Product selectors. */
.b-product-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-bottom:1px solid #cbdcf2; margin-bottom:44px; }
.b-product-tabs button { position:relative; display:flex; align-items:center; gap:10px; padding:20px 14px; color:var(--text-secondary); font-size:19px; border:0; background:none; white-space:nowrap; }
.b-product-tabs button>span { font-size:11px; color:#6a83a2; }
.b-product-tabs small { font-size:12px; font-weight:400; }
.b-product-tabs button[aria-selected=true] { color:var(--primary); }
.b-product-tabs button[aria-selected=true]::after { content:""; height:3px; background:linear-gradient(90deg,var(--primary),var(--accent)); position:absolute; left:12px; right:12px; bottom:-1px; }
.b-product-story { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding:16px 0; }
.b-product-story h3 { margin:12px 0 25px; font-size:45px; }
.b-product-story h3 em { font-style:normal; color:var(--primary); font-size:29px; margin-left:12px; }
.b-product-story h4 { font-size:23px; line-height:1.6; margin-bottom:16px; }
.b-product-story p { color:var(--text-secondary); font-size:15px; line-height:1.9; }
.b-dark .b-tags span { color:var(--text-secondary); border-color:#cbdffd; background:#fff; }
.b-product-story .b-button { margin-top:15px; }
.b-flow { padding:30px; border:1px solid #d7e4f3; background:linear-gradient(135deg,#f7faff,#edf7fc); border-radius:12px; color:var(--b-ink); position:relative; }
.b-product-visual { margin:0; min-width:0; width:100%; border:1px solid #d3e2f4; border-radius:26px; overflow:hidden; background:radial-gradient(ellipse at 65% 40%,#d8eefb88,transparent 65%),linear-gradient(145deg,#fff,#f1f7fd); box-shadow:0 28px 65px -38px #254e8b66,inset 0 1px #fff; color:#203957; }
.pv-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:24px 27px 18px; border-bottom:1px solid #dce8f4; }
.pv-header>span { display:flex; align-items:center; gap:10px; font-size:18px; font-weight:700; color:var(--visual-color); }
.pv-header i { width:7px; height:7px; border-radius:50%; background:var(--visual-color); box-shadow:0 0 0 5px #69b8df15; }
.pv-header small { font-size:12px; color:#7890aa; white-space:nowrap; }
.b-product-visual>svg { width:100%; height:auto; display:block; padding:12px 10px 0; overflow:visible; }
.b-product-visual svg text { font-family:inherit; text-anchor:middle; }
.pv-label { fill:#28425f; font-size:22px; font-weight:600; }
.pv-small { fill:#70859d; font-size:17px; }
.pv-core { fill:#fff; font-size:29px; font-weight:700; }
.pv-core-small { fill:#ecfaff; font-size:18px; }
.pv-node { filter:drop-shadow(0 5px 8px #234c7d0b); }
.pv-links { stroke-opacity:.4; stroke-dasharray:5 7; animation:pv-flow 24s linear infinite; }
.b-product-visual>figcaption { border-top:1px solid #dce8f4; padding:23px 25px; background:#ffffffa8; }
.b-product-visual figcaption>strong { display:block; color:#2b4869; font-size:19px; line-height:1.6; }
.b-product-visual figcaption>span { display:block; color:#7890a9; font-size:14px; line-height:1.8; margin-top:7px; }
@keyframes pv-flow { to { stroke-dashoffset:-144; } }
@media(max-width:767px) {
 .b-product-visual { border-radius:20px; }
 .pv-header { padding:19px 18px 16px; }
 .pv-header>span { font-size:16px; }
 .b-product-visual>svg { padding:9px 2px 0; }
 .b-product-visual>figcaption { padding:18px; }
 .b-product-visual figcaption>strong { font-size:17px; }
}
@media(prefers-reduced-motion:reduce) { .pv-links { animation:none; } }
.b-flow-label { display:flex; justify-content:space-between; gap:10px; border-bottom:1px solid #cfdeeb; padding-bottom:18px; margin-bottom:22px; font-size:12px; color:#5b799c; }
.b-flow-label small { font-size:11px; }
.b-flow-steps { display:grid; gap:12px; }
.b-flow-steps>div { display:flex; align-items:center; padding:20px; border:1px solid #d5e3f0; border-left:3px solid var(--product-color); border-radius:5px; background:#ffffffcc; gap:20px; position:relative; }
.b-flow-steps>div:not(:last-child)::after { content:"↓"; position:absolute; bottom:-15px; left:50%; z-index:1; color:#738db0; font-size:14px; }
.brand-home .b-flow-steps>div:not(:last-child)::after { content:none; display:none; }
.b-flow-steps span { font-size:12px; color:var(--product-color); }
.b-flow-steps strong { font-size:16px; }
.b-flow>p { color:#66809b; font-size:12px; text-align:center; margin:20px 0 0; line-height:1.8; }
.b-dark .b-flow { background:linear-gradient(145deg,#fff,#eff6ff); border-color:#cbdffd; box-shadow:var(--shadow-lg); }
.b-dark .b-flow-label { border-color:#d7e5f8; color:var(--text-secondary); }
.b-dark .b-flow-steps>div { background:#fff; border-color:#d7e5f8; border-left-color:var(--product-color); }
.b-dark .b-flow strong { color:var(--text-primary); }
.b-product-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.b-product-tile { position:relative; display:block; min-height:285px; background:#fff; border:1px solid var(--b-line); padding:25px 22px; border-top:3px solid var(--product-color); transition:transform .2s,box-shadow .2s; border-radius:20px; box-shadow:var(--shadow-sm); color:var(--b-ink); }
.b-product-tile:hover { transform:translateY(-5px); box-shadow:0 14px 28px #1c3b6512; }
.b-product-no { font-size:11px; color:#8697ae; letter-spacing:.07em; }
.b-product-tile h3 { font-size:29px; margin:30px 0 20px; }
.b-product-tile h3 small { display:block; font-size:15px; font-weight:400; color:var(--product-color); margin-top:3px; }
.b-product-tile>strong { font-size:13px; }
.b-product-tile p { font-size:13px; color:var(--b-muted); line-height:1.9; margin-top:10px; padding-bottom:18px; }
.b-page-hero { padding:160px 0 75px; background:linear-gradient(125deg,#eef4ff,#f8fafc 65%,#eef8f9); position:relative; }
.b-page-hero h1 { margin:22px 0; font-size:clamp(38px,4.4vw,64px); line-height:1.3; }
.b-page-hero h1 span { color:var(--b-blue); }
.b-page-hero p { max-width:760px; color:var(--b-muted); line-height:1.9; font-size:17px; }
.b-product-hero { padding:130px 0 70px; background:linear-gradient(125deg,#f0f6ff,#fff 70%); }
.b-product-hero h1 { font-size:68px; margin:20px 0 25px; line-height:1.2; }
.b-product-hero h1>span { display:block; font-size:32px; color:var(--product-color); font-weight:400; letter-spacing:-.02em; margin-top:10px; }
.b-product-hero h2 { font-size:26px; margin-bottom:18px; line-height:1.5; }
.b-product-hero p { color:var(--b-muted); line-height:1.95; font-size:15px; }
.b-capability-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 60px; }
.b-capability-grid article { border-top:1px solid var(--b-line); padding:30px 0; }
.b-capability-grid article>span { font-size:13px; color:var(--b-blue); }
.b-capability-grid h3 { display:inline; margin-left:18px; font-size:23px; }
.b-capability-grid p { margin:18px 0 0 36px; color:var(--b-muted); line-height:1.9; font-size:15px; }
.b-model-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.b-model-strip>a { color:var(--b-ink); border:1px solid var(--b-line); padding:30px; border-radius:8px; background:#f8faff; }
.b-model-strip span { font-size:24px; font-weight:700; }
.b-model-strip strong { display:inline-block; margin-left:10px; font-size:13px; color:var(--b-blue); }
.b-model-strip time { display:block; font-size:13px; color:#7c8ea7; margin-top:24px; }
.b-model-strip p { font-size:15px; margin-top:10px; }
.b-deployment { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.b-deployment-list>div { display:flex; gap:24px; padding:26px 0; border-bottom:1px solid var(--b-line); }
.b-deployment-list strong { color:var(--b-blue); font-size:15px; }
.b-deployment-list span { font-size:20px; font-weight:700; }
.b-deployment-list small { display:block; margin-top:10px; color:var(--b-muted); font-size:14px; font-weight:400; }

/* Industry and case presentation. */
.b-industry-tabs { display:flex; gap:36px; border-bottom:1px solid var(--b-line); margin-bottom:35px; }
.b-industry-tabs button { position:relative; border:0; background:none; padding:18px 0 20px; color:#7b8ba1; font-size:23px; font-weight:700; white-space:nowrap; }
.b-industry-tabs small { display:block; font-size:11px; letter-spacing:.08em; font-weight:400; margin-top:8px; }
.b-industry-tabs button[aria-selected=true] { color:var(--b-blue); }
.b-industry-tabs button[aria-selected=true]::after { content:""; position:absolute; inset:auto 0 -1px; height:3px; background:var(--b-blue); }
.b-industry-heading { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-bottom:30px; }
.b-industry-heading h3 { margin-top:12px; font-size:27px; }
.b-industry-heading>a { flex-shrink:0; }
.b-scene-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.b-scene { padding:30px; border:1px solid var(--b-line); background:#fff; border-radius:20px; box-shadow:var(--shadow-sm); display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.b-scene h3 { font-size:24px; margin:24px 0 16px; }
.b-scene p { font-size:15px; color:var(--b-muted); line-height:1.95; margin-bottom:15px; }
.b-scene .b-text-link { margin-top:auto; padding-top:20px; }
.b-status { font-size:11px; letter-spacing:.08em; color:#59789e; background:#eff5fd; padding:4px 9px; border-radius:3px; }
.b-sector-hero { padding:135px 0 80px; background:linear-gradient(120deg,#eef4fd,#f7fafc); position:relative; overflow:hidden; }
.b-sector-hero>.b-wrap { position:relative; }
.b-sector-hero h1 { font-size:62px; margin:20px 0; }
.b-sector-hero h2 { font-size:29px; max-width:900px; position:relative; z-index:1; }
.b-sector-hero p { max-width:730px; color:var(--b-muted); line-height:1.9; margin-top:20px; position:relative; z-index:1; }
.b-sector-hero .b-actions { position:relative; z-index:1; }
.b-sector-watermark { position:absolute; right:0; top:-30px; font-size:340px; line-height:1; font-weight:700; color:var(--sector-color); opacity:.055; pointer-events:none; }
.b-route-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.b-route-grid>a { border:1px solid var(--b-line); background:#fff; padding:28px; border-radius:6px; color:var(--b-ink); }
.b-route-grid>a>span { color:var(--b-blue); font-size:13px; }
.b-route-grid h3 { margin:22px 0 12px; font-size:23px; }
.b-route-grid p { color:var(--b-muted); line-height:1.8; font-size:14px; }
.b-delivery-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; }
.b-delivery-steps article { border-top:2px solid #d5e3f4; padding:22px 0; }
.b-delivery-steps span { font-size:14px; color:var(--b-blue); }
.b-delivery-steps h3 { font-size:21px; margin:20px 0 14px; }
.b-delivery-steps p { font-size:15px; color:var(--b-muted); line-height:1.9; }
.b-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.b-case { display:block; border:1px solid var(--b-line); background:#fff; border-radius:20px; overflow:hidden; color:var(--b-ink); transition:transform .2s; box-shadow:var(--shadow-sm); }
.b-case:hover { transform:translateY(-5px); }
.b-case-art { position:relative; height:195px; overflow:hidden; background:linear-gradient(135deg,#eff6ff,#dbeafe); display:grid; place-items:center; }
.b-case-art>span { position:relative; font-size:68px; color:var(--primary); font-weight:700; z-index:1; text-shadow:15px 12px 0 #2563eb0d; }
.b-case-art>i { position:absolute; border:1px solid #93c5fd80; width:180px; height:180px; transform:rotate(30deg); }
.b-case-art>i:nth-child(3) { width:260px; height:260px; transform:rotate(30deg) translateX(45px); }
.b-case-art>i:nth-child(4) { width:350px; height:350px; transform:rotate(30deg) translateX(-40px); }
.b-case-audit { background:linear-gradient(135deg,#f0fdfa,#cffafe); }
.b-case-audit>span { color:var(--accent-dark); }
.b-case-industry { background:linear-gradient(135deg,#f5f3ff,#ede9fe); }
.b-case-industry>span { color:var(--purple); }
.b-case-copy { padding:28px; }
.b-case-copy h3 { font-size:22px; margin:14px 0; }
.b-case-copy p { font-size:15px; color:var(--b-muted); line-height:1.9; margin-bottom:24px; }
.b-company-feature { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.b-company-image { position:relative; }
.b-company-image img { width:100%; height:440px; object-fit:cover; border-radius:8px; }
.b-company-image>span { position:absolute; left:24px; bottom:25px; font-size:12px; background:#0d2641d9; color:#fff; padding:12px 16px; letter-spacing:.13em; }
.b-global-mini { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:30px 0; padding:24px 0; border-top:1px solid var(--b-line); border-bottom:1px solid var(--b-line); }
.b-global-mini a { color:var(--b-ink); }
.b-global-mini strong { display:block; font-size:36px; font-weight:700; color:var(--b-blue); }
.b-global-mini small { font-size:13px; margin-left:6px; }
.b-global-mini span { color:var(--b-muted); font-size:12px; }
.b-editorial-grid,.b-news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.b-editorial,.b-news-grid>a { display:flex; flex-direction:column; }
.b-editorial>.b-text-link,.b-news-grid>a>.b-text-link { margin-top:auto; align-self:flex-start; }
.b-news-grid>a>p { font-size:15px; color:var(--b-muted); line-height:1.9; margin:0 0 24px; }
.b-editorial { color:var(--b-ink); border-top:2px solid #cbdcf2; padding:25px 0 0; }
.b-editorial h3 { font-size:24px; line-height:1.6; margin:20px 0 16px; }
.b-editorial p { font-size:15px; color:var(--b-muted); line-height:1.9; margin-bottom:24px; }
.b-news-grid>a { color:var(--b-ink); border-top:1px solid var(--b-line); padding:26px 0; }
.b-news-grid time { font-size:13px; color:#7f90a7; }
.b-news-grid h3 { font-size:20px; line-height:1.7; margin:20px 0; }
.b-news-section { padding-top:65px; padding-bottom:65px; }

/* Research: public materials only; no fabricated paper or patent entries. */
.b-research-directions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.b-research-directions article { border-top:1px solid #cbdffd; padding-top:24px; }
.b-research-directions article>span { color:var(--primary); font-size:13px; }
.b-research-directions h3 { margin:24px 0 16px; font-size:23px; }
.b-research-directions p { color:var(--text-secondary); font-size:15px; line-height:1.9; }
.b-publication-filter { display:flex; align-items:center; justify-content:flex-end; gap:12px; font-size:14px; color:var(--b-muted); margin-bottom:24px; }
.b-publication-filter select { padding:8px 32px 8px 12px; border:1px solid #d7e0ec; border-radius:4px; background:#fff; font:inherit; }
.b-report-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.b-report-grid>a { color:var(--b-ink); }
.b-report-grid>a>div:last-child { padding:24px 0; }
.b-report-cover { min-height:270px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:40px; padding:30px; color:var(--primary-dark); background:linear-gradient(135deg,#eff6ff,#e0f2fe); border:1px solid #bfdbfe; position:relative; overflow:hidden; border-radius:20px; }
.b-report-cover::after { content:""; position:absolute; width:240px; height:240px; border:1px solid #57a2e64d; transform:rotate(35deg); right:-95px; bottom:-90px; }
.b-report-cover>span { font-size:11px; letter-spacing:.18em; }
.b-report-cover strong { max-width:250px; font-size:27px; line-height:1.5; }
.b-report-cover small { font-size:12px; color:var(--text-secondary); }
.b-report-grid h3 { font-size:20px; margin:14px 0; }
.b-report-grid p { font-size:15px; color:var(--b-muted); line-height:1.9; margin-bottom:20px; }
.b-empty { padding:60px 30px; border:1px solid var(--b-line); background:#fff; border-radius:7px; text-align:center; }
.b-empty>span { font-size:13px; color:#8095b1; }
.b-empty h3 { font-size:25px; margin:18px 0; }
.b-empty p { font-size:15px; color:var(--b-muted); margin:0 auto 22px; max-width:560px; line-height:1.9; }
.b-collaboration { display:grid; grid-template-columns:1.1fr 1fr; gap:90px; align-items:center; }
.b-partner-list strong { display:block; padding:24px 0; border-bottom:1px solid var(--b-line); font-size:24px; }
.b-partner-list span { display:block; font-size:14px; color:#8193ac; font-weight:400; margin-top:10px; }
.b-cta { padding:60px 0; color:var(--text-primary); background:linear-gradient(135deg,#eff6ff,#f0f9ff 55%,#ecfeff); border-block:1px solid #dbeafe; }
.b-cta>.b-wrap { display:flex; justify-content:space-between; gap:40px; align-items:center; }
.b-cta .b-kicker { color:var(--primary); }
.b-cta h2 { color:var(--text-primary); font-size:32px; margin:16px 0; line-height:1.5; }
.b-cta p { color:var(--text-secondary); font-size:15px; line-height:1.8; max-width:680px; }
.b-cta .b-actions { margin:0; flex-shrink:0; }

/* A common footer keeps deep knowledge and article pages connected to products. */
.brand-footer { background:#f4f7fb; padding:65px 0 0; color:#52657e; }
.b-footer-grid { display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr; gap:45px; }
.b-footer-grid img { width:195px; height:auto; margin-bottom:20px; }
.b-footer-grid p { font-size:14px; line-height:1.9; margin-bottom:22px; }
.b-footer-grid h3 { font-size:15px; color:#1f3554; margin-bottom:22px; }
.b-footer-grid a { display:block; color:#61728a; font-size:13px; line-height:1.7; margin-bottom:11px; text-decoration:none; }
.b-footer-grid a:hover { color:var(--b-blue); }
.b-footer-grid .b-footer-phone { color:#1d467d; font-size:22px; font-weight:700; }
.b-footer-offices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; border-top:1px solid #dce4ee; margin-top:40px; padding:28px 0; font-size:12px; color:#8190a6; line-height:1.9; }
.b-footer-bottom { border-top:1px solid #dce4ee; display:flex; justify-content:space-between; gap:16px; padding:20px 0; color:#96a2b3; font-size:11px; }

/* Bridge the retained detail pages into the new product family. */
.b-legacy-family { padding:70px 0; background:#f2f6fc; }
.b-legacy-family .b-product-grid { margin-top:30px; }
.b-architecture-applications { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.b-architecture-applications article { padding:32px; border:1px solid #d5e3f4; border-radius:20px; background:linear-gradient(135deg,#fff,#f1f7ff); }
.b-architecture-applications h3 { font-size:25px; line-height:1.5; margin:18px 0; }
.b-architecture-applications p { color:var(--text-secondary); font-size:15px; line-height:1.9; }
.b-architecture-applications ul { padding-left:18px; margin:22px 0; font-size:14px; color:#58708f; line-height:2; }
@media(max-width:767px) {
 .b-architecture-applications { grid-template-columns:1fr; gap:18px; }
 .b-architecture-applications article { padding:24px; }
 .b-architecture-applications h3 { font-size:22px; }
 .b-architecture-applications p { font-size:15px; }
}
.b-legacy-hero { padding:140px 0 65px; background:linear-gradient(120deg,#eff5ff,#f8fafc); }
.b-legacy-hero h1 { font-size:clamp(34px,4vw,56px); line-height:1.35; margin:20px 0; }
.b-legacy-hero p { max-width:800px; color:var(--b-muted); font-size:16px; line-height:1.9; }
.b-news-hero { padding-bottom:38px; background:radial-gradient(ellipse at 90% 5%,#d6e9fd99,transparent 58%),linear-gradient(130deg,#eef4ff,#f7faff 65%,#edf7fb); }
.news-hero-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:75px; align-items:center; }
.b-news-hero h1 { font-size:clamp(36px,3.6vw,56px); line-height:1.4; margin:24px 0; }
.b-news-hero h1>span { color:var(--primary); }
.news-hero-copy>p { max-width:560px; font-size:17px; }
.news-hero-topics { display:flex; flex-wrap:wrap; gap:22px; margin-top:29px; color:#7991ad; font-size:13px; }
.news-hero-topics>span { padding-left:12px; border-left:2px solid #b7d3f4; }
.news-hero-picks { min-width:0; }
.news-hero-lead { position:relative; display:block; isolation:isolate; padding:30px; overflow:hidden; border-radius:24px; color:#fff; background:radial-gradient(ellipse at 100% 0,#1e7191aa,transparent 70%),linear-gradient(135deg,#143567,#142848); box-shadow:0 25px 50px -30px #17375977; border:1px solid #254a73; }
.news-hero-lead::before { content:""; position:absolute; width:260px; height:260px; border:1px solid #88c8f327; border-radius:50%; right:-110px; top:-110px; z-index:-1; box-shadow:0 0 0 35px #93cafa08,0 0 0 70px #93cafa05; }
.news-pick-label { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.news-pick-label>span { font-size:12px; color:#a3d8f2; letter-spacing:.07em; }
.news-pick-label>small { flex:none; font-size:12px; color:#d6e9ff; padding:5px 10px; border:1px solid #a0c7f43d; border-radius:6px; }
.news-pick-overline { display:block; margin-top:30px; font-size:11px; letter-spacing:.12em; color:#83a9cf; }
.b-news-hero .news-hero-lead h2 { color:#fff; font-size:27px; line-height:1.65; margin:13px 0 15px; }
.b-news-hero .news-hero-lead p { color:#c1d3e8; font-size:15px; line-height:1.9; margin:0; }
.news-pick-foot { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:25px; padding-top:20px; border-top:1px solid #a1c4ec30; }
.news-pick-foot>strong { color:#d7f3ff; font-size:14px; }
.news-pick-foot>time { color:#8faecc; font-size:12px; }
.news-hero-lead:hover { border-color:#4f8bc0; }
.news-hero-lead:hover .news-pick-foot>strong { text-decoration:underline; text-underline-offset:5px; }
.news-hero-briefs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:16px; }
.news-hero-briefs>a { border:1px solid #d9e5f5; border-radius:15px; padding:19px; background:#ffffffb5; transition:border-color .2s; }
.news-hero-briefs>a:hover { border-color:#8eb8eb; }
.news-hero-briefs span { color:#467fc1; font-size:12px; }
.news-hero-briefs h3 { color:#3b5573; font-size:16px; line-height:1.8; margin:9px 0 0; }
.news-filter-row { display:flex; align-items:center; gap:30px; justify-content:space-between; margin-top:44px; border:1px solid #d8e6f6; border-radius:16px; background:#ffffffdb; padding:20px 24px; }
.news-filter-row>span { font-size:15px; font-weight:600; color:#577495; flex:none; }
.news-filter-row .filter-bar { justify-content:flex-start; margin:0; gap:9px; }
.news-filter-row .filter-chip { flex:none; }
.news-filter-row .filter-chip.active { box-shadow:none; }
@media(max-width:1100px) { .news-hero-grid { gap:35px; }.news-filter-row { display:block; }.news-filter-row .filter-bar { margin-top:16px; } }
@media(max-width:767px) {
 .news-hero-grid { grid-template-columns:1fr; gap:32px; }
 .b-news-hero h1 { font-size:clamp(32px,8vw,40px); margin:20px 0; }
 .news-hero-copy>p { font-size:15px; }
 .news-hero-lead { padding:23px; border-radius:20px; }
 .news-pick-label { gap:10px; }.news-pick-label>span { font-size:10px; }.news-pick-label>small { font-size:11px; padding:4px 7px; }
 .b-news-hero .news-hero-lead h2 { font-size:22px; }
 .b-news-hero .news-hero-lead p { font-size:14px; }
 .news-hero-briefs { grid-template-columns:1fr; gap:12px; }
 .news-hero-briefs>a { padding:18px; }
 .news-hero-briefs h3 { font-size:16px; }
 .news-filter-row { margin-top:26px; padding:18px; }
 .news-filter-row .filter-bar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; width:100%; }
 .news-filter-row .filter-chip { min-width:0; padding:10px 5px; font-size:13px; }
}
.b-stories-hero { padding-bottom:38px; background:radial-gradient(ellipse at 85% 18%,#d9eefb99,transparent 55%),linear-gradient(120deg,#edf3ff,#f6faff 70%,#eef8fb); }
.stories-hero-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:65px; align-items:center; }
.stories-hero-copy { min-width:0; }
.b-stories-hero h1 { font-size:clamp(34px,3.4vw,52px); letter-spacing:-.03em; line-height:1.45; margin:25px 0; }
.b-stories-hero h1>span { color:var(--primary); }
.stories-hero-copy>p { max-width:620px; font-size:17px; }
.stories-reading { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:28px; color:#7b91ab; font-size:13px; }
.stories-reading i { width:3px; height:3px; border-radius:50%; background:#90b1d8; }
.stories-map { min-width:0; border:1px solid #cddff4; border-radius:25px; background:#ffffffc9; padding:27px; box-shadow:0 24px 55px -32px #31548255,inset 0 1px #fff; }
.stories-map-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:22px; border-bottom:1px solid #e0eaf6; }
.stories-map-head>span { color:#6185b1; font-size:12px; letter-spacing:.09em; }
.stories-map-head>small { color:#7b94ae; font-size:12px; }
.stories-map-items { display:grid; gap:14px; padding:23px 0; }
.stories-direction { --story-color:#377fde; display:flex; align-items:center; gap:18px; padding:19px; border:1px solid #dce8f8; border-radius:16px; background:linear-gradient(115deg,#f2f7ff,#fff); transition:transform .2s,border-color .2s; }
.stories-direction:hover { transform:translateX(-3px); border-color:#9cbeec; }
.stories-symbol { display:grid; place-items:center; flex:none; height:52px; width:52px; border-radius:16px; background:var(--story-color); color:#fff; font-size:24px; box-shadow:0 8px 16px -10px var(--story-color); }
.stories-business { --story-color:#7864cf; }
.stories-industrial { --story-color:#0c95a5; }
.b-stories-hero .stories-direction h2 { font-size:22px; color:#274462; margin:0 0 5px; line-height:1.5; }
.b-stories-hero .stories-direction p { font-size:14px; margin:0; color:#788fa9; line-height:1.7; }
.stories-direction-label { margin-left:auto; font-size:12px; color:var(--story-color); white-space:nowrap; }
.stories-map-foot { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; border-top:1px solid #e0eaf6; padding-top:20px; font-size:13px; }
.stories-map-foot>span { color:#8296ad; }
.stories-map-foot>strong { color:#4e729b; font-weight:500; }
.stories-filter-row { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:48px; padding:20px 24px; background:#ffffffd9; border:1px solid #d9e6f6; border-radius:16px; }
.stories-filter-row>span { color:#4f6c8d; font-size:15px; font-weight:600; flex:none; }
.stories-filter-row .filter-bar { margin:0; gap:10px; justify-content:flex-start; flex-wrap:nowrap; overflow-x:auto; }
.stories-filter-row .filter-chip { flex:none; }
.stories-filter-row .filter-chip.active { box-shadow:none; }
@media(max-width:1100px) { .stories-hero-grid { gap:30px; }.stories-direction-label { display:none; } }
@media(max-width:767px) {
 .stories-hero-grid { grid-template-columns:1fr; gap:32px; }
 .b-stories-hero h1 { font-size:clamp(29px,7vw,38px); margin-block:20px; }
 .stories-hero-copy>p { font-size:15px; }
 .stories-map { padding:20px; border-radius:20px; }
 .stories-map-head { gap:8px; }.stories-map-head>span { font-size:10px; }.stories-map-head>small { font-size:11px; }
 .stories-direction { padding:16px; gap:14px; }
 .stories-symbol { width:44px; height:44px; border-radius:13px; font-size:22px; }
 .b-stories-hero .stories-direction h2 { font-size:20px; }
 .b-stories-hero .stories-direction p { font-size:13px; }
 .stories-filter-row { display:block; padding:18px; margin-top:25px; }
 .stories-filter-row .filter-bar { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:15px; padding:0; overflow:visible; }
 .stories-reading { margin-top:22px; font-size:12px; gap:8px; }
}
.b-linked-products { display:flex; gap:10px; flex-wrap:wrap; margin:20px 0; }
.b-linked-products a { font-size:13px; padding:8px 12px; color:var(--b-blue); background:#eaf2ff; border:1px solid #d9e7fa; border-radius:4px; }
.b-knowledge-tools { padding:24px; background:#f0f5fc; border:1px solid #dbe6f4; border-radius:8px; margin:25px 0; display:flex; gap:18px; align-items:center; }
.b-knowledge-tools label { font-size:15px; font-weight:700; }
.b-knowledge-tools input { font:inherit; min-width:0; flex:1; padding:12px 16px; border:1px solid #cfdded; border-radius:5px; background:#fff; }
.b-knowledge-empty { padding:30px; text-align:center; color:var(--b-muted); }
@media(max-width:1100px) {
 .b-wrap { width:calc(100% - 64px); }
 .b-hero-grid { gap:30px; }
 .b-home-hero { padding-top:120px; }
 .b-hero-copy h1 { font-size:40px; }
 .b-hero-desc { font-size:15px; }
 .b-orbit-caption { flex-direction:column; }
 .b-proof>.b-wrap { grid-template-columns:repeat(2,1fr); }
 .b-proof-intro { display:none; }
 .b-proof>.b-wrap>div:not(:first-child) { padding-left:16px; }
 .b-section { padding:75px 0; }
 .b-architecture,.b-company-feature,.b-deployment,.b-collaboration { gap:38px; }
 .b-stack>a { padding:18px 14px; gap:10px; }
 .b-stack strong { min-width:0; flex-direction:column; font-size:18px; gap:2px; }
 .b-stack em { margin-left:auto; font-size:16px; }
 .b-product-tabs button { flex-wrap:wrap; column-gap:8px; padding:18px 8px; font-size:18px; }
 .b-product-tabs small { width:100%; padding-left:23px; }
 .b-product-story { gap:35px; }
 .b-product-story h3 { font-size:33px; }
 .b-product-story h3 em { display:block; margin:8px 0 0; font-size:22px; }
 .b-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .b-product-tile { min-height:265px; }
 .b-product-grid .b-product-tile:nth-child(n+4) { grid-column:auto; }
 .b-scene { padding:24px; }
 .b-scene h3 { font-size:22px; }
 .b-scene-grid,.b-case-grid,.b-editorial-grid,.b-news-grid { gap:18px; }
 .b-case-copy { padding:22px; }
 .b-company-image img { height:460px; }
 .b-company-feature .b-section-head h2 { font-size:30px; }
 .b-global-mini strong { font-size:30px; }
 .b-route-grid,.b-research-directions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .b-cta>.b-wrap { align-items:flex-start; flex-direction:column; gap:25px; }
 .b-footer-grid { gap:26px; grid-template-columns:1.5fr 1fr 1fr 1fr; }
}
@media(max-width:767px) {
 .b-wrap { width:calc(100% - 40px); }
 .b-section { padding:56px 0; }
 .b-section-head { margin-bottom:28px; }
 .b-section-head h2 { font-size:29px; margin:12px 0 16px; }
 .b-section-head p { font-size:15px; }
 .b-kicker { font-size:11px; letter-spacing:.1em; }
 .b-home-hero { padding-top:120px; }
 .b-hero-grid,.b-architecture,.b-product-story,.b-company-feature,.b-deployment,.b-collaboration { grid-template-columns:1fr; gap:32px; }
 .b-hero-overline { font-size:14px; margin-top:17px; }
 .b-hero-copy h1 { font-size:clamp(29px,6.9vw,46px); line-height:1.4; }
 .b-hero-desc { font-size:15px; }
 .b-hero-foot { font-size:11px; margin-top:24px; }
 .b-actions { gap:10px; margin-top:24px; }
 .b-button { min-height:46px; padding:11px 18px; font-size:14px; }
 .b-orbit { border-radius:12px; }
 .b-orbit-caption { flex-direction:row; font-size:9px; padding:18px 16px 0; }
 .b-orbit-caption small { font-size:9px; }
 .b-orbit-footer { font-size:11px; gap:10px; padding:14px; }
 .b-hero-bottom { width:calc(100% - 40px); margin-top:28px; font-size:9px; gap:12px; }
 .b-proof>.b-wrap { grid-template-columns:repeat(2,1fr); gap:24px 18px; padding:27px 0; }
 .b-proof>.b-wrap>div:not(:first-child) { padding-left:0; border:0; }
 .b-proof strong { font-size:30px; }
 .b-proof span { font-size:13px; }
 .b-proof small { font-size:10px; }
 .b-stack>a { display:grid; grid-template-columns:22px minmax(0,1fr); padding:17px; gap:8px 12px; }
 .b-stack strong { flex-direction:row; gap:8px; }
 .b-stack em { grid-column:2; margin-left:0; font-size:16px; }
 .b-product-tabs { display:flex; overflow-x:auto; overflow-y:hidden; gap:8px; margin-bottom:26px; scrollbar-width:none; -ms-overflow-style:none; }
 .b-product-tabs::-webkit-scrollbar { display:none; width:0; height:0; }
 .b-product-tabs button { flex:0 0 auto; display:grid; grid-template-columns:16px auto; gap:5px; min-width:110px; padding:15px 8px; font-size:18px; text-align:left; }
 .b-product-tabs small { grid-column:2; padding:0; font-size:11px; }
 .b-product-story h3 { font-size:32px; margin-bottom:20px; }
 .b-product-story h3 em { display:inline; font-size:22px; margin-left:8px; }
 .b-product-story h4 { font-size:21px; }
 .b-product-story p { font-size:15px; }
 .b-flow { padding:22px 18px; }
 .b-flow-steps>div { padding:17px; }
 .b-flow-steps strong { font-size:15px; }
 .b-flow-label { font-size:10px; }
 .b-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .b-product-tile { padding:19px 17px; min-height:250px; }
 .b-product-tile h3 { margin-top:27px; font-size:27px; }
 .b-product-tile h3 small { font-size:14px; }
 .b-product-tile>strong { font-size:12px; }
 .b-product-tile p { font-size:12px; }
 .b-product-grid .b-product-tile:last-child { grid-column:1 / -1; min-height:200px; }
 .b-product-grid .b-product-tile:last-child h3 { display:flex; align-items:baseline; gap:12px; }
 .b-product-grid .b-product-tile:last-child h3 small { display:inline; }
 .b-industry-tabs { gap:25px; overflow-x:auto; margin-bottom:26px; scrollbar-width:thin; }
 .b-industry-tabs button { font-size:19px; padding:15px 0; }
 .b-industry-tabs small { font-size:9px; }
 .b-industry-heading { display:block; margin-bottom:24px; }
 .b-industry-heading h3 { font-size:23px; line-height:1.5; margin-bottom:18px; }
 .b-scene-grid,.b-case-grid,.b-editorial-grid,.b-news-grid,.b-report-grid,.b-model-strip { grid-template-columns:1fr; gap:18px; }
 .b-scene { padding:25px; }
 .b-scene h3 { margin-top:18px; }
 .b-scene .b-tags { margin:10px 0; }
 .b-case-art { height:180px; }
 .b-case-copy h3 { font-size:21px; }
 .b-company-image img { height:auto; aspect-ratio:1.45; }
 .b-company-image>span { left:15px; bottom:15px; font-size:10px; }
 .b-global-mini strong { font-size:32px; }
 .b-global-mini span { font-size:11px; }
 .b-section-foot { gap:24px; flex-wrap:wrap; }
 .b-editorial h3 { font-size:22px; margin-top:15px; }
 .b-editorial { padding-top:22px; }
 .b-editorial p { margin-bottom:18px; }
 .b-page-hero { padding:130px 0 55px; }
 .b-page-hero h1 { font-size:37px; }
 .b-page-hero p { font-size:15px; }
 .b-product-hero { padding:112px 0 50px; }
 .b-product-hero h1 { font-size:52px; }
 .b-product-hero h1>span { font-size:26px; }
 .b-product-hero h2 { font-size:23px; }
 .b-product-hero p { font-size:15px; }
 .b-breadcrumb { font-size:12px; margin-bottom:24px; }
 .b-capability-grid { grid-template-columns:1fr; }
 .b-capability-grid h3 { font-size:21px; }
 .b-capability-grid p { font-size:15px; }
 .b-sector-hero { padding:120px 0 55px; }
 .b-sector-hero h1 { font-size:43px; }
 .b-sector-hero h2 { font-size:24px; line-height:1.5; }
 .b-sector-hero p { font-size:15px; }
 .b-sector-watermark { font-size:260px; top:0; right:-20px; }
 .b-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .b-route-grid>a { padding:22px 18px; }
 .b-route-grid h3 { font-size:20px; }
 .b-route-grid p { font-size:13px; }
 .b-delivery-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .b-delivery-steps h3 { font-size:19px; }
 .b-delivery-steps p { font-size:14px; }
 .b-research-directions { gap:26px 20px; }
 .b-research-directions h3 { font-size:20px; line-height:1.5; }
 .b-research-directions p { font-size:13px; }
 .b-report-cover { min-height:240px; }
 .b-empty { padding:35px 20px; }
 .b-empty h3 { font-size:22px; }
 .b-partner-list strong { font-size:22px; }
 .b-cta { padding:45px 0; }
 .b-cta h2 { font-size:27px; }
 .b-cta p { font-size:14px; }
 .b-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 25px; }
 .b-footer-grid>div:first-child { grid-column:1 / -1; }
 .b-footer-grid img { width:175px; }
 .brand-footer { padding-top:45px; }
 .b-footer-offices { grid-template-columns:1fr; gap:15px; }
 .b-footer-bottom { flex-direction:column; gap:8px; }
 .b-legacy-family { padding:50px 0; }
 .b-legacy-hero { padding:120px 0 45px; }
 .b-legacy-hero p { font-size:15px; }
 .b-knowledge-tools { flex-direction:column; align-items:stretch; padding:18px; gap:12px; }
 .b-knowledge-tools input { width:100%; }
}
@media(max-width:600px) {
 .brand-navigation .container.nav { padding:0 12px; gap:9px; }
 .brand-navigation .brand-logo { width:134px; max-width:134px; }
 .brand-navigation a.nav-cta-bar { min-width:0; padding:10px 12px; font-size:15px; gap:0; }
 .brand-navigation a.nav-cta-bar svg { display:none; }
 .brand-navigation .nav-toggle { width:35px; height:35px; border-radius:5px; }
 .brand-navigation .brand-language-mobile { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) {
 .brand-page *, .brand-navigation * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* Homepage depth: task entry points, worked examples and tangible deliverables. */
.b-model-release-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.b-model-release { --model-accent:#2563eb; padding:26px; background:linear-gradient(140deg,#fff,#f8fbff); border:1px solid #cbdffd; border-radius:20px; min-width:0; scroll-margin-top:110px; }
.b-model-release-audit { --model-accent:#7c3aed; border-color:#ddd0fa; background:linear-gradient(140deg,#fff,#f5f1ff); }
.b-model-release-industry { --model-accent:#0891b2; border-color:#bce8ee; background:linear-gradient(140deg,#fff,#effcfd); }
.b-model-release-heading { display:flex; gap:14px; align-items:center; justify-content:space-between; }
.b-model-release-heading h3 { font-size:23px; line-height:1.5; margin:0; }
.b-model-version { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:14px; line-height:1.4; color:var(--model-accent); background:#fff; border:1px solid color-mix(in srgb,var(--model-accent) 25%,white); border-radius:999px; padding:5px 10px; white-space:nowrap; }
.b-model-code { display:block; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:14px; letter-spacing:.02em; color:#677c99; margin:13px 0 23px; overflow-wrap:anywhere; }
.b-model-domain { font-size:15px; color:var(--text-primary); margin-bottom:12px; line-height:1.7; }
.b-model-description { color:var(--text-secondary); font-size:13px; line-height:1.9; }
.b-model-date { display:flex; justify-content:space-between; gap:12px; margin-top:25px; padding-top:18px; border-top:1px solid #dce6f3; font-size:12px; color:#7286a1; }
.b-model-date time { color:#4c6587; font-variant-numeric:tabular-nums; }
.b-model-changelog { border-top:1px solid #dce6f3; margin-top:16px; }
.b-model-changelog summary { display:flex; justify-content:space-between; gap:16px; cursor:pointer; padding:16px 0 0; color:var(--model-accent); font-size:14px; font-weight:700; list-style:none; }
.b-model-changelog summary::-webkit-details-marker { display:none; }
.b-model-changelog summary b { display:inline-block; margin-left:8px; font-weight:400; transition:transform .2s; }
.b-model-changelog[open] summary b { transform:rotate(45deg); }
.b-model-changelog>div { padding-top:18px; }
.b-model-changelog>div>p { color:#7b8da4; font-size:12px; margin-bottom:12px; }
.b-model-changelog ul { list-style:none; display:flex; gap:8px; flex-wrap:wrap; padding:0; margin:0 0 18px; }
.b-model-changelog li { font-size:13px; line-height:1.6; padding:5px 10px; border-radius:5px; background:#ffffffb3; border:1px solid #e0e8f2; color:#465e7f; }
.b-model-changelog .b-text-link { font-size:13px; }
.b-model-version-note { font-size:12px; color:#798ca5; line-height:1.9; margin:20px 0 0; }
.about-model-card .b-model-code { margin:8px 0 18px; font-size:13px; }
.about-model-card a.b-model-release-link { display:block; font-size:13px; margin-top:14px; }
@media(max-width:767px) {
 .b-model-release-grid { grid-template-columns:1fr; gap:14px; }
 .b-model-release { padding:23px; }
 .b-model-release-heading h3 { font-size:22px; }
 .b-model-code { font-size:13px; }
 .b-model-version-note { font-size:11px; }
}
.brand-home .b-section { padding:76px 0; }
.brand-home .b-section-head { margin-bottom:32px; }
.b-home-tasks { padding:40px 0 48px; background:#fff; border-bottom:1px solid var(--border); }
.b-home-task-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:24px; }
.b-home-task-heading h2 { font-size:25px; margin-top:10px; }
.b-home-task-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.b-home-task-grid>a { padding:20px 16px; border:1px solid #dbe6f5; border-radius:14px; color:var(--text-primary); background:linear-gradient(145deg,#fff,#f5f9ff); transition:border-color .2s,transform .2s; }
.b-home-task-grid>a:hover { border-color:var(--primary-light); transform:translateY(-3px); }
.b-home-task-index { font-size:12px; color:#8aa4c8; }
.b-home-task-grid h3 { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:16px; margin:16px 0 12px; line-height:1.5; }
.b-home-task-grid h3 b { color:var(--primary); font-size:15px; font-weight:400; }
.b-home-task-grid p { font-size:13px; line-height:1.85; color:var(--text-secondary); }
.b-home-architecture-points { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 26px; margin-top:30px; }
.b-home-architecture-points strong { display:block; color:var(--primary-dark); font-size:15px; margin-bottom:9px; }
.b-home-architecture-points p { color:var(--text-secondary); font-size:13px; line-height:1.9; }
.b-home-product-points { list-style:none; display:grid; gap:15px; margin:24px 0 12px; padding:0; }
.b-home-product-points li { display:grid; grid-template-columns:125px 1fr; gap:16px; padding-left:14px; border-left:2px solid #93c5fd; }
.b-home-product-points strong { font-size:14px; color:var(--primary-dark); line-height:1.9; }
.b-home-product-points span { font-size:13px; line-height:1.9; color:var(--text-secondary); }
.b-home-models { margin-top:46px; padding-top:32px; border-top:1px solid #cbdff8; }
.b-home-models-head { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:22px; }
.b-home-models-head h3 { font-size:22px; line-height:1.6; margin-top:8px; }
.b-home-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.b-home-model-grid>a { border:1px solid #cbdffd; border-radius:16px; background:#ffffffb3; padding:24px; color:var(--text-primary); }
.b-home-model-grid>a>div { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.b-home-model-grid strong { font-size:21px; }
.b-home-model-grid>a>div>span { color:var(--primary); }
.b-home-model-grid h4 { font-size:14px; margin:17px 0 10px; font-weight:400; }
.b-home-model-grid p { font-size:13px; color:var(--text-secondary); line-height:1.8; }
.b-home-model-grid .b-home-model-audit { border-color:#d9ccf5; background:linear-gradient(135deg,#fff,#f5f1ff); }
.b-home-model-grid .b-home-model-industry { border-color:#bce8ee; background:linear-gradient(135deg,#fff,#effcfd); }
.b-home-workflow { background:#fff; }
.b-home-workspace { border:1px solid #d6e5f6; border-radius:22px; background:linear-gradient(145deg,#fbfdff,#f1f7ff); padding:30px; box-shadow:var(--shadow-md); }
.b-home-workspace .b-industry-tabs { margin-bottom:28px; gap:36px; }
.b-home-workspace .b-industry-tabs button { font-size:18px; padding:8px 0 16px; }
.b-home-work-input { display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:36px; padding-bottom:28px; }
.b-home-work-input>div>span { color:var(--primary); font-size:12px; }
.b-home-work-input h3 { font-size:24px; line-height:1.6; margin-top:10px; }
.b-home-work-input>p { border-left:1px solid #d4e1f2; padding-left:28px; color:var(--text-secondary); font-size:14px; line-height:1.9; }
.b-home-work-input>p>strong { display:block; color:#6c83a4; font-size:12px; font-weight:400; margin-bottom:9px; }
.b-home-work-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; padding:0; list-style:none; }
.b-home-work-steps li { position:relative; padding:22px; border:1px solid #d8e5f6; border-radius:14px; background:#fff; }
.b-home-work-steps li:not(:last-child)::after { content:""; position:absolute; right:-17px; top:31px; font-size:17px; color:var(--primary-light); z-index:1; }
.b-home-work-steps li>span { display:inline-grid; place-items:center; width:31px; height:31px; background:var(--primary-soft); color:var(--primary); font-size:13px; font-weight:700; border-radius:9px; }
.b-home-work-steps h4 { font-size:17px; margin:17px 0 12px; line-height:1.5; }
.b-home-work-steps p { font-size:13px; line-height:1.9; color:var(--text-secondary); }
.b-home-work-output { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid #d3e2f5; margin-top:28px; padding-top:24px; }
.b-home-work-output>div>span { display:block; font-size:12px; color:#7085a1; margin-bottom:9px; }
.b-home-work-output strong { display:block; font-size:15px; color:var(--primary-dark); line-height:1.8; }
.b-home-work-output>a { flex-shrink:0; }
.brand-home .b-case-art { height:155px; }
.b-home-case-details { display:grid; gap:13px; padding:19px 0; margin:0 0 17px; border-top:1px solid #e3eaf3; }
.b-home-case-details>div { display:grid; grid-template-columns:60px 1fr; gap:12px; }
.b-home-case-details dt { color:#8092aa; font-size:12px; line-height:1.9; }
.b-home-case-details dd { color:var(--text-secondary); font-size:13px; line-height:1.9; margin:0; }
.b-home-delivery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.b-home-delivery-grid article { display:flex; flex-direction:column; align-items:flex-start; padding:30px; border:1px solid #dce6f3; border-radius:20px; background:#fff; box-shadow:var(--shadow-sm); }
.b-home-delivery-index { font-size:11px; letter-spacing:.12em; color:#8aa0be; }
.b-home-delivery-grid h3 { font-size:27px; margin:23px 0 12px; }
.b-home-delivery-grid h4 { font-size:16px; line-height:1.7; margin-bottom:14px; }
.b-home-delivery-grid article>p { font-size:14px; line-height:1.9; color:var(--text-secondary); }
.b-home-delivery-grid ul { list-style:none; padding:20px 0; margin:0; display:grid; gap:10px; }
.b-home-delivery-grid li { position:relative; padding-left:15px; color:var(--text-secondary); font-size:14px; line-height:1.8; }
.b-home-delivery-grid li::before { content:""; position:absolute; width:5px; height:5px; top:9px; left:0; border-radius:50%; background:var(--accent); }
.b-home-delivery-result { width:100%; padding:18px 0; margin-top:auto; border-top:1px solid #dce6f3; }
.b-home-delivery-result span { font-size:11px; color:#8598b0; display:block; margin-bottom:9px; }
.b-home-delivery-result strong { font-size:13px; color:#3c567a; line-height:1.9; font-weight:400; }
.b-home-delivery-grid .b-text-link { margin-top:14px; }
.b-home-delivery-assurance { display:flex; gap:22px; flex-wrap:wrap; align-items:center; padding:22px 0 0; color:#637a98; font-size:13px; }
.b-home-delivery-assurance strong { color:var(--text-primary); font-weight:700; }
.b-home-delivery-assurance>a { margin-left:auto; font-size:13px; }
.b-home-company-proof { display:flex; gap:9px; flex-wrap:wrap; align-items:center; margin:0 0 25px; }
.b-home-company-proof>span { width:100%; color:#8194af; font-size:12px; margin-bottom:4px; }
.b-home-company-proof>a { color:#4b6586; font-size:12px; line-height:1.6; padding:6px 10px; border:1px solid #d8e5f5; border-radius:6px; background:#f8fbff; }
@media(max-width:1200px) {
 .b-home-task-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .b-home-product-points li { grid-template-columns:1fr; gap:4px; }
 .b-home-work-input { gap:25px; }
 .b-home-work-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .b-home-work-steps li::after { display:none; }
 .b-home-delivery-grid article { padding:25px; }
}
@media(max-width:767px) {
 .brand-home .b-section { padding:52px 0; }
 .brand-home .b-section-head { margin-bottom:26px; }
 .b-home-tasks { padding:30px 0 35px; }
 .b-home-task-heading { display:block; }
 .b-home-task-heading h2 { font-size:23px; line-height:1.5; margin-bottom:15px; }
 .b-home-task-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .b-home-task-grid>a { padding:17px 13px; }
 .b-home-task-grid h3 { font-size:15px; gap:4px; margin:12px 0 10px; }
 .b-home-task-grid p { font-size:12px; }
 .b-home-architecture-points { gap:19px; margin-top:24px; }
 .b-home-architecture-points strong { font-size:15px; }
 .b-home-architecture-points p { font-size:12px; }
 .b-home-product-points li { grid-template-columns:1fr; gap:4px; }
 .b-home-models { margin-top:32px; padding-top:25px; }
 .b-home-models-head { display:block; }
 .b-home-models-head h3 { font-size:20px; margin-bottom:13px; }
 .b-home-model-grid { grid-template-columns:1fr; gap:12px; }
 .b-home-model-grid>a { padding:22px; }
 .b-home-model-grid strong { font-size:21px; }
 .b-home-model-grid h4 { margin-top:12px; }
 .b-home-workspace { padding:22px 18px; border-radius:18px; }
 .b-home-workspace .b-industry-tabs { gap:25px; margin-bottom:23px; }
 .b-home-workspace .b-industry-tabs button { font-size:16px; }
 .b-home-work-input { grid-template-columns:1fr; gap:18px; padding-bottom:22px; }
 .b-home-work-input h3 { font-size:21px; }
 .b-home-work-input>p { padding-left:14px; font-size:13px; }
 .b-home-work-steps { gap:12px; }
 .b-home-work-steps li { padding:16px 13px; }
 .b-home-work-steps h4 { font-size:15px; margin:14px 0 10px; }
 .b-home-work-steps p { font-size:12px; }
 .b-home-work-output { display:block; margin-top:22px; padding-top:20px; }
 .b-home-work-output strong { font-size:15px; }
 .b-home-work-output>a { margin-top:15px; }
 .b-home-delivery-grid { grid-template-columns:1fr; gap:16px; }
 .b-home-delivery-grid article { padding:25px; }
 .b-home-delivery-grid h3 { margin-top:19px; }
 .b-home-delivery-assurance { gap:12px 16px; }
 .b-home-delivery-assurance strong { width:100%; }
 .b-home-delivery-assurance>a { margin:5px 0 0; width:100%; }
}

/* Editorial photography: locally hosted, with explicit scene captions. */
.b-team-public-records { margin-top:60px; padding-top:45px; border-top:1px solid #d5e2f3; }
.footer-partner-line + .footer-partner-line { margin-top:10px; }
.contact-partner-highlight .contact-partner-line + .contact-partner-line { margin-top:16px; padding-top:16px; border-top:1px solid #8ebcec44; }
.b-team-record-head h3 { font-size:29px; margin:12px 0 14px; line-height:1.5; }
.b-team-record-head>p { font-size:16px; color:var(--text-secondary); line-height:1.8; }
.b-public-record-list { list-style:none; padding:0; margin:30px 0 0; border-top:1px solid #d5e2f3; }
.b-public-record-list>li { display:grid; grid-template-columns:170px minmax(0,1fr) auto; align-items:start; gap:28px; padding:30px 0; border-bottom:1px solid #d5e2f3; }
.b-public-record-date time { display:block; color:#2862ac; font-size:17px; font-weight:700; }
.b-public-record-date span { display:block; margin-top:0; font-size:15px; color:#597897; line-height:1.7; }
.b-public-record-body h4 { font-size:22px; color:#18314f; line-height:1.6; margin:0 0 12px; }
.b-public-record-body p { font-size:15px; color:#536c87; line-height:1.9; margin:8px 0; }
.b-public-record-body .b-public-record-source { color:#7a8da5; font-size:14px; }
.b-public-record-list>li>a { color:var(--primary); font-size:15px; font-weight:700; padding:6px 0; white-space:nowrap; }
@media(max-width:767px) {
 .b-public-record-list>li { grid-template-columns:1fr; gap:14px; padding:25px 0; }
 .b-public-record-date { display:flex; align-items:center; flex-wrap:wrap; gap:10px 18px; }
 .b-public-record-date span { margin-top:0; }
 .b-public-record-body h4 { font-size:20px; }
 .b-public-record-list>li>a { justify-self:start; }
}
.b-team-record-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:28px; }
.b-team-record { border:1px solid #d9e5f4; border-radius:20px; background:#fff; padding:30px; min-width:0; }
.b-team-record h3 { font-size:28px; margin:16px 0; }
.b-team-record>p { font-size:15px; color:var(--text-secondary); line-height:1.9; min-height:90px; }
.b-team-record ul { list-style:none; padding:0; margin:24px 0 0; }
.b-team-record li { border-top:1px solid #e4ecf7; padding:19px 0; }
.b-team-record li:last-child { padding-bottom:0; }
.b-team-record li strong,.b-team-record li span,.b-team-record li small { display:block; }
.b-team-record li strong { color:#254267; font-size:16px; line-height:1.7; }
.b-team-record li span { font-size:14px; line-height:1.85; color:#7487a0; margin:8px 0; }
.b-team-record li small { color:var(--primary); font-size:13px; }
.knowledge-card-meta>span { color:var(--primary); font-weight:700; }
@media(max-width:767px) {
 .b-team-record-grid { grid-template-columns:1fr; gap:18px; }
 .b-team-record { padding:25px; }
 .b-team-record>p { min-height:0; }
 .b-team-record-head h3 { font-size:25px; }
}
.brand-navigation .mega-panels .mega-detail { margin-top:14px; }
.mega-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:21px 0; margin-top:16px; border-top:1px solid #dce7f5; border-bottom:1px solid #dce7f5; }
.mega-capabilities strong { display:block; color:#233c63; font-size:15px; line-height:1.6; margin-bottom:8px; }
.mega-capabilities span { display:block; color:#6e819b; font-size:14px; line-height:1.8; }
.brand-navigation .mega-panels .mega-outcome { font-size:14px; margin-top:17px; }
.site-footer .footer-col a>span { font-size:12px; line-height:1.9; color:#8496af; }
.b-orbit-core-link { cursor:pointer; }
.b-orbit-core { transform-origin:330px 260px; transition:transform .3s,filter .3s; }
.b-orbit-core-link:hover .b-orbit-core,.b-orbit-core-link:focus-visible .b-orbit-core { transform:scale(1.04); filter:drop-shadow(0 0 12px #239de87a); }
.b-orbit-link-pulse { fill:none; stroke:#3c9fe6; stroke-width:1.5; stroke-dasharray:12 88; animation:b-orbit-data-flow 5.5s linear infinite; animation-delay:var(--pulse-delay,0s); opacity:.65; }
.b-orbit-scanner { transform-origin:330px 260px; animation:b-orbit-scan 38s linear infinite; }
.b-orbit-wave { transform-origin:330px 260px; stroke-width:1; opacity:0; animation:b-orbit-wave 7s ease-out infinite; }
.b-orbit-wave-delayed { animation-delay:-3.5s; }
@keyframes b-orbit-data-flow { from{stroke-dashoffset:100}to{stroke-dashoffset:0} }
@keyframes b-orbit-scan { to{transform:rotate(360deg)} }
@keyframes b-orbit-wave { 0%{transform:scale(.8);opacity:0}20%{opacity:.3}85%,100%{transform:scale(2.25);opacity:0} }
.b-orbit a:focus-visible { outline:none; }
.b-orbit a:focus-visible .b-orbit-node circle:not(.b-orbit-node-halo) { stroke-width:3; }
@media(max-width:1599px) {
 .mega-capabilities { grid-template-columns:1fr; gap:16px; }
 .brand-navigation .mega-panels .mega-detail { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) { .b-orbit-core { transition:none; } }
.b-news-featured-cover { min-height:410px; isolation:isolate; }
.b-news-featured-cover>.b-news-featured-photo { position:absolute; inset:0; height:100%; z-index:-2; }
.b-news-featured-photo>img { height:100%; object-fit:cover; }
.b-news-featured-cover::before { display:none; }
.b-news-featured-cover::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(150deg,#102b4dd9,#123561bd); }
.b-news-featured-cover h2 { color:#fff; }
.b-news-featured-photo>figcaption { inset:17px 18px auto auto; width:auto; padding:0; background:none; }
.b-news-featured-photo figcaption>span { display:none; }
.b-news-featured-photo figcaption>small { font-size:12px; padding:3px 8px; border-radius:4px; background:#132b4480; }
.b-news-featured-cover .b-news-featured-photo>figcaption { display:none; }
.b-news-featured-cover>.b-news-featured-credit { position:absolute; top:18px; right:18px; padding:4px 8px; color:#edf6ff; background:#15365099; font-size:12px; border-radius:5px; }
.news-article-body>.b-news-article-photo { margin:0 0 35px; border:1px solid #d8e4f2; border-radius:20px; }
.b-news-article-photo>img { aspect-ratio:2/1; }
.b-news-kind { padding:4px 9px; border:1px solid #dce7f4; border-radius:5px; color:#587092; font-size:13px; }
.news-article-body>p.b-news-editorial-note { margin-top:25px; padding-top:20px; border-top:1px solid #e0e9f4; font-size:14px; line-height:1.9; color:#7b8da4; }
@media(max-width:767px) {
 .b-news-featured-cover { min-height:360px; padding-top:60px; }
 .b-news-featured-photo>figcaption { top:16px; }
 .news-article-body>.b-news-article-photo { border-radius:15px; margin-bottom:25px; }
 .b-news-article-photo>img { aspect-ratio:16/10; }
}
.knowledge-card-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:17px; }
.knowledge-card .knowledge-card-meta>span { margin:0; }
.knowledge-card-meta>time { font-size:13px; font-weight:400; color:#7a8ea9; white-space:nowrap; }
.knowledge-hub .knowledge-tools { grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); }
.knowledge-hub .knowledge-filters { justify-content:flex-end; }
.knowledge-more-wrap { display:flex; justify-content:center; margin-top:34px; }
.knowledge-more-wrap button { min-width:250px; }
.knowledge-results-empty { padding:30px; border:1px dashed #c8d8ec; border-radius:16px; background:#fff; color:var(--text-secondary); font-size:16px; line-height:1.8; text-align:center; }
@media(max-width:1000px) {
 .knowledge-hub .knowledge-tools { grid-template-columns:1fr; }
 .knowledge-hub .knowledge-filters { justify-content:flex-start; }
}
.b-publication-tabs .b-industry-tabs button { display:inline-flex; align-items:center; gap:12px; }
.b-publication-tabs .b-industry-tabs button>small { font-size:13px; letter-spacing:0; margin:0; padding:3px 7px; border-radius:6px; background:#e7effa; color:inherit; }
.b-research-category-head { margin-bottom:27px; }
.b-research-category-head>h3 { font-size:25px; line-height:1.5; margin:0 0 10px; }
.b-research-category-head>p { margin:0; font-size:16px; line-height:1.85; color:var(--text-secondary); max-width:960px; }
.b-research-record-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.b-research-record { padding:28px; border:1px solid #dbe6f4; border-radius:20px; background:linear-gradient(150deg,#fff 70%,#f1f7ff); display:flex; flex-direction:column; min-width:0; box-shadow:0 12px 30px -25px #31577f55; }
.b-research-record-top { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
.b-research-record-top>span { padding:5px 10px; border-radius:6px; color:var(--primary); background:#edf4ff; font-size:13px; }
.b-research-record-top>time { font-size:13px; color:#71839c; }
.b-research-record>code { display:block; font-size:13px; color:#5a73a0; letter-spacing:.03em; overflow-wrap:anywhere; }
.b-research-record>h3 { font-size:22px; line-height:1.55; margin:18px 0 15px; overflow-wrap:anywhere; }
.b-research-record>h4 { font-size:16px; line-height:1.7; margin:0 0 15px; font-weight:500; color:#47648c; }
.b-research-record>p { font-size:15px; line-height:1.9; color:var(--text-secondary); margin:0; }
.b-research-record>.b-tags { margin:20px 0 24px; }
.b-research-record-source { display:grid; grid-template-columns:56px minmax(0,1fr); gap:10px 12px; font-size:14px; line-height:1.8; padding-top:20px; border-top:1px solid #e1eaf5; margin-top:auto; }
.b-research-record-source>span { color:#8292a7; }
.b-research-record-source>strong { font-weight:400; color:#526580; }
.b-research-record>p.b-research-record-note { font-size:13px; line-height:1.8; color:#7a8aa1; margin-top:16px; }
.b-research-record-links { display:flex; flex-wrap:wrap; gap:14px 25px; margin-top:23px; }
.b-research-record-links>a { color:var(--primary); font-size:15px; font-weight:600; line-height:1.7; }
.b-research-record-links>a:hover { text-decoration:underline; }
.b-research-record-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 28px; padding:24px; margin:23px 0 0; background:#f2f7fe; border-radius:12px; }
.b-research-record-details>div { min-width:0; }
.b-research-record-details dt { color:#8292a7; font-size:13px; margin-bottom:7px; }
.b-research-record-details dd { font-size:15px; line-height:1.8; color:#3d567a; margin:0; }
.b-research-record-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.b-research-record-wide { grid-template-columns:1fr; }
.b-research-record-wide .b-research-record { padding:35px; }
.b-research-record-wide .b-research-record-source { margin-top:0; }
.b-research-empty { padding:28px; border:1px dashed #c7d8ee; border-radius:14px; color:#637c9d; background:#fff; font-size:16px; line-height:1.8; }
@media(max-width:1100px) {
 .b-research-record-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .b-research-record-wide { grid-template-columns:1fr; }
 .b-research-record { padding:24px; }
}
@media(max-width:767px) {
 .b-publication-tabs .b-industry-tabs { gap:22px; }
 .b-publication-tabs .b-industry-tabs button { gap:7px; font-size:17px; white-space:nowrap; }
 .b-publication-tabs .b-industry-tabs button>small { font-size:12px; padding:2px 5px; }
 .b-research-record-grid { grid-template-columns:1fr; gap:18px; }
 .b-research-record,.b-research-record-wide .b-research-record { padding:24px; }
 .b-research-record>h3 { font-size:21px; }
 .b-research-record-details { grid-template-columns:1fr; padding:19px; gap:15px; }
 .b-research-category-head>h3 { font-size:23px; }
 .b-research-record-top>time { font-size:13px; }
 .b-research-record-source { font-size:14px; grid-template-columns:56px minmax(0,1fr); }
}
.b-photo { position:relative; display:block; margin:0; width:100%; overflow:hidden; background:#e7eef6; isolation:isolate; }
.b-photo>img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; transition:transform .6s ease; }
.b-photo>figcaption { position:absolute; inset:auto 0 0; z-index:1; display:flex; align-items:flex-end; justify-content:space-between; gap:14px; padding:38px 20px 17px; background:linear-gradient(transparent,rgba(11,29,52,.8)); color:#fff; line-height:1.5; }
.b-photo figcaption>span { font-size:14px; font-weight:600; }
.b-photo figcaption>small { color:#e2edf9; font-size:12px; font-weight:400; white-space:nowrap; }
.b-photo-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:center; gap:65px; }
.b-photo-hero-grid:not(:has(>.b-photo-hero)) { grid-template-columns:1fr; gap:0; }
.b-photo-hero-copy { min-width:0; }
.b-photo-hero { border-radius:24px; box-shadow:0 22px 50px -25px #294b784d; border:1px solid #d7e5f5; }
.b-photo-hero>img { aspect-ratio:4/3; }
.b-photo-hero-grid h1 { font-size:clamp(35px,3.7vw,56px); }
.b-photo-hero-grid h2 { font-size:26px; line-height:1.6; }
.b-photo-hero-grid p { font-size:16px; }
.b-photo-hero-grid .b-actions { gap:12px; }
.b-photo-hero-grid .b-button { padding-inline:20px; }
.b-photo-hero-grid .b-sector-watermark { display:none; }
.b-scene-photographic { --scene-pad:30px; overflow:hidden; }
.b-scene-photographic>.b-photo-card { width:calc(100% + var(--scene-pad)*2); max-width:none; margin:calc(-1 * var(--scene-pad)) calc(-1 * var(--scene-pad)) 25px; flex-shrink:0; }
.b-scene-image-link { display:block; width:calc(100% + var(--scene-pad)*2); margin:calc(-1 * var(--scene-pad)) calc(-1 * var(--scene-pad)) 25px; flex-shrink:0; }
.b-scene-image-link .b-photo-card { width:100%; margin:0; }
.b-scene-title-link { color:inherit; }
.b-scene-title-link:hover { color:var(--primary); }
.b-scene-image-link:focus-visible,.b-scene-title-link:focus-visible { outline:3px solid var(--primary); outline-offset:4px; }
.b-photo-card>img { aspect-ratio:16/9; }
.b-scene-photographic>.b-care-cover { width:calc(100% + var(--scene-pad)*2); margin:calc(-1 * var(--scene-pad)) calc(-1 * var(--scene-pad)) 25px; aspect-ratio:16/9; flex-shrink:0; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:28px; background:radial-gradient(circle at 85% 25%,#8fdac65c,transparent 45%),linear-gradient(125deg,#e6f5ff,#e7f8f2); border-bottom:1px solid #d1e9e6; }
.b-care-cover>span { color:#207c8d; font-size:13px; font-weight:700; letter-spacing:.16em; }
.b-care-cover>strong { color:#164d62; font-size:32px; line-height:1.4; margin:12px 0; }
.b-care-cover>small { color:#55828f; font-size:14px; }
.b-photo-card>figcaption { padding:32px 18px 12px; }
.b-photo-card figcaption>span { font-size:13px; }
.b-photo-card figcaption>small { font-size:12px; }
.b-scene-photographic h3 { margin-top:19px; }
.b-scene-photographic:hover .b-photo>img,.b-case:hover .b-photo>img { transform:scale(1.035); }
.b-photo-case>img { aspect-ratio:16/9; }
.b-photo-case figcaption>span { font-size:25px; letter-spacing:.12em; }
.b-field-section { padding:55px 0; background:#fff; }
.b-field-feature { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:center; gap:55px; }
.b-field-feature>.b-photo { border-radius:22px; box-shadow:0 12px 30px -20px #254b7655; }
.b-field-feature>.b-photo>img { aspect-ratio:16/9; }
.b-field-copy { min-width:0; }
.b-field-text-only { grid-template-columns:1fr; max-width:1000px; }
#business-value,#choose-product,#team-public-records,#company-questions { scroll-margin-top:110px; }
.b-form-actions { display:flex; flex-wrap:wrap; gap:12px; }
.b-form-actions>.btn { flex:1; }
.b-consultation-preview { margin-top:24px; }
.b-consultation-preview>label { display:block; color:#425e7b; font-size:15px; margin-bottom:10px; }
.b-consultation-preview>textarea { width:100%; resize:vertical; border:1px solid #d1e0f1; border-radius:10px; padding:16px; background:#f6faff; font-family:inherit; font-size:16px; line-height:1.8; margin-bottom:14px; }
.b-faq-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); gap:70px; }
.b-faq-list details { border-bottom:1px solid #d9e5f4; padding:22px 0; }
.b-faq-list details:first-child { padding-top:0; }
.b-faq-list summary { cursor:pointer; color:#203853; font-size:18px; font-weight:700; line-height:1.7; }
.b-faq-list details p { color:#526782; font-size:16px; line-height:1.9; margin:18px 0 0; }
.b-faq-list>.b-actions { margin-top:26px; }
.b-product-choice { border-top:1px solid #dce7f4; }
.b-product-choice>a { display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:25px; align-items:center; padding:25px 20px; border-bottom:1px solid #dce7f4; transition:background .2s; }
.b-product-choice>a:hover { background:#f2f7ff; }
.b-product-choice>a>span { font-size:17px; line-height:1.7; color:#445a76; }
.b-product-choice strong { color:var(--primary); font-size:21px; }
.b-product-choice small { font-size:15px; font-weight:500; margin-left:7px; }
.b-product-choice em { font-style:normal; color:#627893; font-size:15px; }
.b-value-context { display:grid; grid-template-columns:1fr 1.5fr; gap:30px; margin:0 0 32px; padding:25px 30px; background:#eaf2fc; border-radius:15px; }
.b-value-context dt { font-size:13px; color:#6d84a0; margin-bottom:9px; }
.b-value-context dd { margin:0; color:#304e72; font-size:16px; line-height:1.8; }
.b-value-outputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.b-value-outputs article { padding:30px; border:1px solid #d8e6f7; background:#fff; border-radius:18px; }
.b-value-outputs article>span { font-size:14px; color:#2d7fea; }
.b-value-outputs h3 { font-size:22px; margin:22px 0 15px; line-height:1.6; }
.b-value-outputs p { font-size:16px; color:#627793; line-height:1.9; margin:0; }
.b-value-validation { display:flex; justify-content:space-between; align-items:center; gap:35px; border-top:1px solid #dbe6f4; padding-top:28px; margin-top:32px; }
.b-value-validation strong { color:#2e4d72; font-size:17px; }
.b-value-validation p { color:#617793; font-size:15px; line-height:1.9; max-width:670px; margin:10px 0 0; }
.b-value-validation>.b-actions { flex-shrink:0; flex-direction:column; align-items:flex-start; }
.pd-section-nav { display:flex; align-items:center; gap:12px; padding-block:24px; overflow-x:auto; }
.pd-section-nav>a { flex:none; padding:9px 17px; border:1px solid #d4e3f5; border-radius:999px; font-size:15px; color:#42668f; background:#fff; white-space:nowrap; }
.pd-section-nav>a:hover { color:var(--primary); background:#edf5ff; border-color:#96baf0; }
#workflow,#outputs,#collaborating-products,#product-questions { scroll-margin-top:110px; }
.pd-work-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr); gap:55px; align-items:start; }
.pd-task { padding:38px; border-radius:24px; background:radial-gradient(ellipse at 100% 0,#2878a388,transparent 70%),#102c50; color:#fff; }
.pd-task>span { display:block; font-size:14px; color:#8bd9f1; letter-spacing:.12em; }
.pd-task h3 { font-size:27px; line-height:1.7; margin:22px 0 30px; color:#fff; text-wrap:balance; }
.pd-task h4 { color:#cfe5ff; font-size:16px; margin:0 0 15px; }
.pd-task ul { margin:0; padding-left:19px; color:#d0deee; font-size:16px; line-height:2; }
.pd-task li { margin-bottom:12px; }
.pd-task>p { border-top:1px solid #5e83ad55; padding-top:20px; margin:25px 0 0; color:#a8c0dd; font-size:13px; line-height:1.9; }
.pd-steps { list-style:none; padding:0; margin:0; }
.pd-steps>li { display:grid; grid-template-columns:48px minmax(0,1fr); gap:22px; padding:0 0 30px; }
.pd-steps>li:last-child { padding-bottom:0; }
.pd-steps>li>span { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; background:#edf5ff; border:1px solid #d6e6f7; color:#3579d5; font-size:18px; }
.pd-steps h3 { font-size:22px; line-height:1.6; margin:4px 0 10px; }
.pd-steps p { color:#627791; font-size:16px; line-height:1.9; margin:0; }
.pd-output-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:70px; align-items:center; }
.pd-output-grid .b-section-head { margin:0; }
.pd-output { background:#fff; border:1px solid #d5e3f5; border-radius:22px; padding:30px; box-shadow:0 20px 50px -30px #31588635; }
.pd-output-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-bottom:22px; border-bottom:1px solid #dce7f4; }
.pd-output-head strong { color:#274e7a; font-size:19px; }
.pd-output-head>span { font-size:12px; color:#547ba7; border-radius:5px; background:#edf5ff; padding:5px 9px; white-space:nowrap; }
.pd-output dl { margin:0; }
.pd-output dl>div { display:grid; grid-template-columns:130px minmax(0,1fr); gap:22px; padding:23px 0; border-bottom:1px solid #e4ecf7; }
.pd-output dt { font-size:16px; font-weight:700; color:#34577d; }
.pd-output dd { margin:0; color:#667c98; font-size:15px; line-height:1.9; }
.pd-output>p { font-size:13px; color:#8093a9; line-height:1.8; margin:20px 0 0; }
.pd-related { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.pd-related>a { display:flex; flex-direction:column; padding:30px; border:1px solid #d9e5f5; border-radius:20px; background:linear-gradient(135deg,#fff,#f3f8fe); transition:border-color .2s,transform .2s; }
.pd-related>a:hover { border-color:#93b8eb; transform:translateY(-3px); }
.pd-related>a>span { font-size:14px; color:#407fcd; letter-spacing:.04em; }
.pd-related strong { font-size:27px; margin:15px 0; color:#213e62; }
.pd-related p { font-size:15px; line-height:1.9; color:#627894; margin:0 0 25px; }
.pd-related small { font-size:14px; font-weight:700; color:var(--primary); margin-top:auto; }
.pd-questions { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr); gap:70px; }
@media(max-width:900px) {
 .pd-work-grid,.pd-output-grid,.pd-questions { grid-template-columns:1fr; gap:32px; }
}
@media(max-width:767px) {
 .pd-section-nav { gap:9px; padding-block:20px; }
 .pd-section-nav>a { font-size:14px; padding:8px 14px; }
 .pd-task { padding:28px; border-radius:20px; }
 .pd-task h3 { font-size:23px; margin-block:18px 25px; }
 .pd-task ul { font-size:15px; }
 .pd-steps>li { grid-template-columns:40px minmax(0,1fr); gap:16px; }
 .pd-steps>li>span { width:40px; height:40px; font-size:16px; border-radius:12px; }
 .pd-steps h3 { font-size:20px; }
 .pd-steps p { font-size:15px; }
 .pd-output { padding:23px; }
 .pd-output-head strong { font-size:18px; }
 .pd-output dl>div { grid-template-columns:1fr; gap:9px; padding:20px 0; }
 .pd-related { grid-template-columns:1fr; gap:16px; }
 .pd-related>a { padding:26px; }
}
@media(min-width:1101px) { .b-value-validation>.b-actions { padding-right:88px; } }
@media(max-width:767px) {
 .knowledge-prose .table-wrap::before { content:"左右滑动，查看完整表格"; display:block; position:sticky; left:0; width:100%; color:#5c7594; font-size:13px; padding:10px 0; background:#f5f9ff; }
 .b-faq-layout { grid-template-columns:1fr; gap:28px; }
 .b-faq-list summary { font-size:17px; }
 .b-faq-list details p { font-size:15px; }
 .b-product-choice>a { grid-template-columns:minmax(0,1fr); gap:10px; padding:22px 5px; }
 .b-product-choice>a>span { font-size:16px; }
 .b-product-choice strong { font-size:21px; }
 .b-value-context { grid-template-columns:1fr; padding:23px; gap:20px; }
 .b-value-context dd { font-size:15px; }
 .b-value-outputs { grid-template-columns:1fr; gap:16px; }
 .b-value-outputs article { padding:25px; }
 .b-value-outputs h3 { font-size:21px; margin-top:16px; }
 .b-value-outputs p { font-size:15px; }
 .b-value-validation { display:block; }
 .b-value-validation>.b-actions { margin-top:22px; gap:20px; }
 .brand-home .b-home-task-grid p,.brand-home .b-home-architecture-points p,.brand-home .b-home-work-steps p { font-size:14px; }
 .site-footer .footer-col a>span { font-size:14px; }
}
.b-editorial-cover { min-height:180px; background:linear-gradient(135deg,#13376c,#176f9f); }
.b-editorial-cover>span { font-size:20px; }
.b-editorial-cover small { display:block; font-size:14px; font-weight:400; line-height:1.8; color:#d3e9ff; margin-top:14px; }
.b-network-art { min-height:430px; padding:38px; border:1px solid #d1e3f8; border-radius:24px; background:radial-gradient(ellipse at 45% 50%,#a7dff45c,transparent 60%),repeating-radial-gradient(ellipse at 50% 50%,transparent 0 58px,#a8c8ee55 59px 60px,transparent 61px 110px),#f3f8ff; overflow:hidden; }
.b-network-art>strong { display:block; margin:38px 0 30px; font-size:27px; line-height:1.6; color:#25406c; }
.b-network-art em { font-size:62px; font-style:normal; color:var(--primary); }
.brand-home .b-network-art em { font-size:clamp(28px,3vw,44px); }
.brand-home .b-global-mini strong { font-size:24px; }
.brand-home .b-global-mini span { font-size:14px; line-height:1.8; }
.b-network-art-nodes { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.b-network-art-nodes>span { padding:17px 8px; text-align:center; background:#ffffffdc; border:1px solid #cfe0f6; border-radius:14px; color:#25406c; font-size:21px; font-weight:700; }
.b-network-art-nodes small { display:block; font-size:13px; font-weight:400; margin-top:8px; color:#647b99; }
.b-network-art>p { color:#6e85a5; font-size:13px; margin:25px 0 0; letter-spacing:.12em; }
@media(max-width:767px) { .b-network-art { min-height:0; padding:25px; }.b-network-art>strong { margin:24px 0; }.b-network-art em { font-size:50px; } }
.b-field-copy h2 { font-size:clamp(25px,2.4vw,34px); line-height:1.5; margin:17px 0; color:var(--text-primary); }
.b-field-copy p { font-size:16px; line-height:1.95; color:var(--text-secondary); margin:0; }
.b-field-tags { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.b-field-tags>span { padding:7px 13px; color:#42618b; background:#f0f6fd; border:1px solid #dfeafa; border-radius:7px; font-size:14px; }
.b-photo-case-cover>.b-photo-background { position:absolute; inset:0; height:100%; }
.b-photo-background>img { height:100%; object-fit:cover; }
.b-photo-case-cover::before { display:none; }
.b-photo-case-cover::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#0d2038bd,#0d20384d); pointer-events:none; }
.b-photo-case-cover>.case-cover-tag,.b-photo-case-cover>.case-cover-title { position:relative; z-index:2; }
.b-photo-background>figcaption { inset:auto 12px 9px auto; width:auto; padding:0; background:none; }
.b-photo-background figcaption>span { display:none; }
.b-photo-background figcaption>small { padding:3px 8px; border-radius:4px; background:#14283ebd; }
.b-photo-news>img { aspect-ratio:16/9; }
.b-photo-news figcaption>span { font-size:13px; }
.b-photo-news figcaption>small { font-size:12px; }
@media(max-width:1100px) {
 .b-photo-hero-grid { gap:32px; }
 .b-photo-hero-grid h1 { font-size:38px; }
 .b-photo-hero-grid h2 { font-size:23px; }
 .b-field-feature { gap:30px; }
 .b-scene-photographic { --scene-pad:24px; }
 .b-photo-card figcaption>span { display:none; }
}
@media(max-width:767px) {
 .b-photo-hero-grid { grid-template-columns:1fr; gap:30px; }
 .b-photo-hero-grid h1 { font-size:36px; }
 .b-photo-hero-grid h2 { font-size:23px; }
 .b-photo-hero-grid p { font-size:16px; }
 .b-photo-hero { border-radius:18px; }
 .b-photo-hero>img { aspect-ratio:16/10; }
 .b-scene-photographic { --scene-pad:25px; }
 .b-photo-card figcaption>span { display:block; }
 .b-photo>figcaption { padding-inline:16px; }
 .b-field-section { padding:32px 0; }
 .b-field-feature { grid-template-columns:1fr; gap:25px; }
 .b-field-feature>.b-photo { border-radius:18px; }
 .b-field-copy h2 { font-size:25px; margin:13px 0; }
 .b-field-copy p { font-size:16px; }
 .b-field-tags { margin-top:19px; }
 .b-photo-case figcaption>span { font-size:23px; }
}
@media(prefers-reduced-motion:reduce) {
 .b-photo>img { transition:none; }
 .b-scene-photographic:hover .b-photo>img,.b-case:hover .b-photo>img { transform:none; }
}
