html {
    scroll-behavior: auto !important;
}

@media (min-width: 768px) {

    nav .dropdown-menu {
        /*display: block;
        top: -50vh;
        opacity: 0;*/
		top: -4px;
        -webkit-transition: all 500ms ease-in;
        -moz-transition: all 500ms ease-in;
        -ms-transition: all 500ms ease-in;
        -o-transition: all 500ms ease-in;
        transition: all 500ms ease-in;
        padding: 0;
        border-radius: 0 !important;
        border: 0;
        /*box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px !important;*/
        z-index: 1 !important;
    }
}

body {
    background: #f1f1f1;
    color: #333;
    font-size: 18px;
    font-weight: 300;
    overflow-x: hidden;
}

.header-wrapper {
    background: #fbfbfb url('../img/header/header2.jpg') no-repeat top center;
    background-size: cover;
    width: 100%;
    position: absolute;
    z-index: 100;
    top: -150px;
    left: 0px;
    overflow: hidden;
    text-align: center;
    /*box-shadow: rgba(50, 50, 105, 0.15) 0px 2px 20px 0px, rgba(0, 0, 0, 0.05) 0px 1px 1px 0px;*/
}

@media( min-width: 768px ) {

    .header-wrapper {
        height: 80vh;
    }

}

.page-default .header-wrapper {
    height: 80vh;
	box-shadow: rgba(0, 0, 0, 0.35) 0px -150px 36px -28px inset;
}

.header-movie {
    width: 120%;
    position: relative;
    top: 100px;
    left: -100px;
}

@media (max-width: 768px) {
        
    .header-wrapper {
        top: -15px;
        height: 80vh;
    }

}

body::after {
    width: 100%;
    height: 300px;
    background: #232f5f;
    display: block;
    position: absolute;
    content: '';
    margin-top: -250px;
    z-index: 0;
}

@media( max-width: 768px ) {
    body::before {
        height: 400px !important;
        margin-top: -100px !important; 
    }
}

#topbar {
    position: relative;
    z-index: 10000;
    background: #00b0f0;
    font-weight: 400;
}

.logo .img-fluid {
    max-width: 400px;
    width: 100%;
    height: auto;
}

.content {
    position: relative;
}

.logo,
.page,
.navigation,
.copyright {
    position: relative;
    z-index: 1000;
}

.shadow-primary {
    /*box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px !important;*/
}

/** Navigation */
nav {
    position: relative;
    /**background: #00b0f0;*/
    padding: 0 !important;
	text-transform: uppercase;
    z-index: 900;
}

nav .dropdown-toggle::after {
    display: none;
}

nav .dropdown-item {
    text-align: center;
    line-height: 2.5em;
}

nav .navbar-toggler {
    display: block;
    width: 100%;
    color: #fff !important;
    margin: 1em;
}

nav .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

nav .nav-link {
    color: #fff !important;
    transition: all .2s;
    font-weight: 400;
    text-align: center;
}

nav .nav-link:hover {
    transition: all .2s;
}

nav .nav-item {
    padding: .3em .5em .3em .5em;
    flex: 1;
    transition: all .2s;
}

@media( min-width:1280px ) {
	nav .nav-item:hover {
		background: #00b0f0;
		transition: all .2s;
	}
}

nav .dropdown-item.active, .dropdown-item:active {
    background-color: #00b0f0;
}

/** Footer */
.footer {
    /*box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px;*/
    background: #00b0f0;
    color: #fff;
    position: relative;
    z-index: 1000;
}

.footer h3 {
    margin-bottom: 1em;
}

.footer ul {
    list-style: none;
    padding: 0;
}

.footer .bi {
    position: relative;
    top: -2px;
    left: -7px;
}

.footer .ul-icon {
    width: 24px;
    height: 24px;
    fill: #fff;
    position: relative;
    top: -2px;
    margin: 0 10px 0 0;
    transform: rotate(90deg);
    transition: all .2s;
}

.copyright,
.footer a {
    color: #fff;
}

.footer a:hover {
    color: #133c7e;
}

.copyright a {
    color: #00b0f0;
}

.copyright a:hover {
    color: #fff;
}

.footer a:hover .ul-icon {
    fill: #133c7e;
    transform: rotate(270deg);
    transition: all .2s;
}

/** Showcase */
.slider,
.showcase {
   min-height: 50px;
}

.showcase-background {
    position: absolute;
    top: 90px;
    left: -2500px;
    background: #133c7e;
    width: 5000px;
    height: 470px;
    content: '';
    z-index: 0;
}

