html, body { height: 100%; margin: 0; background-color: #e42322; }
.contactform { background-color: #fff; }
* { -webkit-text-size-adjust: none; }

h1, h2, h3, h4 { font-family: Helvetica, Arial, sans-serif; font-weight: bold; font-style: normal; }
p, figcaption, li, #menu h3, #kontakt h3, .icon-text, label, input, textarea { font-family: Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; }

h2 { font-size: 1.5em; }
h3 { font-size: 1.25em; }
h4 { font-size: 1.12em; }
.content { font-size: 1em; word-wrap: break-word; }
#impressum { padding-top: 2.5em; }
a { border: 0; }
h1, h2, #menu h3, #contact h3, #aktuelles h3 { margin: 0; }
p, li, blockquote, .icon-text, small, textarea { line-height: 140%; }
a { color: #000; }
p:last-of-type { margin-bottom: 0; padding-bottom: 0; }

.content-wrapper { padding: 1em 0; background-color: #fff; }
.content-wrapper::after { content: ""; clear: both; display: table; }
.content { padding: 1em; }
.home .content, #kontakt .content { text-align: center; }

.button { margin-top: 1.5em; }
.button a { padding: .6em 1em; text-decoration: none; border: 1px solid #666; border-radius: 5px; color: #666; }
.button a:hover { color: #fff; background-color: #e42322; border-color: #e42322; }
#header .button a { border-color: #fff; color: #fff; }
#header .button a:hover { color: #e42322; background-color: #fff; }

#menu, #header, #kontakt { background-color: #e42322; }
#header, #header a, #kontakt, #kontakt a, #menu, #menu a { color: #fff; }
#header h1, #kontakt h2, #menu h2 { color: #fff; }
#legal, #legal a { color: #fff; }
#team, #karriere, input[type=text], textarea { background-color: #eee; }
#aktuelles { padding-top: 0; }
#aktuelles .content { padding-top: 0; }

.icon { width: 5em; height: 5em; margin-bottom: .8em; }

hr { border: 0; height: 1px; background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0)); width: 50%; margin: 1em auto; }

label { width: 10em; display: block; margin: .6em 0 .3em 0; font-size: .8em; }
input[type=text], textarea { font-size: 1em; width: 97%; padding: .3em; border: 0; }
p.error, label.error { color: #f00; }
input.error, textarea.error { background-color: #fceeee; border: 0; }
figure { margin: 0; padding: 0; }
textarea { height: 10em; }
input[type=submit] { float: right; }
.date { margin-top: 3em; font-size: 80%; }
.news-teaser { width: 100%; margin-bottom: 1em; }
.team-member p { margin-bottom: 2em; }
.team-member img { width: 10em; height: 10em; }
#buecher img { width: 100%; margin: 1.5em 0 .5em 0; }
#team h2 { margin-bottom: 1em; }
#menu { text-align: center; z-index: 3; position: fixed; top: 0; width: 100%; height: 100%; left: -100%; }
#logo { width: 10em; position: relative; left: -.25em; }
#menu>div { width: 100%; padding: 0; position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
#menu ul { list-style-type: none; padding: 0; margin-top: 2em; margin-bottom: 0; }
#menu li { font-size: 1.3em; margin-bottom: .5em; }
#menu li:last-of-type { margin-bottom: 0; }
#menu a { text-decoration: none; }
#menu .language { margin-top: 1.2em; }
#menu-icon img { position: fixed; z-index: 1; left: 1vh; top: 1vh; font-size: 1.6em; width: 2em; height: 2em; }
#close-icon img { width: 1.3em; height: 1.3em; position: absolute; top: .8em; right: .8em; }
#menu-icon:hover, #close-icon:hover { cursor: pointer; }
.menu-open .content-wrapper { opacity: .1; }
.fa-phone { position: relative; top: .07em; }
.home #header { padding: 2em 0; }
#header { text-align: center; }
.icon-text { text-indent: -1.6em; margin-left: 1.6em; }
.icon-text img { width: 1.3em; height: 1.3em; position: relative; top: .3em; margin-right: .05em; }
.hasHiddenText:before { content: "Seelinger"; }
#ihk-banner { width: 22em; margin-top: 1em; border: 1px solid #fff; }

@media only screen and (min-width: 768px) {
	.content, .news-teaser { width: 70%; margin: 0 auto; max-width: 40em; }
	.news-teaser { display: block; }
	.team-member { width: 50%; float: left; height: 18em; }
	#aktuelles { padding-top: 2em; }
	#aktuelles h3 { margin-top: 1em; }
	#header { text-align: left; }
	#menu { left: -18em; width: 18em; }
}

@media only screen and (min-width: 1000px) {
	.content, .news-teaser { font-size: 1.2em; }
}

@media only screen and (max-height: 430px) {
	#menu-icon { display: none; }
}
