Испытание: строим сетку [27-32] как можно оптимизировать код

Добрый день! Выполнила испытание на 100%, все получилось. Но хотелось бы узнать, как можно было мой код оптимизировать? Может я что-о лишнее написала, и можно было сделать проще? Заранее спасибо!

HTML:

Header
Menu
Promo 1
Promo 2
Left
Main
Right
Footer

CSS:

.clearfix::after {
content: “”;
display: table;
clear: both;
}

.cont-header {
background-color: #34495e;
padding: 10px 0;
}

.header {
width: 340px;
height: 25px;
background-color: #c0392b;
margin: 0 auto;
padding: 5px;
}

.menu {
box-sizing: border-box;
background-color: #3498db;
width: 100%;
height: 35px;
margin-top: 10px;
padding-top: 5px;
padding-left: 55px;
}

.promo {
margin-top: 10px;
}

.promo1, .promo2 {
background-color: #c0392b;
float: left;
width: 160px;
height: 50px;
padding: 5px;
}

.promo1 {
margin-right: 10px;
margin-left: 50px;
}

.promo2 {
margin-right: 50px;
}

.columns {
margin-top: 10px;
height: 110px;
width: 350px;
margin-left: auto;
margin-right: auto;
}

.columns div {
background-color: #3498db;
float: left;
height: 100px;
padding: 5px;
}

.left, .main {
margin-right: 10px;
}

.left, .right {
width: 60px;
}

.main {
width: 180px;
}

.footer {
clear: both;
background-color: #34495e;
margin-top: 10px;
height: 40px;
padding-top: 5px;
padding-left: 55px;
}