.showcase {
    /*box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px;*/
    position: relative;
    z-index: 500;
box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px;
}

.hero h2 {
    color: #fff;
    text-align: center;
    font-size: 128px;
    line-height: 2.5em;
    margin: 0;
    padding: 0;
    letter-spacing: -3px;
}

.showcase,
.showcase p {
    color: #0070c0;
}

.showcase .col-12 {
    position: relative;
    z-index: 800;
}

.showcase .col1 {
	width: 100%;
	height: 100%;
	background: #0070c0 url(../img/header/col1.jpg) no-repeat top center !important;
	background-size: cover !important;
	transition: all .5s;
}

.showcase .col2 {
	width: 100%;
	height: 100%;
	background: #0070c0 url(../img/header/col2.jpg) no-repeat top center !important;
	background-size: cover !important;
	transition: all .5s;
}

.showcase .col3 {
	width: 100%;
	height: 100%;
	background: #0070c0 url(../img/header/col3.jpg) no-repeat top center !important;
	background-size: cover !important;
	transition: all .5s;
}

.showcase .col3:hover {
	width: 100%
	transition: all .5s;
}

.slider {
    opacity: 0;
    position: absolute;
    width: 100%;
    content: '';
}

.slider.first {
    opacity: 1;
}

.showcase1 {
    background: #0070c0 url(../img/showcase/showcase1.jpg) no-repeat top center !important;
    background-size: cover !important;
    z-index: 0;
}

.showcase2 {
    background: #0070c0 url(../img/banner/image1.jpg) no-repeat top center !important;
    background-size: cover !important;
    z-index: 2;
}

.showcase3 {
    background: #0070c0 url(../img/banner/image2.jpg) no-repeat top center !important;
    background-size: cover !important;
    z-index: 3;
}

.showcase4 {
    background: #0070c0 url(../img/banner/image3.jpg) no-repeat top center !important;
    background-size: cover !important;
    z-index: 4;
}

.showcase5 {
    background: #0070c0 url(../img/banner/image4.jpg) no-repeat top center !important;
    background-size: cover !important;
    z-index: 4;
}

.showcase .description {
    background: rgba(255, 255, 255, 0.8);
}

/** Common Styles */

.vh-100 {
    min-height: 100vh;
}

.bg-blue1 ul,
.bg-blue2 ul,
.bg-blue1 a,
.bg-blue2 a,
.bg-blue1 p,
.bg-blue2 p {
    color: #fff;
}

.bg-blue1 a:hover,
.bg-blue2 a:hover {
    color: #fff;
}

.blue1 {
    color: #00b0f0;
}

.bg-blue1 {
    background: #00b0f0;
}

.bg-blue2 {
    background: #133c7e;
}

.blue3 {
    color: #0070c0;
}

.bg-blue3 {
    background: #128de5;
}

.bg-blue4 {
	background: #00b0f0;
}

.separate-left {
    border-left: solid #133c7e 15px;
}

.separate-right {
    border-right: solid #133c7e 15px;
    -webkit-box-shadow: 0px 0px 39px 10px rgba(0,0,0,0.25); 
    box-shadow: 0px 0px 39px 10px rgba(0,0,0,0.25);
}

h1 {
    color: #00b0f0;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 250%;
    text-align: center;
    margin-bottom: 1em;
}

h2 {
    color: #133c7e;
    text-transform: uppercase;
    font-size: 150%;
}

h3 {
    font-weight: 400;
    font-size: 125%;
}

a {
    text-decoration: none;
    color: #133c7e;
    transition: all .2s;
}

a:hover {
    text-decoration: none;
    color: #00b0f0;
    transition: all .2s;
}

p.lead {
    font-size: 125%;
}

.hero {
    background: #fff url(../img/header.jpg) no-repeat top center;
    background-size: cover;
    height: 50vh;
}

.strength svg {
    max-width: 100px;
}

.robot {
    background: #fff url(../img/robotarm.png) no-repeat left bottom;
    background-size: contain;
}

hr {
    border-top: solid #133c7e 1px;
}

.box {
    /*box-shadow: rgba(50, 50, 93, 0.02) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px;*/
    background: rgba(255, 255, 255, 0.2);
    padding: 1em;
    margin: 2em 0 2em 0;
    transition: all .2s;
}

.box:hover {
    /*box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px;*/
    background: rgba(255, 255, 255, 1);
    transition: all .2s;
}

