:root {
	--prime-c: #007a8c;
	--second-c: #c3b7b4;
	--third-c: #e83363;
}

::-moz-selection { /* Code for Firefox */
  color: #fff;
  background: var(--third-c);
}

::selection {
  color: #fff;
  background: var(--third-c);
}

h1, h2, h3 {
	color: var(--prime-c)!important;
	margin: 45px 0 15px;
}

.center-text h1,
.center-text h2,
.center-text h3 {
    text-align: center;
}

.prime-color-bg {
	background-color: var(--prime-c)!important;
}
.prime-color-bg p {
	color: #fff;
}
b, strong {
	font-weight: bolder!important;
}

@media all and (max-width: 767.988px) {
  header ul.nav {
    display: block;
    text-align: center;
  }
}

a {
    color: var(--prime-c);
    text-decoration: none;
}
/*****************************************************/
/******************NAVIGATION************************/
/***************************************************/
.mod_navigation.block {display: contents;}

.nav-pills .nav-item.active a {
    border-radius: 25px;
    background: var(--bs-nav-pills-link-active-bg);
}

img.logo {
    width: 340px;
    margin: 0 16px;
}

.nav-pills .nav-link {
    border-radius: 25px;
}

.nav-pills .nav-link.active, 
.nav-pills .show>.nav-link, 
.nav-link.text-white.trail {
    background-color: var(--third-c);
}


@media all and (max-width: 991px) {
  header ul.nav {
    display: block;
    text-align: center;
    margin-top: 15px;
  }
  img.logo {
    width: 300px;
    /*margin-left: 0px!important;*/
	}
}

@media all and (max-width: 449.987px) {
	.fs-4 {
	    font-size: calc(1.125rem)!important;
	}
	img.logo {
    	width: 60%;
	}
}
.fs-4 {
	padding: 15px 0;
}
/*****************************************************/
/******************Animation*************************/
/***************************************************/

button.navbar-toggler {
	margin-top: 6px;
	margin-bottom: 6px;

}

.icon-bar {
  display: block;
  width: 22px;
  width: 30px;
  width: 26px;
  height: 2px;
  height: 4px;
  height: 3px;
  background-color: #fff;
  border-radius: 1px;
  margin-top: 4px;
}

.navbar-default .navbar-toggler:focus,
.navbar-default .navbar-toggler:hover {
    background-color: transparent;
}

.navbar-default .navbar-toggler {
    border: none;
}

.navbar-toggler span.icon-bar {
    transition: all 0.15s;
}

.navbar-toggler span:nth-child(1) {
    transform: rotate(45deg);
    transform-origin: 10% 10%;
}

.navbar-toggler span:nth-child(2) {
    opacity: 0;
}

.navbar-toggler span:nth-child(3) {
    transform: rotate(-45deg);
    transform-origin: 10% 90%;
}

.navbar-toggler.collapsed span:nth-child(1),
.navbar-toggler.collapsed span:nth-child(3) {
    transform: rotate(0);
}

.navbar-toggler.collapsed span:nth-child(2) {
    opacity: 1;
}
.navbar-light .navbar-toggler {
    color: rgba(0,0,0,.5);
    border-color: rgba(0,0,0,.0);
    margin-bottom: 15px;
    margin-top: 0;
}


/*****************************************************/
/******************HEADER/FOOTER*********************/
/***************************************************/
footer#footer {
	padding: 1rem!important;
	margin-bottom: 0px!important;
}

img.logo-footer {
    height: 65px;
}

header#header {
	padding: 1rem!important;
	background-color: var(--prime-c)!important;
}

.mod_pageimage {
    margin: 20px;
}
@media all and (max-width: 577px){
	.mod_pageimage {
	    margin: 15px;
	}
}
.mod_pageimage .image_container img {
	width: 100%;
	height: auto;
}

@media all and (max-width: 767.98px) {
	.px-2 {
	    padding-right: 1.5rem!important;
	    padding-left: 0rem!important;
	}
}
/*****************************************************/
/******************CONTENT ELEMENT*******************/
/***************************************************/
.ce--own h1,
.ce--own h2,
.ce--own h3 {
	color: var(--prime-c)!important;
	margin-bottom: 30px;
	margin-top: 0;
}

.prime-color-bg h1,
.prime-color-bg h2,
.prime-color-bg h3 {
	color: #fff!important;
}

img.coaching-img {
	max-width:100%;
	height: auto;
}

.text_center_color {
	Text-align: center;
}

.text_center_big {
    position: relative;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0 10%;
}

.flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.text_image_big_text {
	padding: 0.5em 4.5em 0.5em 0;
}

.responsive_herobanner-txt {
	position: absolute;
	padding: 10.5em 4.5em 10.5em 0;
}

.header .site-title {
    margin-bottom: 0.5em;
    font-size: 72px;
    font-size: 4.5rem;
}

.text_offer-hl h1,
.text_offer-hl h2,
.text_offer-hl h3,
.text_image_big_hl h1,
.text_image_big_hl h2,
.text_image_big_hl h3 {
    margin-bottom: 0.5em;
    font-size: 4.5rem;
}

@media all and (max-width: 991.98px) {
	.text_image_big_text {
	    padding: 15px;
	}
}

.responsive_herobanner-txt {
	font-size: 20px;
	font-weight: bold;
}

img.logo_on_banner {
    width: 70%;
    background: #fff;
    padding: 40px 70px 40px 70px;
}

.responsive_herobanner-txt h1,
.responsive_herobanner-txt h2,
.responsive_herobanner-txt h3 {
    margin-bottom: 0.5em;
    font-size: 72px;
    font-size: 4.5rem;
}

@media all and (max-width: 767.98px) {
	.text_offer-hl h2 {
		 font-size: 2.5rem;
	}
}

@media all and (min-width: 768px) and (max-width: 1199px) {
	.responsive_herobanner-txt h1,
	.responsive_herobanner-txt h2,
	.responsive_herobanner-txt h3 {
	    font-size: 2.5rem;
	}
	img.logo_on_banner {
	    width: 90%;
	    background: #fff;
	    padding: 25px 50px 25px 70px;
	}
}

@media all and (max-width: 767.98px) {
	.responsive_herobanner-txt h1,
	.responsive_herobanner-txt h2,
	.responsive_herobanner-txt h3 {
	    font-size: 1.5rem;
	    text-shadow: 0 1px 2px #666;
	}
	.responsive_herobanner-txt {
	    padding: 0px;
	    text-align: center;
	    display: block;
	    width: 100%;
	    position: relative;
	    top: 25px;
	    background: rgba(255,255,255, .6); 
	}
	img.logo_on_banner {
	    width: 80%;
	    background: none;
	    padding: 30px;
	}
}

.text_offer-txt p,
.text_image_big_shl {
    width: 75%;
    margin-bottom: 0;
    font-size: 21px;
    font-size: 1rem;
    line-height: 1.5em;
}

@media all and (max-width: 767.98px) {
	.text_image_big_text {
	    padding: 0;
	}
	.text_image_big_shl {
    	width: 100%;
	}
	.text_image_big_hl h2,
	.text_offer-hl h2 {
		 font-size: 2.5rem;
	}
	.text_offer-txt p {
		width: 100%;
	}

}

@media all and (max-width: 767px) {
	.container--own {
	    max-width: 540px;
	    padding-right: 12px;
	    padding-left: 12px;
	    margin-right: auto;
	    margin-left: auto;
	}
	
	.text_image_animation .text_image_animation_txt {order: 1!important; margin-bottom: 15px;}
	.text_image_animation .text_image_animation_img {order: 2!important;}
	
	
	.image_portrait {text-align: center;}
	.image_portrait img {width: 75%}
}


.responsive_herobanner {
    padding: 0 20px;
}

.responsive_herobanner-bg img.coaching-img-hb{
	width: 100%;
	height: auto;
}

.text_offer-tile {
    padding: 0.1em 2em 2em 2em;
    background: var(--second-c);
    width: 100%;
    margin-bottom: 25px;
}

.text_offer-txt p {
    color: #fff;
}

