/* COORDUS website banner (approved 9 November 2026). Generated by tools/extract_website_banner.cjs. */
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(Poppins-500.woff2) format("woff2")}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(Poppins-700.woff2) format("woff2")}
#coordus-banner{--cb-bg:#0e0e0e;--cb-fg:#f4f4f2;--cb-mute:#8e8e8a;--cb-line:#2a2a2c;--cb-accent:#bdbdbd;display:block;margin:0 auto;color:var(--cb-fg);font-family:Poppins,system-ui,sans-serif}
#coordus-banner,#coordus-banner *{box-sizing:border-box}
#coordus-banner .cb-ring{display:block;overflow:visible}
.banner-band{background:#0e0e0e;padding:16px 16px 0}
#coordus-banner{--tag-step:.0788s;--w1:.4s;--coin:1.2s;--fling-at:1.5s;--fling-d:2s;--p2-at:3.2s;--p2-d:.7s;--hold:5s;--w2:5.4s;--w3:10.4s;--w3-d:3s;--land:14.9s}#coordus-banner{position:relative;width:min(1120px,100%);aspect-ratio:16/9;max-width:100%;background:radial-gradient(ellipse at 50% 60%,#141416 0%,var(--cb-bg) 70%);overflow:hidden;perspective:800px}#coordus-banner .scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;perspective:800px}#coordus-banner .net{position:absolute;inset:0;width:100%;height:100%}#coordus-banner .net circle{fill:var(--cb-fg);opacity:0;animation:cb-dot 1.2s ease-out forwards}#coordus-banner .net line{stroke:var(--cb-fg);stroke-opacity:.18;stroke-width:1.2;stroke-dasharray:1200;stroke-dashoffset:1200;animation:cb-draw 1.6s ease-out forwards}
@keyframes cb-dot{to{opacity:.9}}
@keyframes cb-draw{to{stroke-dashoffset:0}}#coordus-banner .word{position:absolute;font-family:Poppins,sans-serif;font-weight:700;font-size:clamp(30px,5.6vw,72px);white-space:nowrap;text-align:center;transform-style:preserve-3d;opacity:0;padding:0 24px}#coordus-banner .w1,#coordus-banner .w2{display:grid;place-items:center;perspective:700px}#coordus-banner .w1>span,#coordus-banner .w2>span{grid-area:1/1;display:inline-block;transform-style:preserve-3d;opacity:0}#coordus-banner .w1>.p1,#coordus-banner .w2>.p1{opacity:1;font-size:calc(var(--K) * 1em);transform:scale(calc(1 / var(--K)));transform-style:flat;perspective:700px}#coordus-banner .sp{display:inline-block}#coordus-banner{--K:5}#coordus-banner{--sz:300px}#coordus-banner .L{display:inline-block;opacity:0;animation:cb-converge calc(var(--coin) * .62) cubic-bezier(.16,.84,.3,1) calc(var(--start) + var(--i) * var(--coin) * .032) forwards}#coordus-banner .w1 .L{--start:var(--w1)}#coordus-banner .w2 .L{--start:var(--w2)}
@keyframes cb-converge{0%{opacity:0;filter:blur(30px);transform:translate3d(var(--x),var(--y),var(--z)) rotate(var(--r))}55%{opacity:1;filter:blur(0)}78%{transform:translate3d(calc(var(--x) * -.04),calc(var(--y) * -.06),0) rotate(calc(var(--r) * -.1))}100%{opacity:1;filter:none;transform:none}}#coordus-banner .w1{animation:cb-holdExit var(--hold) cubic-bezier(.2,.8,.2,1) var(--w1) forwards}#coordus-banner .w1 .p1{animation:cb-swing var(--fling-d) cubic-bezier(.45,.05,.7,.55) calc(var(--w1) + var(--fling-at)) forwards}#coordus-banner .w1 .p2{animation:cb-fadeIn var(--p2-d) ease-out calc(var(--w1) + var(--p2-at)) forwards}#coordus-banner .w2{animation:cb-holdExit var(--hold) cubic-bezier(.2,.8,.2,1) var(--w2) forwards}#coordus-banner .w2 .p1{animation:cb-swing var(--fling-d) cubic-bezier(.45,.05,.7,.55) calc(var(--w2) + var(--fling-at)) forwards}#coordus-banner .w2 .p2{animation:cb-fadeIn var(--p2-d) ease-out calc(var(--w2) + var(--p2-at)) forwards}#coordus-banner .w3{animation:cb-coinClose var(--w3-d) cubic-bezier(.2,.8,.2,1) var(--w3) forwards}#coordus-banner .w3 em{font-style:normal;color:var(--cb-accent)}#coordus-banner .w3 .o{display:inline-block}
@keyframes cb-coinIn{0%{opacity:0;letter-spacing:.4em;transform:translateZ(-1400px) rotateY(-1080deg) scale(.4)}59%{opacity:1;letter-spacing:.2em;transform:translateZ(240px) rotateY(-40deg) scale(1.3)}82%{letter-spacing:.02em;transform:translateZ(-80px) rotateY(-5deg) scale(.96)}100%{opacity:1;letter-spacing:0;transform:translateZ(0) rotateY(0) scale(1)}}


@keyframes cb-swing{
 0%{opacity:1;letter-spacing:0;transform:translateZ(0) rotateY(0) scale(calc(1 / var(--K)))}
 72%{opacity:1}
 100%{opacity:0;letter-spacing:.4em;transform:translateZ(240px) rotateY(1080deg) scale(calc(1.3 / var(--K)))}}
@keyframes cb-fling{0%{opacity:1;transform:translateZ(0) scale(1)}100%{opacity:0;transform:translateZ(600px) scale(2.6)}}
@keyframes cb-fadeIn{0%{opacity:0;transform:scale(.94)}100%{opacity:1;transform:scale(1)}}
@keyframes cb-holdExit{0%{opacity:1;transform:none}91%{opacity:1;transform:scaleX(1)}100%{opacity:0;transform:scaleX(3.2) scaleY(.75)}}
@keyframes cb-coinClose{0%{opacity:0;letter-spacing:.4em;word-spacing:.6em;transform:translateZ(-1400px) rotateY(-1080deg) scale(.4)}26%{opacity:1;letter-spacing:.2em;word-spacing:.35em;transform:translateZ(240px) rotateY(-40deg) scale(1.3)}36%{letter-spacing:.02em;word-spacing:.05em;transform:translateZ(-80px) rotateY(-5deg) scale(.96)}44%{letter-spacing:0;word-spacing:0;transform:translateZ(0) rotateY(0) scale(1)}86%{opacity:1;letter-spacing:0;transform:translateZ(0) scaleX(1)}100%{opacity:0;transform:scaleX(3.2) scaleY(.75)}}@keyframes cb-coinCloseSm{0%{opacity:0;letter-spacing:.25em;word-spacing:.3em;transform:translateZ(-1400px) rotateY(-1080deg) scale(.4)}26%{opacity:1;letter-spacing:.06em;word-spacing:.1em;transform:translateZ(60px) rotateY(-40deg) scale(1.06)}36%{letter-spacing:.01em;word-spacing:.02em;transform:translateZ(-30px) rotateY(-5deg) scale(.98)}44%{letter-spacing:0;word-spacing:0;transform:translateZ(0) rotateY(0) scale(1)}86%{opacity:1;letter-spacing:0;transform:translateZ(0) scaleX(1)}100%{opacity:0;transform:scaleX(3.2) scaleY(.75)}}#coordus-banner .end{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;isolation:isolate}#coordus-banner .end::before{content:"";position:absolute;left:50%;top:50%;width:78%;height:46%;transform:translate(-50%,-50%);z-index:-1;background:radial-gradient(ellipse at center,rgba(8,8,9,.86) 0%,rgba(8,8,9,.55) 45%,rgba(8,8,9,0) 72%);opacity:0;animation:cb-pool 1.2s ease-out calc(var(--land) - .1s) forwards}
@keyframes cb-pool{to{opacity:1}}#coordus-banner .mark{position:relative;width:min(480px,60%);aspect-ratio:999/161;height:auto;max-width:100%;perspective:600px;filter:drop-shadow(0 10px 22px rgba(0,0,0,.65)) drop-shadow(0 2px 3px rgba(0,0,0,.45))}#coordus-banner .osvg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}#coordus-banner .lt{opacity:0;transform-box:fill-box;transform-origin:50% 50%;animation:cb-stampL .55s cubic-bezier(.2,1.4,.3,1) calc(var(--land) + .2s) forwards}#coordus-banner .lt path{fill:var(--cb-fg);fill-rule:evenodd}#coordus-banner .lr{animation-delay:calc(var(--land) + .5s)}#coordus-banner .ld{animation-delay:calc(var(--land) + .65s)}#coordus-banner .lu{animation-delay:calc(var(--land) + .8s)}#coordus-banner .ls{animation-delay:calc(var(--land) + .95s)}
@keyframes cb-stampL{0%{opacity:0;transform:translateY(-30px) scale(1.25)}60%{opacity:1}100%{opacity:1;transform:none}}#coordus-banner .ro{opacity:0}#coordus-banner .ro.on{opacity:1}#coordus-banner .ro path{fill:none;stroke:var(--cb-fg);stroke-width:32.5}#coordus-banner .side{stroke-dasharray:100;stroke-dashoffset:0}#coordus-banner .ro1 .side{animation:cb-retract .6s cubic-bezier(.45,.05,.4,1) calc(var(--land) + 3s) forwards}#coordus-banner .ro2 .side{animation:cb-retract .6s cubic-bezier(.45,.05,.4,1) calc(var(--land) + 4.6s) forwards}#coordus-banner .strand,#coordus-banner .gapline{fill:none;stroke:var(--cb-fg);stroke-width:32.5;stroke-dasharray:100;stroke-dashoffset:100}#coordus-banner .strand.over,#coordus-banner .gapline{animation:cb-reach .85s cubic-bezier(.4,.05,.3,1) calc(var(--land) + 2.1s) forwards}#coordus-banner .strand.under{animation:cb-reach .8s cubic-bezier(.4,.05,.3,1) calc(var(--land) + 3.7s) forwards}#coordus-banner .gapline{stroke:#000;stroke-width:39.5}
@keyframes cb-retract{to{stroke-dashoffset:100}}
@keyframes cb-reach{to{stroke-dashoffset:0}}#coordus-banner .cb-tag{font-family:Poppins,sans-serif;font-size:clamp(14px,2.1vw,25px);font-weight:500;color:var(--cb-fg);text-shadow:0 2px 10px rgba(0,0,0,.7);letter-spacing:.01em;white-space:nowrap;padding:0 .4em}#coordus-banner .cb-tag .ch{opacity:0;animation:cb-ch 1ms linear calc(var(--land) + 2.9s + var(--i) * var(--tag-step)) forwards}
@keyframes cb-ch{to{opacity:1}}#coordus-banner.still *,#coordus-banner.still *::before,#coordus-banner.still *::after{animation-duration:1ms!important;animation-delay:0s!important}#coordus-banner.still .ro{opacity:1}


@media (max-width:600px){#coordus-banner{aspect-ratio:4/5}#coordus-banner .word{font-size:clamp(28px,9vw,44px)}#coordus-banner{--sz:110px}#coordus-banner .w3{white-space:normal;line-height:1.15;font-size:clamp(26px,8vw,38px);animation-name:cb-coinCloseSm}#coordus-banner .w3 em{display:block}#coordus-banner .mark{width:84%}#coordus-banner .cb-tag{font-size:clamp(14px,4.3vw,19px)}#coordus-banner .end{gap:12px}#coordus-banner .end::before{width:110%;height:34%}
}#coordus-banner .fly{position:absolute;left:0;top:0;margin:0;color:var(--cb-fg);will-change:transform;z-index:3;pointer-events:none}#coordus-banner .fly.stay{font-family:Poppins,sans-serif;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}#coordus-banner .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
