@import 'fonts/source-sans-pro/stylesheet.css';

html {
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 300;
	font-size: 19px;
	line-height: 1.5;
	letter-spacing: .015em;
}

body {
	background-color: #f6f6f6;
}

html, body {
	margin: 0;
	padding: 0;
}

a {
	color: inherit;
}

.a-button {
	display: block;
	width: 180px;
	height: 180px;
	background-color: #38685e;
	background-image: url('../img/button-mitten-drin.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	border-radius: 50%;
}

.a-button--small {
	width: 130px;
	height: 130px;
}

.a-button--green-light {
	background-color: #9cad4f;
}

.a-button--orange {
	background-color: #fc641b;
}

.a-button--yellow {
	background-color: #fad101;
}

.a-button--blue {
	background-color: #4991ce;
}

.a-text-input {
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 300;
	font-size: 19px;
	line-height: 1;
	letter-spacing: .015em;
	box-sizing: border-box;
	width: 100%;
	padding: .5em;
	border: 1px solid #ccc;
	outline: 0;
}

.a-text-input--multiline {
	height: 6rem;
}

.l-page {
	width: 1200px;
	margin: 0 auto;
	background-color: #fff;
}

.o-section {
	position: relative;
	z-index: 1;
}

.o-section__nav {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	box-sizing: border-box;
	width: 100%;
	padding: 1.75rem 2.75rem 0;
}

.o-section__body {
	position: relative;
	z-index: 1;
}

.m-footer {
}

.m-footer__baseline {
	color: #fff;
	text-align: center;
	padding: 3rem 0 2.5rem;
	background: #38685e;
}

.m-footer__domains {
	font-size: .75rem;
	text-align: center;
	margin: 0;
	padding: 1rem 0 2rem;
}

.m-footer__domains-link {
	margin: 0 .5em;
}

.m-kontakt {
}

.m-kontakt__impression {
	position: relative;
	width: 100%;
	height: 480px;
}

.m-kontakt__impression-image {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: lightblue;
}

.m-kontakt__impression-text {
	font-weight: 400;
	line-height: 1;
	font-size: 2rem;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #38685e;
	position: absolute;
	left: 660px;
	top: 70px;
	z-index: 1;
	margin: 0;
}

.m-kontakt__lead {
	font-weight: 300;
	font-size: 1.875rem;
/* 	line-height: 1; */
	text-transform: uppercase;
	color: #999;
	text-align: center;
	width: 960px;
	margin: 0 auto;
	padding: 5rem 2.75rem;
}

.m-kontakt__lead-highlight {
	color: #38685e;
}

.m-kontakt__form {
	padding: 2rem 2.75rem;
}

.m-kontakt__form-hint {
	color: #fff;
	padding: 1rem;
	background-color: #38685e;
}

.m-kontakt__form-hint--warning,
.m-kontakt__form-hint--error {
	background-color: #fc641b;
}

.m-kontakt__form-hint--success {
	background-color: #9cad4f;
}

.m-kontakt__form-cols {
	display: flex;
	justify-content: space-between;
}

.m-kontakt__form-col {
}

.m-kontakt__form-col--left {
	width: 50%;
}

.m-kontakt__form-col--right {
	width: 40%;
}

.m-kontakt__footer {
	box-sizing: border-box;
	width: 100%;
	padding: 4rem 2.75rem;
}

.m-kontakt__footer-section {
}

.m-kontakt__footer-section + .m-kontakt__footer-section {
	border-top: 1px solid #999;
	margin-top: 4rem;
	padding-top: 3rem;
}

.m-kontakt__footer-title {
}

.m-kontakt__footer-section-cols {
	display: flex;
}

.m-kontakt__footer-section-col {
	width: 40%;
}

.m-kontakt__footer-section-col-title {
}

.m-lage {
	width: 100%;
/* 	padding: 7.75rem 0 0; */
}

.m-lage__content {
	display: flex;
	box-sizing: border-box;
	width: 100%;
	height: 800px;
	padding: 7.75rem 0 3rem;
}

.m-lage__content-text {
	box-sizing: border-box;
	width: 580px;
	padding-left: 2.75rem;
}

.m-lage__content-text-title {
	font-weight: 300;
	font-size: 2rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #999;
	margin: 0;
}

.m-lage__content-text-title-highlight {
	font-weight: 700;
	color: #38685e;
}

.m-lage__content-text-body {
	line-height: 2;
	margin: 2rem 0 0;
}

.m-lage__content-map {
	position: relative;
	width: 620px;
	height: 100%;
	background: light#38685e;
}

.m-lage__content-map-image {
	width: 100%;
	height: 100%;
}

.m-lage__content-map-button {
	position: absolute;
	left: 60px;
	top: -60px;
}

.m-lage__map {
	width: 100%;
	height: 320px;
	background: #9cad4f;
}

.m-lage__impression {
	position: relative;
	width: 100%;
	height: 600px;
	background: black;
}

.m-lage__impression-image {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.m-lage__impression-content {
	position: absolute;
	z-index: 2;
	left: 620px;
	top: 100px;
}

.m-lage__impression-content-title {
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.125;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #fff;
	margin: 0;
}

.m-lage__impression-content-button {
	position: absolute;
	left: 320px;
	top: 110px;
}

.m-nav {
	position: relative;
}

.m-nav--shadow {
	text-shadow: 0 .125em .5em rgba(0,0,0,0.8);
}

.m-nav--shadow-dark {
	text-shadow: 0 .125em .5em rgba(0,0,0,1);
}

.m-nav__title {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: .015em;
	text-transform: uppercase;
	color: #fff;
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
}

.m-nav__links {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

.m-nav__link {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: .015em;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	margin-right: 1.5rem;
}

.m-nav__link--current {
	font-weight: 700;
}

.m-nav--grey .m-nav__link {
	color: #999;
}

.m-nav--grey-dark .m-nav__link {
	color: #444;
}

.m-objekt {
	position: relative;
	height: 600px;
}

.m-objekt__background {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: lightblue;
}

.m-objekt__content {
	position: absolute;
	left: 0;
	bottom: 66px;
	z-index: 2;
	width: 100%;
}

.m-objekt__content-title {
	font-weight: 300;
	line-height: 1;
	font-size: 2rem;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #fff;
	text-shadow: 0 .125em .375em rgba(0,0,0,1);
	margin: 0 0 1rem;
	padding: 0 2.75rem;
}

.m-objekt__content-title-highlight {
	font-weight: 700;
}

.m-objekt__content-body {
	box-sizing: border-box;
	width: 100%;
	padding: .5rem 2.75rem .75rem;
	background: rgba(255, 255, 255, .9);
}

.m-objekt__content-body-title {
	font-weight: 400;
	font-size: 1.25rem;
	text-transform: uppercase;
	color: #38685e;
	margin: 0;
}

.m-objekt__content-body-text {
	margin: 0;
}

.m-sanierung {
	width: 100%;
}

.m-sanierung__info {
	position: relative;
	width: 100%;
	height: 600px;
}

.m-sanierung__background {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.m-sanierung__background-image {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: light#38685e;
}

.m-sanierung__background-info {
	font-size: .75rem;
	color: #fff;
	text-transform: uppercase;
	position: absolute;
	left: .5rem;
	bottom: .5rem;
	z-index: 2;
	margin: 0;
}

.m-sanierung__content {
	position: absolute;
	left: 0;
	bottom: 66px;
	z-index: 2;
	width: 100%;
}

.m-sanierung__content-title {
	font-weight: 300;
	font-size: 2rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #fff;
	text-shadow: 0 .125em .5em rgba(0,0,0,0.8);
	margin: 0 0 1rem;
	padding: 0 2.75rem;
}

.m-sanierung__content-title-highlight {
	font-weight: 700;
}

.m-sanierung__content-body {
	box-sizing: border-box;
	width: 100%;
	padding: .5rem 2.75rem .75rem;
	background: rgba(255, 255, 255, .9);
}

.m-sanierung__content-body-title {
	font-weight: 400;
	font-size: 1.25rem;
	text-transform: uppercase;
	color: #38685e;
	margin: 0;
}

.m-sanierung__content-body-text {
	margin: 0;
}

.m-sanierung__impressions {
	display: flex;
	height: 500px;
}

.m-sanierung__impression {
	position: relative;
	width: 400px;
	height: 100%;
	background: #eee;
}

.m-sanierung__impression-image {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.m-sanierung__impression-text {
	font-size: .75rem;
	text-transform: uppercase;
	position: absolute;
	left: .5rem;
	top: .5rem;
	z-index: 2;
	margin: 0;
}

.m-sanierung__lead {
	background: #38685e;
}

.m-sanierung__lead-text {
	font-weight: 300;
	font-size: 1.875rem;
/* 	line-height: 1; */
	text-transform: uppercase;
	color: #fff;
	margin: 0;
	padding: 5rem 2.75rem;
}

.m-slideshow {
	width: 100%;
	height: 660px;
}

.m-slideshow__slide {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 1.2s;
}

.m-slideshow__slide.is-current {
	opacity: 1;
}

.m-slideshow__slide-content {
	position: absolute;
	z-index: 2;
}

.m-slideshow__slide--facettenreich-und-vielfaeltig .m-slideshow__slide-content {
	left: 620px;
	top: 490px;
}

.m-slideshow__slide--moderne-im-gruenen .m-slideshow__slide-content {
	left: 2.75rem;
	top: 130px;
}

.m-slideshow__slide--immer-eine-gute-wahl .m-slideshow__slide-content {
	left: 90px;
	top: 400px;
}

.m-slideshow__slide-content-title {
	font-weight: 500;
	font-size: 2rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #fff;
	text-shadow: 0 .125em .375em rgba(0,0,0,1);
	margin: 0;
}

.m-slideshow__slide-button {
	position: absolute;
}

.m-slideshow__slide--facettenreich-und-vielfaeltig .m-slideshow__slide-button {
	left: 170px;
	top: -230px;
}

.m-slideshow__slide--moderne-im-gruenen .m-slideshow__slide-button {
	top: 0;
	left: 540px;
}

.m-slideshow__slide--immer-eine-gute-wahl .m-slideshow__slide-button {
	left: -10px;
	top: -250px;
}

.m-slideshow__slide-image {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background-color: lightblue;
}

.m-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}

.m-table__row {
	border-bottom: 1px solid #fff;
}

.m-table__row:nth-child(even) {
	background-color: #f6f6f6;
}

.m-table__row--header {
	color: #fff;
	background-color: #9cad4f;
	border-bottom: 0;
}

.m-table__col {
	text-align: left;
	padding: .25rem .5rem;
}

.m-wohnungen {
	width: 100%;
}

.m-wohnungen__info {
	position: relative;
	width: 100%;
	height: 800px;
}

.m-wohnungen__background {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.m-wohnungen__background-image {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: lightblue;
}

.m-wohnungen__background-info {
	font-size: .75rem;
	color: #fff;
	text-transform: uppercase;
	position: absolute;
	left: .5rem;
	bottom: .5rem;
	z-index: 2;
	margin: 0;
}

.m-wohnungen__content {
	position: absolute;
	left: 0;
	bottom: 66px;
	z-index: 2;
	width: 100%;
}

.m-wohnungen__content-title {
	font-weight: 300;
	font-size: 2rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #fff;
	text-shadow: 0 .125em .375em rgba(0,0,0,1);
	margin: 0 0 1rem;
	padding: 0 2.75rem;
}

.m-wohnungen__content-title-highlight {
	font-weight: 700;
}

.m-wohnungen__content-body {
	box-sizing: border-box;
	width: 100%;
	padding: .5rem 2.75rem .75rem;
	background: rgba(255, 255, 255, .9);
}

.m-wohnungen__content-body-title {
	font-weight: 400;
	font-size: 1.25rem;
	text-transform: uppercase;
	color: #38685e;
	margin: 0;
}

.m-wohnungen__content-body-text {
	margin: 0;
}

.m-wohnungen__impressions {
	display: flex;
	height: 500px;
}

.m-wohnungen__impression {
	position: relative;
	width: 400px;
	height: 100%;
	background: #eee;
}

.m-wohnungen__impression-image {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.m-wohnungen__impression-text {
	font-size: .75rem;
	text-transform: uppercase;
	position: absolute;
	left: .5rem;
	top: .5rem;
	z-index: 2;
	margin: 0;
}

.m-wohnungen__list {
	padding: 3rem 2.75rem;
}

.m-wohnungen__list-title {
	font-weight: 300;
	font-size: 2rem;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #999;
	margin: 0 0 1rem;
}

.m-wohnungen__list-title-highlight {
	font-weight: 300;
	color: #38685e;
}

.m-wohnungen__list-footer {
	font-size: .75rem;
}