*{
	margin:0;
	padding:0;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
    flex-wrap:wrap;
	scroll-margin-top:120px;
	scroll-behavior: smooth;
}

/* -------------------------------------- Allgemein */

h1{
	font-size:60px;
	color:#009ccc;
	text-transform: uppercase;
}

h2{
	font-size:40px;
	font-weight:300;
	margin-bottom:20px;
	color:#444;
}

h3{
	font-size:30px;
	text-transform: uppercase;
	color:#009ccc;
	font-weight:400;
	margin-bottom:20px;
}
h4{
	font-size:25px;
	text-transform:none;
	color:#009ccc;
	font-weight:400;
	margin-bottom:20px;
}
p{
	font-size:18px;
	font-weight:400;
	color:#444;
	margin-bottom:30px;
	line-height:28px;
}
p:last-child{
	margin-bottom: 0;
}

header a{
	color: #C1C1C1;
}

a{
	color: #494643;
}
a:hover{
	color:#009ccc;
	font-weight: 400;
}
div .spalte-4 img:hover{
	transform: scale(2)
}
img + h3{
	margin-top: 30px;
}

img:hover{
	cursor: pointer;
}

div .logo{
	width: 85%;
}

footer a{
	color: #444;
}
.logo{
	width: 300px;
}

.button{
	font-size: 16px;
	border:1px solid #494643;
	margin: 1px;
	padding: 20px 40px;
	text-transform: uppercase;
	display:inline-block;
	color: #494643;
	cursor: pointer;
}
.button:hover{
	border:1px solid #009ccc;
	color:#eee;
	background-color:#009ccc;
	transition: 0.3s;
}

.abstand-50-0-50-0{
	padding:50px 0 50px 0;
}

.abstand-100-0-100-0{
	padding:100px 0 100px 0;
}

.abstand-100-0-40-0{
	padding:100px 0 40px 0;
}

.zentriert{
	text-align: center;
}


/* ----------------------------- Main */

main{
	padding-top: 120px;
}
main ul {
    margin-bottom: 20px;
}
main ul li {
    font-size: 20px;
    font-weight: 300;
    line-height: 28px;
    color: #444;
    padding-left: 10px;
    margin: 0 0 10px 60px;
}
main img{
	width:100%;
	display:block;
}

#scroll-to-top{
	position: fixed;
	bottom: 30px;
	right: 30px;
	font-size: 25px;
	background-color: #494643;
	padding: 15px;
	box-shadow: 0 0 40px #00000022;
	color: white;
	transition: 0.3s;
 } 

#scroll-to-top:hover{
	color:#009ccc;
	transform: scale(1.05);
}

form {
    box-shadow: 0 0 40px #00000011;
    background-color: white;
    padding: 40px;
    box-sizing: border-box;
    border-radius: 20px;
    border: 1px solid #aaa;
    justify-content: space-between;
    display: flex;
}
form input {
    width: 45%;
    padding: 20px;
    box-sizing: border-box;
    border: 1px solid #eee;
    font-size: 15px;
    background-color: #fcfcfc;
    font-weight: 300;
    margin-bottom: 4%;
}

form textarea{
    width: 100%;
    padding: 20px;
    margin-bottom: 4%;
    border: 1px solid #eee;
    background-color: #fcfcfc;
    font-size: 15px;
    font-weight: 300;
}

form .button{
    background-color:#009ccc;
    color:#fff;
    border-color:#009ccc;
    text-transform: none;
    margin-bottom:10px;
}

form .button:hover{
    background-color:#009ccc;
    cursor:pointer;
}


/* -------------------------------------- Farben */

.grau{
	background-color:#494643;
}
.blau{
	background-color:#009ccc;
	border: 10px solid #fff; 
}
.blau h3,.blau p,.blau .button,.blau a{
	color:white;
	border-color:white;
}
.blau .button:hover{
	background-color:white;
	color:#0099cc;
}


/* -------------------------------------- Gestaltungsraster */

.container-full{
	display:flex;
}
.container-full>div{
	padding:0;
}
.innenabstand{
	display: flex;
	align-items: center;
}
.innenabstand div{
	padding: 0 20%;
	box-sizing: border-box;
}
.container{
	display:flex;
	padding:0 25px;
	box-sizing: border-box;
}
.container-small{
	max-width:1300px;
	padding:0 30px;
	margin: auto;
	box-sizing: border-box;
}
.spalte-12{
	width:100%;
	padding: 0 15px;
	box-sizing:border-box;
}
.spalte-6{
	width:50%;
	padding:0 15px;
	box-sizing:border-box;
}
.spalte-4{
	width:33.33%;
	padding:0 15px;
	box-sizing:border-box;
}

