@charset "UTF-8";
/* CSS Document */

@font-face {
	font-family: 'rot';
	src: url('schrift/rot.woff2') format('woff2'),
		url('schrift/rot.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}


@font-face {
	font-family: 'rotbold';
	src: url('schrift/rotbold.woff2') format('woff2'),
		url('schrift/rotbold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}


body,
td,
th {
	font-family: rot;
	font-weight: 300;
	font-size: 18px;
	line-height: 28px;
	color: #444;
}

body {
	background: white;
	color: black;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}

a {
	color: #005DA8;
	text-decoration: none;
}

a:hover {
	color: #009eff;
}






.header {
	width: 100%;
	height: 50px;
	box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15);
	position: fixed;
	background: rgb(255, 255, 255);
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.7) 100%);
	z-index: 9999;
}

.header .logo {
	position: absolute;
	width: 100px;
	height: 100px;
	left: 0px;
	top: 0px;
	background-repeat: no-repeat;
	background-image: url(bilder/logo.png);
	background-size: contain;
	z-index: 9999;
}

.header #menu {
	position: absolute;
	right: 40px;
	top: 0px;
}

.image-wide {
	width: 100%;
}






#mobile-toggle {
	display: none;
}



#menu ul {
	margin: 0;
}

#menu ul li {
	position: relative;
	list-style: none;
	display: inline-block;
}

#menu ul li a {
	height: 38px;
	padding: 12px 15px 0 15px;
	color: black;
	text-transform: uppercase;
	vertical-align: middle;
	display: inline-block;
}

#menu ul li:hover {
	background-color: rgba(255, 255, 255, 0.5);
}

#menu ul a {
	color: black;
}

#menu>ul>li ul .shadow {
	box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.1)
}

/*
#menu>ul>li ul {
	position: absolute;
	display: block;
	left: -40px;
	top: 20px;
	padding-top: 10px;
	display: none;
}
#menu>ul>li ul li {
	display: block;
	padding-left: 0;
	background-color: white;
	padding: 15px;
	line-height: 0px;
}
*/

#menu>ul>li ul.biglist {
	display: none;
}



#menu .biglist {
	position: fixed;
	display: block;
	left: 0px;
	top: 50px;
	width: 100%;
	padding-top: 17px;
	background-color: #005DA8;
	text-align: center;
}


#menu .biglist .group {
	display: inline-block;
	margin: 20px;
	vertical-align: top;
	text-align: left;
}

#menu .biglist .group .icon {
	width: 90px;
	height: 110px;
	margin-left: 40px;
	margin-bottom: 10px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
}

#menu .biglist .group a {
	display: block;
	padding: 5px 0px 0px 10px;
	vertical-align: middle;
	height: 30px;
}

#menu .biglist .group a:hover {
	background-color: rgba(255, 255, 255, 0.5);
}

#menu .smalllist {
	position: absolute;
	display: block;
	left: -40px;
	top: 50px;
	display: none;
}


#menu .smalllist a {
	background-color: rgba(255, 255, 255, 0.8);
	width: 120px;
}

#menu .smalllist a {
	height: 38px;
	padding: 12px 15px 0 15px;
	color: black;
	text-transform: uppercase;
	vertical-align: middle;
	display: block;
}



#menu>ul>li ul a:hover {
	background-color: #f0f3ff;
	cursor: pointer;
}



video {
	background-size: cover;
}

.team video {
	background-color: rgb(177, 180, 117)
}

.videobox {
	position: relative;
}

.introvideo {
	width: 100%;
	height: auto;
}

.mainlogo-position {
	width: 100%;
	position: absolute;
	bottom: 0px;
}

