@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i&display=swap');



/* <---- MAIN ----> */
html {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
}

body  {
    padding: 0;
    margin: 0;
    width: 100%;
	height: 100% !important;
    font-family: 'Nunito', sans-serif;
    font-weight: 100;
    font-size: 18px;
    line-height: 140%;
    color: #646464;
	overflow-x: hidden;
	overflow-y: scroll;
	background: white;
}

@media (max-width: 767px) {
	body {
        font-size: 16px;
    }  
}


h1, .h1  {
    font-weight: bold;
    color: #e4022e;
    font-size: 3rem;
	margin: 0;
    text-transform: uppercase;
	position: relative;
	line-height: 1;
	padding: 0.5rem 0;
	z-index: 4;
}


h2, .h2  {
    font-weight: bold;
    color: #e4022e;
	font-size: 2rem;
    text-transform: uppercase;
	margin-bottom: 1rem;
	word-wrap: normal;
}

h2:after, .h2:after {
    font-family: "Font Awesome 5 Pro"; 
    font-weight: 900;
    content:"\f067";
	font-size: 60%;
	display: inline-block;
	position: absolute;
	margin-top: -0.5rem;
	margin-left: 0.25rem;
}


h3, .h3  {
    color: #e4022e;
    font-weight: 700;
    font-size: 1.5rem;
}


h4, .h4  {
    font-weight: bold;
	font-size: 1.5rem;
}

h5, .h5  {
    font-size: 1.25rem;
}

.container-red h1, .container-red .h1, .container-red h2, .container-red .h2, .container-red h3, .container-red .h3, .container-red h4, .container-red .h4, .container-red h5, .container-red .h5 {
	color: white;
}


@media (max-width: 767px) {
	body, .body {
		font-size: 16px;
	}
	
   h1, .h1  {
    font-size: 1.6rem;
	}

	h1:after, .h1:after {
		font-size: 60%;
		margin-top: -0.4rem;
		margin-left: 0.5rem
	}


	h2, .h2  {
		font-size: 1.25rem;
		margin-bottom: 0.5rem
	}
	
	h2::after, .h2::after {
		margin-top: -0.4rem;
		margin-left: 0.1rem;
	}
	

	h3, .h3  {
		font-size: 1.125rem;
	}


	h4, .h4  {
		font-size: 1.125rem;
	}

	h5, .h5  {
		font-size: 1rem;
	}
}



/* <---- Container ----> */
@media (min-width: 1320px) {	
	.container.container-xxl {
		max-width: 1320px;
	}
}

.container-red {
	background: #e4022e;
	color: whitesmoke;
}


.container-gray {
	background: whitesmoke;
}





/* <---- LINKS ----> */
a, a:visited, a:active, a:focus { 
    color: #e4022e;
	text-decoration: none;
    transition: all 0.5s ease-in-out;
}

a:hover {
    color: black;
    text-decoration: none;
    transition: all 0.5s ease-in-out;
}

.container-red a, .container-red a:visited, .container-red a:active, .container-red a:focus { 
    color: whitesmoke;
	text-decoration: none;
    transition: all 0.5s ease-in-out;
}

.container-red a:hover {
    color: white;
    text-decoration: none;
    transition: all 0.5s ease-in-out;
}




ul.download {
	list-style: none;
	padding-left: 21px;
	margin-bottom: 0;
}

ul.download li {
	margin-bottom: 0.5rem;
}

ul.download li::before {
	font-family: "Font Awesome 5 Pro"; 
    font-weight: 900;
    content:"\f067";
	font-size: 60%;
	display: inline-block;
	position: absolute;
	margin-left: -1rem;
}



/* <---- Section ----> */
section {
	padding-top: 6rem;
	padding-bottom: 6rem;
	background: white;
	position: relative;
}

@media (max-width: 991px) {	
	section {
		padding-top: 2rem;
		padding-bottom: 4rem;
	}
}

@media (max-width: 767px) {
	section {
		padding-top: 2rem;
		padding-bottom: 4rem;
	}
}

section.first {
	padding-bottom: 2rem;
}

section.content {
	padding-top: 2rem;
}

section.map {
	min-height: unset;
	padding-top: 0;
	padding-bottom: 0;
}


/* <---- Karte Einbinden ----> */
.map .embed-responsive::before {
    padding-top: 30%;
}

@media (max-width: 991px) {	
 	.map .embed-responsive::before {
		padding-top: 100%;
	}
}


/* <---- Breadcromp ----> */
.breadcrumb {
    padding: 0;
	margin-top: -5rem;
    list-style: none;
    background-color: transparent;
    border-radius: 0;
	font-size: 65%;
}

@media (max-width: 991px) {	
	.breadcrumb {
		display: none;
	}
}




/* <---- CONTENT >>> Standard Section ----> */

.section-red {
	background: #e4022e;
	color: white;
}

.section-red h1, .section-red .h1, .section-red h2, .section-red .h2, .section-red h3, .section-red .h3, .section-red h4, .section-red .h4, .section-red h5, .section-red .h5 {
	color: white;
}