.async-bg {
	background: linear-gradient(to top, #FFFFFF 25%, var(--prime-c) 0)!important;
}	

h1.text_offer-tile-hl,
h2.text_offer-tile-hl,
h3.text_offer-tile-hl,
.text_offer-hl h1,
.text_offer-hl h2,
.text_offer-hl h3 {
	color: #fff!important;
}



a.readmore {
    color: #000;
    /*background: var(--prime-c);*/
    /*padding: 8px 16px 10px;*/
    /*border-radius: 32px;*/
    /*margin-bottom: 32px;*/
}

a.readmore img.readmore-arrow {
	width: 20px;
	height: auto;
	margin-left: 8px;
	transition: all 200ms;
}

a.readmore:hover img.readmore-arrow {
	margin-left: 16px;
}

.ce_text.center-text {
	text-align: center;
}

.modal-footer button.btn.btn-secondary {
    background: var(--third-c);
    border-radius: 25px;
    padding: 7px 18px;
    border-color: var(--third-c);
}

[id^="angebot-id-"] .modal-header,
[id^="modaltext-id-"] .modal-header {
	align-items: flex-start;
}

/*****************************************************/
/******************MODUL ANGEBOTE*******************/
/***************************************************/
/*@media all and (max-width: 767px) {*/
/*	.mod_xangebote_list {*/
		
/*	}*/
/*}*/

/*****************************************************/
/******************COOKIE CONSENT********************/
/***************************************************/
a.cc-btn.cc-dismiss {
  -webkit-transition: background-color .5s ease-out;
  -moz-transition: background-color .5s ease-out;
  -o-transition: background-color .5s ease-out;
  transition: background-color .5s ease-out;
}
a.cc-btn.cc-dismiss:hover {
 background-color: var(--prime-c);
}

a.cc-link {
    padding-left: 0;
}

@media all and (min-width: 768px) {
	[class^="responsive_herobanner-bg-"] {
	    display: flex;
	    justify-content: flex-start;
	    align-items: center;
	    /*height: 85vh;*/
	    position: relative;
	}
	
	
	.banner-image-tile {
	    max-height: 100%;
	    display: flex;
	    align-items: center;
	}
	
	.logo_on_banner {
	    max-width: 100%;
	    height: auto;
	}
}


/*****************************************************/
/******************MODUL HeroBanner *****************/
/***************************************************/
.responsive_herobanner-txt {
	position: absolute;
	padding: 10.5em 4.5em 10.5em 0;
}

.responsive_herobanner-txt {
	font-size: 20px;
	font-weight: bold;
}

.responsive_herobanner-txt h1,
.responsive_herobanner-txt h2,
.responsive_herobanner-txt h3 {
    margin-bottom: 0.5em;
    font-size: 72px;
    font-size: 4.5rem;
}

img.logo_on_banner {
    width: 70%;
    background: #fff;
    padding: 40px 70px 40px 70px;
}

@media all and (min-width: 768px) and (max-width: 1199px) {
	.responsive_herobanner-txt h1,
	.responsive_herobanner-txt h2,
	.responsive_herobanner-txt h3 {
	    font-size: 2.5rem;
	}
	img.logo_on_banner {
			width: 90%;
			background: #fff;
			padding: 25px 50px 25px 70px;
	}
}

@media all and (max-width: 767.98px) {
	.responsive_herobanner-txt h1,
	.responsive_herobanner-txt h2,
	.responsive_herobanner-txt h3 {
	    font-size: 1.5rem;
	    text-shadow: 0 1px 2px #666;
	}
	.responsive_herobanner-txt {
	    padding: 0px;
	    text-align: center;
	    display: block;
	    width: 100%;
	    position: relative;
	    top: 25px;
	    background: rgba(255,255,255, .6);
	}
	img.logo_on_banner {
			width: 80%;
			background: none;
			padding: 30px;
	}
}

.responsive_herobanner {
    padding: 0 20px;
}

.responsive_herobanner-bg img.coaching-img-hb{
	width: 100%;
	height: auto;
}

@media all and (min-width: 768px) {
	[class^="responsive_herobanner-bg-"] {
	    display: flex;
	    justify-content: flex-start;
	    align-items: center;
	    /*height: 85vh;*/
	    position: relative;
	}

	.banner-image-tile {
	    max-height: 100%;
	    display: flex;
	    align-items: center;
	}

	.logo_on_banner {
	    max-width: 100%;
	    height: auto;
	}
}
/**************Update Typografie*****************/
/*
@media (min-width: 992px) {
	:root {
	    --bs-body-font-size: 1.2rem;
	}
    .col-lg-8 {
        flex: 0 0 auto;
        width: 80%;
    }
    .ce--own h1 {
		font-size: 3.5rem !important;
		font-weight: 500 !important;
	}
	.ce--own h2 {
		font-size: 3rem !important;
		font-weight: 500 !important;
	}
}
*/

/*****************************************************/
/************* MODUL Text Image Big *****************/
/***************************************************/
.coaching-img-big {
	width: 100%;
	height: 100%;
	height: -webkit-fill-available;
	object-fit: cover;
}
.text_image_big picture {
	display: block;
	width: 100%;
	height: 100%;
	
}

@media (min-width: 575px) and (max-width: 991.98px) {
    .text_image_big-bg,
    .coaching-img-big {
        height: 33vh;
        width: 100%;
    }
    
}