.mainlogo {
	width: 500px;
	height: 110px;
	border: 8px solid rgba(255, 255, 255, 0);
	margin: 0 auto;
	background-image: url(bilder/logo-matter.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	background-color: rgba(255, 255, 255, 0.6);
}






.center {
	text-align: center;
}

.abstandgross {
	height: 150px;
}


.oben80 {
	padding-top: 80px;
}

.oben50 {
	padding-top: 50px;
}

.oben30 {
	padding-top: 30px;
}

.unten80 {
	padding-bottom: 80px;
}

.unten50 {
	padding-bottom: 50px;
}

.unten30 {
	padding-bottom: 30px;
}

.unten10 {
	padding-bottom: 10px;
}

.bluebg {
	background-color: #dbe7f1;
}

.greenbg {
	background-color: #d7ebe3;
}

.blue {
	color: #005DA8;
}

.green {
	color: #009A54;
}

.max100 {
	max-width: 100%
}

.inline {
	display: inline-block;
}



/* .infolink {
	font-family: rotbold;
	display: inline-block;
	padding-left: 50px;
	margin-top: 10px;
	background-image: url(bilder/pfeil.png);
	background-size: contain;
	background-position: left;
	background-repeat: no-repeat;
} */



h1 {
	font-weight: normal;
	text-align: center;
	font-size: 30px;
	line-height: 30px;
	padding: 50px;
}

h2 {
	font-weight: normal;
	text-align: center;
	font-size: 18px;
	line-height: 28px;
	padding: 50px;
}

h3 {
	font-weight: normal;
	text-align: center;
	font-size: 18px;
	text-align: left;
	line-height: 28px;
	max-width: 1200px;
	display: inline-block;
	padding: 50px;
}

b {
	font-family: rotbold;
	font-weight: normal;
}

.textblock {
	width: 990px; 
	margin: 30px auto;
	background-color: white;
	font-size: 24px;
	text-align: left;
}

.untertitel {
	font-size: 30px;
	display: block;
	line-height: 30px;
	padding-top: 30px;
	padding-bottom: 10px;
}

.textblock ul {
	margin: 10px 0 20px 0;
}

.textblock li {
	text-align: left;
	padding-bottom: 8px;
	list-style: none;
	/* Remove default bullets */
	margin-left: -15px;
}

.textblock ul li::before {
	content: "\2022";
	/* \2022 is the CSS Code/unicode for a bullet */
	color: #005DA8;
	/* bullet color */
	display: inline-block;
	/* Needed to add space between the bullet and the text */
	width: 1em;
	/* Also needed for space (tweak if needed) */
	margin-left: -1em;
	/* Also needed for space (tweak if needed) */
}



.container{
	width: 100%;
	max-width: 1020px;
	padding: 0 10px;
	margin: 0 auto;
	box-sizing: border-box;
}



.spalten {
	column-count: 2;
	column-gap: 40px;
}

.bluetitleblock {
	background-color: #005DA8;
	display: inline-block;
	color: white;
	padding: 16px 26px;
	font-size: 33px;
	line-height: 33px;
	font-family: rotbold;
}

.greentitleblock {
	background-color: #009A54;
	display: inline-block;
	color: white;
	padding: 16px 26px;
	font-size: 33px;
	line-height: 33px;
	font-family: rotbold;
}

.position-left {
	display: block;
	text-align: left;
}



.kachelnbox {
	/* width: 100%;
	max-width: 1000px; */
	margin: 0 auto;
	display: flex;
	text-align: left;
	font-size: 0;
	line-height: 0;
	flex-wrap: wrap;
	justify-content: space-between;
}


.kacheln {
	width: calc(25% - 5px);
	height: 245px;
	display: block;
	margin-bottom: 10px;
}
.doppelt {
	width: calc(50% - 5px);
}
.kacheln span {
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: #d5e0ed;
	width: 100%;
	height: 100%;
	transition: 1000ms;
	display: block;
}

.kacheln span:hover {
	transform: scale(1.1);
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
	z-index: 9990;
	cursor: pointer;
}

.kacheln2 {
	width: 240px;
	height: 120px;
	display: inline-block;
	background-color: #009A54;
	margin: 4px;
	position: relative;
}

.kacheln2:nth-child(2n) {
	background-color: #005DA8;
}



.kacheln p,
.kacheln2 p {
	font-size: 20px;
	line-height: 20px;
	position: absolute;
	left: 10px;
	bottom: 10px;
	text-align: left;
	margin: 0;
	color: white;
	text-shadow: 0px 0px 5px black;
}


.counter {
	width: 100%;
	max-width: 1000px;
	padding: 40px;
	margin: 0 auto;
	background-color: #005DA8;
	color: white;
	font-size: 20px;
	line-height: 24px;
	text-align: center;
	box-sizing: border-box;
}

#berufserfahrung {
	display: inline-block;
	background-color: white;
	color: #005DA8;
	font-size: 26px;
	padding: 2px 4px;
	margin: 0 4px;
	font-family: rotbold;
}



