html {
    -webkit-text-size-adjust: 100%;
}

input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="submit"],
textarea {
    -webkit-appearance: none;
    border-radius: 0;
}





@media screen and (max-width: 479px) {

    #main_column {
        padding-right: 15px;
    }

    /***** Header - Start *****/
    #header {
        height: auto;
        padding: 64px 0 0;
    }
    #header .mob-fixed {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 64px;
        background-color: #fff;
        box-shadow: 0 0 4px 4px rgba(0, 0, 0, 0.1);
    }
    body.home #header,
    body.page2035 #header {
        height: auto;
    }
    body.home #header h1 {
        display: none;
    }
    #logo {
        top: 17px;
        left: 15px;
        bottom: auto;
        width: 172px;
        height: 46px;
    }
    #logo a {
        padding: 0;
    }
    #logo img {
        width: 100%;
        height: auto;
    }
    #logo.shadow-1::before,
    #logo.shadow-1::after {
        display: none;
    }
    #header div.wappen {
        display: none;
        top: 18px;
        left: 200px;
        bottom: auto;
        right: auto;
        width: 28px;
        height: 34px;
    }
    #header div.wappen div img {
        width: 100%;
        margin: 0;
    }
    div.wappen.shadow-2::before,
    div.wappen.shadow-2.shadow-2::after {
        display: none;
    }
    #header .btn-nav-mob {
        display: block;
        position: absolute;
        top: 22px;
        right: 15px;
        width: 23px;
        height: 20px;
        background: url("../Images/bg-btn-nav-mobile-sprite.png") no-repeat;
        background-size: auto 20px;
    }
    #header .btn-nav-mob.active {
        background-position: -23px 0;
    }
    #header .btn-search-mob {
        display: block;
        position: absolute;
        top: 21px;
        right: 63px;
        width: 21px;
        height: 21px;
        background: url("../Images/bg-nav-btn-search.png") no-repeat;
        background-size: auto 21px;
    }
    #header .btn-search-mob.active {
        /*background-position: -23px 0;*/
    }
    body.home #header .btn-search-mob {
        display: none;
    }

    #header > img {
        width: 100%;
        height: auto;
    }

    #main {
        position: static;
    }
    #content #left_column {
        position: static;
    }

    #menu {
        display: none;
        position: fixed;
        top: 64px;
        bottom: 0;
        left: 0;
        width: 100%;
        height: auto;
        background-color: transparent;
        z-index: 10;
        overflow-y: scroll;
    }
    #mainmenu {
        padding: 0;
    }

    div#mainmenu ul li {
        position: relative;
        display: block;
        margin: 0;
        padding: 0;
    }
    div#mainmenu > ul > li {
        margin: 0;
        padding: 0;
        border-bottom: 3px solid #fff;
        background-color: #e42533;
    }
    div#mainmenu ul li:first-of-type,
    div#mainmenu > ul > li:first-of-type {
        margin-left: 0;
    }
    div#mainmenu ul li a {
        display: block;
        margin: 0;
        padding: 8px 15px;
    }
    div#mainmenu ul li.active a,
    div#mainmenu ul li a:hover,
    div#mainmenu ul li a:focus {
        border-bottom: none;
    }

    div#mainmenu li span.icon {
        display: none;
    }
    div#mainmenu li.has-children > span.icon {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        width: 54px;
        height: 38px;
        background: url("../Images/bg-nav-has-children-sprite.png") no-repeat center 11px;
        /* border: 1px dashed white; */
        cursor: pointer;
    }
    div#mainmenu li.has-children.show > span.icon {
        background-position: center -29px;
    }
    div#mainmenu > ul > li ul {
        display: none;
    }
    div#mainmenu > ul > li > ul > li {
        background-color: #d2d2d2;
    }
    div#mainmenu > ul > li > ul > li > a {
        color: #222b31;
        font-weight: 400;
    }
    div#mainmenu > ul > li > ul > li.active > a {
        color: #fff;
        background-color: #5e6062;
    }
    div#mainmenu > ul > li > ul > li > ul > li {
        background-color: #d4e7db;
    }
    div#mainmenu > ul > li > ul > li > ul > li > a {
        padding-left: 35px;
        color: #222b31;
        font-weight: 400;
    }
    div#mainmenu > ul > li > ul > li > ul > li.active > a {
        color: #009036;
        background: url("../Images/bg-arrow-nav-sub.png") no-repeat 15px center;
    }
    div#mainmenu > ul > li > ul > li > ul > li > ul > li {
        background-color: #e7e7e7;
    }
    div#mainmenu > ul > li > ul > li > ul > li > ul > li > a {
        padding-left: 50px;
        color: #009036;
        font-weight: 400;
    }
    div#mainmenu > ul > li > ul > li > ul > li > ul > li.active > a {
        background: url("../Images/bg-arrow-nav-sub.png") no-repeat 30px center;
    }
    /*
    div#mainmenu > ul > li > ul > li > ul > li > ul > li > ul {
        list-style: circle;
    }
    div#mainmenu > ul > li > ul > li > ul > li > ul > li > ul > li {
        !*background-color: #e7e7e7;*!
    }
    div#mainmenu > ul > li > ul > li > ul > li > ul > li > ul > li > a {
        color: #222b31;
        font-weight: 400;
    }
    */


    #submenu {
        display: none;
    }

    #search {
        display: none;
        position: fixed;
        top: 64px;
        left: 0;
        right: 0;
        padding: 21px 5px;
        border: none;
        background-color: #898989;
        z-index: 10;
    }
    #search h2 {
        display: none;
    }
    #search .search-elements {
        margin: 0 28px 0 0;
    }
    #search button#searchsubmit {
        right: -28px;
    }

    #content #breadcrumb ul li {
        display: inline-block;
        margin-bottom: 0;
    }
    /***** Header - End *****/


    /***** Startseite - Start *****/
    .flexslider {
        height: auto;
    }
    .flexslider .slides img {
        height: auto;
    }
    .flex-caption {
        top: auto;
        bottom: 0;
    }
    .flex-caption > div {
        display: none;
    }

    .flexslider.startseite-2020 {
        height: auto;
        margin: 0;
        padding: 0 0 40px;
    }
    .flexslider.startseite-2020 .flex-caption {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        width: auto;
        min-height: 174px;
        padding: 20px;
        background-color: rgba(100,100,100,0.1);
    }
    .flexslider.startseite-2020 .flex-caption > div {
        display: block;
    }
    .flexslider.startseite-2020 .flex-caption h3 {
        font-size: 20px;
        line-height: 22px;
    }
    .flexslider.startseite-2020 .flex-caption > div > p {
        font-size: 14px;
        line-height: 20px;
    }

    div.search {
        min-height: 120px;
    }

    div.tabs {
        height: auto;
    }
    div.tabs > div.body {
        height: auto;
    }
    div.tab {
        position: relative;
        height: 100%;
    }
    #content div.tab div.address {
        position: relative;
        top: auto;
        right: auto;
        width: auto;
    }
    div.tab.fotos div.frame-default {
        max-height: 1000px;
    }
    div.tab.fotos {
        padding: 12px 0 40px 12px;
    }
    div.tab.fotos div.ce-gallery .ce-outer figure a {
        display: inline-block;
        max-height: 90px;
        overflow: hidden;
    }
    #content div.tab div.news div.article div.teaser-text {
        max-width: 90%;
    }

    div.tabs > div.header a {
        padding: 0 4px;
        max-width: 85px;
        overflow: hidden;
    }
    div.tabs > div.header h3 {
        max-width: 100%;
        font-size: 11px;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    body.home div.main_column > div.frame-default header > h1 {
        margin: 0 15px 4px;
    }

    div.cols-3 {
        padding: 16px 0;
    }
    div.cols-3 .col {
        margin-bottom: 15px;
    }
    div.cols-3.type-b div.col div.ce-bodytext {
        padding: 12px 42px 12px 12px;
        background-position: 95% center;
    }
    /***** Startseite - End *****/


    /***** Unterseiten - Start *****/
    div.ce-textpic.ce-intext.ce-right .ce-gallary,
    div.csc-textpic-intext-right-nowrap .csc-textpic-imagewrap {
        margin-left: 0;
    }
    div.ce-textpic .ce-gallery img {
        width: 100%;
        height: auto;
    }

    #main_column div:not(.cols-2-type-b) div.cols-2 div.col:nth-of-type(1),
    #main_column div:not(.cols-2-type-b) div.cols-2 div.col:nth-of-type(2) {
        width: auto;
    }

    div.vcard div.images img {
        max-width: 100%;
        height: auto;
    }

    ul.ce-uploads li {
        width: 48%;
        margin-right: 2%;
    }

    #content div.news div.article div.teaser-text {
        width: auto;
    }
    /***** Unterseiten - End *****/


    /***** Powermail-Form - Start *****/
    form.powermail_form input.powermail_input {
        width: 100%;
    }
    textarea.powermail_textarea {
        width: 100%;
    }
    .powermail_label {
        width: 60%;
    }
    /***** Powermail-Form - End *****/


    /***** Gedenkbuch - Start *****/
    div.gedenkbuch #header {
        height: 170px;
        margin: 64px 0 0;
        background-size: 90% auto;
    }
    div.gedenkbuch #header .btn-search-mob {
        background-image: url("../Images/bg-nav-btn-search-gedenkbuch.png");
    }
    div.gedenkbuch #header .btn-nav-mob {
        background-image: url("../Images/bg-btn-nav-mobile-sprite-gedenkbuch.png");
    }

    div.gedenkbuch div#mainmenu > ul > li {
        margin: 0;
        padding: 0;
        border-bottom: 3px solid #fff;
        background-color: #7f017f;
    }
    /***** Gedenkbuch - End *****/

    /***** Cookie-Banner - Start *****/
    div.msg-cookies a.seen {
        margin: 20px 0 0;
    }
    /***** Cookie-Banner - End *****/

    /***** Social GDPR - Start *****/
    .video-code .social-gdpr-youtube-video img.videostub,
    .video-code .social-gdpr-vimeo-video img.videostub,
    .video-code .social-gdpr-google-maps img.mapstub,
    .video-code .social-gdpr-osm-map img.mapstub {
        top: 40%;
    }
    .video-code .social-gdpr-youtube-iframe-notice p,
    .video-code .social-gdpr-vimeo-iframe-notice p,
    .video-code .social-gdpr-google-maps-iframe-notice p,
    .video-code .social-gdpr-osm-iframe-notice p {
        margin: 0;
    }
    body .social-gdpr-youtube-iframe-notice p,
    body .social-gdpr-vimeo-iframe-notice p,
    body .social-gdpr-google-maps-iframe-notice p,
    body .social-gdpr-osm-iframe-notice p {
        line-height: 1.2em;
    }
    /***** Social GDPR - End *****/

    /***** Footer - Start *****/
    #footer div.address {
        margin: 20px 0 0 15px;
    }
    #footer div.address div.left {
        margin-right: 30px;
        margin-bottom: 16px;
    }
    #footer div.address div.right {
        margin: 0;
    }
    #footer div.social {
        float: left;
        clear: both;
        margin: 20px 0 0 0;
        padding: 0 0 0 15px;
    }
    #footermenu {
        margin: 38px 0 20px 15px;
    }
    #footermenu ul li {
        float: none;
        padding: 0;
        border-right: none;
        background: none;
        margin: 0;
        line-height: 24px;
    }
    #footermenu ul li a {
        padding: 0;
    }
    #printbutton {
        float: right;
        margin: 38px 15px 20px 15px;
    }
    #printbutton a {
        padding: 0;
        border-left: none;
        display: block;
        line-height: 24px;
    }
    #printbutton span.copy {
        padding: 0;
        border-left: none;
        line-height: 24px;
    }
    /***** Footer - End *****/

}


