.drive-button{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;text-decoration:none;line-height:1.3}
.drive-label{position:relative;z-index:1;display:block;font-size:inherit!important;line-height:inherit!important}
.drive-ignition{display:block;position:relative;z-index:1;flex:0 0 20px;width:20px;height:20px;opacity:.7;transition:opacity .25s}
.drive-ignition svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.drive-ignition circle{stroke-dasharray:43 17;transform-origin:12px 12px;transform:rotate(-115deg)}
.drive-ignition path{stroke-dasharray:20;stroke-dashoffset:0;transform-origin:12px 13px}
.drive-button:after{content:'';position:absolute;bottom:3px;left:20%;width:60%;height:2px;background:currentColor;opacity:0;transform:scaleX(.03);transform-origin:left;border-radius:2px;pointer-events:none}
.drive-button:is(:hover,:focus-visible) .drive-ignition{opacity:1}
.drive-button:is(:hover,:focus-visible) .drive-ignition circle{animation:ignition-sweep .85s cubic-bezier(.2,.8,.2,1) both}
.drive-button:is(:hover,:focus-visible) .drive-ignition path{animation:ignition-bars .65s ease-out both}
.drive-button:is(:hover,:focus-visible):after{animation:ignition-line .85s cubic-bezier(.16,1,.3,1) both}
.drive-button:is(:hover,:focus-visible) .drive-label{animation:gear-engage .48s cubic-bezier(.2,.8,.2,1) both}
.drive-button:active{transform:scale(.975)}
@keyframes ignition-sweep{0%{transform:rotate(-115deg);stroke-dasharray:12 48}65%{transform:rotate(180deg);stroke-dasharray:50 10}100%{transform:rotate(245deg);stroke-dasharray:43 17}}
@keyframes ignition-bars{0%{stroke-dashoffset:20;opacity:.2;transform:rotate(-35deg)}65%{transform:rotate(25deg)}100%{stroke-dashoffset:0;opacity:1;transform:rotate(0)}}
@keyframes ignition-line{0%{opacity:0;transform:scaleX(.03)}35%{opacity:.6}75%{opacity:.8;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
@keyframes gear-engage{0%{transform:translateY(0)}35%{transform:translateY(-3px)}65%{transform:translateY(1px)}100%{transform:translateY(0)}}