При вводе купон можно еще зачеркнуть старую цену и нарисовать сбоку новую в блестящем кружочке, типо акция, тогда не придется использовать переменные и другую математику, кстати
Можно не сложно на js.
Через css - табличной версткой, но тогда надо структуру делать другой, т. е. у тебя будет не две карточки (.one, .two) а строки таблицы. Между столбцами сделаешь пропуски пространства, чтоб выглядело как 2 отдельных блока
Нужно чтобы высота внутренних блоков менялась в зависимости от высоты внутренних блоков соседних карточек. Думаю использование флекс-боксов не будет основным трюком чтобы этого достичь
Оптическая иллюзия типо.