* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    height: 100vh;
    margin: 0;
    background: url('images/fotos-himmel-christian-theiss2.jpg') no-repeat center center fixed;
    background-size: cover;
    color: white;
    display: block;
 
}


body {color: #fff; position: relative; transform: none; font-size: 126%;}
footer {margin-top: 1%;}
.mobilehead {display: none;}
.kopfbereich .logo {
  margin: 10px auto;
}

@media (min-width:1400px) {
 .container,
 .container-sm,
 .container-md,
 .container-lg,
 .container-xl,
 .container-xxl,
.frame-container-default {
  max-width:1512px
 }
}

main a {
  color:#303030 ;
  text-decoration: none;
}
td, tr {}


.frame-custom-22 .gallery-item img {  width: 80%;}
.frame-custom-23 .gallery-item img {  width: 60%;}
.frame-custom-24 .gallery-item img {  width: 30%;}
.frame-custom-25 .gallery-item img {  width: 20%;}
.frame-custom-26 .gallery-item img {  width: 10%;}

.frame-custom-27 .gallery-item img {  width: 80%;float: left;}
.frame-custom-28 .gallery-item img {  width: 60%;float: left;}
.frame-custom-29 .gallery-item img {  width: 40%; float: left;}
.frame-custom-30 .gallery-item img {  width: 20%;float: left;}
.frame-custom-31 .gallery-item img {  width: 10%;float: left;}


.kontaktinfo {margin-top:4px;}

.kopfbereich .logo .gallery-item picture {
	width: 90%;}

.frame a[class=""], .frame a:not([class]) {
  color: #303030;
}

.container .row .col .row .container {padding:0;}
.container .row .col .row .container .row {padding:0; margin:0;}
.container .row .col .row .container .row .col {padding:0; margin:0;}


.kopfbereich  {}



.kopfbereich .menu {float: right; margin-top: 28px;}
.kopfbereich .headerright {float: right; padding-top: 22px;direction: ltr;   }
.kopfbereich  .textmedia  {gap:0;}
.kopfbereich .frame {padding: 0; }
.kopfbereich .row {--bs-gutter-x: 0px;}
.kopfbereich {  z-index: 100;  position: fixed;   width: 100%;  transform: none; position: sticky;  top: 0;}
.kopfbereich .rechterbereich {float: right; margin-left: 10px; padding-top: 0.2%;}
.kopfbereich .sprachenbereich {float: right; margin-left: 10px;}
.topmenu {float:right;  padding-top: 0.2%;}


.logo .frame {margin:0; padding:0;}
.logo .container-fluid {--bs-gutter-x: 0px;}
.logo .row {--bs-gutter-x: 0px;}
.logo .frame-container {--bs-gutter-x: 0px; gap:0; padding:0;}
#c53 .gallery-item {width: 30%;
  margin-top: 400px;
}

.carousel .carousel-item-layout-custom {background:#24318a; }

#c31 .gallery-item {width: 70%;}

.rot h2 strong {
  background: #e3000b;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #fff;
  margin-top: 4px;
}
.orange h2 strong {
  background: #ec6500;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #fff;
  margin-top: 4px;
}


.gelb h2 strong {
  background: #ffed00;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #000;
  margin-top: 4px;
}

.hellblau h2 strong {
  background: #5ac5f2;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #000;
  margin-top: 4px;
}

.violett h2 strong {
  background: #5b237b;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #fff;
  margin-top: 4px;
}
.dunkelblau h2 strong {
  background: #24318a;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #fff;
  margin-top: 4px;
}
.dunkelgruen h2 strong {
  background: #00844a;
  display: inline-block;
  padding: 6px 16px 10px;
  color: #fff;
  margin-top: 4px;
}

.copyright p {font-size: 0.9rem;}

.slick .frame-header {display: none;}


    .btn:hover {
        transform: scale(1.1);
        box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);
        filter: brightness(1.2);
    }

