* {
 	margin: 0px;
 	padding: 0px;
}

html {
	position: relative;
	min-height: 100%;
}

body {
  	background-color: #F2F1EF;
  	font-family: 'Roboto', sans-serif;
  	font-size: 16px;
  	font-weight: 300;
  	line-height: 1.45;
  	color: #484848;
  	margin: 0 0 0 0; /*bottom margin = height of footer*/
  	-webkit-animation: bugfix infinite 1s; 
}

/*overrides*/

@-webkit-keyframes bugfix { 
    from { padding: 0; } to { padding: 0; } 
}

/*footer*/

footer {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 0; /*height of footer = bottom margin*/
	width: 100%;
	background: ;
}

/*text*/

p {
	font-size: 1em;
	padding-bottom: 12px;
	line-height: 1.6em;
}

p em {
	font-style: italic;
}

h1, h2, h3, h4, h5, h6 {
	padding-bottom: 12px;
	font-weight: 300;
}

h1 {
	font-size: 1.6em;
}

h2 {
	font-size: 1.5em;
}

h3 {
    font-size: 1.4em;
}

h4 {
	font-size: 1.3em;
}

h5 {
	font-size: 1.2em;
}

h6 {
	font-size: 1.1em;
}

.nopad {
	padding-bottom: 0;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.notexttransform {
	text-transform: none !important;
}

.caps {
	text-transform: uppercase;
}

.lowercase {
	text-transform: uppercase;
}

small {
	font-size: 0.9em;
}

small, .font_small {
	font-size: 0.9em;
}

a {
	color: #848484;
	text-decoration: none;
}

a:hover { 
	color: #484848;
	cursor: pointer;
}

a.reverse {
	color: #484848;
	text-decoration: none;
}

a.reverse:hover { 
	color: #848484;
	cursor: pointer;
}

li {
	font-size: inherit;
}

i {
    font-style: italic;
}

strong {
	font-weight: 700;
}

b {
	font-weight: 700;
}

blockquote {
    font-style: italic;
    padding: 20px 5% !important;
    border-left: 2px solid #DBBB55;
    margin: 20px 0;
    font-size: 1em;
    color: #555555;
}

blockquote p:last-of-type {
	padding-bottom: 0;
}

.caption-text {
	font-size: 0.9em;
	line-height: 3em;
}

/*sm icons*/

#sms {
	position: absolute;
	bottom: 24px;
	right: 3%;
	z-index: 4000;
}

ul.smicons {
	list-style-type: none;
}

ul.smicons li {
	display: inline-block;
	margin: 0 7px;
	width: 35px;
	vertical-align: middle;
}

ul.smicons li img {
	width: 100%;
	height: auto;
	opacity: 1;
}

ul.smicons li img:hover {
	opacity: 0.7;
}

/*footer*/

.footer-content {
	width: 90%;
	min-height: 10px;
	overflow: hidden;
	padding: 40px 5%;
	border-top: 1px solid rgba(38,37,35,0.4);
}

#footsms {
	float: none;
	width: 100%;
	text-align: center;
}

#footsms ul.smicons li img {
	width: 100%;
	height: auto;
	opacity: 0.7;
}

#footsms ul.smicons li img:hover {
	opacity: 0.4;
}

.impressum {
	margin: 24px 0;
}

/*lander styling*/

.landerwrap {
	position: relative;
}

.lander {
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
	z-index: 1000;
}

