
/*  ALLGEMEIN *************************************************************************/
*{
	margin:0;
	padding:0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

html {
	height: 100%;
	min-height: 100%;
	scroll-behavior:smooth;
}

body{
	max-width:1240px;
	margin: 0 auto 0 auto;
	/*box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);*/
	/*box-shadow: 0 0 20px 10px rgb(4, 46, 160, 0.5);*/
	box-shadow: 0 0 20px 2px #494949;
}

/* TEXT - FORMATE allgemein */
h2, h3, h4, h5 {
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	text-transform: uppercase;
}

h2{font-size:25px;color:#494949;}
h3{font-size:20px;color: #5D7177;}
h4{font-size:18px;color: #5D7177;}
h5{font-size:18px;color: #494949;padding-bottom:1rem;}
a, li, p{font-family: 'Roboto Slab', serif;color:#494949;font-size:18px;}
p {font-size:16px;}

hr{
	width: 25px;
	height: 3px;
	background: #5D7177;
	border: 0px;
	margin: 0 auto 0 auto;
}

/*Farben */
:root {
	/*--dybus_blue: rgb(0,102,204);*/
	--dybus_blue: #0164cb;
	--th_red: red;
	--emb_orange:#f86019f8;
	--alfa_yellow:#e2e43b;
}

/*Verzögerung - für unterschiedliche Browser            chrome*                        mozilla					  opera*/
#logo-header{ transition: all 500ms; -webkit-transition: all 500ms; -moz-transition: all 500ms; -o-transition: all 500ms;}
/*#home img { transition: all 300ms; -webkit-transition: all 300ms; -moz-transition: all 300ms; -o-transition: all 300ms;} */
#partner img, #partner figcaption { transition: all 300ms; -webkit-transition: all 300ms; -moz-transition: all 300ms; -o-transition: all 300ms;}


/*  EINZELNE CONTAINER *******************************************/
/*  CONTAINER Inhalt ******************************/
.containerdybus {
	width:100%;
	margin:3% 0 0 0;
	background-color:lightgrey;
	padding-bottom: 1%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}
/*  CONTAINERBEAUTY Farben werden bei den Lieferwerken in der section vergeben ******************************/
.containerbeauty{
	height: 10px;
	width:40px;
	background-color:rgb(0,102,204);
}
.containerdybus_inside {
	width:98%;
	padding:2rem;
	margin: 1%;
	background-color:white;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
	border-radius:1px;
}

.containerdybus_inside h4, .containerdybus_inside p{text-align: justify;padding-bottom:1rem;}
.containerdybus_inside ul li{font-size: 16px;text-align: left;margin-left: 1rem;}

.container_col2 {
	column-count: 2; 
	column-gap:2em;
	column-rule-style:dotted; 
	column-rule-width:1px; 
	column-rule-color:#494949;
}


/*  ASIDE ***********************************************************************/
aside .sidemenu{
	position: fixed;
	top:25%;
	right:5%;
	z-index: 101;
}

aside .sidemenu ul{
	background-color:rgb(0,102,204);
	border-radius: 0.5rem;
	padding: 0 0.5rem;
	/*
	display:flex;
	flex-direction: column; */
}
aside .sidemenu li{
	list-style: none;
	text-align: center;
	border-bottom: 1px solid whitesmoke;
	/* 
	list-style-position: inside;
	flex:1; */
}
aside .sidemenu li:last-child{border-bottom: 0px;}

aside .sidemenu li a{
	font-size:25px;
	text-decoration:none;
	color: whitesmoke;
	line-height: 45px;
}
.tooltip{
	display: inline-block;
	position: absolute;
	background-color: rgb(0,102,204);
	color: whitesmoke;
	margin-top: 25%;
	padding: 5px;
	border-radius: 3px;
	font-size: 12px;
	font-family: 'Roboto', sans-serif;
	letter-spacing: 0.5px;
	white-space: nowrap;
	width:75px;

	visibility: hidden;
	opacity: 0;

	right: 50px;
}
.tooltip:before{
	position: absolute;
	content: "";
	display: block;
	left: 0px;
	top:10px;
	background-color: inherit;
}

aside .sidemenu li:hover .tooltip{
	visibility: unset;
	opacity: 1;
}
/*  HEADER ***********************************************************************/

#headline{
	height: 100px;
	padding-top: 20px;
	margin-left: 39px;
	clear: both;
	display:inline-block;
}
#headline h2{font-size: 30px;color: #494949;}

#logo-header {margin: 0 0 10px 28px;}
#header-nav img:hover{opacity:0.7;}


/* NAVIGATION *******************************************************************/

#header-nav {
	display:flex;
	background-color: white;
	padding-top: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
	position:sticky;
	top:0;
	z-index:10;
}

.menubutton {
    display: none;
    cursor: pointer;	
    background: inherit;	
	font-family: 'Roboto', sans-serif;
    color: #494949;
    text-transform: uppercase;
	font-size: 16px;
	padding: 0.5rem 0rem;
    border: 0;
	margin:0 auto 0 25px;
}
.menubutton::before{content: "\2261";font-size: 16px;padding-right:0.5rem;}

.nav-header{margin:5px 15px 0 auto;}

.nav-header ul{
	display: flex;
    flex-flow: row wrap;
	list-style: none;
	margin: 0;
}
.nav-header >ul >li{position:relative;}


.nav-header ul li:hover ul {
	display: block;
	background: white;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.nav-header ul li:last-child ul{
	right:0;
}

.nav-header ul li a {
	text-decoration: none;
	color: #494949;
	padding: 10px 35px;
	display: block;
}

.nav-header ul li a:hover {
	text-decoration: underline rgb(36, 92, 175);
	text-decoration-thickness: 1px;
	color: rgb(36, 92, 175);
}

.nav-header ul ul{
	display:none;
	position: absolute;
	padding:0;
	min-width:100%;
}

.nav-header ul ul a:hover{
	text-decoration: none;
	/*padding: 5px 22px 2px 10px;
	border-style: solid;
	border-width: 0 3px 0 0;
	border-color: rgb(0, 102, 204);
	text-decoration-thickness: 1px;*/
}

.nav-header ul ul li a {
	padding: 5px 10px 2px 10px;
	font-size: 18px;
	white-space: nowrap;
}

.nav-header li, .nav-header a{	
	font-family: 'Roboto', sans-serif;
	color:#5D7177;
	text-transform: uppercase;
}

.home{font-size: 35px;font-weight:600;text-decoration: none;display:none;}


/*  HOME-CUBE *************************************************************************/

.wrapcube {
	display:none;
	margin-top:20px;
	margin-right: 5%;
	float: right;
	perspective: 800px;
	perspective-origin: 50% 0px;
}
.cube {
	position: relative;
	width: 150px;
	transform-style: preserve-3d;
	transform: rotateX(22deg) rotateY(-45deg) ;
}
.cube div {
	position: absolute;
	width: 150px;
	height: 150px;
	/*box-shadow: inset 0 0 30px cornflowerblue;*/
	text-align: center;
	line-height: 75px;
	font-size: 1.5em;
}
.back {
	transform: translateZ(-75px) rotateY(180deg);
}
.right {
	transform: rotateY(-270deg) translateX(75px);
	transform-origin: top right;
}
.left {
	transform: rotateY(270deg) translateX(-75px);
	transform-origin: center left;
}
.top {
	transform: rotateX(-90deg) translateY(-75px);
	transform-origin: top center;
}
.bottom {
	transform: rotateX(90deg) translateY(75px);
	transform-origin: bottom center;
}
.front {
	transform: translateZ(75px);
}
/*color: #494949*/
.front span{color:rgb(0,102,204); font-size: 20px;font-weight: 400;	text-transform: uppercase;}
.right p, .back p, .left p  {color:rgb(0,102,204); font-size: 20px;	text-transform: uppercase;}

@keyframes spin {
	from { transform: rotateY(0); }
	to { transform: rotateY(360deg); }
}
.cube {animation: spin 15s infinite alternate-reverse;}


/*  HOME *************************************************************************/
#home {
	min-height: 100vh;
	padding-top:120px;
	padding-bottom: 20%;
	text-align: center;
	background: url(../images/main/pexels-ylanite-koppens-796602.jpg); 
	background-position: center;
	background-repeat: no-repeat;
	
	background-attachment: fixed;

	background-size:cover;
	-o-background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
}

/*Laufschrift */
#home .marquee {
	max-width: 100vw; /* iOS braucht das */
	white-space: nowrap;
	overflow: hidden;
	padding-top: 15px;
	padding-bottom: 15px;
	margin: 0 25px;
	font-family: 'Roboto', sans-serif;
	font-size:25px;
	color:var(--dybus_blue);
	text-shadow: 15px 15px 5px #494949;
}

#home .marquee span {
	display: inline-block;
	padding-left: 105%; /* die zusätzlichen 5% erzeugen einen verzögerten Start und vermeiden so ein Ruckeln auf langsamen Seiten */
	animation: marquee 35s linear infinite;
}

/* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */
#home .marquee span:hover {
	animation-play-state: paused 
}

/* Make it move */
@keyframes marquee {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-100%); }
}


