/*   -------  Font integration  ----------------------------------------------------------  */

@font-face {
font-family: 'SourceSansPro regular';
src: url(/fileadmin/fonts/SourceSansPro-Regular.ttf) format('truetype');
font-weight: 400;
}

@font-face {
font-family: 'SourceSansPro semibold';
src: url(/fileadmin/fonts/SourceSansPro-Semibold.ttf) format('truetype');
font-weight: 500;
}

@font-face {
font-family: 'SourceSansPro bold';
src: url(/fileadmin/fonts/SourceSansPro-Bold.ttf) format('truetype');
font-weight: 700;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   ------- Formulare ---------------------------------------------------------------  */

form .actions .btn-primary {
background-color: #adce6b;
}

html body {
font-size: 1.125rem;
line-height: 1.625rem;
color: #adce6b;
}

form h2 {
text-transform: none;
}

/* --- Button Absenden --- */
form .actions .btn-primary {
background-color: #adce6b;
}

.btn-group-vertical > .btn:hover, .btn-group > .btn:hover {
z-index: 1;
background-color: #002d5f;
}

form h2 {
text-transform: none;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   -------  Global CSS styling  ------------------------------------------------------  */

body {
color: #ffffff;
background: #ffffff;
}

html h1 {
margin-bottom: 1.2rem;
}

html body {
color: #002d5f;
}

h1 {
font-family: 'SourceSansPro regular'  !important;
color: #002d5f !important;
}

h2 {
font-family: 'SourceSansPro regular'  !important;
color: #002d5f !important;
}

h3 {
font-family: 'SourceSansPro semibold'  !important;
color: #002d5f !important;
}

h4 {
font-family: 'SourceSansPro bold'  !important;
color: #002d5f !important;
}

h5 {
font-family: 'SourceSansPro bold'  !important;
color: #002d5f !important;
}

p, a { 
font-family: 'SourceSansPro regular'  !important;
color: #002d5f;
}

td {
font-family: 'SourceSansPro regular'  !important;
color: #002d5f !important;
}

b, strong {
font-weight: bold;
font-family: 'SourceSansPro bold';
}


/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   ------- Tables  --------------------------------------------------------------  */


html table tr:first-child {
background: #ddc46e !important;
color: #fff;
}

html table tr:nth-child(2n) {
background: rgba(255, 255, 255, 0.3);
}

html table tr:nth-child(2n+1) {
background: rgba(36, 55, 69, 0.1);
}


/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   -------  Responsive  ---------------------------------------------------------------  */

@media (min-width: 992px) {
.header-bottom {
background: #b6d1fb;
   }
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   -------  Teasers  ---------------------------------------------------------------  */

.teasers .icon-teaser .teaser-inner {
background: #fff;
padding-top: 100%;
}

.teasers .icon-teaser .teaser-inner img {
text-align: center;
width: 35%;
height: 35%;
}

.teasers .teaser-link {
background: #adce6b;
}

.teasers .teaser-link:hover {
background: #002d5f;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   -------  Person Container   ---------------------------------------------------------------  */

.persons .person .person-inner .content h6 {
font-weight: 500;
padding-top: 4px;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



/*   -------  Header  ---------------------------------------------------------------  */

#header {
background: #ffffff;
}

#header .header-top {
padding-top: 1rem;
}

.header-bottom {
background: #ffffff;
}

#header .logo img {
max-width: 98px;
padding-left: 1rem;
padding-bottom: 1rem;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   ------- Main Menu -----------------------------------------------------------------  */

#header .navbar .navbar-nav .nav-item .nav-link:hover, #header .navbar .navbar-nav .nav-item .nav-link.active, #header .navbar .navbar-nav .nav-item .dropdown-item:hover, #header .navbar .navbar-nav .nav-item .dropdown-item.active, #header .navbar .navbar-nav .nav-item .grand-nav-item:hover, #header .navbar .navbar-nav .nav-item .grand-nav-item.active {
color:  #adce6b;
}

#header .navbar .navbar-nav .nav-item .nav-link, #header .navbar .navbar-nav .nav-item .dropdown-item, #header .navbar .navbar-nav .nav-item .grand-nav-item {
font-size: 19px;
color: #002d5f;
text-transform: uppercase;
}

.dropdown-item.active, .dropdown-item:active {
color: #fff;
text-decoration: none;
background-color: #fff;
text-transform: none;
}

#header .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item {
color: #002d5f;
text-transform: none;
}

.dropdown-menu {
color: #212529;
background-color: #fff;
 }
    
.dropdown-item:focus, .dropdown-item:hover {
color: #002d5f;
text-decoration: none;
background-color: #fff;
}

#header .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover {
color: #adce6b;
}