.lander img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.filter {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	background-color: #282828;
	z-index: 2000;
	opacity: 0.6;
	background: linear-gradient(transparent, #282828);
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.ident {
    position: absolute;
    width: 170px;
    min-height: 10px;
    overflow: hidden;
    z-index: 3000;
    left: 5%;
    top: 76px;
    -webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.ident img {
	width: 100%;
	height: auto;
}

.ident:hover {
	opacity: 1;
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.ident:hover ~ .filter {
	opacity: 0.6;
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.filter:hover ~ .ident{
	opacity: 1;
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.ctas {
    position: absolute;
    bottom: 24px;
    width: 90%;
    z-index: 3000;
    padding: 0 5%;
}

.button {
	border-top: 1px solid #F2F1EF;
	padding: 10px 22px;
	background-color: transparent;
	margin: 20px 0 0 0;
	width: 70px;
	display: inline-block;
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

.button a {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	color: #F2F1EF;
	text-align: center;
	text-transform: uppercase;
}

.button:first-of-type {
	margin-left: 4px;
}

.button:last-of-type {
	margin-left: -4px;
}

.button:hover {
	cursor: pointer;
	opacity: 0.7;
	-webkit-transition: all 0.4s ease-in 0s;
    -moz-transition: all 0.4s ease-in 0s;
    -o-transition: all 0.4s ease-in 0s;
    transition: all 0.4s ease-in 0s;
}

#lfloat {
	float: left;
}

#rfloat {
	float: right;
	clear: right;
}

/*listings*/

.bfold {
	width: 90%;
	padding: 80px 5%;
	min-height: 10px;
	overflow: hidden;
}

h2#title {
    font-weight: 300;
    color: #666;
    padding-bottom: 1em;
    line-height: 1.4em;
}

/*mailchimp signup form*/

.mcsignup {
    margin-top: 60px;
}

#mc_embed_signup input.email {
    font-family: "Roboto", sans-serif !important; 
    font-size: 1em !important;
    font-weight: 300 !important;
    border: 1px solid #ABB0B2 !important;
    -webkit-border-radius: 2px !important;
    -moz-border-radius: 2px !important;
    border-radius: 2px !important;
    color: #343434 !important;
    background-color: #fff !important;
    box-sizing: border-box !important;
    height: 32px !important;
    padding: 23px 1em !important;
    display: inline-block !important;
    float: left;
    margin: 0 !important;
    width: 74% !important;
    vertical-align: top !important;
}

#mc_embed_signup .clear {
    display: inline-block;
    width: 24%;
    margin-left: 2%;
}

#mc_embed_signup .button {
    font-size: 1em !important;
    font-weight: 300 !important;
    border: none;
    -webkit-border-radius: 2px !important;
    -moz-border-radius: 2px !important;
    border-radius: 2px !important;
    letter-spacing: .03em; 
    color: #fff;
    background-color: #aaa;
    box-sizing: border-box;
    height: 32px;
    line-height: 0 !important; 
    width: 100%;
    display: inline-block;
    margin: 0;
    transition: all 0.23s ease-in-out 0s;
    padding: 24px 0 !important;
}

/*overrides*/

input { 
	-webkit-appearance: none; 
	-webkit-border-radius: 0; 
	border-radius: 0;
}

input[type="text"] { 
	-webkit-appearance: none; 
	-webkit-border-radius: 0; 
	border-radius: 0;
}

input[type="submit"] { 
	-webkit-appearance: none; 
	-webkit-border-radius: 0; 
	border-radius: 0;
}

textarea { 
	-webkit-appearance: none; 
	-webkit-border-radius: 0; 
	border-radius: 0;
}

/*viewport breakpoints*/

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

	.ident {
		width: 38%;
		padding: 5%;
	}
}*/

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

	.ident {
		width: 50%;
		padding: 5%;
	}
}*/

@media only screen and (max-width: 800px) {

	#sms {
		width: 100%;
    	text-align: center;
    	right: 0;
    	top: 24px;
    	bottom: auto;
	}

	.ctas {
		text-align: center;
	}
}

@media (max-width: 768px) {

	#mc_embed_signup .clear {
	    width: 24% !important;
	    display: inline-block !important;
	}
}

@media only screen and (max-width: 750px) {

	#footsms {
		float: none;
		width: 100%;
    	text-align: center;
	}

	ul.smicons li {
	    margin: 0 7px;
	}

	.ctas {
	    width: 94%;
	    padding: 0 3%;
	}

	.bfold {
		width: 94%;
		padding: 60px 3%;
	}

	.footer-content {
		width: 94%;
		padding: 40px 3%;
	}
}

@media only screen and (max-width: 550px) {

	.ident {
		width: 70%;
		padding: 5%;
	}

	ul.smicons li {
	    width: 8%;
	    margin: 0 1%;
	}

	#mc_embed_signup input.email {
		width: 90% !important;
		display: block !important;
		text-align: center !important;
		margin: 0 auto !important;
		float: none;
	}

	#mc_embed_signup .clear {
	    width: 90% !important;
	    display: block !important;
	    margin: 12px auto 0!important;
	}	
}

@media only screen and (max-width: 350px) {
	
	.button {
		width: 50px;
	}

	.button p {
		font-size: 0.92em;
	}
}

<style type="text/css">div, p, a, li, td { -webkit-text-size-adjust:none; }</style>