 @import url('https://fonts.verwaltungsportal.de/import/?family=Source+Sans+Pro:300,400,600,700');

 body {
   font-family: 'Source Sans Pro', sans-serif;
   color: #2d2d2d;
   background: #ffffff;
   font-size: 18px;
 }

 @media (min-width: 768px) {
   body {
     background: url('../img/bg_body.jpg') center top no-repeat;
     background-size: cover;
     background-attachment: fixed;
   }
 }

 a {
   color: #2f5596;
   -webkit-transition: background 300ms linear, color 300ms linear;
   -moz-transition: background 300ms linear, color 300ms linear;
   -ms-transition: background 300ms linear, color 300ms linear;
   -o-transition: background 300ms linear, color 300ms linear;
   transition: background 300ms linear, color 300ms linear;
 }

 a:hover {
   color: #2f5596;
 }

 b, strong,
 #content a {
   font-weight: 600;
 }

 #maindiv {
   width: 100%;
   line-height: 1.6em;
   text-align: left;
   overflow: hidden;
 }

 @media (min-width: 992px) {
   #maindiv {
     padding-top: 80px;
     padding-bottom: 80px;
   }
 }

 #topbar {
   background-color: #fff;
   padding-bottom: 3px;
 }

 /* ----------------------------------------------- logo ----------------------------------------------- */
 #logo-wrapper {
   background-color: #2f5596;
 }

 @media (min-width: 992px) {
   #logo-wrapper {
     padding-left: 100px;
   }
 }

 #logo {
   display: inline-block;
   pointer-events: auto;
   margin-top: 5px;
   margin-bottom: 5px;
 }

 @media (max-width: 991px) {
   #logo {
     padding-right: 50px;
     margin-bottom: 6px;
   }
 }

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

 /* --------------------------------------------- language --------------------------------------------- */
 #lang-wrapper {
   background-color: #fff;
 }

 #language {
   background-color: #ffffff;
   display: inline-block;
   padding: 30px 15px 15px 15px;
 }

 @media (max-width: 991px) {
   #language {
     padding-right: 50px;
     padding-left: 0;
   }
 }

 #language a+a {
   margin-left: 20px;
 }

 /* ------------------------------------------------ menu ------------------------------------------------ */
 .sticky-wrapper {
   position: relative;
   z-index: 51;
 }

 #menu {
   background: linear-gradient(to right, rgba(217, 225, 240, 1) 0%, rgba(255, 255, 255, 1) 100%);
   padding: 0;
 }

 #menu div[class*="col"] {
   min-height: 0;
 }

 @media (min-width: 992px) {
   #menu {
     padding-top: 20px;
     padding-bottom: 20px;
   }
 }

 /* --------------------------------------- navigation bar (20757) --------------------------------------- */
 .navbar {
   min-height: 0;
   margin-bottom: 0px;
   border: none;
 }

 .navbar-nav {
   float: none !important;
 }

 /* burgermenu - background */
 .navbar-default .navbar-toggle,
 .navbar-default .navbar-toggle:hover,
 .navbar-default .navbar-toggle:focus {
   background-color: #ffffff;
   border-color: transparent;
   -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4);
   box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4);
 }

 /* burgermenu for tablet */
 @media (max-width: 991px) {
   .navbar-default ul.navbar-nav {
     height: auto;
   }

   .navbar-collapse {
     position: fixed;
     left: -100%;
     top: 0;
     bottom: 0;
     z-index: 100;
     width: 70%;
     background: #d9e1f0;
     height: auto !important;
     -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
     box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
     border: none;
     opacity: 0;
     pointer-events: none;
     -webkit-transition: left 300ms linear, opacity 300ms linear;
     -moz-transition: left 300ms linear, opacity 300ms linear;
     -ms-transition: left 300ms linear, opacity 300ms linear;
     -o-transition: left 300ms linear, opacity 300ms linear;
     transition: left 300ms linear, opacity 300ms linear;
   }

   .navbar-collapse::after {
     content: "";
     position: fixed;
     top: 0;
     right: 0;
     bottom: 0;
     width: 30%;
     z-index: -1;
     pointer-events: none;
     display: block;
     background-color: rgba(0, 0, 0, 0.5);
   }

   .navbar-collapse.collapse.in,
   .navbar-header .collapse, .navbar-toggle {
     left: 0;
     opacity: 1;
     border: none;
     pointer-events: auto;
   }

   .navbar-header, .navbar-nav>li {
     float: none;
   }

   .navbar-nav {
     margin: 15px 0;
   }

   .navbar-nav li .dropdown-menu {
     position: static;
     float: none;
     width: auto;
   }

   .navbar-toggle {
     position: fixed;
     right: 15px;
     top: 15px;
     z-index: 101;
     left: auto;
     margin: 0 !important;
     padding: 6px 7px;
     line-height: 0;
     display: block;
     -webkit-transition: background 300ms linear;
     -moz-transition: background 300ms linear;
     -ms-transition: background 300ms linear;
     -o-transition: background 300ms linear;
     transition: background 300ms linear;
   }

   .navbar-nav a {
     text-align: center;
   }

   #myNavbar.navbar-collapse.collapse {
     overflow-y: auto !important;
   }
 }

 /* menu fixed top (tablet) */
 /*** Menü über komplette Breite (1200px) ***/
 @media (min-width: 992px) {
   .navbar-default .navbar-nav {
     display: flex;
     flex-wrap: wrap;
     width: 100%;
     justify-content: space-between;
     align-items: center;
     margin: 0 auto;
   }

   .navbar-default .navbar-nav>li {
     float: none;
   }

   .navbar-nav::after,
   .navbar-nav::before {
     display: none;
   }

   .navbar-collapse {
     -webkit-box-shadow: none;
     box-shadow: none
   }

   .navbar-nav>li {
     display: inline-block !important;
     flex-grow: 1;
   }

   .navbar-nav>li:not(:first-of-type) {
     margin-left: 5px;
   }

   .navbar-collapse {
     padding-left: 70px;
     padding-right: 70px;
   }
 }

 /* ---------------------------------------------- toplevel ---------------------------------------------- */
 .navbar-default .navbar-nav>li>a {
   color: #2f5596;
   font-weight: normal;
   text-align: center;
   padding: 10px 5px;
   font-family: 'Source Sans Pro', sans-serif;
   text-transform: uppercase;
 }

 @media (max-width: 991px) {
   .navbar-default .navbar-nav>li+li {
     margin-top: 10px;
   }
 }

 @media (min-width: 992px) {
   .navbar-default .navbar-nav>li>a {
     padding: 15px 15px;
   }
 }

 /* -------------------------------------------- toplevel-over ------------------------------------------- */
 .navbar-default .navbar-nav>li>a:hover,
 .navbar-default .navbar-nav>li>a:focus,
 .navbar-default .navbar-nav>li.open>a,
 .navbar-default .navbar-nav>li.open>a:hover,
 .navbar-default .navbar-nav>li.open>a:focus,
 .navbar-default .navbar-nav>li.menue_point_toplevel_20757_over>a,
 .navbar-default .navbar-nav>li.menue_point_toplevel_20757_over>a:hover,
 .navbar-default .navbar-nav>li.menue_point_toplevel_20757_over>a:focus {
   color: #fff;
   background: url('../img/toplevel_over.png') right 10px center no-repeat;
   background-color: #2f5596;
 }

 /* -------------------------------------- secondlevel + thirdlevel dropdown-box -------------------------------------- */
 .navbar-default .navbar-nav>li>.dropdown-menu,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu {
   padding: 20px 15px;
   background-color: #f8f9fc;
   -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
   -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
   box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
 }

 /* keep dropdown open in case the secondlevel is active */
 .menue_point_secondlevel_20757_over>.dropdown-menu {
   display: block !important;
 }

 @media (min-width: 992px) {
   .navbar-default .navbar-nav>li>.dropdown-menu {
     margin-top: 10px;
     right: auto;
     left: 0;
     position: absolute;
     min-width: 200px;
   }

   /* Thirdlevel - right dropdown */
   .navbar-default .navbar-nav>li,
   .navbar-default .navbar-nav>li>.dropdown-menu>li {
     position: relative;
   }

   .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu {
     position: absolute;
     left: 100%;
     top: 0;
     margin-left: 25px;
     margin-top: -20px;
     min-width: 200px;
   }
 }

 .menue_group_20757_start,
 .menue_group_20757_end,
 .menue_list_thirdlevel_20757_start,
 .menue_list_thirdlevel_20757_end {
   display: none;
 }

 /* --------------------------------------------- secondlevel + thirdlevel -------------------------------------------- */
 .navbar-default .navbar-nav>li>.dropdown-menu>li>a,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li>a {
   color: #2f5596;
   font-weight: 400;
   padding: 3px 5px;
   background-color: transparent;
   line-height: 25px;
 }

 .navbar-default .navbar-nav>li>.dropdown-menu>li>a::before,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li>a::before {
   content: '\0203A\000A0';
   font-size: 25px;
 }

 .navbar-default .navbar-nav>li>.dropdown-menu>li:not(:nth-last-of-type(2)),
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li:not(:nth-last-of-type(2)) {
   border-bottom: 1px solid #d0d8e8;
 }

 /* ------------------------------------------ secondlevel + thirdlevel over ------------------------------------------ */
 .navbar-default .navbar-nav>li>.dropdown-menu>li>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>a:focus,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.open>a,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.open>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.open>a:focus,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.menue_point_secondlevel_20757_over>a,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.menue_point_secondlevel_20757_over>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li.menue_point_secondlevel_20757_over>a:focus,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li>a:focus,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.open>a,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.open>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.open>a:focus,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.menue_point_thirdlevel_20757_over>a,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.menue_point_thirdlevel_20757_over>a:hover,
 .navbar-default .navbar-nav>li>.dropdown-menu>li>.dropdown-menu>li.menue_point_thirdlevel_20757_over>a:focus {
   color: #e09805;
 }

 /* ------------------------------------------------ banner ------------------------------------------------ */
 #slider,
 .slider-wrapper {
   max-height: 300px;
   overflow: hidden;
 }

 @media (min-width: 992px) {

   #slider,
   .slider-wrapper {
     max-height: 545px;
   }
 }

 #headerpic {
   margin: 0 auto;
   overflow: hidden;
   position: relative;
   width: 100%;
 }

 .slider-mask {
   display: block;
   background: url('../img/slider_mask.png') center no-repeat;
   background-size: contain;
 }

 /* ----------------------------------------------- styler ----------------------------------------------- */
 #style-wrapper {
   position: absolute;
   z-index: 10;
   top: 0;
 }

 #style {
   display: inline-flex;
   background-color: rgba(255, 255, 255, 0.9);
   -webkit-box-shadow: 0px 0px 0px 5px rgba(47, 85, 150, 0.5);
   box-shadow: 0px 0px 0px 5px rgba(47, 85, 150, 0.5);
   color: #454849;
   padding: 10px;
   border-bottom-left-radius: 13px;
   border-bottom-right-radius: 13px;
 }

 @media (max-width: 1199px) {
   #style {
     font-size: 85%;
   }
 }

 #style a {
   color: #2f5596;
   text-decoration: none;
   font-weight: 500;
   display: inline-block;
   height: 34px;
   width: 34px;
   text-align: center;
   display: flex;
   align-items: center;
   align-content: center;
   justify-content: center;
   position: relative;
   bottom: 0;
   right: 0;
 }

 #style a:hover {
   color: #e09805;
 }

 #style a+a {
   margin-left: 6px;
 }

 #style a:nth-of-type(1) {
   font-size: 100%;
 }

 #style a:nth-of-type(2) {
   font-size: 115%;
 }

 #style a:nth-of-type(3) {
   font-size: 130%;
 }

 #style span {
   margin-right: 14px;
   color: #454849;
   font-weight: normal;
 }

 @media (min-width: 992px) {
   #style span {
     margin-top: 3px;
   }
 }

 /* ------------------------------------------------ content ----------------------------------------------- */
 #bg-right {
   padding-bottom: 50px;
 }

 @media (min-width: 992px) {

   #bg-left,
   #bg-right {
     padding: 0;
   }

   #bg-right {
     padding-top: 75px;
   }
 }

 #content-wrapper {
   background: url('../img/bg_stars1.png') top -20px left -50px no-repeat,
     url('../img/bg_stars2.png') bottom -50px right 70px no-repeat;
   background-color: rgba(255, 255, 255, 0.95);
 }

 #content {
   line-height: 1.6em;
   text-align: left;
   min-height: 200px;
   padding: 30px 15px;
 }

 @media (min-width: 768px) {
   #content {
     padding: 30px 25px 40px 100px;
   }
 }

 .row {
   margin-left: 0;
   margin-right: 0;
 }

 .container {
   padding-left: 0;
   padding-right: 0;
 }

 @media (min-width: 992px) {
   .container {
     border: 10px solid rgba(255, 255, 255, 0.4);
     border-radius: 10px;
   }
 }

 /* ie-fix btgrid images */
 @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
   .btgrid .row img {
     width: auto;
   }
 }

 /* ---------------------------------------------- tabs content --------------------------------------------- */
 #contentTabs {
   background-color: #f4f7fc;
   color: #000;
 }

 @media (max-width: 991px) {
   #contentTabs {
     max-width: 400px;
     margin: 0 auto;
   }
 }

 .tabHeadline {
   color: #fff;
   background-color: #2f5596;
   padding: 15px;
 }

 .tabContent {
   padding-left: 20px;
   padding-right: 20px;
   padding-top: 7px;
   padding-bottom: 40px;
 }

 #contentTabs p {
   margin: 0;
 }

 .tab_link_title a {
   color: #000;
   font-weight: 600;
 }

 .tab_link_title a:hover {
   color: #2f5596;
 }

 .tab_link_mehr {
   color: transparent;
   margin-top: 10px;
 }

 .tab_spacer {
   height: 15px;
 }

 .eventclndr-tab {
   margin-left: -20px;
   margin-right: -20px;
 }

 #clr-events-hide {
   padding-top: 25px;
 }

 /* --------------------------------------------- share buttons -------------------------------------------- */
 #content_buttons_div {
   top: 45%;
   z-index: 100;
 }

 @media (max-width: 991px) {
   #content_buttons_div {
     display: none;
   }
 }

 /* ------------------------------------------ h1, #content .legacy_h1, .legacy_h1 - h6, #content .legacy_h6, .legacy_h6, newslink ----------------------------------------- */
 .h4link a:link, .h4link a:hover, .h4link a:visited, h6, #content .legacy_h6, .legacy_h6, h5, #content .legacy_h5, .legacy_h5, h4, #content .legacy_h4, .legacy_h4, h3, #content .legacy_h3, .legacy_h3, h2, #content .legacy_h2, .legacy_h2, h1, #content .legacy_h1, .legacy_h1 {
   color: #2f5596;
   font-weight: 600;
   line-height: 1.2em;
   font-family: 'Source Sans Pro', sans-serif;
 }

 #newslinks, #newsmandate {
   border: 1px solid #2f5596;
 }

 /* ------------------------------------------------ for white background ------------------------------------------------ */
 #startseite_news ul a {
   font-size: 12px;
   color: #7c7c7c;
   font-weight: normal;
 }

 /* -------------------------------- optimized events for white background ------------------------------- */
 .weekdays, .weekdays a:link a:visited a:active a:hover, .weekdays_active {
   color: #cccccc;
 }

 .weekdays_active a:link a:visited a:active a:hover {
   color: #f7911e;
 }

 .events-header-heute {
   color: #ffffff;
   background-color: #4c4c4c;
 }

 .events-header {
   color: #5b5b5b;
   background-color: #e3e3e3;
 }

 .event-ort, .event-info {
   color: #4c4c4c;
 }

 /* --------------------------------------------- links below content -------------------------------------------- */
 #content_footer {
   margin-top: 40px;
   height: auto;
 }

 #content_footer a {
   font-weight: 400;
 }

 @media (max-width: 479px) {

   #contentbottom_left,
   #contentbottom_right {
     width: 100% !important;
     text-align: center !important;
   }

   .content_footer, #content_footer {
     height: auto !important;
   }
 }

 #contenttop_right {
   position: relative;
   z-index: 54;
 }

 @media (max-width: 499px) {

   #breadcrumbincontent,
   #contenttop_right {
     width: 100%;
   }
 }

 /* ----------------------------------------------- footer ----------------------------------------------- */
 #footer {
   background-color: #2f5596;
   color: #ffffff;
 }

 @media (min-width: 768px) {
   #footer {
     display: flex;
   }
 }

 @media (min-width: 992px) {
   #footer {
     padding-left: 70px;
     padding-right: 85px;
   }
 }

 /*  xs  */
 @media (max-width: 767px) {

   /* xs-footer-separator (lines) */
   #footer>.col-xs-12:not(:first-child)::before {
     background: #000000;
     content: " ";
     height: 1px;
     width: 100%;
     display: block;
     margin: 25px 0;
     opacity: 0.15;
   }

   #footer>.col-xs-12.hidden-xs~.col-xs-12::before,
   #footer>.col-xs-12.hidden-sm~.col-xs-12::before {
     display: none;
   }
 }

 #innerfooter {
   min-height: 100%;
 }

 @media (min-width: 768px) {
   #innerfooter {
     display: flex;
     flex-wrap: wrap;
   }
 }

 #innerfooter a {
   color: #ffffff;
   text-decoration: none;
   display: inline-block;
   padding: 10px;
 }

 @media (min-width: 768px) {
   #innerfooter a {
     display: flex;
     align-content: center;
     align-items: center;
     justify-content: center;
   }
 }

 @media (min-width: 992px) {
   #innerfooter a {
     padding: 15px;
   }
 }

 #innerfooter a:hover {
   color: #ffffff;
   background-color: #4466a1;
 }

 /* --------------------------------------------- vernetzt -------------------------------------------- */
 #vernetzt {
   text-align: right;
   font-size: 90%;
   color: #ffffff;
   display: flex;
   align-items: center;
   align-content: center;
   line-height: 140%;
   justify-content: center;
   margin: 12px auto;
 }

 @media (min-width: 768px) {
   #vernetzt {
     justify-content: flex-end;
     margin: 12px 0;
     float: right;
   }
 }

 #vernetzt span {
   color: #ffffff;
 }

 #vernetzt span span {
   display: block;
 }

 #vernetzt img {
   margin-left: 12px;
 }
