Сетки / Испытание: строим сетку [27/32] 100% В адекватности не уверен. Критику плз

  div class="frame1">
        <div class="header">Header</div>
        <div class="menu">Menu</div>
        <div class="promo1">Promo 1</div>
        <div class="promo2">Promo 2</div>
    </div>
    <div class="frame2">
        <div class="left">Left</div>
        <div class="main">Main</div>
        <div class="right">Right</div>
    </div>
    <div class="footer">
        Footer
    </div>

*/


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

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

}
.frame1{
background-color:#34495e;
min-height:170px;
padding-top:10px;
box-sizing:border-box;
}
.header{
background-color:#c0392b;
box-sizing:border-box;
min-height:35px;
margin:0 50px 10px 50px;
padding:5px;
}
.menu{
background-color:#3498DB;
width=100%;
min-height:35px;
margin-bottom:10px;
box-sizing:border-box;
padding-top:5px;
padding-left:55px;
}
.promo1{
background-color:#c0392b;
float:left;
min-height:60px;
width:170px;
margin:0 10px 10px 50px;
box-sizing:border-box;
padding:5px;
}
.promo2{
background-color:#c0392b;
width:170px;
min-height:60px;
float:right;
margin-right:50px;
box-sizing:border-box;
padding:5px;
}
.frame2{
clear:both;
box-sizing:border-box;
}
.left{
background-color:#3498DB;
float:left;
margin:0 10px 10px 50px;
width:70px;
min-height:110px;
box-sizing:border-box;
padding:5px;
}
.main{
background-color:#3498DB;
float:left;
margin:0 10px 10px 0;
width:190px;
min-height:110px;
box-sizing:border-box;
padding:5px;
}
.right{
background-color:#3498DB;
float:right;
margin:0 50px 10px 0;
width:70px;
min-height:110px;
box-sizing:border-box;
padding:5px;
}
.footer{
background-color:#34495e;
clear:both;
box-sizing:border-box;
padding-top:5px;
padding-left:55px;
min-height:35px;
}

в обучении так много было класса clearfix, а я его не очень понял и не использовал. нарушается ли логика при таком решении? может ещё где что-то нелогично?

В вашем коде нет центровщика - это главный недостаток.
Clearfix изучите, ведь это основы сетки на флоатах.
Если используете box-sizing, воспользуйтесь универсальным селектором, чтобы не дублировать свойство для каждого блока.