/*
 * WerbeWirbel – Responsive Ergänzungen
 * Desktop-Design bleibt unverändert.
 */

*, *::before, *::after {
    box-sizing: border-box;
}

img, video, iframe {
    max-width: 100%;
}

img {
    height: auto;
}

@media (max-width: 1040px) {

    #shadow {
        width: 100%;
        max-width: 1020px;
    }

    .inner,
    #header.inner,
    #site.inner,
    .footer .inner,
    .mainContent {
        width: 96%;
        max-width: 1000px;
    }

    .area,
    .boxArea,
    .content {
        max-width: 100%;
    }
}

@media (max-width: 1023px) {

    #wrapper_menu {
        position: relative;
        z-index: 1000;
    }

    .cont_nav {
        position: relative;
    }

    .cont_nav input#navTrigger + label {
        position: relative;
        z-index: 1002;
        opacity: 1;
        cursor: pointer;
    }

    .wrapper_menu .cont_nav ul.menu {
        z-index: 1001;
        max-height: 100dvh;
        overflow-y: auto;
    }

    .wrapper_menu input#navTrigger:not(:checked) ~ ul.menu {
        display: none;
    }

    .wrapper_menu input#navTrigger:checked ~ ul.menu {
        display: block;
    }

    .menu .dropdown,
    .menu .dropdown_1column {
        max-width: 100%;
    }

    .menu .dropdown .levels li {
        float: none;
        width: 100%;
    }
}

@media (max-width: 785px) {

    .footer .first,
    .footer .second,
    .footer .third {
        float: none;
        width: 100%;
        min-height: 0;
        padding: 15px 0;
        border-right: 0;
        border-bottom: 1px solid #ddd;
    }

    .one-third,
    .two-third,
    .three-fourth,
    .one-half {
        max-width: 100%;
    }

    .formKontakt input:not([type="hidden"]):not([type="submit"]),
    .formKontakt textarea,
    .formKontakt select {
        max-width: 100%;
        box-sizing: border-box;
    }

    .formKontakt textarea {
        width: 100%;
    }
}

@media (max-width: 600px) {

    #header.inner,
    #site.inner,
    .footer .inner {
        width: 94%;
    }

    #logo,
    .logo {
        max-width: 100%;
    }

    #logo img {
        max-width: 100%;
        height: auto;
    }

    #jubilaeum {
        max-width: 35%;
        height: auto;
    }

    .footer .first,
    .footer .second,
    .footer .third {
        width: 100%;
    }

    .teaserBox.one-fourth {
        float: none;
        width: 100%;
        margin: 10px 0;
    }

    .list-one-third li {
        width: 100%;
    }

    h1 {
        overflow-wrap: break-word;
    }

    .area img,
    .headerImage img {
        max-width: 100%;
        height: auto;
    }
}
/* One shared contact form, both in main content and footer. */
.ww-contact-form { max-width:100%; }
.ww-contact-form .formRow { margin:0 0 12px; }
.ww-contact-form label { display:block; margin-bottom:4px; }
.ww-contact-form input[type="email"],
.ww-contact-form input[type="text"],
.ww-contact-form textarea { box-sizing:border-box; display:block; width:100%; max-width:100%; }
.ww-contact-form textarea { min-height:120px; resize:vertical; }
.ww-contact-form .ww-trap { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; left:-9999px !important; }
.ww-contact-form .ww-contact-ok { padding:10px; border-left:4px solid #258a42; }
.ww-contact-form .ww-contact-error { padding:10px; border-left:4px solid #ac2f2f; }
.ww-contact-form .ww-contact-note { margin:10px 0; }