@media screen and (min-width: 480px) and (max-width: 1229px) {

    div#mainmenu ul {
        font-size: 15px;
    }

    .flexslider {
        height: 293px;
    }
    .flex-caption {
        top: 265px;
    }

    .flexslider.startseite-2020 {
        height: 338px;
    }


    #content div.tab div.news div.article:first-of-type div.teaser-text {
        width: 220px;
    }
    div.pm-content {
        width: 230px;
    }
    div.tab.fotos img {
        width: 100px;
    }
    div.cols-3.type-b div.col div.ce-bodytext {
        background-position: 250px center;
    }

    #content div.news div.article div.teaser-text {
        width: 500px;
    }

}

@media screen and (min-width: 480px) {

    #main_column:not(.vmg):not(.mks) div:not(.frame-custom-100) div.cols-2 div.col:nth-of-type(1) {
        width: 50%;
    }
    #main_column:not(.vmg):not(.mks) div:not(.frame-custom-100) div.cols-2 div.col:nth-of-type(2) {
        width: 50%;
    }
}

@media screen and (min-width: 767px) {

    #main_column a[href^="tel:"] {
        color: inherit;
        text-decoration: none;
    }
    #content div.vcard a[href^="tel:"] {
        color: inherit;
        text-decoration: none;
    }
    #content div.frame-custom-130 a[href^="tel:"],
    #content div.vcard a[href^="tel:"] {
        color: inherit;
        text-decoration: none;
    }
}

