/* Shared themes, campaign controls and independent solution pages. */
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header-tools{display:flex;align-items:center;order:2}.header nav{order:1}.header .header-cta{order:3}.header{gap:22px}.theme-toggle{display:flex;align-items:center;gap:6px;background:none;border:0;color:var(--muted);padding:8px 0;font-size:14px}.theme-track{display:block;width:28px;height:16px;border:1px solid #b8c8da;border-radius:15px;padding:2px}.theme-track>span{width:10px;height:10px;display:block;background:var(--blue);border-radius:50%;transition:transform .2s}[data-theme=dark] .theme-track>span{transform:translateX(11px)}.carousel-controls{display:flex;align-items:center;gap:28px;padding-bottom:28px;min-height:62px}.carousel-position{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted)}.carousel-position strong{color:var(--blue)}.carousel-dots{display:flex;gap:8px;flex:1}.carousel-dots button{height:28px;width:28px;padding:9px 0;border:0;background:none}.carousel-dots button:after{content:'';display:block;width:22px;height:3px;background:#bfcfe2;border-radius:3px}.carousel-dots button[aria-current=true]:after{background:var(--blue)}.carousel-buttons{display:flex;gap:8px}.carousel-buttons button{border:1px solid var(--line);border-radius:4px;width:34px;height:32px;background:#ffffff60;color:var(--text);font-size:17px}.carousel-buttons button:hover{border-color:var(--blue);color:var(--blue)}.campaign-title{font-size:clamp(44px,4.4vw,65px);font-weight:750;color:var(--navy);line-height:1.12;letter-spacing:-.055em}.campaign-title em{font-style:normal;color:var(--blue)}.campaign-slide{min-height:670px}.concept-visual{padding:28px 32px;background:linear-gradient(145deg,#fff,#edf5ff);border:1px solid #cedff3;border-radius:12px;box-shadow:0 24px 65px #284d8214;position:relative;min-width:0;align-self:center}.concept-top{display:flex;justify-content:space-between;gap:14px;font-size:8px;letter-spacing:.12em;color:#6687ac}.concept-demo{letter-spacing:.06em;color:#7c8fa7}.concept-symbol{font-size:42px;color:var(--blue);margin:26px 0 15px;width:64px;height:64px;border-radius:15px;background:#e0eeff;display:grid;place-items:center}.concept-visual h3{font-size:24px;line-height:1.3;color:var(--navy)}.concept-nodes{margin:25px 0}.concept-nodes>div{display:flex;gap:20px;align-items:center;border:1px solid #cddff3;background:#ffffff90;border-radius:5px;padding:14px 18px}.concept-nodes span{color:var(--blue);font-size:9px}.concept-nodes strong{font-weight:500;font-size:12px}.concept-nodes b{display:block;text-align:center;color:#8fb5e3;font-size:13px;line-height:22px}.concept-chart{height:55px;display:flex;align-items:end;gap:10px;padding-bottom:1px;border-bottom:1px solid #cddff3}.concept-chart i{height:var(--bar);flex:1;border-radius:3px 3px 0 0;background:linear-gradient(#42a0ff,#c4e0ff)}.concept-visual>small{display:block;margin-top:15px;font-size:8px;color:#7188a3}.breadcrumb{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-top:25px;padding-bottom:25px;font-size:11px;color:var(--muted)}.breadcrumb a:hover{color:var(--blue)}.solution-hero{background:var(--pale);border-block:1px solid var(--line);padding:65px 0}.solution-hero>.wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:85px;align-items:center}.solution-hero h1{font-size:48px;font-weight:700;color:var(--navy)}.solution-hero .lead{font-size:17px;color:var(--muted);margin:25px 0 30px}.solution-hero .concept-visual{box-shadow:none}.project-scope{display:grid;grid-template-columns:1fr 1fr;gap:100px}.project-scope h2{font-size:36px}.project-scope p{font-size:13px;color:var(--muted);margin-top:25px}.scope-list{border:1px solid var(--line);background:var(--pale);padding:32px;border-radius:6px}.scope-list h3{font-size:20px}.scope-list ol{padding-left:18px;margin:24px 0 30px}.scope-list li{padding-left:8px;color:var(--muted);font-size:13px;line-height:1.8;margin-bottom:14px}.scope-list li::marker{color:var(--blue)}.related{padding-bottom:90px}.related h2{font-size:30px}.related>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.related a{padding:25px 20px;border:1px solid var(--line);border-radius:5px;display:flex;justify-content:space-between;gap:15px;font-size:13px}.related b{color:var(--blue)}.related a:hover{background:var(--pale);border-color:var(--blue)}
[data-theme=dark]{color-scheme:dark;--blue:#6aafff;--navy:#edf5ff;--text:#c9d9ed;--muted:#9bafc7;--line:#263c55;--pale:#10243b}html[data-theme=dark] body{background:#0a1b2e}[data-theme=dark] .topbar{background:#061426;color:#a7bfdc}[data-theme=dark] header{background:#0b1d32ed}[data-theme=dark] .hero{background:radial-gradient(ellipse at 83% 44%,#173d66 0,transparent 55%),#0b1d32}[data-theme=dark] .button{background:#1876ed;color:white}[data-theme=dark] .button:hover{background:#328cff}[data-theme=dark] .hero-bottom{color:#9fb4cd}[data-theme=dark] .value-strip .wrap>span{color:#a2b8d2}[data-theme=dark] .stage-orbit{border-color:#2a486b}[data-theme=dark] .dashboard,[data-theme=dark] .floating{background:#10263f;border-color:#315071}[data-theme=dark] .demo-tag,[data-theme=dark] .avatar,[data-theme=dark] aside b{background:#1b3c60;color:#8bc1ff}[data-theme=dark] .map{background:#dae5ed}[data-theme=dark] .map-label,[data-theme=dark] .map-controls{background:#10263f;color:#d7e9ff}[data-theme=dark] .floating-icon,[data-theme=dark] .feature-icon{background:#173b61;color:#8bc1ff}[data-theme=dark] .solution-grid article{background:linear-gradient(150deg,#132d49,#0c2035 75%)}[data-theme=dark] .platform{background:#061425}[data-theme=dark] .tabs button{background:transparent;color:#a7bcd6}[data-theme=dark] .tabs button[aria-selected=true]{background:#173b61;color:#a1ceff}[data-theme=dark] .segment-content{background:#102a45;border-color:var(--line)}[data-theme=dark] .segment-content:after{color:#193652}[data-theme=dark] #segment-tags span{background:#112d49;border-color:#365576;color:#bfd5ee}[data-theme=dark] .difference{background:#0c2035}[data-theme=dark] .difference-grid>div{border-color:var(--line)}[data-theme=dark] .contact{background:#102b48}[data-theme=dark] .contact-note{color:#a7c5e9;border-color:#345478}[data-theme=dark] form{background:#0d2138;border-color:#2c4c70}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#102940;border-color:#365573;color:#e0edff}[data-theme=dark] label{color:#b5c9e0}[data-theme=dark] .form-note,[data-theme=dark] .footer-bottom{color:#a4b8d0}[data-theme=dark] #form-status{color:#7de0b8}[data-theme=dark] dialog{background:#10243b}[data-theme=dark] .skip,[data-theme=dark] nav.open,[data-theme=dark] .menu-toggle{background:#10243b;color:#e0edff}[data-theme=dark] .carousel-buttons button{background:#132d49}[data-theme=dark] .carousel-dots button:after{background:#426184}[data-theme=dark] .carousel-dots button[aria-current=true]:after{background:var(--blue)}[data-theme=dark] .concept-visual{background:linear-gradient(145deg,#122d4b,#0d2138);border-color:#315375}[data-theme=dark] .concept-top,[data-theme=dark] .concept-demo,[data-theme=dark] .concept-visual>small{color:#a3bbd8}[data-theme=dark] .concept-symbol{background:#1b406b}[data-theme=dark] .concept-nodes>div{background:#102b48;border-color:#34587e}[data-theme=dark] .concept-chart{border-color:#34587e}[data-theme=dark] .concept-chart i{background:linear-gradient(#5eb2ff,#224a79)}[data-theme=dark] .play{border-color:#547394}
@media(max-width:1250px){.header nav{gap:18px}.header .header-cta{display:none!important}}@media(max-width:1000px){.campaign-title{font-size:48px}.campaign-slide>.concept-visual{max-width:650px;width:100%;margin:auto}.solution-hero>.wrap{gap:40px}.solution-hero h1{font-size:38px}.project-scope{gap:45px}.header nav{gap:13px;font-size:11px}.header{gap:18px}.concept-visual{padding:25px}}
@media(max-width:760px){.header-tools{margin-left:auto;order:0}.header .menu-toggle{order:1}.header nav{font-size:13px}.campaign-title{font-size:clamp(40px,9.5vw,62px)}.campaign-slide{min-height:0}.carousel-controls{gap:14px;padding-bottom:23px}.carousel-position{font-size:10px;gap:7px}.carousel-buttons{gap:5px}.carousel-buttons button{width:30px}.carousel-dots{gap:0}.carousel-dots button{width:23px}.carousel-dots button:after{width:17px}.concept-visual{padding:23px;max-width:100%}.concept-visual h3{font-size:22px}.concept-top{font-size:7px;gap:8px}.concept-nodes strong{font-size:11px}.solution-hero{padding:40px 0}.solution-hero>.wrap{grid-template-columns:1fr;gap:35px}.solution-hero h1{font-size:36px}.solution-hero .lead{font-size:15px}.breadcrumb{font-size:10px;gap:9px;padding-block:20px}.project-scope{grid-template-columns:1fr;gap:25px}.project-scope h2{font-size:30px}.scope-list{padding:25px}.related{padding-bottom:55px}.related h2{font-size:27px}.related>div{grid-template-columns:1fr;gap:12px;margin-top:25px}[data-theme=dark] nav{background:#10243b}.theme-toggle{gap:5px;font-size:12px}}
/* Keep the dashboard within its grid cell as the viewport narrows. */
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.hero-copy,.product-stage,.dashboard,.dash-main{min-width:0}
.product-stage{width:100%;max-width:100%;margin-right:0}
.floating{right:12px;max-width:calc(100% - 24px)}
.floating>div{min-width:0}
.floating strong{line-height:1.45}
.dash-head>span:not(.avatar){min-width:0}
.metrics>div{min-width:0}
.metrics small{display:block;line-height:1.5}
.dash-foot{flex-wrap:wrap;line-height:1.5}
@media(max-width:1250px){
  .product-stage{margin-right:0;transform:none}
  .floating{right:12px;gap:10px;padding:14px}
  .float-arrow{margin-left:0}
}
@media(max-width:1000px){
  .hero-grid{grid-template-columns:minmax(0,1fr)}
  .product-stage{max-width:650px;margin-inline:auto;padding-bottom:0;display:flex;flex-direction:column;gap:14px}
  .floating{position:relative;right:auto;bottom:auto;align-self:flex-end;max-width:100%;margin-right:0}
  .stage-orbit{inset:0 -15px 0;pointer-events:none}
}
@media(max-width:760px){
  .product-stage{max-width:580px;gap:12px;padding-top:8px}
  .floating{align-self:stretch;padding:14px 16px;border-radius:7px}
  .floating strong{font-size:12px}
  .floating small{font-size:8px}
  .float-arrow{margin-left:auto}
  .dash-head{gap:8px}
  .metrics small{min-height:22px}
  .stage-orbit{display:none}
}
@media(max-width:420px){
  .dash-body aside{display:none}
  .dash-main{padding:14px 10px 0}
  .dash-head img{width:92px}
  .dash-head>span:not(.avatar){font-size:8px}
  .metrics>div{padding:9px 7px}
  .metrics small{font-size:8px}
  .metrics strong{font-size:23px}
  .map{height:210px}
  .dash-foot{font-size:8px;gap:8px}
  .dash-foot span:last-child{flex-basis:100%;margin-left:0}
}
