Если каждоый полукруг это одинаковый элемент, с разными свойствами (scale + fill), то самое оптимальное → загнать символ фигуры, из нее собрать с помощью use облака задав им разный scale и fill, и их с помощью абсолютного позиционирования расположить, как в макете. Это дешево, правильно и еще позволяет анимировать при необходимости без лишней головной боли.
Альтернативой абсолютному позиционированию могут в данном случае стать гриды.