Доброго времени суток, Друзья! Прошел испытание с первой проверки на 100% и поэтому меня мучают смутные сомнения, все ли я сделал правильно с точки зрения семантики? Да что там семантики, вообще, верный ли код? Прошу по возможности прокомментировать.
Заранее благодарю!
<html lang="ru">
    <head>
        <title>Испытание: строим сетку</title>
        <meta charset="utf-8">
    </head>
    <body>
        <div class="top">
            <div class="header">
                Header 
            </div>
            <div class="menu">
                Menu
            </div>
            <div class="conteiner-promo clearfix">
                <div class="promo promo1">
                    Promo 1 
                </div>
                <div class="promo promo2">
                    Promo 
                </div>
            </div>
        </div>
        <div class="columns-container clearfix">
            <div class="column left">
                Left
            </div>
            <div class="column main">
                Main
            </div>
            <div class="column right">
                Right
            </div>
        </div>
        <div class="footer">
            Footer
        </div>
    </body>
</html>
html,
body {
    margin: 0;
    padding: 0;
}
body {
    width: 450px;
    height: 335px;
    font-family: "Arial", sans-serif;
    font-size: 10px;
    color: white;
}
.top {
    background-color: #34495e;
    padding-top: 5px;
    margin-bottom: 5px;
}
.header {
    background-color: #c0392b;
    margin: 5px 50px;
    min-height: 30px;
    padding-left: 5px;
    padding-top: 5px;
}
.menu {
    background-color: #3498DB;
    min-height: 30px;
    padding-top: 5px;
    padding-left: 55px;
    margin-top: 10px;
    margin-bottom: 5px;
}
.promo {
    background-color: #c0392b;
    min-height: 50px;
    width: 160px;
    padding: 5px;
}
.promo1 {
    float:left;
    margin: 5px 5px 10px 50px;
}
.promo2 {
    float:right;
    margin: 5px 50px 10px 5px;
}
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}
.column {
    float: left;
    background-color: #3498DB;
    padding: 5px;
    margin: 5px;
    min-height: 100px;
}
.left {
    width: 60px;
    margin-left: 50px;
}
.main {
    width: 180px;
}
.right {
    width: 60px;
}
.footer {
    background-color: #34495e;
    min-height: 35px;
    padding-top: 5px;
    padding-left: 55px;
    margin-top: 5px;
}