.ne-creative-button{display:block}
.ne-creative-button--left{text-align:left}
.ne-creative-button--center{text-align:center}
.ne-creative-button--right{text-align:right}
.ne-creative-button__btn{--ne-cb:var(--ne-accent,#2563eb);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.75em 1.5em;border:2px solid var(--ne-cb);border-radius:6px;background:var(--ne-cb);color:#fff;font:inherit;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;transition:color .3s ease,background-color .3s ease,box-shadow .3s ease,transform .3s ease}
.ne-creative-button__btn.is-small{font-size:.85rem;padding:.55em 1.1em}
.ne-creative-button__btn.is-large{font-size:1.2rem;padding:.9em 1.9em}
.ne-creative-button__btn:focus-visible{outline:3px solid var(--ne-cb);outline-offset:3px}
.ne-creative-button__icon{display:inline-block;line-height:1}

/* slide-fill */
.ne-creative-button__btn--slide-fill{background:transparent;color:var(--ne-cb)}
.ne-creative-button__btn--slide-fill::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ne-cb);transform:translateX(-101%);transition:transform .35s ease}
.ne-creative-button__btn--slide-fill:hover,.ne-creative-button__btn--slide-fill:focus-visible{color:var(--ne-on-accent,#fff)}
.ne-creative-button__btn--slide-fill:hover::before,.ne-creative-button__btn--slide-fill:focus-visible::before{transform:translateX(0)}

/* underline-grow */
.ne-creative-button__btn--underline-grow{background:transparent;color:var(--ne-cb);border-color:transparent;border-radius:0;padding-left:.25em;padding-right:.25em}
.ne-creative-button__btn--underline-grow::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--ne-cb);transform:scaleX(.2);transform-origin:left;transition:transform .35s ease}
.ne-creative-button__btn--underline-grow:hover::after,.ne-creative-button__btn--underline-grow:focus-visible::after{transform:scaleX(1)}

/* shine */
.ne-creative-button__btn--shine::after{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .6s ease}
.ne-creative-button__btn--shine:hover::after,.ne-creative-button__btn--shine:focus-visible::after{left:130%}

/* lift */
.ne-creative-button__btn--lift{overflow:visible}
.ne-creative-button__btn--lift:hover,.ne-creative-button__btn--lift:focus-visible{transform:translateY(-4px);box-shadow:0 10px 20px rgba(0,0,0,.22)}

/* outline-pulse */
.ne-creative-button__btn--outline-pulse{background:transparent;color:var(--ne-cb);overflow:visible}
.ne-creative-button__btn--outline-pulse:hover,.ne-creative-button__btn--outline-pulse:focus-visible{animation:ne-cb-pulse 1.2s ease-out infinite}
@keyframes ne-cb-pulse{0%{box-shadow:0 0 0 0 rgba(37,99,235,.45)}100%{box-shadow:0 0 0 12px rgba(37,99,235,0)}}

@media (prefers-reduced-motion:reduce){
	.ne-creative-button__btn,.ne-creative-button__btn::before,.ne-creative-button__btn::after{transition:none!important;animation:none!important}
	.ne-creative-button__btn--lift:hover,.ne-creative-button__btn--lift:focus-visible{transform:none}
	.ne-creative-button__btn--shine::after{display:none}
	.ne-creative-button__btn--outline-pulse:hover,.ne-creative-button__btn--outline-pulse:focus-visible{box-shadow:0 0 0 4px rgba(37,99,235,.3)}
}
