Испытание: строим сетку [27/32] 100%

Просьба оценить код.

Где, что и как можно оптимизировать?

HTML

`

Испытание: строим сетку
Header
Menu
Promo 1
Promo 2
Left
Main
Right
Footer
`

CSS

html,
body {
margin: 0;
padding: 0;
}

body {
width: 450px;
height: 335px;
font-family: “Arial”, sans-serif;
font-size: 10px;
color: white;
}

.header-block {
width: 450px;
height: 150px;
background-color: #34495e;
padding-top: 10px;
padding-bottom: 10px;
}

.header {
width: 340px;
height: 25px;
background-color: #c0392b;
margin-left: auto;
margin-right: auto;
}

.menu {
width: 395px;
height: 30px;
background-color: #3498DB;
margin-top: 10px;
}

.promo1 {
float: left;
width: 160px;
height: 50px;
background-color: #c0392b;
margin-top: 10px;
margin-right: 5px;
margin-left: 50px;
}

.promo2 {
float: left;
width: 160px;
height: 50px;
background-color: #c0392b;
margin-top: 10px;
margin-left: 5px;
}

.body-block {
width: 450px;
height: 120px;
background-color: white;
padding-top: 10px;
}

.left {
float: left;
width: 60px;
min-height: 100px;
margin-right: 10px;
background-color: #3498DB;
margin-left: 50px;
}

.main {
float: left;
width: 180px;
min-height: 100px;
margin-right: 10px;
background-color: #3498DB;
}

.right {
float: left;
width: 60px;
min-height: 100px;
background-color: #3498DB;
}

.footer-block {
width: 450px;
height: 35px;
background-color: #34495e;
}

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

.text {
padding: 5px;
}

.text2 {
padding: 5px 0 0 55px;
}