/***** Icons - Retina - Start *****/
@media  screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {

    body {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-main.png");
        background-size: 41px auto;
    }
    #content div.news div.teaser-text a.more,
    #content div.tab div.news h3,
    #content .vevent div.summary a {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-arrow-content-link.png");
        background-size: 14px auto;
    }

    div.tab > a.more {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-arrow-more.png");
        background-size: 28px auto;
    }
    input.powermail_submit,
    input.powermail_confirmation_form,
    input.powermail_confirmation_submit {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-arrow.png");
        background-size: 14px auto;
    }
    input.powermail_confirmation_form {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-arrow-left.png");
        background-size: 14px auto;
    }
    input.powermail_confirmation_submit {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-arrow-right.png");
        background-size: auto 10px;
    }
    input#searchsubmit, button#searchsubmit {
        background: url('/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-search.png') no-repeat;
        background-size: 28px auto;
    }
    .tx-denkmalliste .srchbtn,
    .tx-denkmalliste .selsrchbtn {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-search.png");
        background-size: 28px auto;
    }
    .flex-direction-nav li a {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-flexslider-nav-arrow-sprite.png");
        background-size: auto 28px;
    }
    #content div.vcard {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-icon-address.png");
        background-size: 28px auto;
    }
    #main_column div.folding h3 {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-icon-folder-sprite.png");
        background-size: 28px auto;
    }
    div.select div.icon {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-icon-select.png");
        background-size: 10px auto;
    }
    div.tab > a.more.termine {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-icon-termine.png");
        background-size: 28px auto;
    }
    #submenu > ul > li > ul > li > ul > li > ul > li > a,
    #submenu > ul > li > ul > li > ul > li > ul > li.active > a {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-li-sprite.png");
        background-size: 5px auto;
    }
    div#mainmenu > ul > li > ul > li > ul > li.active > a,
    div#mainmenu > ul > li > ul > li > ul > li > ul > li.active > a {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-submenu-arrow.png");
        background-size: 10px auto;
    }
    div.cols-3.type-b div.col div.ce-bodytext {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-teaser-arrow-more.png");
        background-size: 20px auto;
    }
    #header .btn-nav-mob {
        background: url("../Images/@2x/bg-btn-nav-mobile-sprite.png") no-repeat;
        background-size: auto 20px;
    }
    div#mainmenu > ul > li > ul > li > ul > li.active > a,
    div#mainmenu > ul > li > ul > li > ul > li > ul > li.active > a {
        background-image: url("../Images/@2x/bg-arrow-nav-sub.png");
        background-size: 13px auto;
    }
    a.pfeil-davor {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-arrow-content-link.png");
        background-size: 14px auto;
    }
    a.pfeil-ohne-text {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-arrow-more.png");
        background-size: 28px auto;
    }
    #main_column table.contenttable.aufklapper caption div.icon {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-icon-folder-sprite.png");
        background-size: 28px auto;
    }
    #main_column a.button-gruen,
    a.button-gruen {
        background-image: url("/typo3conf/ext/rm_setup/Resources/Public/Images/@2x/bg-btn-arrow.png");
        background-size: 14px auto;
    }


}
/***** Icons - Retina - End *****/