@charset "UTF-8";
/* CSS Document f&uuml;r Nav/Footer Geb&auml;udereinigung Glenz */

/*  --------- Corporate Design -------------   */

:root {
    --background-color: #FFFFFF;
	--accent-color: #009fe3;/*100 % Cyan*/
	--lighter-accent-color: #83d0f5;/*50 % Cyan*/
	--lighter-lighter-accent-color: #d4edfc;/*20% Cyan*/
	--lighter-darker-accent-color: #b2b2b2;/*30% Schwarz*/
	--darker-accent-color: #706f6f;/*mittel Grau*/
	--text-color: #4a4a49;/*Dunkel Grau*/
	
	--top-height: 10.625rem;/*170px*/
	--navbar-height: 2.5rem;/*  40pxpx*/
	--subtop-height: 3.25rem;/*  52px*/
	--footer-height: ;/*  px*/
	
	--headline-1: 2.5rem; /*40px*/
	--headline-2: 2rem; /*32px*/
	--headline-3: 1.5rem; /*24x*/
	--texte-regular: 1.25rem; /*20px*/
	--nav-links: 1.125rem; /*18px*/

	}


/*  --------- Fonts help:  https://www.youtube.com/watch?v=WNN72Er8iFE -------------   */


@font-face{
	font-family: 'NeuzeitGrotesk';/*regular*/
	src: url("../fonts/NeuzeitGro-Reg.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face{
	font-family: 'NeuzeitGrotesk';/*bold*/
	src: url("../fonts/NeuzeitGro-Bol.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face{
	font-family: 'NeuzeitGrotesk';/*light*/
	src: url("../fonts/NeuzeitGro-Lig.woff2") format("woff2");
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}
@font-face{
	font-family: 'NeuzeitGrotesk';/*black*/
	src: url("../fonts/NeuzeitGro-Bla.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face{
	font-family: 'SegoePrint';/*medium*/
	src: url("../fonts/segoepr_0.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

/*  --------- Headlines / Schriften -------------   */


h1{	font-family: 'NeuzeitGrotesk';
	font-size: var(--headline-1);
	font-weight: 600;
	font-style: normal;
	line-height: 120%;
}

h2{	font-family: 'NeuzeitGrotesk';
	font-size: var(--headline-2);
	font-weight: 600;
	font-style: normal;
	line-height: 150%;
}

h3{
	font-family: 'NeuzeitGrotesk';
	font-size: var(--headline-3);
	font-weight: 600;
	font-style: normal;
	line-height: 150%;
}

h4{font-family: 'SegoePrint';
	font-size: var(--headline-3);
	font-weight: 600;
	font-style: normal;
	line-height: 150%;
	color: var(--accent-color);
}

p{
	font-family: 'NeuzeitGrotesk';
	font-size: var(--texte-regular);
	font-weight: 400;
	font-style: normal;
	line-height: 130%;
	color: var(--text-color);
	
}


/*  --------- Allgemein -------------   */

*{
margin: 0;
padding: 0;
border: 0;
outline: 0;
list-style: none;
text-decoration: none;
font-family: 'NeuzeitGrotesk', sans-serif;
scroll-behavior: smooth;
}

::-webkit-scrollbar{
	display: none;
}

body{
	margin:0;
	overflow-x: hidden;
}

html{
	background-color: var(--background-color);
}
	

/*  --------- Top -------------   */

.top{
	width: 100%;
	height: var(--top-height);
	position: fixed;
	top: 0;
	left: 0;
	text-align: center;
	display: flex;
	background-color: var(--background-color);
	z-index: 998;

}

.to{
	height: var(--top-height);
	display: flex;
	align-items: center;
}

.to h4{
	margin: 0;
}

.left{
	width: calc(50% - 144px);
}

.center img{
	height: 114px;
}
.right{
	width: calc(50% - 144px);
}

.right h4{
	transform: rotate(-4.25deg);
}

.mobile-img{
	display: none;
	width: 100%;
	height: 100%;
	opacity: 100%;
	mix-blend-mode: soft-light;
	z-index: -1;
}

	/*  --------- Nav -------------   */

nav {
	width: 100%;
	height: var(--navbar-height);
	position: fixed;
	top: var(--top-height);
	left: 0;
	text-align: center;
	z-index: 999;
}


nav .nav-list {
	display: flex;
	width: 100%;
	height: var(--navbar-height);
    justify-content: center;
	align-items: center;
	background-image: linear-gradient(to right, #006eb8 0%, #57c4f9 80%);
	position: relative;/*TEST*/
	z-index: 999!important;

}

nav .nav-list .nav-item {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 15px 0 15px;
    cursor: pointer;
	height: var(--navbar-height);
    transition: .4s;

}

nav .nav-list .nav-item:hover {
    background: var(--lighter-accent-color);
	transition: 0s;
}

nav .nav-list .nav-item:focus {
    background: var(--lighter-accent-color);
	transition: 0s;
}


nav .nav-list .nav-link {
    color: var(--background-color);
    font-size: 18px;
    font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
}

nav .nav-list .nav-link a {
width: 100%;
height: 100%;}


/*  --------- Hamburger Men&uuml; -------------   */

nav .navbar-toggler {
    display: none;
    height: 30px;
    margin: 23px -10px 0 0;
    cursor: pointer;
}

nav .navbar-toggler .bar {
    width: 30px;
    height: 3px;
    margin-bottom: 5px;
    background: #ffffff;
    border-radius: 2px;
    transition: .4s;
}

input {
    display: none;
}

input:checked ~ nav .nav-list {
	
    transform: translateX(0);
/*	z-index: 2;
*/	z-index: 999!important;
} /*Men&uuml; wird ausgefahren von links*/

input:checked ~ nav .navbar-toggler {
    margin-top: 23px;
}/*Position hamburger icon*/



input:checked ~ nav .navbar-toggler .bar:nth-child(1) {
    position: absolute;
	top: 10px;
    transform: rotate(45deg);
}

input:checked ~ nav .navbar-toggler .bar:nth-child(2) {
    display: none;
}

input:checked ~ nav .navbar-toggler .bar:nth-child(3) {
    position: absolute;
	top: 10px;
    transform: rotate(-45deg);

}


	/*  --------- Sub-Top -------------   */

.subtop{
	width: 100%;
	height: var(--subtop-height);
	position: static;
	margin-top: calc(var(--top-height) + var(--navbar-height));
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: var(--background-color);
	border-bottom: 1px solid var(--accent-color);
	z-index: 998;
}


.sub{
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px 0 0 0;
}

.topcenter{
	margin: 0 10px 0 20px;
}

.sub p{
	font-weight: 600;
}

.topleft p{
color: var(--darker-accent-color);
}

.topright p:hover{
 transform: scale(102%);
}


.topright p{
color: var(--accent-color);
}


	/*  --------- Footer -------------   */

footer {
position: static;
margin:0;
}


.footer-responsive {
	display: flex;
	justify-content: center;
	background-color: var(--accent-color);
	box-sizing: border-box;
    width: 100%;
    text-align: left;
	color: var(--background-color);
    padding: 50px 50px 60px 50px;
    margin-top: 0;
	overflow: hidden;
	background-image:url("../bilder/footer-bg.jpg");
	background-size: auto 100%;
	background-position: center;
	background-repeat: no-repeat;
}


.footer-responsive a,p{
	color: var(--background-color);
}

.footer-links a:hover{
	color: var(--lighter-accent-color);
}

.footer-responsive span{
	color: var(--lighter-accent-color);
}

.footer-left, .footer-center, .footer-right{
/*	background-color: bisque;
*/	margin: 0 40px 0 40px;
}

/* ----------- Spalte links --------- */

.footer-left .firma{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.firma img{
	margin-left: 1px;
	padding-bottom: 33px;
}

.claim{
	transform: rotate(-2deg);
	margin-bottom: 32px;
	padding-left: 60px;
}

.claim h4{
/*	font-size: 18px;
*/	color: var(--lighter-accent-color);
	margin-top: -20px;
}

.footer-links a{
line-height: 153%;
font-weight: 600;
}



.pflichtdata a{
line-height: 153%;
}


.pflichtdata span{
line-height: 153%;
}

.pflichtlinks:hover{
	color: var(--background-color);
}

/* ----------- Spalte mitte --------- */

.footer-center{
	padding-top: 15px;
}

.footer-icon{
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
margin-right: 10px;
border-radius: 100%;
border: solid thin var(--lighter-accent-color);
}

.footer-center .str,.tel,.mai{
	display: flex;
	align-items: center;
}

.footer-center .mai{
	display: flex;
	align-items: center;
}



.footer-center .str,.tel{
	margin-bottom: 20px;
}

.mail a:hover{
	color: var(--lighter-accent-color);
}

.tel a:hover{
	color: var(--lighter-accent-color);
}



/* ----------- Spalte rechts --------- */

.footer-right{
	padding-top: 15px;
}

.footer-right p{
line-height: 153%;
}

.footer-right li{
	font-size: var(--texte-regular);
	line-height: 153%;
	display: list-item;
	list-style: none;
	padding-left: 20px;
}

.footer-right ul{
	list-style-position: inside;
margin-left: 0;
}	



.footer-company-about .header{
	margin-bottom: 16px;
	font-weight: 600;
	color: var(--background-color);
	letter-spacing: 1px;
	text-transform: uppercase;
}

.ruhig{
	text-transform: capitalize!important;
}


.footer-company-about .header:hover{
	color:var(--lighter-accent-color);
}


.footer-right a:hover{
	color: var(--lighter-accent-color);
}


	/*  --------- Footer Ende -------------   */

@media screen and (max-width: 1450px) {/*1450px*/

.footer-responsive {
    padding: 50px 0px 60px 0px;
}
	
	.footer-right li{
	padding-left: 15px;
}

}

@media screen and (max-width: 1350px) {/*1350px*/

.footer-responsive p{
	font-size: 18px;
}
	
.footer-right li{
	font-size: 18px;
	}
	
	.footer-right p{
	font-size: 18px;
}
	
.footer-left h3{
	font-size: 22px;
}
	
.claim h4{
	font-size: 22px;
}

@media screen and (max-width: 1275px) {/*1275px*/
	.footer-responsive {
    padding: 50px 20px 60px 20px;
}
}

.footer-responsive p{
	font-size: 16px;
	}
	
	.footer-right li{
	font-size: 16px;
	}

	.footer-right p{
	font-size: 16px;
	}
	
.footer-left h3{
	font-size: 20px;
}
	
.claim h4{
	font-size: 20px;
}
	}

@media screen and (max-width: 78.125em) {/*1250px*/

		/*  --------- Footer -------------   */

	
	.footer-left, .footer-center, .footer-right{
	margin: 0 30px 0 30px;
}


/* ----------- Spalte links --------- */

/*.firma h3{
		font-size: 20px;
	}
	
*/.claim{
	padding-left: 50px;
}

/*.footer .claim h4{
	font-size: 90%;
	color: var(--lighter-accent-color);
	margin-top: -20px;
}

.footer-links a{
	font-size: 90%;
	font-weight: 600;
}

.pflichtdata a{
	font-size: 90%;
}

.pflichtdata span{
	font-size: 90%;
}*/
/* ----------- Spalte mitte --------- */

.footer-icon{
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
margin-right: 10px;
border-radius: 100%;
border: solid thin var(--lighter-accent-color);
}
	
	.footer-icon img{
		width: 17px;
		height: 17px;
	}



/* ----------- Spalte rechts --------- */

/*.footer-right p{
	font-size: 90%;
}
*/
	/*  --------- Footer Ende -------------   */
}



@media screen and (max-width: 1105px) {/*1105px*/

	.footer-left, .footer-center, .footer-right{
	margin: 0 15px 0 15px;
}
.claim{
	padding-left: 20px;
}
	.claim h4{
	font-size: 19px;
}
	

}
	
@media screen and (max-width: 1010px) {/*1010px*/
		
.footer-left, .footer-center, .footer-right{
	margin: 0 10px 0 10px;
}
/*	.footer-left{
	width: 300px;
}
*/	
	
			.footer-left{
		min-width: 280px;
}
	
			.footer-center{
		}


	.footer-right{
	min-width: 250px;
}
	
}

	@media screen and (max-width: 960px) {/*960px*/
		
	.footer-right{
	min-width: 180px;
}

}

	@media screen and (max-width: 960px) {/*880px*/
		
		.mai .footer-icon{
			min-width: 30px;
		}

}


@media screen and (max-width: 50em) {/*800x*/
	
	
	:root {
	--top-height: 6.063rem;/*97px*/
	--headline-3: 1.25rem; /*20x*/
	}

	
	/*Hamburger Men&uuml; + Cancel-Button werden eingeblendet*/
	
	/*  --------- Top -------------   */

.top{
	display: block;
	margin-top: 0;
	width: 100%;
}

.to{
	height: var(--top-height);
	display: block;
	align-items: center;
}
	
	.left{
	display: none;
}


.center{
	display: flex;
	align-items: center;
	justify-content: center;
}
	
.center img{
	height: 75px;
	width: auto;
}


.right{
	background-image: linear-gradient(to right, #006eb8 0%, #57c4f9 80%);
	width: 100%;
	display: flex;
	position: absolute;
	align-items: center;
	justify-content: center;
	height: 42px;
	z-index: -1;
}

.right h4{
	position: absolute;
	transform: rotate(-2deg);
	color: var(--background-color)!important;
	font-weight: 800;
	z-index: 999;
	}
	
.mobile-img{
	display: inline-block;
	overflow: hidden;
	width:  100%;
	opacity: 70%;
	mix-blend-mode: soft-light;
}
/*  --------- Nav -------------   */

	nav .nav-list {
        display: grid;
        position: absolute;
		width: 100%;
		top: 42px;        
		left: 0;
        transform: translateX(-500%);
        z-index: 999!important;
		transition: .5s;
}
	
		nav .nav-list .nav-item {
		width: 800px;
        padding: 0;
/*		padding: 23px 35px 0 35px;
*/		border-top: 1px solid rgba(255,255,255,0.2);
		height: 50px;
		background-image: linear-gradient(to right, #006eb8 0%, #57c4f9 80%);
        z-index: 999!important;
		position: relative; /*TEST*/
    }

    nav .navbar-toggler {
        display: grid !important;
		z-index: 999;
		position: relative; /*TEST*/
    }

	
	/*  --------- Hamburger Button -------------   */

	nav .navbar-toggler {
		position: absolute;
		top: -14px;
		left: 50px;
}
	
input:checked ~ nav .navbar-toggler .bar:nth-child(1) {
    position: absolute;
	top: 10px;
    transform: rotate(45deg);
}

input:checked ~ nav .navbar-toggler .bar:nth-child(3) {
    position: absolute;
	top: 10px;
    transform: rotate(-45deg);

}

	
	
	/*  --------- Subtop -------------   */

	.subtop{
	width: 100%;
	height: var(--subtop-height);
	position: static;
	margin-top: calc(var(--top-height) + var(--navbar-height));
	margin-left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: var(--background-color);
	border-bottom: 1px solid var(--accent-color);
	z-index: 998;

}
	


	/*  --------- Footer -------------   */
	
	footer {
    position: static;
    bottom: 0;
}
	
.footer-responsive {
	display: block;
	background-color: var(--accent-color);
	box-sizing: border-box;
    width: 100%;
    text-align: center;
	color: var(--background-color);
    padding: 50px 20px 60px 20px;
    margin-top: 0px;
	overflow: hidden;
	background-image:url("../bilder/footer-bg-mobile.jpg");
	background-size: auto 105%;
	background-position: center;
	background-repeat: no-repeat;
}

/*.footer-responsive a,p{
	color: var(--background-color);
}


*/.footer-left, .footer-center, .footer-right{
/*	background-color: bisque;
*/	margin: auto;
}
	
	.footer-center .str,.tel{
	margin-bottom: 10px;
}


/* ----------- Spalte links --------- */

		.footer-left{
	width: 100%;
}

	
.footer-left .firma{
	display: flex;
	justify-content: center;
	align-items: center;
}

	.firma h3{
		font-size: 130%;
	}

	
.firma img{
	margin-left: 1px;
	padding-bottom: 33px;
}

.claim{
	transform: rotate(-2deg);
	margin-bottom: 50px;
	padding-left: 0px;
}

.claim h4{
	font-size: 18px;
	color: var(--lighter-accent-color);
	margin-top: -20px;
	z-index: -1;
}

.footer-links a{
	font-size: 18px;
	font-weight: 600;
	line-height: 180%;
}
	
	.footer-left{
		margin-bottom: 50px;
	}
	
	.footer-right li{
	padding-left: 0;
}


.pflichtdata a{
	font-size: 16px;
}

.pflichtdata span{
	font-size: 16px;
}


/* ----------- Spalte mitte --------- */

.footer-center{
	padding-top: 0;
	display: block;
	align-items: center;
	justify-content: center;
	margin-bottom: 50px;

}

	.footer-icon{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	border-radius: 100%;
	border: solid thin var(--lighter-accent-color);
	}

.footer-center .str,.tel,.mai{ /*mai statt mail!!!*/
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

/* ----------- Spalte rechts --------- */

.footer-right{
	padding-top: 15px;
	width: 100%;
}

.footer-right p{
	line-height: 153%;
}


.footer-company-about .header{
	margin-bottom: 16px;
	font-weight: 600;
	color: var(--background-color);
	letter-spacing: 1px;
	text-transform: uppercase;
}
	
	.footer-right li{
	list-style: none;
	line-height: 153%;
}

	/*  --------- Footer Ende -------------   */

}

@media screen and (max-width: 26.25em) {/*420x*/
	:root {
	--headline-3: 1.25rem; /*20px*/
	--texte-regular: 1.125rem; /*18px*/

	}
	
	
	/*  --------- Hamburger Button -------------   */

	nav .navbar-toggler {
		position: absolute;
		top: -14px;
		left: 20px;
}
	
			.sub img{
		width: 25px;
				
				height: 25px;
	}	
}


@media screen and (max-width: 360px) {/*360px*/

	.sub a{
		font-size: 90%;
	}	
	
		.sub p{
		font-size: 90%;
	}	
	
	.mai a{
		font-size: 90%;
	}
	
		.tel a{
		font-size: 90%;
	}

	
		.str p{
		font-size: 90%;
	}

}	