@media (max-width: 767px) {
	
	h1 {
		font-size: 120%;
		font-weight: bold;
	}
	
	h2 {
		font-size: 100%;
	}

    .btn-social {
        background: #fff url(../img/transistorlines_down.jpg) no-repeat bottom center;
        background-size: 100%;
        display: block;
        border-bottom: solid #232f5f 5px;
        position: relative;
        top: 50px;
        z-index: 10;
        padding-top: 2em;
        font-weight: bold;
        text-align: center;
        height: 200px;
        /*box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;*/
    }

    .btn-social::after {
        display: block;
        position: relative;
        width: 100%;
        height: 25px;
        background: url('../img/pins_down.jpg') no-repeat bottom center;
        background-size: 90%;
        content: '';
        z-index: 11;
        top: 52px;
    }
    
    .btn-social:hover {
        box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
        background: #fff url(../img/transistorlines_down.jpg) no-repeat bottom center;
        background-size: 100%;
        position: relative;
        top: -30px;
        z-index: 10;
    }
    
}

@media (min-width: 768px) {
    
    .btn-social {
        background: #fff url(../img/transistorlines_down.jpg) no-repeat bottom center;
        background-size: contain;
        display: block;
        border-bottom: solid #232f5f 5px;
        position: relative;
        top: 50px;
        z-index: 10;
        padding-top: 2em;
        font-weight: bold;
        text-align: center;
        height: 200px;
        /*box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;*/
    }

    .btn-social::after {
        display: block;
        position: relative;
        width: 100%;
        height: 25px;
        background: url('../img/pins_down.jpg') no-repeat bottom center;
        background-size: 90%;
        content: '';
        z-index: 11;
        top: 65px;
    }

    .btn-social:hover {
        box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
        background: #fff url(../img/transistorlines_down.jpg) no-repeat bottom center;
        position: relative;
        top: -30px;
        z-index: 10;
    }

}

.wrapper-emergency {
    position: relative;
    height: 0;
}

.btn-emergency {
    background: #bb2323;
    color: #fff;
    display: inline-block;
    position: relative;
    z-index: 10;
    top: -90px;
    font-weight: bold;
    text-align: center;
    padding: 1em;
    width: 300px;
}

.page-default .btn-emergency {
    top: -90px;
}

.btn-emergency svg {
    margin-bottom: 20px;
}

.btn-emergency:hover {
    background: #bb2323;
    color: #fff;
    display: inline-block;
    position: relative;
    z-index: 10;
    top: 0px;
    font-weight: bold;
    text-align: center;
    padding: 2em 1em 1em 1em;
    /*box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.05) inset, 0px 0px 50px rgba(187, 35, 35, 1);*/
}

.hidden {
    display: none;
}

.btn {
    border: 0;
}

.btn-primary {
    background: #00b0f0;
}

.back-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
}

#my-roadmap {
    margin-top: 100px;
}

.milestone {
    font-weight: 600;
    background: #00b0f0;
    color: #fff;
    padding: 1em;
    border-radius: 7px;
}

.roadmap__events__event:before {
    background: #fff !important;
    border: solid #00b0f0 4px;
    z-index: 99999;
    width: 24px !important;
    height: 24px !important;
}

#my-roadmap img {
    border-radius: 7px;
    padding: .5em;
    background: #fff;
    margin: 1em 0 0 0;
}

.roadmap.roadmap--orientation-vertical.roadmap--initialized .roadmap__events .roadmap__events__event .event {
    top: -80px
}

@media ( max-width:768px ) {
	
	.event__date {
		background: #f1f1f1 !important;	
	}
	
	.roadmap__events__event {
		display: block !important;
		width: 100% !important;
		z-index: 1000 !important;
		margin: 2em 0 0 0 !important;
	}
	
	.roadmap__events__event .event {
		display: block !important;
		width: 100% !important;	
		margin: 0 !important;
		z-index: 1000 !important;
	}
	
	.roadmap.roadmap--orientation-vertical .roadmap__events__event .event {
		position: relative !important;	
	}
	
	.roadmap.roadmap--orientation-vertical.roadmap--initialized .roadmap__events .roadmap__events__event:before {
		display: none;
	}
	
}

.event__date {
    color: #002060;
    font-weight: 700;
}

.page-default .content .row svg,
.page-vision .content .row svg {
	margin: 2em;
}