#home h3{
	padding:10px;
	font-size: 40px;
	font-weight: 600;
	font-style: oblique;
	color: rgb(36, 92, 175);
	text-shadow:25px 15px 5px #494949;
	transform: rotate(-9deg);
}	
#home h4{margin-top: 10%;color:#494949;}
/*#home img:hover{opacity: 1;}*/

#home .line1{padding-left:15%;text-align: left;}
#home .line2{text-align: center;padding-top: 2%;padding-bottom: 2%;}
#home .line3{padding-right:15%;text-align: right;}

#home .line4{width: 80%;margin:2% auto 0 auto;}



/*  ABOUT *************************************************************************/

#about {
	min-height: 100vh;
	padding: 125px 3% 0 3%;
	text-align: center;
	/*background-color: lightgrey;
	background-image:linear-gradient(135deg, rgb(0, 102, 204), white);*/
}
#about h2{text-align: center;}


/*  WORK *************************************************************************/

#work{
	min-height: 100vh;
	padding: 125px 3% 0 3%;
	text-align: center;
	/*background-image: linear-gradient(white, silver, lightgrey);
	background-color: lightgrey;
	background-image:linear-gradient(-135deg,white,  rgb(0,102,204));*/
}
#work h2{text-align: center;}

/*  FOR YOU *************************************************************************/

