@charset "iso-8859-1";
/* ------------------------------------------------------------------------------ */
/* cmsBaseCustom                                                                  */
/* ------------------------------------------------------------------------------ */

@media only screen and (min-width: 1400px) {
  ul#cards {
    margin-left: 175px;
  }
  ul#cards li:nth-child(4) {
    top: 130px;
    left: -80px;
  }

  #schriftzug {
    left: 400px;
  }

  #Bauwerk {
    font-size: 85%;
  }
  #cards {
    font-size: 12px !important;
  }
  #AdresseBildTop {
    width: 1300px;
  }
}

@media only screen and (min-width: 1180px) and (max-width: 1399px) {
  /*
  #mtnav ul li {
    width: 191px;
  }
  #mtnav ul li:first-child {
    width: 191px;
  }
  #mtnav ul li.nav6 div.munavRechts {
    left: -129px;
  }
  */

  ul#cards {
    margin-left: 110px;
  }
  ul#cards li:nth-child(4) {
    top: 130px;
    left: -80px;
  }

  #schriftzug {
    left: 300px;
  }

  #Bauwerk {
    font-size: 85%;
  }
  #Fundament {
    font-size: 88%;
  }
  #AdresseBildTop {
    width: 1160px;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1179px) {
  #StartseiteLinks {
    --cols: 3;
  }
}