.milestone {
	font-weight: 600;
    background: #00b0f0;
    color: #fff;
    padding: 1em;
    border-radius: 7px;
	text-align: center;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.milestone img {
	border-radius: 7px;
    padding: .5em;
    background: #fff;
	margin: 1em 0 0 0;
}

.milestone-year {
	color: #002060;
	font-weight: 600;
    font-size: 200%;
	text-align: center;
}

.weihnachten {
	background: url(../img/backgrounds/bg-christmas2022.jpg) no-repeat center center;
	background-size: cover;
	margin-bottom: 1em;
}

.weihnachten p,
.weihnachten div {
	width: 100%;
	padding: 2em;
	color: #fff;
	font-size: 100%;
	font-weight: 500;
	text-align: center;
	margin: 0;
}

.cookiemonster-button {
	left: 0 !important;
	border-radius: 0 7px 0 0 !important;
}

.slogan {
    font-size: 300%;
    text-align: center;
    font-weight: 900;
    color: #fff;
    letter-spacing: -3px;
    font-style: italic;
    text-transform: uppercase;
    /*text-shadow: 0 1px 0 #ddd, 
    0 2px 0 #ccc,
    0 3px 0 #bbb,
    0 4px 0 #aaa,
    0 5px 0 #333,
    0 6px 1px rgba(0,0,0,.1),
    0 0 5px rgba(0,0,0,.1),
    0 1px 3px rgba(0,0,0,.3),
    0 3px 5px rgba(0,0,0,.2),
    0 5px 10px rgba(0,0,0,.25),
    0 10px 10px rgba(0,0,0,.2),
    0 20px 20px rgba(0,0,0,.15);*/
}

@media( max-width: 768px ) {
    .slogan span {
        display: none !important;
    }
}

.swiper {
    width: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
}

.swiper-slide {
    background-position: center;
    background-size: cover;
    width: 533px;
    height: 300px;
}

.swiper-slide img {
    display: block;
    width: 100%;
    /*border-top: 15px solid #00b0f0;*/
}

span.flip {
    -moz-transform:    scaleX(-1); /* Gecko */
    -o-transform:      scaleX(-1); /* Opera */
    -webkit-transform: scaleX(-1); /* Webkit */
    transform:         scaleX(-1); /* Standard */
    filter: FlipH;                 /* IE 6/7/8 */
    display: inline-block;
}

.post {
    margin-top: 3em;
}

.post .background {
    background-size: 170% !important;
    transition: all .2s;
    height: 100%;
}

.post .background:hover {
    background-size: 220% !important; 
    transition: all .2s;
}

.pl-0 {
	padding-left: 0 !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.showcase-hover {
	transition: all .2s;
}

.showcase-hover:hover {
	transition: all .2s;
	background: #133c7e;
}

.navbar-light .navbar-toggler {
    color: rgba(0,0,0,.55);
    border-color: #fff;
	padding: .5em;
}

.image-placeholder {
	background: url('/assets/img/team/placeholder.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}

.image-placeholder-male {
	background: url('/assets/img/team/placeholder-male.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
	opacity: .75;
}

.image-placeholder-female:hover {
	opacity: 1;
}

.image-placeholder-female {
	background: url('/assets/img/team/placeholder-female.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
	opacity: .75;
}

.image-placeholder-male:hover {
	opacity: 1;
}

.image-andre:hover {
	background: url('/assets/img/team/placeholder.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-andre {
	background: url('/assets/img/team/andre1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-andre:hover {
	background: url('/assets/img/team/andre2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-bianca {
	background: url('/assets/img/team/bianca1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-bianca:hover {
	background: url('/assets/img/team/bianca2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-anja {
	background: url('/assets/img/team/anja1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-anja:hover {
	background: url('/assets/img/team/anja2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-tobias {
	background: url('/assets/img/team/tobias1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-tobias:hover {
	background: url('/assets/img/team/tobias2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-lukas {
	background: url('/assets/img/team/lukas1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-lukas:hover {
	background: url('/assets/img/team/lukas2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-maximilian {
	background: url('/assets/img/team/maximilian1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-maximilian:hover {
	background: url('/assets/img/team/maximilian2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-michael {
	background: url('/assets/img/team/michael1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-michael:hover {
	background: url('/assets/img/team/michael2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-viktor {
	background: url('/assets/img/team/viktor1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-viktor:hover {
	background: url('/assets/img/team/viktor2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-vaclav {
	background: url('/assets/img/team/vaclav1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-vaclav:hover {
	background: url('/assets/img/team/vaclav2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.image-sebastian {
	background: url('/assets/img/team/sebastian1.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
	width:100%;
	min-height: 400px;
	cursor: pointer;
}
.image-sebastian:hover {
	background: url('/assets/img/team/sebastian2.jpg') no-repeat center center;
	background-size: cover;
	transition: all .5s;
}

.zoom {
	transform: scale(1);
	transition: all .3s;
}

.zoom:hover {
	transform: scale(1.1);
	transition: all .3s;
}