.dot-grid{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.dot-grid__wrap{width:100%;height:100%;position:relative}.dot-grid__canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}
.curved-btn{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;transition:transform .3s cubic-bezier(.16,1,.3,1);display:block;position:relative}.curved-btn:hover{transform:scale(1.03)}.curved-btn:active{transform:scale(.98)}.curved-btn:focus-visible{outline-offset:4px;border-radius:24px;outline:2px solid #2dd4bf66}.curved-btn__svg{width:100%;height:auto;display:block;overflow:visible}.curved-btn__svg text{pointer-events:none;font-family:inherit}.curved-btn__arrow{transform-box:fill-box;transform-origin:50%;transition:transform .35s cubic-bezier(.34,1.56,.64,1);transform:rotate(0)}.curved-btn__arrow--up{transform:rotate(180deg)}.curved-btn__sparkle{animation-name:sparkle-pulse;animation-duration:.35s;animation-timing-function:cubic-bezier(.34,1.56,.64,1);animation-iteration-count:1;animation-fill-mode:both}@keyframes sparkle-pulse{0%{opacity:0}60%{opacity:1}to{opacity:1}}@media (prefers-reduced-motion:reduce){.curved-btn__arrow{transition-duration:.01ms}.curved-btn__sparkle{animation-duration:.01ms}}