/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 959px) {
}

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 959px) {
  #logoBox {
    right: 25px;
  }

  #Wohnzimmer {
    min-height: 400px;
  }
  INPUT.suchfeld {
    width: 550px;
  }

  /*
  #mtnav ul li {
    width: 126px;
  }
  #mtnav ul li:first-child {
    width: 124px;
  }
  */
  #mtnav ul li div.munavRechts ul li a {
    font-size: 11px;
  }
  #mtnav ul li a {
    padding: 6px 0px 0px 5px;
    font-size: 11px;
  }
  /*
  #mtnav ul li.nav5 div.munavRechts {
    left: -66px;
  }
  #mtnav ul li.nav6 div.munavRechts {
    left: -194px;
  }
  */

  ul#cards li:nth-child(1) {
    top: 140px;
    left: 10px;
  }
  ul#cards li:nth-child(2) {
    top: 3px;
    left: 125px;
  }
  ul#cards li:nth-child(3) {
    top: 40px;
    left: 325px;
  }
  ul#cards li:nth-child(4) {
    top: -80px;
    left: 0px;
  }

  #schriftzug {
    top: 440px;
    left: 40px;
  }

  #mnav ul li ul.munavLinks li {
    background-position: 12px 9px;
  }
  #mnav ul li ul.munavLinks li a {
    padding: 3px 3px 3px 21px;
  }

  #withMoreForward,
  #withMoreBackward {
    right: -13px !important;
  }

  #calendar {
    font-size: 9px;
  }

  .Innenraum {
    margin: 0px 10px 0px 10px;
  }
  #AdresseBildTop {
    width: 768px;
  }
  #impressionButton {
    display: none;
  }

  #StartseiteLinks {
    --cols: 2;
  }
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
  #logoBox {
    top: -30px;
    right: 0px;
    height: 110px;
    width: 114px;
    background-size: auto 100%;
  }

  #Wohnzimmer {
    min-height: 10px;
  }

  #mtnav ul {
    position: static;
    height: auto;
    padding: 0px;
    flex-flow: column;
  }
  #mtnav ul li,
  #mtnav ul li:first-child {
    margin: 0px;
    padding: 0px;
    height: auto;
    display: block;
    width: auto;
    float: none;
    background-size: 100% 100%;
  }
  #mtnav ul li a {
    margin: 0px;
    padding: 9px 5px 9px 10px;
    z-index: 99999;
    height: auto;
  }
  #mtnav ul li div.munavRechts {
    display: none !important;
    z-index: -1;
  }

  #mnav {
    padding: 0px;
    background: none;
  }

  #impressionButton,
  #qnavButton,
  #slider,
  #impressions {
    display: none !important;
  }

  #Erdgeschoss .inner {
    padding-top: 0px;
  }
  .startseite #Erdgeschoss .inner {
    padding-top: 0px;
  }

  #Arbeitszimmer {
    border: 0px;
  }

  #bottomLine span {
    width: 68px;
  }

  #schriftzug {
    position: relative;
    top: 0px;
    left: 0px;
    width: 100%;
    background-size: 100% auto;
    background-color: #6da6ff;
    padding-top: 20px;
    background-position: top 20px center;
  }

  ul#cards {
    padding-top: 20px;
    background-color: #6da6ff;
    margin-top: 0px;
  }
  ul#cards li {
    position: relative;
    margin-bottom: 20px;
  }
  ul#cards li:nth-child(1) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 170px;
    transform: rotate(0deg);
  }
  ul#cards li:nth-child(2) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 170px;
    transform: rotate(0deg);
  }
  ul#cards li:nth-child(3) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 170px;
    transform: rotate(0deg);
  }
  ul#cards li:nth-child(4) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 170px;
    transform: rotate(0deg);
    margin-bottom: 0px;
  }
  ul#cards li .contactLogo {
    display: none;
  }

  #StartseiteZonen {
    /*display: block;*/
    display: flex;
    flex-flow: column;
    gap: 20px;
    margin: 0px;
  }

  #StartseiteLinks .vnavcontainer {
    padding: 20px;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.4);
    display: flex;
    flex-flow: column;
  }

  #contrastActive #StartseiteLinks .vnavcontainer {
    box-shadow: 0px 0px 5px 0px rgba(255, 255, 255, 0.4);
  }

  #StartseiteLinks {
    width: auto;
    display: flex;
    flex-flow: column;
    gap: 20px;
    padding: 0;
  }
  #StartseiteMitte {
    width: auto;
    display: block;
    background-color: transparent;
    border: 0px;
  }
  #StartseiteRechts {
    width: auto;
    display: block;
    padding: 0px 0px 10px 0px;
  }
  #StartseiteMitte .ssmDivider {
    display: none;
  }
  #StartseiteMitte .ssmTop {
    background-color: transparent;
  }
  #StartseiteRechts .vvnachrichten .vnavcontainer:hover {
    background-color: transparent;
    border: 1px solid transparent;
  }
  #StartseiteLinks .nzContainer:hover {
    background-image: none;
    border: 1px solid transparent;
  }

  #withMoreForward,
  #withMoreBackward {
    right: -13px !important;
  }
  .Ticker {
    display: none;
  }

  .seitedrucken {
    display: none !important;
  }
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
  #Dach .inner {
    height: 39px;
  }
  #hnav ul li {
    padding: 4px 13px 4px 10px;
  }
  #Obergeschoss .inner {
    padding-top: 60px;
  }
  #mtnav {
    height: auto;
    margin-top: 75px;
  }

  #bfnav {
    left: 2px;
    top: 10px;
  }
  #bfnav img {
    display: none;
  }
  #bfnav ul li {
    border: 0px;
  }
  #bfnav ul li a {
    padding: 3px 5px 3px 3px;
  }

  #hnav {
    position: absolute;
    z-index: 2;
    top: 10px;
    left: 2px;
    margin: 0px;
    font-size: 11px;
  }
  #hnav ul {
    left: 0px;
    list-style-type: none;
    padding: 5px 0px;
    margin: 0px -2px 0px -2px;
  }
  #hnav ul li {
    display: inline;
    list-style: none;
    padding: 0px 2px 0px 2px;
    margin: 0px 0px 0px 0px;
    white-space: nowrap;
  }
  #hnav ul li:first-child {
    padding-left: 2px;
    padding-right: 2px;
  }
  #hnav ul li a {
    padding: 3px 5px 3px 3px;
  }

  FORM.suchform {
    position: absolute;
    right: auto;
    bottom: auto;
    margin: 10px 10px 0px 10px;
    padding: 0px;
    z-index: 99999;
  }
  INPUT.suchfeld {
    padding: 0px 0px 0px 4px;
    width: 360px;
  }

  .adresse #hnav {
    top: 0px;
    margin-top: 0px;
    height: auto;
  }
  .adresse #hnav ul li {
    padding: 0px 15px 0px 15px;
    display: block;
  }
  .adresse #hnav ul li a {
    margin: 0px;
    padding: 3px 0px 4px 0px;
    display: inline-block;
  }
  .adresse #hnav ul li img {
    margin-right: 15px;
  }
  .adresse #logoBox {
    top: -30px;
    right: 0px;
    height: 110px;
    width: 114px;
    background-size: auto 100%;
  }
  .adresse #logoBox.eintraglogo {
    top: 10px;
  }
  .adresse .miteintraglogo #hnav ul li a {
    padding: 10px 0px 10px 0px;
  }
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {
  #Dach .inner {
    height: 65px;
  }
  #Dach,
  #Dach .container {
    width: 300px;
    height: 220px;
    background-color: #fff;
  }
  #Obergeschoss .inner {
    padding-top: 60px;
  }
  #logoBox {
    top: -30px;
    right: 0px;
    height: 80px;
    width: 85px;
    background-size: auto 100%;
  }

  ul#cards li:nth-child(3) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 170px;
    font-size: 11px;
  }
  ul#cards li:nth-child(3) .content {
    padding: 15px 10px 10px 10px;
  }
  ul#cards .btNavRight {
    margin-right: 0px;
  }
  ul#cards .btNav a {
    padding: 0px;
  }

  #mtnav {
    height: auto;
    margin-top: 45px;
  }

  #bfnav {
    left: 2px;
    top: 5px;
  }
  #bfnav img {
    display: none;
  }
  #bfnav ul li {
    border: 0px;
  }
  #bfnav ul li a {
    padding: 3px 5px 3px 3px;
  }

  #hnav {
    position: absolute;
    z-index: 2;
    top: 25px;
    left: 2px;
    margin: 0px;
    font-size: 10px;
  }
  #hnav ul {
    left: 0px;
    list-style-type: none;
    padding: 5px 0px;
    margin: 0px -2px 0px -2px;
  }
  #hnav ul li {
    display: inline;
    list-style: none;
    padding: 0px 2px 0px 2px;
    margin: 0px 0px 0px 0px;
    white-space: nowrap;
  }
  #hnav ul li:first-child {
    padding-left: 2px;
    padding-right: 2px;
  }
  #hnav ul li a {
    padding: 3px 5px 3px 3px;
  }

  FORM.suchform {
    top: 55px;
    right: auto;
    bottom: auto;
    left: 0px;
    margin: 10px 10px 0px 10px;
    padding: 0px;
    z-index: 99999;
  }
  INPUT.suchfeld {
    padding: 0px 0px 0px 4px;
    width: 240px;
  }

  .adresse #hnav {
    top: 0px;
    height: auto;
  }
  .adresse #hnav ul li {
    padding: 0px 15px 0px 15px;
    display: block;
  }
  .adresse #hnav ul li a {
    margin: 0px;
    padding: 3px 0px 4px 0px;
    display: inline-block;
  }
  .adresse #hnav ul li img {
    margin-right: 15px;
  }
  .adresse #Dach .inner {
    height: 200px;
  }
  .adresse #Dach {
    height: 200px;
  }
  .adresse #logoBox {
    height: 100%;
    width: 100%;
    top: unset;
    right: unset;
    background-size: 120px;
    background-position: top 40px center;
  }
  .adresse #logoBox.eintraglogo {
    top: 10px;
  }
  .adresse .miteintraglogo #hnav ul li a {
    padding: 10px 0px 10px 0px;
  }

  .StadtSchrift {
    font-size: 25px !important;
  }
  .SloganText {
    padding-left: 10px !important;
  }

  .adresse .StadtSchrift {
    top: unset;
  }
}
@media screen and (min-width: 480px) and (max-width: 767px) {
  #Dach,
  #Dach .container {
    width: 420px;
    height: 220px;
    background-color: #fff;
  }
  .adresse #logoBox {
    height: 100%;
    width: 100%;
    top: unset;
    background-size: 120px;
    background-position: top 35px center;
  }
  .adresse .StadtSchrift {
    font-size: 36px;
    top: unset;
  }
  .adresse #Dach,
  .adresse #Dach .inner {
    height: 200px;
  }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
  .StadtSchrift {
    font-size: 34px;
    top: unset;
    left: unset;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    pointer-events: none;
  }
  #Dach,
  #Fundament {
    position: unset;
  }
  #Arbeitszimmer {
    background-color: #6da6ff;
  }
  #mtnav > ul > li {
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
  }
  #Obergeschoss .inner {
    padding-top: 0;
  }
  #mtnav {
    margin-top: 0;
  }
  .SloganText {
    padding-left: 20px;
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
  }
  #hnav {
    width: 100%;
    top: 0;
    left: 0;
    background-color: #002b46;
    justify-content: center;
  }
  #hnav ul {
    background-color: #002b46;
    margin: 0;
  }
  #hnav ul li a {
    color: #fff;
  }
  #hnav ul li:last-child {
    border-left: none;
  }
  .searchContainer .searchOpen {
    color: #fff;
  }
  #logoBox {
    width: 100%;
    height: 100%;
    background-size: 120px;
    background-position: center;
    top: unset;
    right: unset;
    bottom: unset;
    left: unset;
  }
  .searchDesktop {
    display: none;
  }
  .SuchenText {
    display: none;
  }
  .searchMobile .searchContainer .searchOpen svg {
    fill: #fff !important;
  }
  .searchPage.active {
    z-index: 99999;
  }
  input.suchfeld {
    height: 40px;
  }
}
@media screen and (min-width: 768px) {
  .SearchLupe {
    display: none;
  }
  .searchMobile {
    display: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  #Dach {
    width: 768px;
  }
  .StadtSchrift {
    font-size: 45px;
    top: 89px;
  }
  #hnav {
    left: 30px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1179px) {
  #Dach {
    width: 960px;
  }
  #hnav {
    left: 30px;
  }
  #facebook {
    right: 390px;
  }
  #instagram {
    right: 350px;
  }
}
@media screen and (min-width: 1180px) and (max-width: 1399px) {
  #Dach {
    width: 1160px;
  }
  #hnav {
    left: 30px;
  }
  #facebook {
    right: 480px;
  }
  #instagram {
    right: 440px;
  }
}
