Ваша проблема что у вас вылезает блок за границы.
У вас стоит блок текста
(main) 100% и при этом вы даете ему
padding не используя
box-sizing: border-box;
main {
min-width: 100%;
max-height: 100%;
padding: 15px;
}
Короче говоря, вашу проблему можно решить повесив на все блоки
box-sizing, но смотрите чтобы ничего не поехало у вас, но с этим свойством вам все же будет проще, не надо будет высчитывать сколько будет процентов + паддинг чтобы блок стал 100%
*, *:before, *:after {
box-sizing: border-box;
}