.section-grey{
	background: #f0f0f0;
}

.section-standard {
    padding: 8rem 0;
    border: 0;
}

@media screen and (max-width: 991px) {
    .section-standard {
        padding: 6rem 0;
    }
}

@media screen and (max-width: 576px) {
    .section-standard {
		padding: 4rem 0;
    }
}





/* <---- Image Box ----> */
.img-box {
    position: relative;
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    overflow: hidden;
	margin-bottom: 1rem;
	border-radius: 0;
	color: white;
	background: white;
	border-bottom: 5px solid #e4022e;
}

.container-red .img-box {
	border-bottom: 5px solid white;
}


.img-box::before {
    padding-top: 56.25%;
    display: block;
    content: "";
}

.img-box-1_1::before {
    padding-top: 100%;
    display: block;
    content: "";
}


.img-box a {
	display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}

.img-box a .overlay, .img-box a:active .overlay, .img-box a:visited .overlay {
	height: 100%;
    width: 100%;
    background: rgba(249,249,249,0);
	border-radius: 0;	
    position: absolute;
	transition: all 0.5s ease-in-out;
}

.img-box a:hover .overlay, .img-box a:focus .overlay {
    background: rgba(249,249,249,0.7);
}

.img-box a .overlay .text, .img-box a:active .overlay .text, .img-box a:visited .overlay .text {
	color: #e30613;
    z-index: 200;
	font-size: 2rem;
    position: absolute;
	top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	opacity: 0;
	transition: all 0.5s 0.5s ease-in-out;
	background: white;
	width: 3rem;
	height: 3rem;
	text-align: center;
	padding: 0.5rem 0;
	border-radius: 100%;
}

.img-box a:hover .overlay .text, .img-box a:focus .overlay .text {
    opacity: 1;
}


.img-box img {
    position: absolute;
    width: 101%;
    height: 101%;
	min-height: 100%;
	min-width: 101%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	object-fit: cover;
}

.img-box img.logo {
	min-height: unset;
	min-width: unset;
	width: auto;
    height: auto;
	max-width: 80%;
    max-height: 80%;
}

.img-box img.page {
	min-height: unset;
	min-width: unset;
	width: auto;
    height: auto;
	max-width: 95%;
    max-height: 95%;
}

.carousel-row .col {
	padding: 0;
}


.carousel-row .col .img-carousel .item,
.carousel-row .col .links-carousel .item {
	margin: 0 15px;
}

@media (max-width: 767px) { 
	.carousel-row .col .img-carousel .item,
.carousel-row .col .links-carousel .item {
		margin: 0 7.5px;
	}
}


.carousel-row .col .img-box,
.carousel-row .col .links-box{
	margin-bottom: 0;
}





/* <---- Navbar ----> */
.navbar {
	z-index: 10;
	padding: .5rem 2rem 1.25rem;
	border-top: 2px solid #e4022e;
	transition: all 0.5s ease-in-out;
}

@media (max-width: 1199px) {	
	.navbar {
		padding: 2rem 0 1.25rem;
	}
}

@media (max-width: 767px) { 
	.navbar {
		padding: 1rem 0 0.75rem 0;
	}
}

.navbar.nav-scroll.nav-down, .navbar.nav-down-fullscreen {
	background: white;
}


#navbar.nav-up {
    top: -100%;
}

.navbar .nav-item {
	display: inline-block;
}

.navbar .navbar-nav {
	list-style:none;
	margin-top: 0.75rem;
}

.navbar .top-navbar .navbar-nav {
	margin-top: 0;
}

.navbar li.nav-item {
	margin: 0 .25rem;
}





.navbar a.nav-link, .navbar a.nav-link:active, .navbar a.nav-link:visited, .navbar a.nav-link:focus, .navbar span.nav-link  {
	text-decoration: none;
	color: white;
	font-weight: 100;
	transition: all 0.5s ease-in-out;
	font-size: 20px;
	padding: .75rem .75rem;
}

@media (max-width: 1199px) {	
	.navbar a.nav-link, .navbar a.nav-link:active, .navbar a.nav-link:visited, .navbar a.nav-link:focus, .navbar span.nav-link  {
		font-size: 16px;
		padding: .75rem .25rem;
	}
}

.navbar .top-navbar li:last-child a.nav-link {
	margin-right: -.4rem;
}



.navbar .top-navbar a.nav-link, .navbar .top-navbar a.nav-link:active, .navbar .top-navbar a.nav-link:visited, .navbar .top-navbar a.nav-link:focus, .navbar .top-navbar span.nav-link  {
	text-decoration: none;
	color: white;
	font-weight: 100;
	transition: all 0.5s ease-in-out;
	font-size: 11px;
	padding: .15rem .15rem;
}

@media (max-width: 1199px) {	
	.navbar .top-navbar a.nav-link, .navbar .top-navbar a.nav-link:active, .navbar .top-navbar a.nav-link:visited, .navbar .top-navbar a.nav-link:focus, .navbar .top-navbar span.nav-link  {
		font-size: 9px;
		padding: .25rem .25rem;
	}
}


