<button>Button</button>
<button style="background-color: #CC2A41">Button</button>
button {
  --s: .25em; /* control the wave*/
  
  padding: .4em .5em;
  background-color: #BF4D28;
  color: #fff;
  --_s: calc(var(--s)*4) 51% repeat-x;
  --_r: calc(1.345*var(--s)) at left 50%;
  --_g1: #000 99%,#0000 101%;
  --_g2: #0000 99%,#000 101%;
  --mask:
    radial-gradient(var(--_r) top    calc(var(--s)* 1.9),var(--_g1)) 
     calc(50% - 2*var(--s) - var(--_i,0px)) 0/var(--_s),
    radial-gradient(var(--_r) top    calc(var(--s)*-0.9),var(--_g2)) 
     calc(50% - var(--_i,0px)) var(--s)/var(--_s),
    radial-gradient(var(--_r) bottom calc(var(--s)* 1.9),var(--_g1)) 
     calc(50% - 2*var(--s) + var(--_i,0px)) 100%/var(--_s),
    radial-gradient(var(--_r) bottom calc(var(--s)*-0.9),var(--_g2)) 
     calc(50% + var(--_i,0px)) calc(100% - var(--s))/var(--_s);
  -webkit-mask: var(--mask);
          mask: var(--mask);
  cursor: pointer;
}
button:hover {
  --_i: calc(4*var(--s));
  transition: .35s;
}
button:active {
  background-image: linear-gradient(#0004 0 0);
}
button:focus-visible {
  -webkit-mask: none;
  outline-offset: .1em;
  padding: .2em .5em;
  margin: .2em 0;
}

body {
  height: 100vh;
  margin: 0;
  display: grid;
  grid-template-columns: auto auto;
  gap: 20px;
  place-content: center;
  background: #F6F7BD;
}
button {
  font-family: system-ui, sans-serif;
  font-weight: bold;
  font-size: 4rem;
  margin: 0;
  cursor: pointer;
  border: none;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.