.referenzbox {
	width: 980px;
	margin: 0 auto;
	font-size: 0;
	background-color: white;
}

.ref-big {
	width: 980px;
}

.ref {
	width: 320px;
	height: 240px;
	overflow: hidden;
	margin-top: 10px;
	margin-right: 10px;
	display: inline-block;
}

.ref img {
	height: 100%;
	width: 100%;
	transition: 2s all ease-in-out;
}

.ref:hover img {
	transform: scale(1.5);
}

.ref-vid {
	width: 320px;
	height: 240px;
	margin-top: 10px;
	margin-right: 10px;
	display: inline-block;
}

.introstill {
	width: 100%;
	overflow: hidden;
}

.introstill img {
	height: 100%;
	width: 100%;
	transition: 5s all ease-in-out;
}

.introstill:hover img {
	transform: scale(1.5);
}

.last {
	margin-right: 0px;
}




.dienste {
	max-width: 1000px;
	line-height: 0px;
	text-align: left;
	margin: 0 auto;
}

.dienste a {
	color: white;
	width: 240px;
	height: 240px;
	display: inline-block;
	text-align: center;
	background-color: #d5e0ed;
	margin: 4px 2px;
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	transition: 1000ms;
	font-size: 0;
	line-height: 0;
}

.dienste b {
	background-color: #005DA8;
	font-size: 20px;
	line-height: 20px;
	font-family: rot;
	font-weight: normal;
	display: block;
	position: absolute;
	bottom: 0px;
	width: 100%;
	padding: 10px 0;
	text-shadow: 0px 0px 5px black
}

.dienste a:hover {
	transform: scale(1.1);
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
	z-index: 9990;
	cursor: pointer;
}

.dienste .icon {
	background-color: #005DA8;
	display: inline-block;
	width: 140px;
	height: 200px;
	margin: 20px;
	border: solid 20px #005DA8;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin: 4px 2px;
}

.dienste .trenner {
	height: 40px;
}




.mood {
	width: 100%;
	margin: 100px 0 0 0;
	position: relative;
}

.mood video {
	width: 100%;
	height: auto;
}

.mood .aussage {
	position: absolute;
	left: 0px;
	bottom: 50px;
	padding: 10px 10px 10px 50px;
	font-size: 28px;
	line-height: 32px;
	color: white;
	text-align: left;
	background-color: #005DA8;
}














.team {
	margin-top: 40px;
}

.team .titel {
	font-family: rot;
	font-size: 30px;
	padding-left: 30px;
}

.team p {
	margin: 10px 10px 20px 10px;
	line-height: 20px;
}

.team .box {
	display: inline-block;
	width: 250px;
	margin: 10px;
	vertical-align: top;
}

.team .box video {
	width: 250px;
	height: 250px;
}

.team .box img {
	width: 250px;
	height: 250px;
}

/* Hide Play button + controls on iOS */
.team .box video::-webkit-media-controls {
	display: none !important;
}

.team .box b {
	display: block;
}


.iframe {
	margin: 70px 0 40px 0;
	width: 600px;
	height: 600px;
}





.liste-mit-bild {
	margin: 50px auto;
	text-align: center;
}