.kopfbereichr + main {
  padding-top: 80px;
}
main .frame a:not([class]) {   color: #373e42;}

footer .frame a:not([class]) {   color: #fff; text-decoration: underline;}
footer a:hover {
  color: #ec6500 !important;
}

main hr {border:none; padding-top: 3%; padding-bottom: 3%;}

main p {margin-bottom: 0;}

main a {
  color: #fff !important; text-decoration: underline;
}

main a:hover {color:#ec6500;}
footer table,
main table {max-width: 100%;}

main table tr {background: none;}


.table > :not(caption) > * > * {background: none;}
.table td {padding-right: 20px;}
.frame-custom-10  ul {padding-left: 0;}
.frame-custom-10  ul li {list-style: none; font-size: 20px;}

.frame-custom-10  ul li:before { font-family: 'Font Awesome\ 5 Free';
  content: '\f14a';
  margin: 0 5px 0 0px;
  color: #fff;
  font-weight: 900;
}


.hellgrau {background: #a1a1a1; margin-bottom: 5%; margin-top: 5%;  }
.blau {background:#003163; color: white; margin-bottom: 2rem; }

.grau .frame {background: #ededed !important;  padding: 3% 4%;}

.grau .textmedia-gallery {max-width: 160px;}

 main h1 {
    font-weight: 600;
    margin-top: 20px;
    margin-bottom: 6px;
    text-align: center;
	 text-transform: none;
	 font-size: 3rem; color:#233c52;
}

 main h2 {
    font-weight: 600;
	 font-size: 2.7rem;
	 color:#fff;
}



main h4 {

    font-weight: 600;
    color: #4a4a49;
    font-size: 1.4rem;
	margin-top: 20px;

}


.ansprechpartner  picture { width: 80%;}



h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {font-weight: 500;}

/*###SUCHE*/

.kopfbereich .submitbutt {float: left;}

.kopfbereich .fa-input {font-family: FontAwesome !important; }
.kopfbereich imput {float: left; width: 300px;}
.kopfbereich .kesearchbox .submitbutt {font-family: 'Source Sans Pro', sans-serif !important;}
.kopfbereich #ke_search_sword {position: relative !important;}
.kopfbereich .kesearchbox { float: left; }
.kopfbereich .resetbutt {display: none;}


small, .small {
  font-size: 0.9rem;
}

.logo h1 {font-size: 5rem; text-transform: uppercase;}

span.submitbutt input{
  box-sizing: border-box !important;
  display: inline-block!important;
  font-size: .888em!important;
  padding: 0.85em 0.2rem !important;
  line-height: 1em!important;
  color: #262626!important;
  background-color: #fff !important;
  border: 2px solid #262626!important;
  border-radius: 1.5em !important;
  text-decoration: none !important;
  text-align: center !important;
  margin: 0 !important;
  font-weight: 400 !important;
  cursor: pointer !important;
  -webkit-transition: all .15s !important;
  transition: all .15s !important;
  margin-left: 10px !important;
  max-width: 120px !important;
  min-width: 100px !important;
}


main h3 {font-size: 2rem;
	line-height: 140%;}


.news-single .news-backlink-wrap a {color:#fff !important;}

.animated-title {
  color: #222;
  font-family: Roboto, Arial, sans-serif;
  height: 90vmin;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 90vmin;
}
.animated-title > div {
  height: 50%;
  overflow: hidden;
  position: absolute;
  width: 100%;
}
.animated-title > div div {
  font-size: 12vmin;
  padding: 2vmin 0;
  position: absolute;
}
.animated-title > div div span {
  display: block;
}
.animated-title > div.text-top {
  border-bottom: 1vmin solid #000;
  top: 0;
}
.animated-title > div.text-top div {
  animation: showTopText 1s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
  bottom: 0;
  transform: translate(0, 100%);
}
.animated-title > div.text-top div span:first-child {
  color: #767676;
}
.animated-title > div.text-bottom {
  bottom: 0;
}
.animated-title > div.text-bottom div {
  animation: showBottomText 0.5s;
  animation-delay: 1.75s;
  animation-fill-mode: forwards;
  top: 0;
  transform: translate(0, -100%);
}

/*++++++ Back to top btn ++++*/

#myBtn {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    font-size: 18px;
    border: none;
    outline: none;
    background-color: #233c52;
    color: white;
    cursor: pointer;
 	padding: 0.7rem;
    border-radius: 2rem;
}

#myBtn:hover { 
  background-color: #07121b;
}


#btn-back-to-top {
  position: fixed;
  bottom: 00px;
  left: 20px;
  display: none;
	z-index: 100000;
	border-radius: 8px 8px 0 0;
border: 0px solid #000;
	color: #000;
	margin:0;
	height: 40px;
	width: 40px;
	background: #233c52;
	opacity: 0.8;
	transition: 0.3s;
	color: #fff;
}
#btn-back-to-top:hover {background: #000; color:#fff;}


/*++++++ Back to top btn Ende ++++*/




.kopfbereich .textmedia,
.footertext .textmedia {gap:0;}

.logoimage .gallery-item figure {max-width: 65%;margin: 0 auto;}


.hunderter .megazeil,
.hunderter .ce-outer,
.hunderter .ce-row,
.hunderter .ce-gallery,
.hunderter .ce-textpic,
.hunderter .image { width: 100% !important;}
.hunderter .container {padding: 0 !important;}
.hunderter .frame {width: 100%; height: auto; margin: 0;
padding: 0;}

.hunderter .ce-gallery[data-ce-columns="3"] .ce-column {
    width: 33.33333% !important;}

.hunderter {max-width: 100% !important; padding: 0 !important; z-index: 0;}
.hunderter .ce-gallery img {padding: 0;width: 100%; }
.hunderter .ce-column {padding: 0 !important ;}
.hunderter .textmedia {gap:0;}
.hunderter hr {height: 0; padding: 2% 0; background:none !important;}
.hunderter .frame-container-default {
  max-width: 100%; padding: 0; margin:0;
}


.headerimage {position: relative; width: 100%; overflow: hidden; margin-bottom: 0.5%;}
.headerimage .carousel-image picture {width: 100%;}
.headerimage .carousel .carousel-content-inner,
.headerimage  .frame-container {min-width: 100% !important; max-width: inherit !important; padding: 0; margin:0; }

#pageid1 .headerimage .carousel .carousel-content-inner {min-height: 60vh;}

.headerimage .carousel .carousel-content {  height: inherit;}
.headerimage .carousel-item-type-image .carousel-image img {	width: 100%;}
.headerimage .frame {padding: 0;}
.headerimage .carousel .item {height: auto;}


.headerimage .carousel-image {
  display: block;
	z-index: 1;
  width: 100%;
}

.headerimage .carousel-text p {text-align: center; background-color: rgba(255,255,255,0.55); font-size: 3rem; padding: 1% 0.5%; }

.headerimage  .carousel-image img {
	width: 100%;}




#c2 picture {max-width: 400px;}
.frame-space-before-extra-small {margin-top:0.5% !important;}
.frame-space-before-small {margin-top:3% !important;}
.frame-space-before-medium {margin-top:6% !important;}
.frame-space-before-large {margin-top:4% !important;}

.frame-space-after-extra-small {margin-bottom:0.5% !important;}
.frame-space-after-small {margin-bottom:3%!important;}
.frame-space-after-medium {margin-bottom:6%!important;}
.frame-space-after-large {margin-bottom:9%!important; 
 
}

.textmedia, .textpic {
		grid-column-gap: rem;
	gap: 0rem 2rem;
}



.bildimtext .textmedia  {position: relative;}

.bildimtext .textmedia-text {
  position: absolute;
  z-index: 10;
  bottom: 15%;
  background: rgba(255,255,255,0.8);
  text-align: center;
  padding: 12px 0;
}
.bildimtext  .element-header a {text-decoration: none;}
.bildimtext  .element-header {
  color: #000;
  font-size: 2rem;
	text-decoration: none;
  font-weight: bold;

}
.bildimtext p {font-size: 1.3rem;  color: #000;}
.bildimtext .frame-header {margin-bottom:0;}