.navbar.nav-scroll a.nav-link, .navbar.nav-scroll a.nav-link:active, .navbar.nav-scroll a.nav-link:visited, .navbar.nav-scroll a.nav-link:focus, .navbar .top-navbar span.nav-link  {
	color: #9d9d9c;
}

.navbar.nav-down-fullscreen a.nav-link, .navbar.nav-down-fullscreen a.nav-link:active, .navbar.nav-down-fullscreen a.nav-link:visited, .navbar.nav-down-fullscreen a.nav-link:focus, .navbar .top-navbar span.nav-link  {
	color: #9d9d9c;
}


.navbar a.nav-link:hover{
	text-decoration: none;
	color: #e4022e;
}


.navbar .navbar-brand {
	padding-top: 1rem;
	padding-bottom: 1rem;
}



.navbar .navbar-brand a.logo {
	display: inline-block;
}

#navbar-scroll .navbar-brand img {
	max-width: 75%;
}


@media (max-width: 1199px) {	
	.navbar .navbar-brand img {
		max-width: 75%;
	}
	#navbar-scroll .navbar-brand img {
		max-width: 50%;
	}
}

#navbar-scroll.nav-up {
	top: -100px;
}

#navbar-scroll.nav-down, #navbar-scroll.nav-down-fullscreen {
	top: 0px;
}


.navbar button {
    background: transparent;
    border: 0;
    -webkit-appearance: button;
    padding: 0.5rem 0.75rem;
	outline: 0;
	margin-right: -.75rem;
	margin-top: 0.75rem;
}


.navbar .nav-toggle > .icon-bar {
    width: 33px;
    height: 3px;
    background: white;
    display: block;
    margin: 6px 0;
    border-radius: 4px;
    transform: rotate(0);
    transition: all 0.5s ease-in-out;
	-webkit--webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
}

.navbar.nav-scroll .nav-toggle > .icon-bar {
	background: #9d9d9c;
}

.navbar .nav-toggle > .top-bar{
    transform: rotate(0);
	-moz-transform: rotate(0);
	-webkit-transform: rotate(0);
    transform-origin: 10% 10%;
	-moz-transform-origin: 10% 10%;
	-webkit-transform-origin: 10% 10%;
}

.navbar .nav-toggle > .middle-bar{
  	opacity: 1;
    width: 20px;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;    
}

.navbar.nav-toggle > .bottom-bar {
    transform: rotate(0);
	-moz-transform: rotate(0);
	-webkit-transform: rotate(0);
    transform-origin: 10% 90%;
	-moz-transform-origin: 10% 90%;
	-webkit-transform-origin: 10% 90%;
}



.navbar .nav-toggle.is-active > .top-bar {
	background: #e4022e;
	width: 33px;
	height: 3px;
    transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
    transform-origin: 10% 10%;
	-moz-transform-origin: 10% 10%;
	-webkit-transform-origin: 10% 10%;
    transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;  
}

.navbar .nav-toggle.is-active > .middle-bar {
    opacity: 1;
	background: #e4022e;
    width: 0px;
    transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
}

.navbar .nav-toggle.is-active > .bottom-bar {
	background: #e4022e;
	width: 33px;
	height: 3px;
    transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
    transform-origin: 10% 90%;
	-moz-transform-origin: 10% 90%;
	-webkit-transform-origin: 10% 90%;
    transition: background 0.5s ease-in-out, transform 0.5s ease-in-out, width 0.5s ease-in-out;
	-webkit-transition: background 0.5s ease-in-out, transform 0.5s ease-in-out, width 0.5s ease-in-out;
	-moz-transition: background 0.5s ease-in-out, transform 0.5s ease-in-out, width 0.5s ease-in-out;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;   
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out; 
}




/* <---- Fullscreen Nav ----> */
.fullscreen-nav {
	position: fixed;
	height: 0;
	width: 100%;
	overflow: hidden;
	top: 0;
	background: #e4022e;
	z-index: 9;
	transition: all 0.5s ease-in-out;
	color: white;
}

.fullscreen-nav h1, .fullscreen-nav h2, .fullscreen-nav h3, .fullscreen-nav h4, .fullscreen-nav h5, .fullscreen-nav h6, .fullscreen-nav a {
	color: white;
} 

.fullscreen-nav a:hover {
	color: #9d9d9c;	
}


.fullscreen-nav.open {
	height: 100%;
}

.fullscreen-nav .navbar-nav li {
	border-bottom: 1px solid white;
}


.fullscreen-nav .navbar-nav li:last-child {
	border-bottom: 0;
}


.fullscreen-nav .navbar-nav a.nav-link, .fullscreen-nav .navbar-nav a.nav-link:active, .fullscreen-nav .navbar-nav a.nav-link:visited, .fullscreen-nav .navbar-nav a.nav-link:focus  {
	text-decoration: none;
	color: white;
	font-weight: 600;
	transition: all 0.5s ease-in-out;
	font-size: 18px;
	padding: .75rem 0;
	padding-left: 1rem;
	background: transparent;
	border: 0;
}