.liste-mit-bild .zwischentitel {
	width: 60%;
	margin: 20px auto;
	background-color: #005DA8;
	color: white;
	padding: 3px 20px;
	text-align: left;
}

.liste-mit-bild img {
	width: 30%;
	margin: 20px 20px 20px 10%;
	vertical-align: middle;
}

.liste-mit-bild p {
	width: 30%;
	display: inline-block;
	text-align: left;
	margin: 20px 10% 20px 20px;
	vertical-align: middle;
}

.liste-mit-bild .infolink {
    line-height: normal;
    padding-left: 0;
}

.infolink {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 12px 24px;
    background-color: #009A54;
    color: #ffffff;
    font-family: rotbold;
    border-radius: 20px;
    text-decoration: none;
    transition: transform 0.15s ease, background-color 0.15s ease;
}

.liste-mit-bild .infolink {
    display: inline-flex;
    justify-content: center;
    align-items: center;

    padding: 12px 24px;
    background-color: #009A54;
    color: #ffffff;
    font-family: rotbold;
    border-radius: 20px;
    text-decoration: none;
    transition: transform 0.15s ease, background-color 0.15s ease;
}

.infolink:hover {
    transform: scale(1.05);
    background-color: #00ad5f; 
	  color: #ffffff;
}

.liste-mit-bild ul {
	margin: auto;
	width: 50%;
	text-align: left;
}

.mietanfrage {
	margin: 30px;
	font-size: 30px;
}









.news {
	column-width: 420px;
	column-gap: 1em;
	margin: 50px;
}

.news img {
	vertical-align: top;
	width: 100%;
	margin-bottom: 1em;
	border: 1px solid rgb(205, 225, 240);
	border-radius: 6px;
	display: inline-block;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	column-break-inside: avoid;
	box-shadow: 4px 4px 10px #ccc;
	-moz-box-shadow: 4px 4px 10px #ccc;
	-webkit-box-shadow: 4px 4px 10px #ccc;
	-khtml-box-shadow: 4px 4px 10px #ccc;
	transition: transform .2s;
}

.news img:hover {
	transform: scale(1.02)
}



.foot {
	margin-top: 200px;
	background-color: #009A54;
	padding: 40px 0px;
	text-align: center;
	position: relative;
}

.foot .logo {
	width: 300px;
	height: 120px;
	position: absolute;
	background-image: url(bilder/logo-matter.png);
	background-repeat: no-repeat;
	background-size: contain;
	top: -86px;
	left: 30px;
}

.foot .klima-charta {
	width: 170px;
	height: 100px;
	position: absolute;
	background-image: url(bilder/klima-charta.png);
	background-repeat: no-repeat;
	background-size: contain;
	top: -86px;
	right: 30px;
}

.foot .box {
	color: white;
	display: inline-block;
	margin: 40px;
	text-align: left;
	vertical-align: middle;
}

.foot .box a {
	color: white;
}

.kontaktbutton {
	background-color: white;
	color: #009A54;
	text-transform: uppercase;
	padding: 20px 25px;
	margin: 30px;
	border-radius: 10px;
	display: inline-block;
	vertical-align: middle;
	font-family: rotbold;
}

.kontaktbutton:hover {
	box-shadow: 0px 0px 19px rgba(255, 255, 255, 0.61);
	color: #009A54;
}

.kontaktbutton-gruen {
	background-color: #009A54;
	color: white;
	padding: 20px 25px;
	margin: 30px;
	border-radius: 10px;
	display: inline-block;
	vertical-align: middle;
	font-family: rotbold;
}

.kontaktbutton-gruen:hover {
	box-shadow: 0px 0px 19px rgba(255, 255, 255, 0.61);
	color: white;
}


.privacy,
.privacy a {
	color: rgb(24, 81, 35)
}



.zugergrafik {
	position: absolute;
	right: 15px;
	bottom: 10px;
	font-size: 0.8em;
}

.zugergrafik:hover {
	color: white;
}