
/**
* Template Name: EEB-EN V1.0
* Template URL: https://ja-internet.de/
* Author: JA-Internet.de / aplus-design
*/


/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
  font-family: "Open Sans", sans-serif;
  color: #444444;
  overflow-x:hidden;
}

a {
  color: #006186;text-decoration: none;
}

a:hover {
  color: #006186;
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Open Sans", sans-serif;
}
.h2, h2 {
    margin-bottom: 1em;
}

section#main.startpage {
    padding: 75px 0 15px 0;
}

.ce-column {
    padding: 0 25px;
}
.container > .row .row {
    margin: 0;
}

/*--------------------------------------------------------------
# News
--------------------------------------------------------------*/

/***  https://clamp.font-size.app/  ***/
.news-small .news-article,.news-big .news-article {position:relative;}
.news-article{overflow:hidden;padding-bottom:100%;}
.news-small .news-img,.news-big .news-img  {position:absolute;top:0;right:0;bottom:0;left:0;}
.news-small img, .news-big img{max-width:100%;height:auto;}
.news-small .category, .news-big .category {position: absolute;top: calc(50% - 15px);right: 10%;width: 25px;height: 25px;background: #f00;z-index: 2;}
.news-big .category {width: 50px;height: 50px;top: calc(50% - 30px);}
.news-small .news-content,.news-big .news-content {height:50%;background:#e7e7d3;}
.news-content{position: absolute;bottom: 0;right: 0;left: 0;;z-index:1}
.news-content .h2, .news-content h2 {font-size: clamp(1.1rem, 0.9602rem + 0.3883vw, 1.3rem);font-weight: bold;padding-top:0;}
.news-big .news-content .h2, .news-big .news-content h2 {padding-top:10px;}
.news-big .news-content *, .news-small .news-content * {font-size: clamp(0.8rem, 0.6602rem + 0.3883vw, 1rem);}

.container.bg-light > .news >.row {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
}
.news-list-container.news-small > .container > .row {
    margin-left: -2rem;
    margin-right: -2rem;
}
.news-img .news-list-tags {
    position: absolute;
    top: 5%;
    left: 0.75rem;
    width: 90%;
    text-align: left;
}


/***  Angebote  ***/
.angebote-img-wrap img {border: 1px solid #ddd; background: #fff; padding: 5px;max-width: 100%;height: auto;}
.angebotedetails p {margin-bottom: 5px;}
.angebotedetails .kennung {font-weight: 600;}
hr.angebotheader {border-top: 4px dotted; color: #FF8800; opacity: 1; width: 100%; margin: 10px 0 5px 0;}
p.header {color: #FF8800; text-transform: uppercase; font-weight: 600; opacity: 0.75;}
p.kursid {color: #FF8800;}
p.info {margin-top: 10px;}
  

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  overflow: hidden;
  background: #fff;
}

#preloader:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #009961;
  border-top-color: #fff;
  border-bottom-color: #fff;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  -webkit-animation: animate-preloader 1s linear infinite;
  animation: animate-preloader 1s linear infinite;
}

@-webkit-keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
  position: fixed;
  display: none;
  right: 15px;
  bottom: 15px;
  z-index: 99999;
  text-decoration: none;
}

.back-to-top i {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  background: #0097BF;
  color: #fff;
  transition: all 0.4s;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

.linie {height: 10px;}

#topheader {
	-webkit-box-shadow:  0px 10px 13px -7px #00000078, 0px 5px 15px 5px rgba(0,0,0,0);
	box-shadow: 0px 10px 13px -7px #00000078, 0px 5px 15px 5px rgba(0,0,0,0);
	background: white;
}

.headliner {
    height: 50px;
}
.headliner .logo {
    margin-top: -4px; 
    width: 155px;
    height: auto;
}
.headliner .titel {
    margin-left: -5vw;
}

button.navbar-toggler {
  border: 0;
  padding: 0;
  margin: 0;
  box-shadow: 0 0 0 !important;
}


.titel {font-size: clamp(.8em, 1.8vw, 1.75em)}

#topheader > .container {position:relative;}
#contactbar {
  position: absolute;
  top: 75px;
  right: 0;
  background: #fff;
  padding: 8px;
  width: auto;
  box-shadow: 1px 3px 5px #999;
  text-align: center;
  font-size: 1.3em;
}
#contactbar .map {margin:10px 0;}
#contactbar .suche {margin: 10px 0;}
#contactbar i.fa{color: #ef8702;}


/*--------------------------------------------------------------
# Menu Section
--------------------------------------------------------------*/
body{width:100%;overflow-x:hidden;}



body.menu-visible{overflow:hidden;max-height:100vh;max-width:100%;}
button#menu-close {--bs-btn-close-opacity: 1;}
#sidebar .navigation .active > a, #sidebar .navigation .current > a{background:#1595bb;}

#sidebar {background-color: #006186;bottom: 0;height: 100vh;overflow-y: auto;position: fixed;right:0;top: 0;width: 0;z-index: 2;transition: all 300ms linear;transform: translateX(100%);}
#pagecontent {width:100%;transition: transform 300ms linear;overflow: hidden;}
body.menu-visible #pagecontent{transform: translateX(-100%);transition: all 300ms linear;overflow:hidden;}
#pagecontent:before{opacity: 0.001;visibility:hidden;content: "";background-color: #000000;height: 100%;left: 0;position: absolute;top: 0;width: 100%;z-index: 1040;transition: all 300ms ease;}
body.menu-visible #pagecontent::before {opacity: 0.7;visibility:visible;}
body.menu-visible #sidebar {width:100%;transition: all 300ms linear;overflow:hidden;right:100%;}
  

footer li::marker {content: '';font-size: 0em;}
ul.navigation{font-size:22px;list-style: none;overflow-x: hidden;overflow-y: auto;max-height: calc(100% - 60px);}
.nav-item {display: table;width: 100%;}
ul.navigation li > a {line-height: 32px;padding: 25px;vertical-align: middle;display: table-cell;border-top: 1px solid;}
li.back{line-height:32px;cursor: pointer;padding: 25px;}

ul.navigation > li:first-child > a,
ul.navigation ul.dropdown > li:first-child > a {border-top:0 none;}

.nav-item.sub > a:after {position: absolute;right: 1em;border: 0 none;content: "\276F";}
ul.dropdown {width: 100%;transform:translatex(31.25rem);height:calc(100vh - 60px);position: fixed;top: 60px;right: 0;overflow-x: hidden;overflow-y: auto;list-style: none;z-index: 1;background: #005575;transition: transform 300ms linear;top: 60px;}

ul.dropdown.submenu-visible {width: 100%;transition: transform 300ms linear;right:0;transform:translatex(0);}
ul.dropdown .dropdown-item{white-space: pre-wrap;display:block;}

.nav-item > a, ul.dropdown > li > a, li.back {color:#e2e2e2}
li.nav-item:hover > a, ul.dropdown > li:hover a, li.back:hover {background: #e2e2e2;}
li.nav-item:hover > a, ul.dropdown > li.active:hover a {color:#2a2a2a}
li.back:hover{color:#2a2a2a;}
li.nav-item.current:hover > a, #sidebar .navigation .active > a {color:#e2e2e2;}

@media (min-width: 31.25em) {
  #sidebar {width:31.25em;transition: all 300ms linear;}
  body.menu-visible #sidebar {width:31.25em;transition: all 300ms linear;right:31.25em;}
  body.menu-visible #pagecontent{transform: translateX(-31.25em);transition: transform 300ms linear;}
  ul.dropdown.submenu-visible {width: 31.25rem;}
  ul.dropdown {width: 31.25rem;}
}

.dropdown li.back:before {
    content: "\00ab";
    padding-right: 0.5em;
}

body:not(#pid936) #main > .container{background:#ebeae1;}


.zoom {
	z-index:1;
  /* transition: transform .5s, z-index 1s; */
  transition: transform .5s, z-index .3s
}

.zoom:hover {
	z-index:10;
  transform: scale(1.1);
}

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
/*#hero {height: 400px;}*/

#hero {margin-top: 74px;}


/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/

.box {
    position: relative;
}

.box-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 1em;
}


/* Sidemenu */
#main .col-md-4 ul.submenu {margin-top: 20px;padding:0;}
#main .col-md-4 ul.submenu li a:before {content: ">";display: inline-block;padding-right: .5em;}
#main .col-md-4 ul.submenu li {display: flex;border-bottom: 1px dotted #ccc;padding: 10px 0;margin-right: 0;}
#main .col-md-4 ul.submenu li a {font-weight: bold;font-size: .9em;}
#main .col-md-4 ul.submenu li.active {color: #1595BB;font-style: italic;}


.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #cbc1b7;
    --bs-btn-border-color: #cbc1b7;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #a79f97;
    --bs-btn-hover-border-color: #a79f97;
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #a79f97;
    --bs-btn-active-border-color: #a79f97;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #cbc1b7;
    --bs-btn-disabled-border-color: #cbc1b7;
}

/* Link-Color */
#main .submenu a.nav-link[href^="/aktuell/kursuebersicht"] {color: #000;}
#main .submenu a.nav-link[href^="/aktuell/religion"] {color: #f08700;}
#main .submenu a.nav-link[href^="/aktuell/familie"] {color: #cb251c;}
#main .submenu a.nav-link[href^="/aktuell/computer"] {color: #8da835;}
#main .submenu a.nav-link[href^="/aktuell/gesundheit"] {color: #8a0d6a;}
#main .submenu a.nav-link[href^="/aktuell/beruf"] {color: #1595bb;}
#main .submenu a.nav-link[href^="/aktuell/sprache"] {color: #dabb09;}

/* Anmeldung */
#pid947 fieldset label, #pid947 legend {display: none;}
#pid947 .row .row {margin: 0;padding: 0;}
#pid947 .form-group {margin-bottom: .5em;}
#pid947 fieldset.form-group {margin-bottom: 2em;}
#pid947 .input {margin-right: 1em;}
#pid947 .form-check {padding: 0;}
#pid947 .form-control {background: rgba(203,193,183,0.5);border-radius: 0;border: 1px solid #999}

/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
#breadcrumb .container-fluid {background: #cbc1b7;}
#trenner .container-fluid {background: #e8832a;height: 50px;margin-top:5px;}

.breadcrumb {
  padding: 15px 0;
  min-height: 40px;
  margin: 5px 0;
  color: #000;
}
.breadcrumb-item+.breadcrumb-item::before { content: ">"; }
.breadcrumb a {color: #fff;font-weight:700;text-decoration:none;}
.breadcrumb li.breadcrumb-item a {color: #000;font-weight: 400;}
.breadcrumb li.breadcrumb-item.active a {color: #000;font-weight:400;}
.breadcrumb li.breadcrumb-item.active a:hover {color: #1595bb;font-weight:400;}

@media (max-width: 992px) {
  .breadcrumbs {
    margin-top: 63px;
  }
}

.breadcrumb h2 {
  font-size: 26px;
  font-weight: 500;
}

.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0 0 10px 0;
  margin: 0;
  font-size: 14px;
}

.breadcrumb ol li + li {
  padding-left: 10px;
}

.breadcrumb ol li + li::before {
  display: inline-block;
  padding-right: 10px;
  color: #424242;
  content: ">";
}


/*--------------------------------------------------------------
# SEARCH
--------------------------------------------------------------*/
#kesearch_results {display: flex;flex-wrap: wrap;margin: 2em 0;}
#kesearch_results .result-list-item {
    flex: 0 0 auto;
    width: calc(100% - 1rem);
    padding: 1em;
    margin: 1.5em .5rem;
    box-shadow: 0 0 1px #666;
    position: relative;
    background: #fff;
}
#kesearch_results span.result-number {
    position: absolute;
    top: -20px;
    left: -5px;
    background: #fff;
    width: 30px;
    height: 30px;
    text-align: center;
    box-shadow: 2px 2px 4px #ccc;
    vertical-align: middle;
    line-height: 30px;
}
#kesearch_results span.result-title {min-height: 3.3em;overflow-wrap: break-word;}
#kesearch_results .result-list-item.result-list-item-type-page span.teaser_icon {display: none;}
#kesearch_results span.clearer {float: none;height: 0;}
#kesearch_results span.teaser_icon {margin: auto;text-align: center;}
#kesearch_results span.teaser_icon img {max-width: 100%;height: auto;}
#kesearch_results span.hit {font-weight: bold;}


@media (min-width:992px){
  #kesearch_results .result-list-item {width: calc(50% - 1rem);}
}

@media (min-width:1200px){
  #kesearch_results .result-list-item {width: calc(33% - 1rem);}
}



/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
  background: #d7d3c9;
  color: #333;
  font-size: 14px;
  padding: 0;
}

#footer .logos {background: #fff; padding: 15px 0;}
#footer .menu {background: #eee; padding: 15px 0;}
#footer .kontakt {padding: 30px 0;}

#footer h4 {
  font-size: 1.1em;
  position: relative;
  padding: 0 0 0 0;
  margin: 0 0 15px 0;
  font-weight: 600;
}

#footer p {
  font-size: 15;
  padding: 0;
  margin: 0 0 40px 0;
}

#footer .copyright {
  margin: 0 0 5px 0;
  text-align: center;
}

#footer .credits {
  font-size: 13px;
}

#footer a {color: #444; text-decoration: none;}

#footer ul {
    padding-left: 0;
    margin-bottom: 50px;
}
#footer li {
  position: relative;
  border-bottom: 1px solid #34bbe7; 
  margin-right: 20px;
  margin-bottom: 1em;
}
#footer li a {display:inline-block;width:100%;padding-right:1em;}
#footer li a:after {content: "\279C";display: inline-block;position: absolute;right: 0;}


@media (max-width:991px) {
  #topheader .titel{display:none;}
  .container.bg-light .news .news .news-list-container > .container > .row {margin-left: -1.25rem;margin-right: -1.25rem;}
  #footer .logos .ce-column {width: 100%;}
  #footer .logos  figure.image {margin: auto;}
  
  #pid939 .ce-bodytext {margin-left: 50px;}
  .ce-gallery {float: none!important;}
}

@media (max-width:768px) {
  .news-list-container.news-small * {
      font-size: 0.7rem;
  }
}