Еще как действует ))
Видимо вы только учитесь верстать, ошибок и вообще ненужного куча
<div class="form>">
тут лишний тег,
потом, если хотите оставить ваш слоган внутри формы, все что должно быть справа оберните еще одним дивом, и этому диву задайте float:left,
либо, как сказали выше, вывести класс slogan из формы , в классе .form можно оставить, убрать у этого класса width:45% и добавить float:left
float для класса .slogan можно не задавать.
Но вообще надо учиться просто, посмотрите, как верстаются такие формы, их миллион.
Для себя попробуйте следующее.
Прежде чем писать стили, нарисуйте на листке все элементы, в виде блоков, сетки и тд и тп, как вы себе представляете и как оно должно быть. Тогда будет сразу легче, особенно если вы знаете собственно действуют те или иные css-свойства.
И сразу же думайте, как это будет выглядить при других разрешениях.