#header .navbar .navbar-nav .nav-item .dropdown-menu {
border-radius: 0;
border-color: #fff;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/* ----------  Sidebar  ---------------------------------------------------------------*/

.sidebar {
background: #adce6b;
color: #fff;
margin-top: 0px;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/* ----------  Akkordeon  -------------------------------------------------------------*/

.accordion .card .card-header {
padding: 0;
color: #ffffff;
}

.card-body {
background: #fff;
}

.accordion .card {
background: #ffffff;
border-radius: 0;
margin-bottom: 20px;
}

#heading-304-91 {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

#heading-317-99  {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

#heading-340-108 {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

#heading-330-102 {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

#heading-348-111 {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

#heading-384-115 {
border-top: #002d5f 1px solid;
border-radius: 0px;
}

.accordion .card .card-header button {
display: inline-flex;
color: #002d5f;
text-align: left;
border: 0;
border-radius: 0;
text-decoration: none;
border: aliceblue;
border-bottom: #002d5f 1px solid;
padding-bottom: 13px;
padding-top: 6px;
font-family:  'SourceSansPro semibold';
}

#heading-83-10 {
border-top: #b6d1fb; 1px solid;
}

#heading-92-54 {
border-top: #b6d1fb; 1px solid;
}

.accordion .card .card-header {
margin-top: 0px;
background-color: #fff;
padding-top: 8px;
}

.accordion .card {
margin-top: -20px;
}

.card-header {
padding: .75rem 1.25rem;
margin-bottom: 0;
background-color: rgba(0,0,0,0);
border-bottom: 1px solid rgba(0,0,0,.125);
}

.accordion .card .card-header button[aria-expanded="true"] {
color:  #002d5f;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   -------  Schrift im Footer  ---------------------------------------------------------  */

.p-style-5 {
color: #ffffff;
margin-bottom: -0.2rem;
text-transform: uppercase;
font-size: 16px;
font-weight: 600;
letter-spacing: 0.1em;
}

footer .top .footer-nav .footer-nav-header {
font-size: 16px;
font-weight: 600;
text-transform: uppercase;
color: #fff !important;
letter-spacing: 0.1em;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   -------  Footer -------------------------------------------------------------------  */

footer .top {
padding: 40px 0;
background: #002d5f;
}

footer .bottom {
background: #001f43;
padding: 30px;
}

footer a {
color: #fff !important;
}

footer p {
color: #fff !important;
}

.nav-items {
list-style-type: none;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   ------  Texte und Headlines   ------------------------------------------------------  */

.h1, h1 {
font-size: 2rem;
font-weight: 500;
}

.h2, h2 {
font-size: 1.2rem;
font-weight: 400;
}

.h5, h5 {
color: #243745;
}

html h1, html h2, html h3, html h4, html h5, html h6 {
color: #002d5f;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
margin-bottom: .5rem;
line-height: 1.2;
}

h1, h2, h3, h4, h5, h6 {
margin-top: 0;
}

html h2 {
font-size: 23px;
font-weight: 500;
}

@media (min-width: 992px) {
.frame-layout-2 {
border-right: 2px dotted;
margin-right: -15px;
padding-right: 15px;
    }
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   ------  Zitat-Element, Kontakt-Element   ---------------------------------------------------------  */

@media (min-width: 992px) {
.frame-layout-1 {
border-top: #ea1332 1px solid;
/*background: transparent;*/
/*padding: 80px 140px 60px 60px;*/
/*height: 100%;*/
}
}

@media (min-width: 992px) {
.frame-layout-2 {
border-left: 2px dotted #002d5f;
background: transparent;
padding: 80px 140px 60px 60px;
height: 100%;
}
}

.frame-layout-3 {
background: #d9dadb;
padding: 30px 80px 13px 30px;
height: 100%;
}

.frame-space-after-medium {
margin-bottom: 0em;
}

p.p-style-3 {
font-size: 1rem;
font-weight: 700;
line-height: 1.6rem;
text-transform: uppercase;
margin-bottom: 2rem;
}

.h2-style-3 {
color: #002d5f;
font-size: 1.4rem;
font-weight: 600;
}

.p-style-3 {
color: #002d5f;
text-transform: uppercase;
font-size: 0.8rem;
font-weight: 600;
letter-spacing: 0.1em;
}

.contact a {
display: inline-flex;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   ------  Bild-Text-Element   ------------------------------------------------------  */

.ce-intext.ce-left .ce-gallery {
margin-right: 40px;
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */


/*   ------  Desktop Navigation Fix   ------------------------------------------------------  */
@media only screen and (min-width: 993px) {
#header .navbar .navbar-nav .nav-item .dropdown-menu {
    margin-top: -10px;
}
}

/*   --------------------------------------------------------------------------------------------------------------------------------------------------------  */