.fullscreen-nav .navbar-nav a.nav-link:hover{
	text-decoration: none;
	color: #9d9d9c;
}


.fullscreen-nav .navbar-nav li a.nav-link:before, .fullscreen-nav .navbar-nav li a.nav-link:before {
    font-family: "Font Awesome 5 Pro"; 
    font-weight: 900;
    content:"\f067";
	font-size: 60%;
	display: inline-block;
	position: absolute;
	margin-left: -1rem;
}

.fullscreen-nav .navbar-nav li a.nav-link[aria-expanded='true']:before, .fullscreen-nav .navbar-nav li a.nav-link[aria-expanded='true']:before {
    content:"\f068";
}




.fullscreen-nav .navbar-nav li ul {
	padding: 0;
	margin: 0;
	list-style: none;
	margin-bottom: 1rem;
}

.fullscreen-nav .navbar-nav li ul li {
	border-bottom: 0;
	margin: 0;
	display: flex;
}


.fullscreen-nav .navbar-nav li ul li a, .fullscreen-nav .navbar-nav a.nav-link ul li a:active, .fullscreen-nav .navbar-nav a.nav-link ul li a:visited, .fullscreen-nav .navbar-nav a.nav-link ul li a:focus  {
	text-decoration: none;
	color: white;
	font-weight: 200;
	transition: all 0.5s ease-in-out;
	font-size: 18px;
	padding: .25rem 0;
	padding-left: 1rem;
	margin: 0;
	background: transparent;
	border: 0;
	width: 100%;
}

.fullscreen-nav .navbar-nav li ul li  a:hover{
	text-decoration: none;
	color: #9d9d9c;
}





.fullscreen-nav a.nav-social, .fullscreen-nav a.nav-social:active, .fullscreen-nav a.nav-social:visited, .fullscreen-nav a.nav-social:focus   {
    width: 45.2px;
	height: 45.2px;
	display: block;
	background: white;
	text-align: center;
	border-radius: 100%;
	padding: 5px 1px;
	line-height: 1;
	border: 1px solid white;
}

.fullscreen-nav a.nav-social i {
	line-height: 35.2px;
	font-size: 22px;
}

.fullscreen-nav .sub-nav li {
	display: inline-block;
	margin: 0.25rem;
	
}

.fullscreen-nav .sub-nav li::after {
    content: "●";
    padding: 0;
    margin-left: 0.75rem;
}

.fullscreen-nav .sub-nav li:last-child::after {
    content: "";
    margin-left: 0;
} 

.fullscreen-nav .sub-nav a, .fullscreen-nav .sub-nav a:active, .fullscreen-nav .sub-nav a:visited, .fullscreen-nav .sub-nav a:focus  {
	color: white;
}

.fullscreen-nav .sub-nav a:hover{
	opacity: .75;
}

.fullscreen-nav .show-delay-1, .fullscreen-nav .show-delay-2, .fullscreen-nav .show-delay-3 {
	opacity: 0;
	transition: all 0.5s ease-in-out;
}

.fullscreen-nav.open .show-delay-1 {
	opacity: 1;	
	ebkit-transition: all .8s ease-in-out .4s;
	-moz-transition: all .8s ease-in-out .4s;
	-o-transition: all .8s ease-in-out .4s;
	-ms-transition: all .8s ease-in-out .4s;
	transition: all .8s ease-in-out .4s;
}


.fullscreen-nav.open .show-delay-2 {
	opacity: 1;	
	ebkit-transition: all .8s ease-in-out .8s;
	-moz-transition: all .8s ease-in-out .8s;
	-o-transition: all .8s ease-in-out .8s;
	-ms-transition: all .8s ease-in-out .8s;
	transition: all .8s ease-in-out .8s;
}


.fullscreen-nav.open .show-delay-3 {
	opacity: 1;	
	ebkit-transition: all .8s ease-in-out 1.2s;
	-moz-transition: all .8s ease-in-out 1.2s;
	-o-transition: all .8s ease-in-out 1.2s;
	-ms-transition: all .8s ease-in-out 1.2s;
	transition: all .8s ease-in-out 1.2s;
}


.fullscreen-nav a.nav-social, .fullscreen-nav a.nav-social:active, .fullscreen-nav a.nav-social:visited, .fullscreen-nav a.nav-social:focus   {
    width: 45.2px;
	height: 45.2px;
	display: block;
	background: white;
	text-align: center;
	border-radius: 100%;
	padding: 3px 0px;
	line-height: 1;
	border: 1px solid white;
}

.fullscreen-nav a.nav-social:hover {
	background: #e4022e;
}

.fullscreen-nav a.nav-social i {
	line-height: 35.2px;
	font-size: 22px;
	color: #e4022e;
	transition: all 0.5s ease-in-out;
}

