/* Bounded decorative scene. The static SVG stays visible until canvas rendering succeeds. */
.c-hero-visual{position:relative;width:100%;min-width:0;margin:0!important;align-self:center}
.c-visual-rail{display:flex;justify-content:space-between;gap:12px;margin:0 12px;color:#88b4c7;font:9px/1.6 Consolas,monospace;letter-spacing:.16em}
.c-visual-rail>span:first-child{display:flex;align-items:center;gap:10px}
.c-visual-rail i{width:4px;height:4px;background:#7fe6e2;box-shadow:0 0 10px #7fe6e2;border-radius:50%}
.c-orbit-stage{position:relative;aspect-ratio:720/620;isolation:isolate}
.c-orbit-fallback,.c-orbit-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.c-orbit-canvas{opacity:0}.c-hero-visual[data-rendered=true] .c-orbit-canvas{opacity:1}
.c-hero-visual[data-rendered=true] .c-orbit-fallback{visibility:hidden}
.c-orbit-word{position:absolute;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:450;letter-spacing:.03em;color:#d0e8f2;padding:7px 12px;background:#0c1a2ceb;border:1px solid #77c9e238;box-shadow:0 8px 26px #02091250;white-space:nowrap;border-radius:3px}
.c-orbit-word small{font:8px/1.5 Consolas,monospace;letter-spacing:.08em;color:#83d8df;border-right:1px solid #88d1dd44;padding-right:9px}
.c-word-zh{left:9%;top:24%}.c-word-en{right:0;top:35%}.c-word-ja{left:2%;bottom:23%}.c-word-fr{right:7%;bottom:15%}
.c-orbit-core{position:absolute;top:45%;left:50%;width:55%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;text-shadow:0 2px 30px #000}
.c-orbit-core>span{font-family:"Bahnschrift","Avenir Next","Segoe UI",sans-serif;font-size:clamp(38px,4.6vw,66px);letter-spacing:.19em;font-weight:350;color:#ebffff;display:block;padding-left:.19em}
.c-orbit-core>small{display:block;font:7px/1.5 Consolas,monospace;letter-spacing:.18em;color:#9adce4;margin-top:6px}
.c-orbit-coordinate{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);font:7px/1.6 Consolas,monospace;letter-spacing:.14em;color:#86a8bc;white-space:nowrap}
.c-scene-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 12px}
.c-scene-modes{display:flex;border-bottom:1px solid #7cacc938}
.c-scene-modes button,.c-motion-toggle{font-family:inherit;line-height:1.5;color:#adc3d3;background:transparent;border:0;min-height:44px;padding:10px 15px;cursor:pointer}
.c-scene-modes button{font-size:11px;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.c-scene-modes button[aria-pressed=true]{color:#b8fffa;border-bottom-color:#89e7e9;background:linear-gradient(0deg,#7ee6e90d,transparent)}
.c-scene-modes button:hover{color:#fff}.c-motion-toggle{display:grid;place-items:center;min-width:44px;border:1px solid #7cacc938;border-radius:50%;padding:8px;font-size:14px}
.c-motion-toggle:hover{border-color:#90e7e9;color:#e4ffff}.c-motion-toggle:disabled{cursor:default;color:#adbdcc}
.c-hero-visual figcaption{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px;text-align:center;font-size:10px;line-height:1.7;color:#9cb3c5;margin:14px 0 0;min-height:34px}
.c-hero-visual figcaption small{font-size:9px;color:#839eb5}
.c-hero-visual[data-mode="1"] .c-orbit-word{border-color:#84aaff6b}.c-hero-visual[data-mode="2"] .c-orbit-word{border-color:#7ce3cd6b}
/* Only opt into a brief entrance when a section is actually visible. Nothing is hidden without JS. */
@keyframes section-arrive{from{opacity:.65;transform:translateY(18px)}to{opacity:1;transform:none}}
.c-section.is-arriving>.c-section-heading,.c-section.is-arriving>.w-shell>.c-section-heading{animation:section-arrive .75s cubic-bezier(.2,.7,.2,1) both}
@keyframes caption-wave{0%,100%{transform:scaleY(.58)}50%{transform:scaleY(1)}}
.c-product-saas[data-in-view=true] .c-live-wave i{animation:caption-wave 2.3s ease-in-out infinite;animation-delay:calc(var(--bar,0) * -120ms)}
.w-home[data-motion-paused=true] .c-live-wave i{animation-play-state:paused}
@media(min-width:1500px){.c-orbit-core>span{font-size:70px}}
@media(max-width:1150px){.c-orbit-word{font-size:11px;padding:6px 9px}.c-word-en{right:-1%}.c-orbit-core>small{font-size:6px}.c-orbit-core>span{font-size:48px}}
@media(max-width:900px){.c-hero-visual{width:min(580px,100%);margin:36px auto 0!important}.c-orbit-core>span{font-size:64px}.c-orbit-word{font-size:13px}.c-word-en{right:1%}.c-orbit-core>small{font-size:7px}}
@media(max-width:600px){.c-hero-visual{margin-top:28px!important}.c-visual-rail{font-size:8px;margin-inline:4px}.c-orbit-core>span{font-size:45px}.c-orbit-core>small{font-size:5px}.c-orbit-word{font-size:10px;padding:5px 7px;gap:6px}.c-orbit-word small{font-size:7px;padding-right:6px}.c-word-zh{left:4%;top:21%}.c-word-en{right:0;top:34%}.c-word-ja{left:0;bottom:24%}.c-word-fr{right:4%;bottom:16%}.c-scene-controls{gap:8px;margin-inline:0}.c-scene-modes button{padding-inline:11px;font-size:10px}.c-hero-visual figcaption{font-size:9px;gap:3px 7px}.c-hero-visual figcaption small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.c-section.is-arriving .c-section-heading,.c-live-wave i{animation:none!important}}
