Yes, achieving this effect is possible, but it requires more than just CSS gradients.
You must incorporate an SVG for the curved shape and utilize a gradient on hover to create the desired result.
.button {
display: inline-block;
padding: 0.5em 1em;
border-radius: 5px;
border: 1px solid #FAB14C;
/* Utilizing two background images: an SVG curve overlaying a linear-gradient */
background-image:
url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg"><path d="M0,80 C50,100 50,0 100,20 L100,100 L0,100" fill="%23FAB14C"></path></svg>'),
linear-gradient(to top, #FAB14C, white);
/* Ensure the backgrounds fill and do not repeat in the element */
background-size: 100% 100%;
background-repeat: no-repeat;
text-transform: uppercase;
font-family: sans-serif;
cursor: pointer;
}
<button type="button" class="button">
Edit this article
</button>