#foryou{
	min-height: 100vh;
	padding: 125px 3% 3% 3%;
	text-align: center;
	/*background-color: lightgrey;
	background-image:linear-gradient(135deg, rgb(0,102,204, 0.5), white);
	background-image:linear-gradient(135deg, rgb(0,102,204), white);*/
}
#foryou h2{text-align: center;}


/*  PARTNER *************************************************************************/

#partner {
	padding: 125px 3% 3%;
	text-align: center;

	background: url(../images/main/pexels-bongkarn-thanyakij-3740400.jpg);

	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;

	background-size:cover;
	-o-background-size: cover;
    -moz-background-size: cover;
	-webkit-background-size: cover;
}


#partner .containerright{
	text-align: left;
	margin:0 auto 0 auto;
}

#partnercontainer {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	width:80%;
	margin: 2rem auto 0 auto;
}
#partnercontainer .logos{
	margin:2%
}
#partnercontainer img{
	width: 350px;
	height: auto;
	padding: 5%; 
}
#partnercontainer figcaption{
	visibility:hidden;
	font-family: 'Roboto Slab', serif;
	color: #494949;
	font-size:20px;
	padding-top:5%;
}
#partnercontainer a{text-decoration: none;}

#partnercontainer .logos:hover figcaption{visibility:visible;}
#partnercontainer .logos:hover img {
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-o-transform: scale(1.1);
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5)
}
/*
#partnercontainer img:hover{
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-o-transform: scale(1.1);
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5)
}
*/

/*  PARTNER SLIDER MOBIL ************************************************************************/
#slides {
	display: none;
	position: relative;
	width:50%;
	height: 350px;
	margin: auto;
}
#slides figcaption{padding:20px;}

#slides img{
	width: 250px;
	height: auto;
	padding: 20px;
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5)
}
#slides img:hover{
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-o-transform: scale(1.1);
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5)
}
.slide {
	margin:0;
	position: absolute;
	left: 0; top: 0;
	width: 100%; height: 100%;
	opacity: 0;
	z-index: 1;
	transition: opacity 1s;
}
.showing {
	opacity: 1;
	z-index: 2;
}

#slides figcaption{visibility:hidden;}
#slides figure:hover figcaption{visibility:visible;}

/*  PARTNER-Liste MOBIL ************************************************************************/
#partner .mobil_list ul {display: none;}
#partner .mobil_list ul li a{padding-left:10px}



/*  FOOTER *************************************************************************/	

footer {
	width: 100%;
	height: 165px;
	padding-top: 15px;
	background: white;
	box-shadow: 0px -1px 3px rgba(0, 0, 0, 0.5);
}

#footer .nav-footer{
	float:left;
	margin-left: 50px;
}
#footer .nav-footer ul li{list-style-type: none;}
#footer .nav-footer ul li a{
	text-decoration: none;
	text-transform: uppercase;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	color: #494949;
}
#footer .nav-footer ul li a:hover {
    text-decoration: underline;
}

#footer .footercontact{
	float:right;
	margin-right: 50px;
}
#footer .footercontact h5{padding:0;}


footer .Counter {
	font-family: 'Roboto Slab', serif;
	color: #494949;
	font-size: 12px;
}

/*  EXTERN *************************************************************************/	
/*  IMPRESSUM / DATENSCHUTZ / BILDER *************************************************************************/	
#Impressum {
	padding: 75px 3% 0 3%;
	text-align: center;
}
#Impressum .impressum_container{
	width: 60%;
	margin: 5% auto 0 auto;
}

#Impressum .container_col2 p, #Impressum .container_col2 h4{
	padding-bottom: 0;
}
#Impressum .container_col2 a{
	font-size: 16px;
	/*text-decoration: none;*/
}

#Datenschutz {
	padding: 125px 3% 0 3%;
	text-align: center;
}
#Datenschutz .Datenschutz{
	text-align: justify;
}
#Datenschutz .Datenschutz h4{
	padding-top: 25px;
	text-align: center;
}
#Datenschutz a{font-size:16px}

#Bildnachweise {
	padding: 125px 3% 5% 5%;
	text-align: center;
}
#Bildnachweise .Bildnachweise{
	width: 80%;
	margin: 25px auto 0 auto;
	text-align: left;
}
 #Bildnachweise ul{
	list-style-position: inside;
 }
 #Bildnachweise ul li{font-size:16px;}

/*  EXTERN *************************************************************************/	
/*  CONTACT *************************************************************************/	

#contact {
	min-height: 100%;
	padding: 75px 3% 30% 3%;
	text-align: center;
	background: url(../images/main/pexels-tirachard-kumtanom-574283.jpg);

	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size:cover;
	-o-background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;

}
#contact .containerdybus{
	width:85%;
	margin: 3% auto 0 auto;
}




