backdrop-filter: blur() + полупрозрачный градиент, и никакого PNG нужно. Для блика на рамке есть хитрость с padding-box/border-box:
.card {
border-radius: 24px;
padding: 20px;
border: 1px solid transparent;
background:
linear-gradient(145deg, rgba(45,54,72,.8), rgba(12,17,26,.9)) padding-box,
linear-gradient(145deg, rgba(255,255,255,.35), rgba(255,255,255,.08)) border-box;
backdrop-filter: blur(20px) saturate(140%);
-webkit-backdrop-filter: blur(20px) saturate(140%);
box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 20px 60px rgba(0,0,0,.3);
}
Высота растёт по контенту сама. Единственное: за карточкой нужен хоть какой-то фон — без него blur нечего размывать.