.fullscreen-nav a.nav-social:hover i {
	color: white;
}



/* <---- Jumbotron ----> */
section.jumbotron {
    background: transparent;
	padding: 0;
	margin: 0;
	overflow: hidden;
	display: block;
	position: relative;
	height: 100%;
	border-radius: 0;
}

section.jumbotron #jumbotron-video {
	z-index: 5;
}

section.jumbotron #jumbotron-video .topshadow {
    display: block;
    position: absolute;
    height: 50%;
    top: 0;
    width: 100%;
    background: -moz-linear-gradient(top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000',GradientType=0 );
    z-index: 2;

}

section.jumbotron #jumbotron-video .bottmshadow {
    display: block;
    position: absolute;
    height: 50%;
    bottom: 0;
    width: 100%;
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.75) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.75) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.75) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 );
    z-index: 2;
}


section.jumbotron .owl-carousel {
    height: 100%;
    overflow: hidden;
    border-bottom: 0;
}

section.jumbotron .owl-carousel .owl-stage-outer, 
section.jumbotron .owl-carousel .owl-stage,
section.jumbotron .owl-carousel .owl-item {
    height: 100%;
}


section.jumbotron .owl-carousel .item-outer {
    position: relative;
    display: block;
    min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;
    padding: 0;
    overflow: hidden;
}

section.jumbotron .owl-carousel .item-inner-img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;
    border: 0;
    overflow: hidden;
}



section.jumbotron .owl-carousel .item-inner-img img {
    position: absolute;
    min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	transition: transform 8s ease 2s;
}

section.jumbotron .owl-carousel .active .item-inner-img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
    transition: transform 8s ease;
}

section.jumbotron .owl-carousel .owl-animated-out .item-inner-img img {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
}



section.jumbotron .owl-carousel .item-inner-img .item-inner-topshadow {
    display: block;
    position: absolute;
    height: 60%;
    top: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.5+0,0+100 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
    z-index: 2;
}


section.jumbotron .owl-carousel .item-inner-img .item-inner-bottmshadow {
    display: block;
    position: absolute;
    height: 60%;
    bottom: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.5+100 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 ); /* IE6-9 */
    z-index: 2;
}

section.jumbotron .owl-carousel .owl-item .item-inner-caption {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 3;
}

section.jumbotron .owl-carousel .owl-item .item-inner-caption > .container-fluid, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption > .container, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption > .container-fluid > .row, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption > .container > .row  {
    height: 100%;
}

section.jumbotron .owl-carousel .owl-item .item-inner-caption .item-textbox {
    padding: 4rem 2rem 0;
	color: white;
	font-size: 20px;
	text-shadow: 0px 0px 4px rgba(51,51,51,0.4);
  }

@media screen and (max-width: 767px) {
    section.jumbotron .owl-carousel .owl-item .item-inner-caption .item-textbox {
        padding: 3rem 0 0;
		font-size: 16px;
      }
}

section.jumbotron .owl-carousel .owl-item .item-inner-caption, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption p {
    margin: 0; 
    padding: 0;
    line-height: 120%;
}


section.jumbotron .owl-carousel .owl-item .item-inner-caption h1, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption h2, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption h3, 
section.jumbotron .owl-carousel .owl-item .item-inner-caption p {
	color: white;
	margin: 0;
}


section.jumbotron .owl-carousel .owl-item.active .item-inner-caption h1 {
    animation: 1s .4s fadeInUp both;
}

section.jumbotron .owl-carousel .owl-item.active .item-inner-caption h2 {
    animation: 0.8s 1s fadeIn both;
}


section.jumbotron .owl-carousel .owl-item.active .item-inner-caption h3 {
    animation: 0.8s 1.2s fadeIn both;
}


section.jumbotron .owl-carousel .owl-item.active .item-inner-caption p {
    animation: .8s 1.4s fadeIn both;
}


section.jumbotron .owl-carousel .owl-item.active .item-inner-caption small {
    animation: .8s 1.4s fadeIn both;
}

section.jumbotron .owl-carousel .owl-item.active .item-inner-caption a:last-of-type {
    animation: .8s 1.6s fadeIn both;
}



section.jumbotron .caption { 
	position: absolute; 
	width: 100%;	
	padding: 2rem 0;
	bottom: 0;
	background: rgba(0,0,0,.50);
	left: 0;
	overflow: hidden;
	z-index: 4;
	min-height: 10%;
}


section.jumbotron .caption .highlight-carousel { 
	position: relative; 
	display: block;
	width: 100%;
}



