Antonio09, Насчёт прозрачности не уверен, поскольку у вас идёт наложение двух слоёв (before и after). Соответственно, на пересечении слоёв цвет будет более насыщенный, чем по краям.
В принципе, можно сделать такую форму с помощью SVG, наложив его фоном на прозрачный квадрат.