.spalte-3{
	width:25%;
	padding:0 15px;
	box-sizing:border-box;
}

.innenabstand .spalte-3{
	padding: 0 20px;
}

.ende{
	padding:0 0 40px 0;
	margin-bottom: 100px;
}

/* -------------------------------------- Header */

header{
	display:flex;
	justify-content: space-between;
	padding:50px;
	box-shadow: 0 0 40px #0000022;
	position: fixed;
	width: 100%;
	background-color: #494643;
	box-sizing: border-box;
}

header nav{
	display:flex;
	align-items: center;
}

header nav ul{
	display:flex;
	list-style:none;
}

header nav ul li{
	margin: 0 0 0 30px;
	text-transform: uppercase;
	font-weight:300;
	font-size:20px;
}
header nav ul li:hover >.submenu{
	visibility: visible;
	opacity:1;
}

header nav ul li .submenu{
	display:block;
	position: absolute;
	padding-top:20px;
	visibility: hidden;
	transiction: 0.3s;
	opacity:0;
}
header nav ul li .submenu li{
	margin-left:0;
	border-bottom:1px solid #eee;
    position: relative;
}
header nav ul li .submenu li a{
	background-color:#F1F1F1;
	color:#494643;
	padding:10px;
	display:block;
}
header nav ul li a.active{
	color:#009ccc;
}
header nav ul li .submenu li .submenu{
    right:100%;
    padding-top:0; 
    top:0;
}

/* -------------------------------------- Titelbild */

#titelbild{
	background-image:url("images/ocra-andrea-startseite-titelbild-links.jpg");
	padding: 220px 0;
	background-repeat: no-repeat;
	background-size:cover;
}

/* -------------------------------------- Footer */

footer section nav ul li{
	list-style:none;
	text-transform: uppercase;
	font-weight:300;
	font-size:20px;
	line-height:30px;
	color: #222222;
}

footer #rechtliches nav ul{
	display:flex;
	justify-content: center;
}

footer #rechtliches nav ul li{
	padding: 15px 10px;
}

footer #rechtliches nav ul li:hover{
	opacity:0.7;
}




/* -------------------------------------- Responsive Design */

@media (max-width: 1100px){
    

    /* -------------------------------------- Gestaltungsraster */

	
    .spalte-6{
        width:100%;
    }
	.spalte-6:nth-child(1){
		margin-bottom: 40px;
    }
	 .spalte-4{
        width:100%;
    }
	 .spalte-4:nth-child(1),.spalte-3:nth-child(2){
        margin-bottom: 40px;
    }
    .spalte-3{
        width:50%;
    }
    .spalte-3:nth-child(1),.spalte-3:nth-child(2){
        margin-bottom: 40px;
    }
    
	#titelbild div{
		text-align: right;
	}
    
    /* -------------------------------------- Header */

    header nav{
        margin-top: 20px;
    }
    
    header nav ul li{
        margin: 0 20px 5px 0;
    }
    header .submenu{
        visibility: hidden!important;
    }
    
	.button {
		margin: 10px 0;
	}
    
    /* -------------------------------------- Angebotsbereich */

    .innenabstand div{
        padding:20%;
    }
    



@media (max-width: 600px){
    
    
    /* -------------------------------------- Allgemein */

	
    h1{
        font-size:37px;
    }
    h2{
        font-size:25px;
    }
    
	#titelbild div{
		text-align: right;
	}
    
    /* -------------------------------------- Gestaltungsraster */

	
    .spalte-3{
        width:100%;
    }
    .spalte-3:nth-child(3){
        margin-bottom:40px;
    }
   
    .button {
		margin: 10px 0;
	}
	
    
    
    /* -------------------------------------- Footer */

    footer #rechtliches {
        padding: 10px 0;
    }
    
    footer #rechtliches nav ul li {
        padding: 0 10px;
    }
   
	
/* -------------------------------------- Accordion-Menü */

.accordion h4{
    background-color:white;
    box-shadow: 0 0 30px #00000020;
    padding: 20px;
    border:1px solid #fff;
    border-radius:10px;
    transition:0.3s;
}

.accordion h4:hover{
    color:#00a8fd;
    cursor:pointer;
}

.accordion div{
    padding: 0 20px 20px 20px;
    display:none;
}


/* -------------------------------------- Tab-Menü */

.tab-menu .inhalt{
    box-shadow: 0 0 40px #00000025;
    padding:50px;
    margin-bottom:20px;
}

.tab-menu .inhalt img{
    margin-bottom:20px;
	}

.tab-menu .inhalt-2,.tab-menu .inhalt-3{
    display:none;
}




	