header { top: 0; position: fixed; width: 100%; height: 53px; z-index: 5000; } main { padding-top: 53px; min-height: 100%; box-sizing: border-box; position: relative; section { margin: 0 auto; max-width: 1020px; } } .filterPanel { position: relative; margin-bottom: 40px; } @media only screen and (min-width: $mobile) { header { height: 56px; } main { padding-top: 56px; } } @media only screen and (min-width: $tablet) { header { height: 60px; } main { padding-top: 60px; margin-bottom: -130px; padding-bottom: 130px; } .filterPanel { position: fixed; top: 60px; width: 100%; z-index: 4000; + section { @include transition(margin-top $filter-toogleVisibilityTime 0s); } &.filterPanelVisible { z-index: 5000; @include transition(z-index 0s $filter-toogleVisibilityTime); & + section { margin-top: 124px; } } } }