@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#080c15;--panel:#0c1320;--panel2:#101b2d;--border:#26334b;--text:#f5f7ff;--muted:#9ba9c4;--cobalt:#566bff;--blue:#91acff;--green:#31e6a0;--mono:'DM Mono',ui-monospace,monospace;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--cobalt);color:white}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:-9999px;top:12px;padding:12px;background:white;color:black;z-index:100}.skip:focus{left:12px}.site-header{position:relative;z-index:5;background:#080c15ed;border-bottom:1px solid #1d2a42}.header-inner{min-height:77px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:700;font-size:19px;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.brand-star{color:var(--blue);font-family:var(--mono);font-size:24px;font-weight:500}.brand-dim{font-weight:400;color:#c3cce0}.nav{display:flex;align-items:center;gap:35px;font-size:12px;color:#bdc9df}.nav>a:hover,.footer-links a:hover{color:white}.nav-contact{border:1px solid #33415e;padding:11px 15px;border-radius:5px;color:white}.nav-contact span{color:var(--green);padding-left:8px}.menu-button,.mobile-menu{display:none}.hero{position:relative;overflow:hidden;isolation:isolate}.hero-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(180deg,transparent 65%,var(--bg)),radial-gradient(ellipse 70% 65% at 50% 23%,#24316a35,transparent 74%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='7' y='7' width='2' height='2' fill='%23435473'/%3E%3C/svg%3E");opacity:.8}.twinkle-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.hero-content{text-align:center;padding-top:103px}.eyebrow,.section-tag,.graphic-top,.module,.diagram-bottom,.hero-tail,.card-index,.service-footer,.panel-heading,.terminal-lines,.panel-foot,.demo-head,.demo-foot,.status-chip,.contact-note,.footer-copy{font-family:var(--mono)}.eyebrow{color:var(--green);font-size:11px;letter-spacing:.13em}.blink-point{display:inline-block;width:5px;height:5px;background:var(--green);vertical-align:middle;margin-right:10px;box-shadow:0 0 12px #31e6a04d}.hero h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(48px,7.3vw,99px);letter-spacing:-.055em;line-height:1.085;margin:24px auto 23px;font-weight:700}.hero h1 em{font-style:normal;color:var(--blue)}.hero-desc{font-size:17px;line-height:1.7;color:#b3c0d5;max-width:660px;margin:0 auto}.actions{display:flex;gap:12px;justify-content:center;margin-top:32px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:22px;border-radius:5px;padding:15px 21px;font-size:13px;font-weight:600;transition:transform .2s,border-color .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--cobalt);color:white}.btn.primary:hover{background:#6a7dff}.btn.outline{border:1px solid #3c4a63;background:#0e1622;color:#f5f7ff}.btn.outline:hover{border-color:var(--blue)}.signal-diagram{margin-top:82px;position:relative;overflow:hidden;min-height:410px;text-align:left;border:1px solid #2a3954;background:linear-gradient(180deg,#101a2aee,#0b1423ef);border-radius:8px;box-shadow:0 30px 90px #03071280}.signal-diagram:before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='7' y='7' width='2' height='2' fill='%23394760'/%3E%3C/svg%3E");opacity:.33;pointer-events:none}.graphic-top,.diagram-bottom{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:relative;font-size:10px;letter-spacing:.055em;color:#91a2be;border-bottom:1px solid #27344d}.graphic-top b{color:var(--green);font-weight:400}.green-square{display:inline-block;background:var(--green);width:6px;height:6px;margin-right:10px}.diagram-bottom{border-bottom:0;border-top:1px solid #27344d;height:37px;color:#6d809d;font-size:9px}.diagram-layout{min-height:324px;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:17%;align-items:center;padding:22px 28px;position:relative;z-index:1}.input-stack{display:flex;flex-direction:column;gap:11px}.module{border:1px solid #3b4b68;background:#152137;border-radius:5px;padding:13px 15px;box-shadow:0 10px 30px #02050c60;min-width:0;transition:border-color .5s,box-shadow .5s}.module.active{border-color:var(--blue);box-shadow:0 0 20px #566bff34}.module-kicker{font-size:9px;letter-spacing:.07em;color:#8196b5;margin-bottom:7px}.module-name{font-size:13px;font-weight:500;letter-spacing:.03em;color:#f5f7ff}.module-status{font-size:9px;letter-spacing:.01em;color:var(--blue);margin-top:8px;white-space:nowrap}.engine{min-height:159px;background:#14213a;border-color:#6679e4;position:relative;padding:23px 17px 17px}.engine-star{position:absolute;right:15px;top:8px;color:var(--blue);font-size:32px;line-height:1}.engine-command{font-size:9px;color:#90eac4;margin-top:15px;white-space:nowrap}.cursor{animation:cursor 1.4s steps(2) infinite}.engine-meter{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;margin-top:13px}.engine-meter i{height:5px;background:#31415e;transition:background .2s}.engine.processing .engine-meter i:nth-child(-n+9){background:var(--cobalt)}.output{border-color:#346a68;background:#122829;min-height:100px}.ready{color:var(--green)}.flow-lines{position:absolute;top:48px;left:0;width:100%;height:324px;z-index:0;pointer-events:none}.route{fill:none;stroke:#4c6396;stroke-width:1.6;stroke-dasharray:4 7;opacity:.8}.route-emph{fill:none;stroke:#31e6a0;stroke-width:2;opacity:.25}.pulse-star{position:absolute;top:0;left:0;z-index:3;color:#a7b9ff;text-shadow:0 0 16px #6b7dff;font:24px var(--mono);pointer-events:none;opacity:0;transform:translate(-50%,-50%)}.hero-tail{display:flex;justify-content:space-between;margin:26px 0 76px;font-size:10px;letter-spacing:.09em;color:#7182a0}.hero-tail a:hover{color:var(--blue)}.section{padding:110px 0;border-top:1px solid #1b2940}.section-tag{font-size:11px;color:var(--green);letter-spacing:.12em;margin-bottom:24px}.section h2{font-size:clamp(38px,5vw,65px);line-height:1.12;letter-spacing:-.045em;font-weight:650;margin-bottom:20px}.section h2 span{color:var(--blue)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:35px}.section-head h2{margin:0}.section-head p{max-width:310px;margin-bottom:4px}.section p{font-size:15px;line-height:1.85;color:#a9b8d0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card{min-height:315px;border:1px solid #293750;background:#0d1523;padding:25px 24px;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}.service-card:hover{border-color:#6172c7;transform:translateY(-4px)}.card-index{font-size:10px;color:#798fac;letter-spacing:.1em}.ascii-icon{font-family:var(--mono);font-size:36px;color:var(--blue);margin:31px 0 21px;letter-spacing:.07em}.service-card h3{font-size:22px;letter-spacing:-.025em;margin:0 0 10px}.service-card p{font-size:13px;line-height:1.8;margin:0 0 20px}.service-footer{display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding-top:20px;border-top:1px solid #293750;color:#8194b4;font-size:9px}.service-footer span{color:var(--green)}.automation{background:#0b101a}.feature-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12%}.feature-layout p{max-width:470px}.status-chip{display:inline-block;border:1px solid #315c53;color:var(--green);font-size:10px;letter-spacing:.1em;padding:10px 13px;margin-top:12px}.feature-panel{border:1px solid #30415e;background:#101a2b;box-shadow:0 20px 80px #04091480}.panel-heading,.panel-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 19px;border-bottom:1px solid #2b3a53;color:#8ba0be;font-size:9px;letter-spacing:.04em}.online,.term-green{color:var(--green)}.term-blue{color:var(--blue)}.terminal-lines{padding:28px 23px 34px;font-size:12px;line-height:3;color:#c8d2e7;white-space:nowrap}.prompt{color:var(--blue);padding-right:13px}.panel-foot{border-bottom:0;border-top:1px solid #2b3a53;color:#68809f}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.text-link{display:inline-block;margin-top:12px;color:var(--blue);font-size:14px;border-bottom:1px solid #596ad2;padding-bottom:7px}.demo-card{min-height:330px;border:1px solid #344761;background:#101a2a;padding:22px;display:flex;flex-direction:column}.demo-head,.demo-foot{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#9cabc7;letter-spacing:.05em}.prototype{color:#9fb0ff;border:1px solid #414f8f;padding:5px 8px}.message-bubble{max-width:85%;margin:45px 0 18px;padding:17px 20px;border-radius:12px 12px 12px 3px;background:#26365e;color:#e6eafe;font-size:14px;line-height:1.7}.typing{display:flex;gap:4px}.typing span{width:5px;height:5px;border-radius:50%;background:var(--green);opacity:.5;animation:typing 1.7s infinite alternate}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}.demo-foot{margin-top:auto;border-top:1px solid #30415e;padding-top:19px;color:#8398b8}.demo-foot span{color:var(--green)}.contact{text-align:center;background:radial-gradient(ellipse at center 100%,#23366b36,transparent 65%),#0a1020;padding:125px 0}.contact h2{font-size:clamp(45px,6.5vw,85px)}.contact p{max-width:520px;margin:0 auto 25px}.contact-note{display:inline-flex;gap:18px;align-items:center;border:1px solid #435271;padding:14px 18px;font-size:10px;color:#a9b8d4;letter-spacing:.09em}.contact-note span{color:var(--green)}.site-footer{border-top:1px solid #283650;padding:30px 0 34px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer-links{display:flex;gap:25px;font-size:12px;color:#9aabc7}.footer-copy{font-size:9px;color:#687e9d;letter-spacing:.08em}@keyframes typing{to{opacity:1;transform:translateY(-2px)}}@keyframes cursor{50%{opacity:0}}
@media(max-width:900px){.diagram-layout{gap:10%;padding:25px 20px}.module{padding:12px}.module-name{font-size:11px}.module-status{font-size:8px}.feature-layout,.demo-grid{gap:7%}.section{padding:85px 0}.footer-copy{width:100%}}
@media(max-width:670px){.wrap{width:min(100% - 36px,1180px)}.header-inner{min-height:67px}.brand{font-size:16px}.nav{display:none}.menu-button{display:block;background:none;color:var(--text);border:1px solid #35435e;padding:8px 10px}.mobile-menu.open{display:flex}.mobile-menu{position:absolute;top:67px;left:0;right:0;background:#0c1423;flex-direction:column;padding:20px;gap:20px;border-bottom:1px solid #273650;font-size:13px}.hero-content{padding-top:76px}.hero h1{font-size:clamp(39px,9.4vw,64px);letter-spacing:-.045em}.hero-desc{font-size:14px}.eyebrow{font-size:9px}.actions{flex-direction:column}.signal-diagram{margin-top:55px;min-height:0}.graphic-top{font-size:8px;padding:0 10px;gap:8px}.graphic-top span:last-child{display:none}.diagram-layout{display:flex;flex-direction:column;gap:16px;padding:22px}.input-stack{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:7px}.module{padding:11px 7px}.module-kicker{font-size:7px}.module-name{font-size:8px;overflow-wrap:anywhere}.module-status{font-size:7px;white-space:normal}.engine{min-height:0;width:100%;padding:15px}.engine-star{font-size:29px}.engine .module-name{font-size:14px}.output{width:100%;min-height:0}.output .module-name{font-size:12px}.flow-lines,.pulse-star{display:none}.diagram-bottom{gap:8px;padding:0 9px;font-size:7px}.diagram-bottom span:last-child{display:none}.hero-tail{font-size:8px;margin-bottom:55px}.section-head{display:block}.service-grid,.feature-layout,.demo-grid{grid-template-columns:1fr}.service-grid{gap:12px}.service-card{min-height:265px}.feature-panel,.demo-card{margin-top:32px}.section h2{font-size:clamp(36px,9vw,54px)}.footer-inner{display:block}.footer-links{margin:25px 0;flex-wrap:wrap;gap:15px}.footer-copy{display:block}.contact{padding:95px 0}.terminal-lines{font-size:10px;white-space:normal}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.twinkle-canvas,.pulse-star{display:none}}

/* Signal Routing v4 — single-inquiry visual story */
.network-stage{position:relative;padding:5px 12px 4px;min-height:0}
#networkSvg{display:block;width:100%;height:auto;overflow:visible;font-family:var(--mono)}
.network-routes path{fill:none;stroke:#516b9f;stroke-width:2;stroke-dasharray:5 7;opacity:.78}
.network-routes .owner-route{stroke:#31e6a0;opacity:.63}
.network-node rect{stroke:#465a79;stroke-width:1.5;fill:#16233a;transition:stroke .22s,filter .22s}
.engine-node rect{stroke:#6274a7;stroke-width:1.5;fill:#172542}
.owner-node rect{stroke:#447965;fill:#142a29}
.network-node.active rect,.engine-node.active rect{stroke:#a9b7ff;filter:drop-shadow(0 0 5px #566bff77)}
.owner-node.active rect{stroke:#31e6a0;filter:drop-shadow(0 0 7px #31e6a077)}
.node-kicker{fill:#8ca1c1;font-size:12px;letter-spacing:1px}
.node-title{fill:#f6f8ff;font-size:15px;font-weight:500;letter-spacing:.3px}
.engine-title{font-size:20px}
.node-state{fill:#31e6a0;font-size:12px;letter-spacing:.2px}
.node-hint{fill:#93a9d2;font-size:11px}
.network-caption{font-size:10px;letter-spacing:.8px;fill:#7d93b4}
.signal-particle{font-family:var(--mono);font-size:23px;font-weight:500;dominant-baseline:central;text-anchor:middle;paint-order:stroke;stroke:#0b1423;stroke-width:1.4px}
.signal-particle.inbound{fill:#a5b5ff;filter:drop-shadow(0 0 6px #7184ff)}
.signal-particle.owner{fill:#65efb7;filter:drop-shadow(0 0 6px #31e6a0)}
@media(max-width:670px){.network-stage{overflow-x:auto;padding:9px}.network-stage svg{min-width:590px}.signal-diagram{overflow:hidden}.diagram-bottom{height:37px}}
@media(prefers-reduced-motion:reduce){.network-node rect{transition:none!important}}

/* Comet Responder diagram: green reply route + caption */
.network-routes .return-route{stroke:#31e6a0;opacity:.45}
.response-caption{fill:#6fd9ad}