section.jumbotron .caption .highlight-carousel .owl-item {
    padding: 0 15px;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box { 
	border-radius: 0.5rem;
	margin: 0;
	background: rgba(0,0,0,1);
	border: 0px;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box .overlay { 
	display: table;
	position: absolute;
	bottom: 0;
	height: auto;
	padding: 1rem 1rem;
	background: rgba(0,0,0,.60);
	width: 100%;
	max-width: 100%;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box .overlay .headline { 
	line-height: 1;
	font-size: 20px;
	transition: all 0.5s ease-in-out;
	display: table-cell;
	word-wrap: anywhere;
	vertical-align: middle;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box .overlay .button { 
	display: table-cell;
	word-wrap: break-word;
	width: 45px;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box a img { 
	transition: all 0.5s ease-in-out;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box .overlay .btn-outline-light {
    transition: all 0.5s ease-in-out;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box:hover .overlay { 
	background: rgba(0,0,0,.75);
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box:hover .overlay .headline { 
	color: white;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box:hover .overlay .btn-outline-light {
    color: white;
    background-color: #e4022e;
    border-color: #e4022e;
}

section.jumbotron .caption .highlight-carousel .owl-item .img-box:hover a img { 
	-webkit-transform: translate(-50%, -50%) scale(1.1);
	-moz-transform: translate(-50%, -50%) scale(1.1);
	transform: translate(-50%, -50%) scale(1.1);
	transition: all 0.5s ease-in-out;
}



section.jumbotron .scroll-down {
    position: absolute;
    bottom: 30px;    
    height: 115px;
    width: 100%;
    z-index: 5;
}


section.jumbotron .scroll-down a {
    padding-top: 100px;
    position: absolute;
}

section.jumbotron .scroll-down a span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50px;
    height: 50px;
    margin-left: -25px;
    border-left: 4px solid white;
    border-bottom: 4px solid white;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: sdb07 2s infinite;
    animation: sdb07 2s infinite;
    opacity: 0;
    box-sizing: border-box;
    transition: all 0.5s ease-in-out;
}

section.jumbotron .scroll-down a:hover span {
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

section.jumbotron .scroll-down a span:nth-of-type(1) {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}

section.jumbotron .scroll-down a span:nth-of-type(2) {
    top: 25px;
    -webkit-animation-delay: .15s;
    animation-delay: .15s;
}

section.jumbotron .scroll-down a span:nth-of-type(3) {
    top: 50px;
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
}

@-webkit-keyframes sdb07 {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes sdb07 {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}





/* <---- Formular ----> */
form {
	margin: 0;
	padding: 0;
}

label {
    display: block;
    overflow: hidden;
    height: 0px;
    width: 0px;
	margin: 0;
	padding: 0;
}

.custom-checkbox label {
	display: block;
    overflow: unset;
    height: auto;
    width: 100%;
	margin: 0;
	padding: 0;
	font-size: 70%;
	line-height: 1.4;
}

.custom-checkbox .custom-control-label::before, .custom-checkbox .custom-control-label::after {
    top: 0;
}


form .form-row .form-group {
	margin-bottom: 0.5rem;
}

form .form-row:last-child .form-group {
	margin-bottom: 0;
}

.form-control {
    color: #050505;	
    border-color: darkgray;
	transition: all 0.5s ease-in-out;
	border-radius: 0;
	background: transparent;
}

.form-control::placeholder {
    color: lightgray;
    opacity: 1;
}

.form-control:focus {
    color: #050505;
    background-color: white;
    border-color: #e4022e;
    outline: 0;
    box-shadow: 0 0 0 0 rgba(105,22,39,.25);
}

.input-group > .custom-select:not(:last-child), .input-group > .form-control:not(:last-child) {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

#formCours .input-group > .form-control, #formContact .input-group > .form-control, #formMaillist .input-group > .form-control, #formMember .input-group > .form-control, #formWin .input-group > .form-control, #formReservationEvent .input-group > .form-control, #formPromotion .input-group > .form-control, #formCertificates .input-group > .form-control {
    border-radius: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #e4022e;
    background-color: #e4022e;
	box-shadow: 0 0 0 0 rgba(105,22,39,.25);
}

.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0 rgba(105,22,39,.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #e4022e;
}

.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label, .input-group > .custom-select:focus, .input-group > .form-control:focus {
    z-index: 1;
}

#formCours .input-group > .input-group-text, #formContact .input-group > .input-group-text, #formMaillist .input-group > .input-group-text, #formMember .input-group > .input-group-text, #formWin .input-group > .input-group-text, #formReservationEvent .input-group > .input-group-text, #formPromotion .input-group > .input-group-text , #formCertificates .input-group > .input-group-text {
    z-index: 2;
}



#formCertificates .form-check { 
	padding-left: 0; 
}

#formCertificates .input-group > .input-group-text { 
	position: absolute; 
	height: 100%; 
	display: flex; 
	align-items: center; 
	z-index: 10; 
	background: transparent; 
	border: 0; 
}

 
#formCertificates .input-group > .form-control { 
	border-radius: 0; 
}

#formCertificates #certificatesEmail { 
	padding-left: 50px; 
}

button.close {
    outline: 0;
}


/* <---- Header ----> */
section.header {
	padding: 0;
	margin: 0;
	overflow: hidden;
	display: block;
	position: relative;
	height: 50%;
	border-radius: 0;
	background: rgba(0,0,0,1);
}

section.header img {
    position: absolute;
    width: 101%;
    height: 101%;
	min-height: 100%;
	min-width: 101%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	object-fit: cover;
}


section.header .topshadow {
    display: block;
    position: absolute;
    height: 60%;
    top: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.5+0,0+100 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
    z-index: 2;
}


section.header .bottmshadow {
    display: block;
    position: absolute;
    height: 60%;
    bottom: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.5+100 */
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000',GradientType=0 ); /* IE6-9 */
    z-index: 2;
}


section.header .rightshadow {
    display: block;
    position: absolute;
    height: 100%;
    bottom: 0;
	right: 0;
    width: 60%;    
	background: rgba(0,0,0,0);
	background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%);
	background: -webkit-gradient(left top, right top, color-stop(0%, rgba(0,0,0,0)), color-stop(100%, rgba(0,0,0,0.9)));
	background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%);
	background: -o-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%);
	background: -ms-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%);
	background: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,0.9) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000', GradientType=1 );
    z-index: 2;
}

