body{margin:0;background:#15191D}
a{color:#B5FA2C}a:hover{color:#D4FF7A}
@keyframes sgfwd{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes sgrev{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@keyframes sgring{0%,100%{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(8deg)}}
@keyframes sgpop{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes sgup{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes sgfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes sgwave{0%{opacity:0;transform:scale(.6)}40%{opacity:1}100%{opacity:0;transform:scale(1.25)}}
@keyframes sgreveal{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes sgclimb{0%,15%{transform:translateY(0)}35%,80%{transform:translateY(-200%)}100%{transform:translateY(0)}}
@keyframes sgdrop{0%,15%{transform:translateY(0)}35%,80%{transform:translateY(100%)}100%{transform:translateY(0)}}
@keyframes sgstar{0%,8%{color:#3A434D;transform:scale(.8)}18%,85%{color:#F2B33D;transform:scale(1)}100%{color:#3A434D;transform:scale(.8)}}
@keyframes sgpulse{0%{box-shadow:0 0 0 0 rgba(181,250,44,.6)}70%{box-shadow:0 0 0 14px rgba(181,250,44,0)}100%{box-shadow:0 0 0 0 rgba(181,250,44,0)}}
@keyframes sgshrink{0%,15%{width:88%}45%,85%{width:26%}100%{width:88%}}
@keyframes sggrow{0%,15%{width:22%}45%,85%{width:84%}100%{width:22%}}
.sg-fwd{animation:sgfwd 45s linear infinite}
.sg-rev{animation:sgrev 45s linear infinite}
.sg-ring{animation:sgring 1.2s ease-in-out infinite;transform-origin:50% 50%}
.sg-pop{animation:sgpop .4s ease-out both}
.sg-up{animation:sgup .8s cubic-bezier(.2,.7,.2,1) both}
.sg-float{animation:sgfloat 5s ease-in-out infinite}
.sg-wave{animation:sgwave 1.8s ease-out infinite;transform-origin:20% 80%}
.sg-climb{animation:sgclimb 6s ease-in-out infinite}
.sg-drop{animation:sgdrop 6s ease-in-out infinite}
.sg-star{animation:sgstar 4s ease-in-out infinite}
.sg-pulse{animation:sgpulse 1.8s ease-out infinite}
.sg-shrink{animation:sgshrink 6s ease-in-out infinite}
.sg-grow{animation:sggrow 6s ease-in-out infinite}

@media (prefers-reduced-motion: reduce){.sg-fwd,.sg-rev,.sg-ring,.sg-pop,.sg-up,.sg-float,.sg-wave,.sg-reveal,.sg-climb,.sg-drop,.sg-star,.sg-pulse,.sg-shrink,.sg-grow{animation:none}}

.sg-tab{min-height:44px;border:0;border-radius:7px;cursor:pointer;font-family:"IBM Plex Mono",monospace;font-size:13px;letter-spacing:.06em;text-transform:uppercase;transition:background-color .4s ease;background:transparent;color:#C9CED3}
.sg-tab.is-before{background:#C2363B;color:#fff;font-weight:600}
.sg-tab.is-after{background:#B5FA2C;color:#15191D;font-weight:600}
.sg-dot{aspect-ratio:1/1;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:13px;transition:background-color .6s ease,color .6s ease;box-shadow:0 0 0 2px rgba(21,25,29,.5)}
.sg-dot.is-center{box-shadow:0 0 0 3px #1E242A,0 0 0 6px #F3F4F1}
.sg-dot.r{background:#C2363B;color:#fff}.sg-dot.y{background:#F2B33D;color:#15191D}.sg-dot.g{background:#B5FA2C;color:#15191D}
a:focus-visible,button:focus-visible{outline:3px solid #B5FA2C;outline-offset:3px}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
.sg-form input,.sg-form textarea{display:block;width:100%;box-sizing:border-box;min-height:54px;padding:14px 16px;background:#1E242A;border:1px solid #3A434D;border-radius:10px;color:#F3F4F1;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:17px;line-height:1.4;-webkit-appearance:none;appearance:none}
.sg-form textarea{resize:vertical;min-height:150px}
.sg-form input:focus,.sg-form textarea:focus{outline:3px solid #B5FA2C;outline-offset:1px;border-color:#B5FA2C}
.sg-form button:hover{background:#D4FF7A}
.sg-form input::placeholder,.sg-form textarea::placeholder{color:#8A939C}
.sg-js .sg-reveal{opacity:0;transform:translateY(56px) scale(.98);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
.sg-js .sg-reveal.sg-left{transform:translateX(-64px)}
.sg-js .sg-reveal.sg-right{transform:translateX(64px)}
.sg-js .sg-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.sg-js .sg-reveal{opacity:1;transform:none;transition:none}}