/* Lightweight, local motion: no video download, tracking, or external dependencies. */
.orbital-system{isolation:isolate}
.orbit-lines{animation:orbit-turn 42s linear infinite;will-change:transform;pointer-events:none}
.orbit-halo{position:absolute;inset:15%;border:1px solid #96edcb55;border-radius:50%;box-shadow:0 0 20px #96edcb0d,inset 0 0 20px #96edcb0d;animation:halo-turn 18s linear infinite;pointer-events:none}
.orbit-halo::after{content:'';position:absolute;left:50%;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 15px #96edcb99}
.identity-core{cursor:pointer;padding:0;color:var(--paper);z-index:2;transition:border-color .3s,box-shadow .3s}
.identity-core img{animation:logo-turn 48s linear infinite}
.identity-core:hover,.identity-core:focus-visible{border-color:var(--mint);box-shadow:0 0 65px #96edcb33}
.identity-core::after{content:'';position:absolute;inset:-8px;border:1px solid #96edcb66;border-radius:50%;animation:core-breathe 4s ease-in-out infinite;pointer-events:none}
.orbit-node{color:var(--paper);cursor:pointer;z-index:3;min-height:44px;transition:border-color .25s,background .25s,box-shadow .25s}
.orbit-node:hover,.orbit-node[aria-pressed=true]{border-color:var(--mint);background:#224338;box-shadow:0 0 25px #96edcb16}
.orbit-node .node-icon{display:inline-block}
.orbit-node:hover .node-icon{color:#c2ffe8}
.identity-insight{min-height:96px;padding:15px 18px;background:#17302977;border:1px solid #36534b;border-radius:6px;margin:0 0 16px}
.identity-insight strong{display:block;color:var(--mint);font-size:12px;font-weight:500;line-height:1.5}
.identity-insight p{color:#b6c8c7;font-size:11px;line-height:1.7;margin-top:5px}
.visual-footer{font-size:7px;letter-spacing:1px;padding-top:9px;gap:8px}
.motion-toggle{margin-left:auto;flex-shrink:0;padding:10px 9px;min-height:36px;border:1px solid #436158;border-radius:4px;background:transparent;color:#c5dbd4;font-size:9px;cursor:pointer;letter-spacing:0}
.motion-toggle:hover{background:#214037}
.motion-toggle:disabled{opacity:.7;cursor:default}
.motion-paused .orbit-lines,.motion-paused .orbit-halo,.motion-paused .identity-core img,.motion-paused .identity-core::after{animation-play-state:paused}
.service-icon{border:1px solid transparent;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
.service-icon span{display:inline-block}
.service-icon:hover{background:#d0eede;border-color:#68a18a;box-shadow:0 0 0 5px #e8f6ee}
.service-card.is-highlighted{border-color:#3c9d77;background:#f3fcf7;box-shadow:0 10px 30px #285d4114}
.contact-email{display:inline-flex;align-items:center;gap:20px;margin-top:24px;padding-bottom:9px;border-bottom:1px solid #507b69;color:var(--mint);font-size:clamp(15px,2vw,19px);letter-spacing:-.3px;overflow-wrap:anywhere}
.contact-email:hover{color:#d1ffed;border-color:var(--mint)}
.email-notice{font-size:11px;line-height:1.7;color:#baccc7;padding:13px 15px;border-left:2px solid #6bb898;background:#1a322d;margin-block:20px;border-radius:0 4px 4px 0}
.email-notice strong{display:block;color:var(--mint);font-weight:500;margin-bottom:3px}
.form-fallback{font-size:10px;line-height:1.9;color:#b0c4c6;margin-top:-4px;overflow-wrap:anywhere}
.form-fallback a,.copy-inquiry{color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.copy-inquiry{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}
.form-status:empty{display:none}
.brand img{transition:transform .45s ease}
.brand:hover img{transform:rotate(16deg)}
.btn:not(:disabled):active{transform:scale(.97)}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes logo-turn{to{transform:rotate(-360deg)}}
@keyframes halo-turn{from{transform:perspective(650px) rotateZ(-30deg) rotateY(55deg) rotateX(25deg)}to{transform:perspective(650px) rotateZ(330deg) rotateY(55deg) rotateX(25deg)}}
@keyframes core-breathe{0%,100%{opacity:.25;scale:1}50%{opacity:.75;scale:1.08}}
@media(max-width:800px){.identity-insight{min-height:91px}.hero-grid{gap:35px}}
@media(max-width:380px){.visual-footer{letter-spacing:.5px;font-size:6px}.motion-toggle{font-size:8px;padding:8px 6px}}
@media(prefers-reduced-motion:reduce){.orbit-lines,.orbit-halo,.identity-core img,.identity-core::after{animation:none!important}.brand:hover img{transform:none}.service-card:hover,.btn:hover,.btn:not(:disabled):active{transform:none}}
