@media only screen and (max-width: 1042px) {
    DIV.full-width {width: auto;}
    DIV.full-width.contentpic > DIV.contentpic img.play-button {width: 100px; left: calc(50% - 50px)}
    .headpic {margin-top: 2em;}
    main > div {padding: 0 2em;}
    .layout-2, .layout-5 {display: initial;}
    .layout-1, .layout-4 {display: none !important;}
    body {width: 100%;}
    .topline_outer {position: fixed;}
    .topline_inner {max-width: none; padding: 1em 0;}
    .logo IMG {left: 1em;}
    .ce-bodytext {font-size: 1.4em;}
    h1 {font-size: 3em;}
    .headline {margin: 2em 0 1em 0;}
    h2 {font-size: 2.6em;}
    h3 {font-size: 2.2em;}
    .contentpic_content {font-size: 0.8em;}
    .contentpic_content p {text-shadow: 0 0 5px rgba(255, 255, 255, 1);}
    form.tx-form .tx-form-text input,
    form.tx-form .tx-form-datepicker input,
    form.tx-form .tx-form-singleselect select,
    form.tx-form .tx-form-textarea textarea {font-size: 1.4em;}
    .cta_content {font-size: 1.4em;}
    .cta_header a.button span {font-size: 1.5em}
    footer .bottomline div {font-size: 1em}
    .ce-bodytext ul > li::before {width: auto;}
    .contact_small > div.contact_data p {font-size: 1em;}
    .contact_small > div.contact_footer {font-size: 1.2em;}
}
@media only screen and (max-width: 640px) {
    .headpic_content {top: 60%};
    DIV.full-width.contentpic > DIV.contentpic img.play-button {width: 50px; left: calc(50% - 25px); top: 70%;}
    .headpic_content_right {right: 40%;top: 1em;}
    div.cols > div.col {float: none; width: 100%; margin-bottom: 3em; margin-right: 0; padding-bottom: 0;}
    div.cols > div.col-last {padding-bottom: 0; margin-bottom: 0; border-bottom: none;}
    div.cols.blue.cols2 > div.col.col2-1 {margin-bottom: 0; border: 0; padding-bottom: 0;}
    .cols.blue.cols2 section > .inner {padding: 10px 10px;}
    .col3-1 > * {padding: 0;}
    .cols2 .cols2>.col>SECTION>.download_elements {margin-right: 0;}
    footer section {padding: 1em;}
    /*body > header > .headpic video {display: none !important;}*/
    .just_mobile {display: initial;}
    .contentpic_content_right,.contentpic_content_left {top: calc(0% + -2em);}
    .contentpic .large {font-size: 1.1em; font-weight: 700; line-height: 1.1em;}
    .contact_content {float: none; width: 100%; text-align: center; top: 0; transform: none; position: relative; z-index: 1; padding: 2em 0;}
    .contact_content p {margin-top: 1em; font-size: 1.2em;}
    body.js .contact_content a.button {margin-top: 0;}
    .contact_pic {float: none; margin: 1em auto 2em;}
    .download_elements > .download_item {float: none; width: 100% !important;}
    .box {padding: 1em 0;}
    .box span.title {position: relative; left: 0; display: block; width: 100%; text-align: center; margin-bottom: 0.5em;}
    .box span.download {position: relative; margin: 0;}
    .cols2 .cols2 > .col-last > section > .headline {margin: 4em 0 1em 0;}
    .cols2 .cols2 > .col-last > section > .download_elements {margin: 0;}
    .cta-elem {background: #f6f6f6; position: relative; margin-bottom: 0;}
    .cta_header {background: #5E86B1; padding-top: 24px; float: none; width: 100%; text-align: center; position: relative; z-index: 1;}
    .cta_header .headline {margin: 0; padding: 0 24px}
    .cta_header .large {font-family: 'Archivo Narrow', sans-serif; font-size: 3.4em; line-height: 1.2em; color: #fff;}
    body.js .cta_header a.button {margin-top: 1em; margin-bottom: 2em;}
    .cta_content {padding: 24px 0 12px 0; background: #f6f6f6; float: none; width: 100%; font-size: 1.4em;}
    .cta_content p {padding: 0 24px 10px 24px;}
    .contentpic.haslink {margin-bottom: 50px}
    .contentpic.haslink .contentpic_content_left p.link-wrapper {margin-top: 0;}
    .contentpic.haslink .contentpic_content > div {position: initial; transform: translateY(100%);width: initial;}
    form.tx-form.tx-form-nomargin { margin: 2em 0;}
}
@media only screen and (max-width: 480px) {
    form > ol > li > fieldset { float: none !important; width: 100%}
}