section.header .headline {
    position: absolute;
    bottom: 0;
    width: 100%;
	z-index: 4;
}


section.header .overlap-box.left {
    position: absolute;
    left: 0;
	bottom: 0;
	background: rgba(255,255,255,0.75);
    width: 50%;
	height: 100%;
	z-index: 3;
}

@media screen and (max-width: 991px) {
	section.header .overlap-box.left {
		background: rgba(255,255,255,0.75);
		width: 100%;
	}
}






/* <---- Buttons ----> */
.btn-primary {
    background-color: #e4022e;
    border-color: #e4022e;
	color: white !important;
	transition: all 0.5s ease-in-out;
}

.btn-primary:hover {
    background-color: transparent;
    border-color: #e4022e;
	color: #e4022e !important;
}


.btn-primary.focus, .btn-primary:focus {
    background-color: #e4022e;
    border-color: #e4022e;
	color: white;
    box-shadow: 0 0 0 0rem rgba(38,143,255,.5);
}

.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle {
    background-color: #e4022e;
    border-color: #e4022e;
	box-shadow: 0 0 0 0rem rgba(38,143,255,.5);
}

.btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show > .btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .0rem rgba(38,143,255,.5);
}


.btn-outline-primary {
    background-color: #e4022e;
    border-color: white;
	color: white !important;
	transition: all 0.5s ease-in-out;
}

.btn-outline-primary:hover {
    background-color: white;
    border-color: white;
	color: #e4022e !important;
}


.btn-outline-primary.focus, .btn-outline-primary:focus {
    background-color: #e4022e;
    border-color: white;
	color: white;
    box-shadow: 0 0 0 0rem rgba(38,143,255,.5);
}

.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show > .btn-outline-primary.dropdown-toggle {
    background-color: #e4022e;
    border-color: white;
	box-shadow: 0 0 0 0rem rgba(38,143,255,.5);
}

.btn-outline-primary:not(:disabled):not(.disabled).active:focus, .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .0rem rgba(38,143,255,.5);
}





/* <---- Content Social ----> */
.content-social {
	padding: 0;
	margin: 0;
	transition: all 0.5s ease-in-out;
}

.content-social li {
	display: inline-block;
	margin: 0.25rem 0 0.25rem 0rem;
}

.content-social a.nav-social, .content-social a.nav-social:active, .content-social a.nav-social:visited, .content-social a.nav-social:focus   {
    width: 38px;
	height: 38px;
	display: block;
	background: #e4022e;
	text-align: center;
	border-radius: 100vh;
	padding: 3px 1px;
	line-height: 1;
	color: white;
	border: 1px solid #e4022e;
	transition: all 0.5s ease-in-out;
}

.content-social a.nav-social.custom {
    width: auto;
    padding: 5px 10px;
    line-height: 1.5;
}

.content-social a.nav-social i {
	line-height: 35.2px;
	font-size: 22px;
}

.content-social a.nav-social {
	width: 39.2px;
	height: 39.2px;
}

.content-social a.nav-social i {
	line-height: 29.2px;
	font-size: 16px;
}

.content-social a.nav-social:hover{
	text-decoration: none;
	color: #e4022e;
	background-color: white;
	border-color: #e4022e;
}






/* <---- Timeline ----> */
.timeline {
	position: relative;
	width: 100%;
	margin: 0px auto;
	padding: 20px 0;
	list-style-type: none;
}


.timeline:before {
	position: absolute;
	left: 50%;
	top: 0;
	content: " ";
	display: block;
	width: 4px;
	height: 100%;
	margin-left: -2px;
	background: #e4022e;
	z-index: 0;
}

@media (max-width: 860px) {
	.timeline:before {
		margin-left: -4px;
		width: 8px;
	}
}


.timeline li {
	padding: 1em 0;
}

@media (max-width: 860px) {
	.timeline li {
		padding: 2em 0;
	}
}

.timeline li::after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.direction-l {
	position: relative;
	width: 50%;
	float: left;
	text-align: right;
	padding-right: 30px;
}

