:root{--rw-navy:#0B2A5B;--rw-blue:#1769D2;--rw-cyan:#00AEEF;--rw-violet:#6956D8;--rw-green:#16A085;--rw-light:#F4F7FB;--rw-line:#DCE4EE;--rw-text:#242424;--rw-muted:#667085;
}
.fusion-page{color:var(--rw-text);overflow:hidden}
.fusion-section{padding:108px 0}
.fusion-section.bg-light{background:var(--rw-light)}
.fusion-section.dark{background:linear-gradient(135deg,#06152D 0%,#0A2855 56%,#173D77 100%);color:#fff}
.fusion-title{margin-bottom:50px}
.fusion-title .kicker{margin-bottom:12px;font-size:16px;font-weight:800;color:var(--rw-blue);letter-spacing:.08em}
.fusion-section.dark .fusion-title .kicker{color:#74D6FF}
.fusion-title h2{margin:0 0 18px;font-size:44px;line-height:1.28;font-weight:800;color:var(--rw-navy)}
.fusion-section.dark .fusion-title h2{color:#fff}
.fusion-title p{max-width:930px;font-size:18px;line-height:1.8;color:#475467}
.fusion-section.dark .fusion-title p{color:rgba(255,255,255,.78)}


.fusion-overview{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
.fusion-overview .copy h2{font-size:46px;line-height:1.3;color:var(--rw-navy);margin:0 0 26px;font-weight:800}
.fusion-overview .copy p{font-size:18px;line-height:1.9;color:#475467;margin:0 0 18px}
.fusion-overview .note{margin-top:24px;padding:18px 20px;border-left:4px solid var(--rw-blue);background:#F2F7FD;color:#435269;line-height:1.72}


.fusion-visual{position:relative;min-height:500px;padding:32px;border-radius:24px;background:linear-gradient(145deg,#06172F 0%,#0B2A5B 58%,#133F78 100%);box-shadow:0 20px 55px rgba(11,42,91,.16);overflow:hidden}
.fusion-visual:before{content:"";position:absolute;width:350px;height:350px;right:-90px;bottom:-120px;border-radius:50%;background:radial-gradient(circle,rgba(0,174,239,.24),rgba(0,174,239,0) 70%)}
.sensor-hub{position:relative;z-index:2;display:grid;grid-template-columns:1fr 56px 1.25fr 56px 1fr;align-items:center;margin-top:12px}
.sensor-column,.system-column{display:flex;flex-direction:column;gap:13px}
.sensor-pill,.system-pill{padding:14px 12px;border-radius:13px;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:13px;font-weight:700}
.hub-arrow{text-align:center;color:#78DAFF;font-size:28px;font-weight:800}
.fusion-core{padding:22px 18px;border-radius:20px;background:linear-gradient(135deg,rgba(23,105,210,.45),rgba(105,86,216,.30));border:1px solid rgba(121,215,255,.35)}
.fusion-core h3{margin:0 0 16px;text-align:center;color:#fff;font-size:21px;font-weight:800}
.core-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.core-cell{padding:13px 10px;border-radius:11px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);text-align:center;color:#DCEEFF;font-size:12px;line-height:1.45}
.fusion-caption{position:relative;z-index:2;margin-top:24px;text-align:center;color:rgba(255,255,255,.72);font-size:13px}


.sync-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.sync-card{position:relative;padding:30px 22px;border-radius:18px;background:#fff;border:1px solid var(--rw-line);min-height:245px}
.sync-card:not(:last-child):after{content:"→";position:absolute;right:-17px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:800;color:var(--rw-blue);z-index:2}
.sync-card .num{font-size:12px;font-weight:800;color:var(--rw-blue);margin-bottom:13px}
.sync-card h3{font-size:20px;color:var(--rw-navy);margin:0 0 10px;font-weight:800}
.sync-card p{font-size:14px;line-height:1.7;color:#667085;margin:0}


.cal-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center}
.cal-diagram{padding:30px;border-radius:22px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.18)}
.cal-diagram svg{width:100%;height:auto;display:block}
.cal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.cal-card{padding:25px 22px;border-radius:18px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);min-height:160px}
.cal-card .tag{font-size:12px;font-weight:800;color:#7CDFFF;margin-bottom:9px}
.cal-card h3{font-size:20px;color:#fff;margin:0 0 9px;font-weight:800}
.cal-card p{font-size:14px;line-height:1.65;color:rgba(255,255,255,.70);margin:0}


.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.level-card{position:relative;padding:34px 28px;border-radius:20px;background:#fff;border:1px solid var(--rw-line);overflow:hidden}
.level-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--rw-blue),var(--rw-violet))}
.level-card .tag{font-size:13px;font-weight:800;color:var(--rw-blue);margin-bottom:13px}
.level-card h3{font-size:23px;color:var(--rw-navy);margin:0 0 11px;font-weight:800}
.level-card p{font-size:15px;line-height:1.72;color:#667085;margin:0}


.state-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.state-card{padding:30px 24px;border-radius:18px;background:#fff;border:1px solid var(--rw-line)}
.state-card .n{font-size:13px;font-weight:800;color:var(--rw-blue);margin-bottom:12px}
.state-card h3{font-size:20px;color:var(--rw-navy);margin:0 0 10px;font-weight:800}
.state-card p{font-size:14px;line-height:1.7;color:#667085;margin:0}


.conf-wrap{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.conf-card{position:relative;padding:34px 30px;border-radius:20px;background:#fff;border:1px solid var(--rw-line);overflow:hidden}
.conf-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--rw-cyan),var(--rw-green))}
.conf-card .tag{font-size:13px;font-weight:800;color:var(--rw-blue);letter-spacing:.05em;margin-bottom:15px}
.conf-card h3{font-size:24px;color:var(--rw-navy);margin:0 0 11px;font-weight:800}
.conf-card p{font-size:15px;line-height:1.75;color:#667085;margin:0}
.conf-card ul{margin:18px 0 0;padding-left:18px;color:#536276}
.conf-card li{margin:8px 0;line-height:1.6}


.control-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.control-step{position:relative;padding:28px 17px;border-radius:17px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);text-align:center}
.control-step:not(:last-child):after{content:"→";position:absolute;right:-15px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:800;color:#77D8FF;z-index:2}
.control-step .n{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:#1688E8;color:#fff;font-size:12px;font-weight:800;margin-bottom:13px}
.control-step h3{font-size:17px;line-height:1.35;color:#fff;margin:0 0 8px;font-weight:800}
.control-step p{font-size:13px;line-height:1.58;color:rgba(255,255,255,.70);margin:0}


.middleware-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.middleware-card{padding:30px 24px;border-radius:18px;background:#fff;border:1px solid var(--rw-line)}
.middleware-card .tag{font-size:12px;font-weight:800;color:var(--rw-blue);margin-bottom:10px}
.middleware-card h3{font-size:20px;color:var(--rw-navy);margin:0 0 10px;font-weight:800}
.middleware-card p{font-size:14px;line-height:1.7;color:#667085;margin:0}


.eval-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.eval-card{padding:30px 24px;border-radius:18px;background:#fff;border:1px solid var(--rw-line);text-align:center}
.eval-card .value{font-size:27px;line-height:1.1;font-weight:800;color:var(--rw-navy);margin-bottom:10px}
.eval-card .name{font-size:16px;font-weight:800;color:#344054;margin-bottom:8px}
.eval-card .desc{font-size:13px;line-height:1.6;color:#7A8797}


.connection{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.connection-card{padding:28px 22px;border-radius:18px;background:#fff;border:1px solid var(--rw-line)}
.connection-card.active{background:#F1F7FD;border-color:#9EC8F2}
.connection-card .tag{font-size:12px;font-weight:800;color:var(--rw-blue);margin-bottom:10px}
.connection-card h3{font-size:20px;color:var(--rw-navy);margin:0 0 9px;font-weight:800}
.connection-card p{font-size:14px;line-height:1.68;color:#667085;margin:0}


.fusion-cta{padding:72px 0;background:linear-gradient(135deg,#071A35 0%,#0B2A5B 62%,#193B75 100%);color:#fff}
.fusion-cta .inner{display:flex;justify-content:space-between;align-items:center;gap:40px}
.fusion-cta h2{margin:0 0 12px;font-size:36px;color:#fff;font-weight:800}
.fusion-cta p{margin:0;font-size:17px;line-height:1.7;color:rgba(255,255,255,.78)}
.fusion-cta .buttons{display:flex;gap:12px;flex-wrap:wrap}
.fusion-cta .btn{display:inline-flex;min-width:160px;height:52px;align-items:center;justify-content:center;padding:0 24px;border-radius:10px;text-decoration:none;font-weight:800}
.fusion-cta .btn.white{background:#fff;color:var(--rw-navy)}
.fusion-cta .btn.line{border:1px solid rgba(255,255,255,.45);color:#fff}

@media(max-width:1100px){.sync-grid{grid-template-columns:repeat(2,1fr)}.sync-card:after{display:none}.state-grid,.middleware-grid,.eval-grid,.connection{grid-template-columns:repeat(2,1fr)}.control-flow{grid-template-columns:repeat(3,1fr)}.control-step:after{display:none}
}
@media(max-width:900px){.fusion-overview,.cal-layout{grid-template-columns:1fr;gap:36px}.level-grid,.conf-wrap{grid-template-columns:1fr}
}
@media(max-width:768px){.fusion-section{padding:72px 0}.fusion-title h2,.fusion-overview .copy h2{font-size:32px}.sensor-hub{grid-template-columns:1fr;gap:14px}.hub-arrow{transform:rotate(90deg)}.core-grid,.sync-grid,.cal-grid,.state-grid,.control-flow,.middleware-grid,.eval-grid,.connection{grid-template-columns:1fr}.fusion-cta .inner{flex-direction:column;align-items:flex-start}.fusion-cta h2{font-size:30px}
}