@media (max-width: 860px) {
	.direction-l {
		float: none;
		width: 100%;
		text-align: center;
		padding-right: 0;
	}
}


.direction-l .flag:after {
	content: "";
	position: absolute;
	left: 100%;
	top: 50%;
	height: 0;
	width: 0;
	margin-top: -8px;
	border: solid transparent;
	border-left-color: #e4022e;
	border-width: 8px;
	pointer-events: none;
}

@media (max-width: 860px) {
	.direction-l .flag:after {
		content: "";
		position: absolute;
		left: 50%;
		top: -8px;
		height: 0;
		width: 0;
		margin-left: -8px;
		border: solid transparent;
		border-bottom-color: white;
		border-width: 8px;
		pointer-events: none;
	}
}

.direction-l .time-wrapper {
	float: left;
}

@media (max-width: 860px) {
	.direction-l .time-wrapper {
		float: none;
	}
}

.direction-r {
	position: relative;
	width: 50%;
	float: right;
	padding-left: 30px
}

@media (max-width: 860px) {
	.direction-r {
		float: none;
		width: 100%;
		text-align: center;
		padding-left: 0px
	}
}

.direction-r .flag:after {
	content: "";
	position: absolute;
	right: 100%;
	top: 50%;
	height: 0;
	width: 0;
	margin-top: -8px;
	border: solid transparent;
	border-right-color: #e4022e;
	border-width: 8px;
	pointer-events: none;
}

@media (max-width: 860px) {
	.direction-r .flag:after {
		content: "";
		position: absolute;
		left: 50%;
		top: -8px;
		height: 0;
		width: 0;
		margin-left: -7px;
		border: solid transparent;
		border-bottom-color: white;
		border-width: 8px;
		pointer-events: none;
	}
}

.direction-r .flag:before {
	left: -39px;
}

.direction-r .time-wrapper {
	float: right;
}

@media (max-width: 860px) {
	.direction-r .time-wrapper {
		float: none;
	}
}

.flag-wrapper {
	position: relative;
	display: inline-block;
	text-align: center;
}

@media (max-width: 860px) {
	.flag-wrapper {
		text-align: center;
	}
}

.flag-wrapper .flag {
	position: relative;
	display: inline;
	background: white;
	padding: 3px 10px 0;
	border-radius: 0;
	font-weight: 600;
	text-align: left;
}

.flag-wrapper .flag h3 {
	position: relative;
	display: inline-block;
	margin: 0;
}

@media (max-width: 860px) {
	.flag-wrapper .flag {
		background: white;
		z-index: 6;
	}
}

.direction-l .flag:before,
.direction-r .flag:before {
	position: absolute;
	top: 50%;
	right: -39px;
	content: " ";
	display: block;
	width: 18px;
	height: 18px;
	margin-top: -10px;
	background: #fff;
	border-radius: 10px;
	border: 4px solid #e4022e;
	z-index: 6;
}
@media (max-width: 860px) {
	.direction-l .flag:before {
		position: absolute;
		top: -20px;
		left: 50%;
		content: " ";
		display: block;
		margin-left: -9px;
	}
	
	.direction-r .flag:before {
		position: absolute;
		top: -20px;
		left: 50%;
		content: " ";
		display: block;
		margin-left: -8px;
	}
}

.time-wrapper {
	display: inline;
	line-height: 1em;
	font-size: 0.66666em;
	color: #e4022e;
	vertical-align: middle;
}

@media (max-width: 860px) {
	.time-wrapper {
		display: block;
		position: relative;
		margin: -1px 0 0 0;
		z-index: 7;
	}
}
.time-wrapper .time {
	display: inline-block;
	padding: 0;
	background: white;
	margin-top: 11px;
}

@media (max-width: 860px) {
	.time-wrapper .time {
		display: inline-block;
		padding: 5px;
		background: white;
		margin-top: 0px;
	}
}



@media (max-width: 860px) {
	.desc {
		position: relative;
		margin: 1em 0 0 0;
		padding: 1em;
		background: whitesmoke;
		z-index: 7;
	}
}







/* <---- Footer ----> */
footer {
	margin: 0;
	display: block;
	position: relative;
	padding: 1rem 0;
	background: #e4022e;
	color: white;
	font-size: 11px;
	line-height: 1.4;
	border-top: 2px solid white;
}

footer a, footer a:visited, footer a:active, footer a:focus  {
	color: white;
	transition: all 0.5s ease-in-out;
	display: inline-block;
}

footer a:hover{
	color: #9d9d9c;
	text-decoration: none;
}


footer .content-social a.nav-social, footer .content-social a.nav-social:active, footer .content-social a.nav-social:visited, footer .content-social a.nav-social:focus   {
	background: white;
	text-align: center;
	color: #e4022e;
	border: 1px solid white;
}


footer .content-social a.nav-social:hover{
	text-decoration: none;
	color: white;
	background: #e4022e;
	border: 1px solid white;
}

footer span.by {
	font-size: 9px;
	line-height: 1;
}