/*
text/css-document
(c) mehrblick : marketing, Matthias Ehrhardt
*/
/* normalize */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, hr, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, input, textarea, select, button, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin:0; padding:0; border:0; vertical-align:baseline; background:none;
}
html, body {
	font:normal 100%/100% aller_lightregular, Arial, Helvetica, sans-serif; -ms-text-size-adjust:100%; -webkit-text-size-adjust:100%;
}
body {
	color:#fff; background-color:#032537;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
    display:block;
}
audio, canvas, video {
    display:inline-block;
}
table {
	border-collapse:collapse; border-spacing:0;
}
ol, ul {
	list-style:none;
}
a {
	background:transparent;
}
	a:focus {
		outline:thin dotted;
	}
	a:active, a:hover {
		outline:0;
	}
img {
	display:block; border:0;
}
b, strong {
	font-weight: bold;
}
hr {
	-moz-box-sizing: content-box; box-sizing: content-box; height: 0;
}
q {
	quotes: "\201C" "\201D" "\2018" "\2019";
}
small {
	font-size: 80%;
}
sub, sup {
	font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;
}
	sup {
		top: -0.5em;
	}
	sub {
		bottom: -0.25em;
	}
/* global */
a, a:link, a:visited, a:hover, a:visited {
	text-decoration:none; color:inherit;
}
#homepage {
	background:url(../images/startseite-desktop.jpg) no-repeat #032537; background-size:100% auto;
}
.main_wrap {
	width:93%; margin:0 auto; overflow:hidden; position:relative;
}
#homepage .content .main_wrap {
	padding-top:4.5%;
}
.text_wrapper {
	margin:0 1.25em;
}
body > header {
	position:fixed; top:0; left:0; width:100%; height:auto; background-color:#d9dee1; border-bottom:1px solid #fff; box-shadow:0 0 .625em #000; z-index:999;
}
body#homepage header {
	background-color:transparent; border:none; box-shadow:none;
}
	body > header h1 {
		float:left; font-size:1em; line-height:1.5em; font-weight:normal; color:#032537; text-shadow:0 1px 0 #fff;
	}
	body#homepage header h1 {
		color:#fff; text-shadow:0 1px 0 #032537;
	}
		body > header h1 a {
			display:block; float:left; padding:1em 1em 1em 5.25em; background:url(../images/logo-stuckateur-ermischer.png) no-repeat 1.25em center; background-size:3.0625em 2.9375em;
		}
		body#homepage header h1 a {
			background:url(../images/logo-stuckateur-ermischer-w.png) no-repeat 1.25em center; background-size:3.0625em 2.9375em;
		}
	body > header nav {
		float:right; line-height:1.5em; margin-right:.25em;
	}
	body#homepage header nav {
		display:none;
	}
		body > header nav ul {
			color:#032537; text-shadow:0 1px 0 #fff;
		}
		body#homepage header nav ul {
			color:#fff; text-shadow:0 1px 0 #032537;
		}
			body > header nav ul li {
				float:left;
			}
				body > header nav ul li a, header nav ul li a:link {
					display:block; padding:1em;
				}
				body > header nav ul li a:hover, header nav ul li a:active, header nav ul li a.active {
					text-decoration:underline;
				}
				body > header nav ul li a.creditssub {
					padding:.75em .5em .25em; font-family:pulsarjsregular; font-size:1.25em; line-height:1.5em; text-decoration:none;
				}
				body > header nav ul li a.credits {
					padding-left:.5em;
				}
.content {
	margin-top:5.25em;
}
	.content .info_wrap {
		display:none; position:fixed; top:5.3125; right:2%; width:25%; height:auto; z-index:1001;
	}
		.content .info_wrap section {
			margin-bottom:1.25em;;
		}
			.content .info_wrap section header {
				overflow:hidden; margin:0 1.25em 0 .625em;
			}
				.content .info_wrap section header .close_section {
					display:block; float:left; width:20px; height:20px; font-family:pulsarjsregular; background:url(../images/close_small.png) no-repeat top left;
				}
				.content .info_wrap section header time {
					float:left; margin-left:.625em; font-size:.625em; line-height:1em; text-shadow:0 1px 0 #000; color:#d9dee1;
				}
				.content .info_wrap section header .triangle {
					position:relative; float:right; margin-right:10%; height:0; width:0; border-style:solid; border-width:0 20px 20px 20px; border-color:transparent transparent #fff transparent;
				}
					.content .info_wrap section header .triangle * {
						position:absolute; top:1px; left:1px; margin-left:-20px; float:right; height:0; width:0; border-style:solid; border-width:0 19px 20px 19px; border-color:transparent transparent #d9dee1 transparent;
					}
			.content .info_wrap section article {
				overflow:hidden; margin:-1px 1.25em .625em .625em; border:1px solid #fff; box-shadow:0 0 .625em #000; background:#d9dee1;
			}
				.content .info_wrap section article * {
					color:#032537; text-shadow:0 1px 0 #fff;
				}
	.content .left_col {
		float:left; width:75%;
	}
	.content .right_col {
		float:left; width:25%;
	}
		#homepage .content cite {
			display:block; margin:0 0 0 3.3125em; font-family:aller_lightitalic; font-style:normal; font-size:1.5em; line-height:1.5em; text-shadow:0 1px 0 #032537;
		}
			#homepage .content cite small {
				display:block; margin-top:1em; font-size:.5em; line-height:1.5em; text-shadow:0 1px 0 #032537;
			}
		#homepage .content .start_link {
			display:block; float:left; margin:2em 2em 2em 5em; padding:1em 2em; font-family:aller_lightitalic; font-size:1em; line-height:1.5em; text-shadow:0 1px 0 #fff; border:1px solid #fff; color:#032537; background:#d9dee1; opacity:.8;
		}
		#homepage .content .start_link:hover {
			border:1px solid #9d161f; box-shadow:0 0 .625em #000; opacity:1; color:#9d161f;
		}
		#homepage .content .start_link.gallery {
			color:#9d161f;
		}
		#homepage .content .start_link.about {
			margin-left:2em;
		}
	.content section {
		overflow:hidden;
	}
		.content section hgroup {
			margin:0 1.25em; overflow:hidden; /* position:relative; z-index:1111; background:#032537; */
		}
			.content section hgroup h1 {
				float:left; font-size:1.5em; line-height:1.25em; margin:.75em 0 .625em 0; font-weight:normal; text-transform:uppercase; text-shadow:0 1px 0 #000;
			}
				.content section hgroup h1.services {
					margin-bottom:0;
				}
			.content section hgroup h2 {
				float:right; margin-top:1.5625em; font-family:aller_lightregular; font-size:1em; line-height:1.25em; font-weight:normal; text-align:right; color:#9d161f; text-shadow:0 1px 0 #000;
			}
			.content section article p {
				line-height:1.5em; margin-bottom:.75em; text-shadow:0 1px 0 #000;
			}
	.content#about .portrait_image {
		position:relative; width:30%; height:auto; float:right; margin:0 0 1.25em 2.5em; border-radius:50%; border:1px solid #fff;
	}
		.content#about .portrait_image > div {
			position:absolute; top:0; left:0; width:100%; height:100%; border-radius:50%; box-shadow:inset 0 0 .625em #000;
		}
		.content#about .portrait_image img {
			width:100%; max-width:100%; height:auto; border-radius:50%;
		}
		.content#about ul.services, .content#about ul.social {
			overflow:hidden;
		}
			.content#about ul.services li, .content#about ul.social li {
				position:relative; float:left; width:auto;
			}
				.content#about ul.services li a {
					display:block; margin:.625em 1.25em; padding:0 1.25em; border:1px solid #fff; line-height:2.375em; text-shadow:0 1px 0 #fff; box-shadow:0 0 .625em #000; color:#032537; background:#d9dee1;
				}
					span.gallery_icon {
						font-family:pulsarjsregular; vertical-align:text-bottom; line-height:1em;
					}
					.content#about ul.services li a span.gallery_icon {
						font-size:1em;
					}
				.content#about ul.social li a {
					display:block; width:2.5em; height:2.5em; margin:1.25em .625em; border:1px solid #fff; box-shadow:0 0 .625em #000;
				}
				.content#about ul.social li:first-child a {
					margin-left:1.25em;
				}
					.content#about ul.social li a img {
						width:100%; height:auto;
					}
				.content#about ul.services li a:hover, .content#about ul.social li a:hover {
					border:1px solid #9d161f; color:#9d161f;
				}
				.content#about ul.services li a.n_link, .content#about ul.services li a.n_link:hover {
					cursor:default; color:#032537; border:1px solid #fff;
				}
	.content#about .right_col section article {
		overflow:hidden; margin:0 1.25em 0 .625em;
	}
		.content#about .right_col section article hgroup {
			margin-left:0; margin-right:0;
		}
			.content#about .right_col section article hgroup h1 {
				float:right;
			}
		.content#about .right_col section article ul {
			overflow:hidden;
		}
			.content#about .right_col section article ul li {
				float:right; width:auto; height:auto; margin-bottom:2.5em;
			}
				.content#about .right_col section article ul li a {
					display:block; width:100%; height:auto;
				}
					.content#about .right_col section article ul li a img {
						display:block; width:100%; max-width:100%;
					}
	.content#gallery nav.submenu {
		display:none; position:fixed; top:5.275em; right:2%; width:25%; height:auto; z-index:998;
	}
		nav.submenu a.close_submenu {
			display:block; height:1.25em; margin:0 1.25em; background: url(../images/close_small.png) no-repeat;
		}
		nav.submenu > ul {
			margin:0 1.25em;
		}
		nav.submenu ul li {
			margin-bottom:.625em;
		}
			nav.submenu ul li a {
				display:block; padding:.75em 1.25em; overflow:hidden; color:#032537; background:#d9dee1; text-shadow:0 1px 0 #fff; box-shadow:0 0 .625em #000;
			}
			nav.submenu ul li a:hover {
				color:#fff; text-shadow:0 1px 0 #000; background:#81929b;
			}
				nav.submenu ul li a span {
					display:block; float:left; padding:.0625em 0.625em 0 0;
				}
	a.jump {
		display:block; width:1.875em; height:auto; position:fixed; left:0; bottom:0; font-family:pulsarjsregular; font-size:1.875em; line-height:1.875em; text-align:center;
	}
	ul.gallery {
		overflow:hidden;
	}
		ul.gallery li {
			float:left; overflow:hidden;
		}
			ul.gallery li .image_frame {
				position:relative; margin:1.25em; /* padding:1.125em; */ overflow:hidden; border:.75em solid #d9dee1; box-shadow:0 0 .625em #000;
			}
				ul.gallery li .image_frame img.please_wait {
					margin:1.25em auto;
				}
				ul.gallery li .image_frame a.image_info {
					display:none; position:relative; width:2.5em; height:1.25em; z-index:9; box-shadow:0 0 .3125em #000;
				}
				a.image_info.image_counter {
					float:left; text-align:center; color:#81929b; background:#d9dee1;
				}
					a.image_info.image_counter span {
						font-size:.6875em;
					}
				a.image_info.pinterest_small {
					float:right; background:url(../images/pinit.png) no-repeat center #d9dee1;
				}
				ul.gallery li .image_frame a.image_link {
					position:static; display:block; /* border:1px solid #fff; */ z-index:2;
				}
					ul.gallery li .image_frame a.image_link .image_shadow {
						position:absolute; top:0; width:100%; height:100%; /* border:1px solid #fff; */ box-shadow:inset 0 0 .3125em #000; z-index:3;
					}
					ul.gallery li .image_frame a.image_link h3 {
						display:none; position:absolute; bottom:0; left:0; width:100%; margin:0; padding-top:1em; z-index:4; font-size:1em; font-family:aller_lightregular; font-weight:normal; line-height:1.25em; text-shadow:0 1px 0 #fff; color:#032537; box-shadow:0 0 .3125em #000; background:#d9dee1;
					}
					ul.gallery li .image_frame a.image_link img {
						position:absolute; /* top:0; width:100%; */ z-index:1;
					}
			ul.gallery li .image_description {
				display:none;
			}
	#news .akt_image {
		text-align:center; margin-bottom:.5em; overflow:hidden;
	}
	#news .akt_image img {
		width:100%; max-width:100%; height:auto; margin:0 auto;
	}
#map-canvas {
	height:37.5em;
}
#maps_content p, #maps_content h1, #maps_content a {
	font-family:aller_lightregular; font-weight:normal; font-size:1em; color:#032537; text-shadow:none;
}
footer {
	 width:100%; text-align:right; font-size:.625em; line-height:4em;
}
#homepage footer {
	position:fixed; bottom:0; left:0;
}
	.overlay {
		display:none; position:fixed; top:0; left:0; width:100%; height:100%; z-index:999; background:url(../images/overlay.png);
	}
		.overlay .main_image {
			margin:5em auto .625em; width:auto; height:80%; border:1em solid #d9dee1; box-shadow:0 0 0.625em #000;
		}
		.overlay .prev_image, .overlay .next_image {
			position:absolute; top:0; width:30%; height:100%; display:block; opacity:.7;
		}
		.overlay .prev_image:hover, .overlay .next_image:hover {
			opacity:1;
		}
		.overlay .prev_image {
			left:0; background:url(../images/arrow-left-white-m.png) no-repeat center; z-index:1001;
		}
		.overlay .next_image {
			right:0; background:url(../images/arrow-right-white-m.png) no-repeat center; z-index:1002;
		}
		.overlay > img {
			display:none;
		}
		.overlay .overlay_header {
			position:absolute; top:0; right:0; width:100%; height:auto; border-bottom:1px solid #fff; background:#d9dee1; box-shadow:0 0 .9375em #000; z-index:1003;
		}
			.overlay .overlay_header h2 {
				float:left; margin:0 1.25em; padding:.8125em 0; font-family:aller_lightregular; font-size:1em; line-height:1.25em; font-weight:normal; text-shadow:0 1px 0 #fff; color:#032537;
			}
				.overlay .overlay_header h2 span.gallery_icon {
					font-size:1.875em; float:left;
				}
				.overlay .overlay_header h2 span.gallery_icon + span {
					padding-left:.625em; line-height:1.875em; display:none;
				}
				.overlay .overlay_header a {
					display:block; float:right; width:22px; height:3.5em; margin:0 1.25em;
				}
				.overlay .overlay_header a.close {
					background:url(../images/close_large.png) no-repeat center; background-size:21px auto;
				}
				.overlay .overlay_header a.info {
					background:url(../images/info_large.png) no-repeat center;
				}
			.overlay .overlay_header p.image_description {
				display:none; margin:0 1.25em; padding:.9375em 0 0.625em 2.5em; font-family:aller_lightregular; font-size:1em; line-height:1.25em; font-weight:normal; text-shadow:0 1px 0 #fff; color:#032537;
			}
.main_wrap section li {
	width:25%;
}
/* --- */
h2 {
	font-family:allerbold; font-weight:normal; font-size:1em; line-height:1.25em; margin-bottom:.625em;
}

h3 {
	font-family:alleritalic; font-weight:normal; font-size:.875em; line-height:1.25em; margin-bottom:.625em;
}
p span.tab {
	display:inline-block; width:30%;
}
p .marked_link {
	text-decoration:underline;
}
	p .marked_link:hover, p .marked_link:active {
		text-decoration:none;
	}
p a, p a:link, p a:visited  {
	text-decoration:underline;
}
p a:hover, p a:active  {
	text-decoration:none;
}
.c_red {
	color:#9d161f;
}
em {
	font-family:aller_lightitalic; font-style:normal; font-weight:normal;
}
strong {
	font-family:allerbold; font-style:normal; font-weight:normal;
}
a[href^="tel"]:link, a[href^="tel"]:visited, a[href^="tel"]:hover {
	text-decoration:none !important; cursor:default;
}
/* breakpoints landscape */
@media only screen and (min-width: 1441px) and (orientation: landscape){
	#homepage {
		background:url(../images/startseite/startseite-2560-l.jpg) no-repeat #032537; background-size:100% auto;
	}
}
@media only screen and (min-width: 1031px) and (max-width: 1440px) and (orientation: landscape){
	#homepage {
		background:url(../images/startseite/startseite-1440-l.jpg) no-repeat #032537; background-size:100% auto;
	}
}
@media only screen and (min-width: 771px) and (max-width: 1030px) and (orientation: landscape){
	#homepage {
		background:url(../images/startseite/startseite-1030-l.jpg) no-repeat #032537; background-size:100% auto;
	}
}
@media only screen and (min-width: 481px) and (max-width: 770px) and (orientation: landscape){
	#homepage {
		background:url(../images/startseite/startseite-770-l.jpg) no-repeat #032537; background-size:100% auto;
	}
}
@media only screen and (max-width: 480px) and (orientation: landscape){
	#homepage {
		background:url(../images/startseite/startseite-480-l.jpg) no-repeat #032537; background-size:100% auto;
	}
}
/* breakpoints portrait */
@media only screen and (min-width: 771px) and (orientation: portrait){
	#homepage {
		background:url(../images/startseite/startseite-1080-p.jpg) no-repeat #032537; background-size:100% auto;
	}
}
@media only screen and (min-width: 481px) and (max-width: 770px) and (orientation: portrait){
	#homepage {
		background:url(../images/startseite/startseite-770-p.jpg) no-repeat #032537; background-size:100% auto;
	}
	#homepage .content .start_link {
		margin-bottom:.5em;
	}
	#homepage .content .start_link.about {
		margin-left:5em;
	}
}
@media only screen and (max-width: 480px) and (orientation: portrait){
	#homepage {
		background:url(../images/startseite/startseite-480-p.jpg) no-repeat #032537; background-size:100% auto;
	}
}
/* layout breakpoints */
@media only screen and (max-width: 1440px) {
	html, body {
		font-size:93.75%;
	}
	/*  */
	.content {
		margin-top:4em;
	}
	.main_wrap section li {
		width:33.3333%;
	}
	.overlay .overlay_header h2 {
		padding:.8em 0;
	}
}
@media only screen and (max-width: 960px) {
	.main_wrap section li {
		width:50%;
	}
	.content {
		font-size:87.5%;
	}
	.content .left_col, .content .right_col {
		float:none; width:100%;
	}
	.content .info_wrap {
		width:35%;
	}
	#about.content .right_col section article hgroup h1 {
		float:none;
	}
	#about.content .right_col section article {
		margin:0 1.25em;
	}
	#about.content .right_col section article ul li {
		float:left; width:20%; margin-right:5%; margin-bottom:1.5em;
	}
	body > header h1 a, body#homepage header h1 a {
		padding-top:.75em; padding-bottom:.75em; background-size:auto 30px;
	}
	header nav ul li a, header nav ul li a:link {
		padding:.75em;
	}
	body > header nav ul li a.creditssub {
		padding:.5em .25em .25em .25em;
	}
	.content section article p {
		line-height:1.5em;
	}
	ul.gallery li .image_frame a.image_info, ul.gallery li .image_frame a.image_link h3 {
		display:block;
	}
	a.image_info.pinterest_small {
		background-size:77%;
	}
	.overlay .main_image {
		width:90%; height:auto;
	}
	.overlay .next_image {
		background: url(../images/arrow-right-white-m.png) no-repeat 97% 40%;
	}
	.overlay .prev_image {
		background: url(../images/arrow-left-white-m.png) no-repeat 3% 40%;
	}
}
@media only screen and (max-width: 770px) {
	html, body {
		font-size:87.5%;
	}
	.content {
		font-size:100%;
	}
	body > header h1 {
		line-height:1.25em;
	}
		body > header h1 a, body#homepage header h1 a {
			padding:.25em 0 .25em 4.5em;
		}
			body > header h1 a span {
				display:block; font-size:.9em;
			}
	.main_wrap {
		width:100%;
	}
	header nav ul li a.contact {
		text-indent:-9999px; width:1em; background:url(../images/i-kontakt.png) no-repeat center;
	}
	header nav ul li a.news {
		text-indent:-9999px; width:1em; background:url(../images/i-aktuelles.png) no-repeat center;
	}
	.content .info_wrap {
		width:50%;
	}
	#gallery.content nav.submenu {
		display:none; width:100%; height:100%; overflow:auto; top:0; right:0; background:#032537; z-index:2222;
	}
		nav.submenu a.close_submenu {
			height:3em; background-position:.5em 1em;
		}
		nav.submenu ul li {
			margin-bottom:0; border-bottom:1px solid transparent;
		}
			nav.submenu ul li a {
				box-shadow:none;
			}
	#about.content .right_col section article ul li {
		margin-bottom:1em; width:30%; margin-right:3.3333%;
	}
}
@media only screen and (max-width: 640px) {
	#homepage .content .main_wrap {
		padding-top:1.5%;
	}
		#homepage .content cite {
			font-size:1.25em; margin-left:1em;
		}
		#homepage .content .start_link, #homepage .content .start_link.about {
			margin:2em 1.25em;
		}
	.content .info_wrap {
		width:100%; height:100%; padding-top:10px; top:0; left:0; right:0; overflow:auto; background:#032537;
	}
	.content .info_wrap section header .triangle {
		display:none;
	}
	header nav ul li a.credits {
		text-indent:-9999px; width:1em; background:url(../images/i-referenzen.png) no-repeat center;
	}
	header nav ul li a.about {
		text-indent:-9999px; width:1em; background:url(../images/i-info.png) no-repeat center;
	}
}
@media only screen and (max-width: 480px) {
	.content {
		margin-top:3.5em;
	}
	.main_wrap section li {
		width:100%;
	}
	#about.content .portrait_image {
		width:50%;
	}
	#about.content .right_col section article ul li {
		width:45%; margin-right:5%;
	}
	#about.content ul.services li {
		width:50%;
	}
		#about.content ul.services li a {
			line-height:1.5em; padding:.5em 1.25em;
		}
	#contact .text_wrapper {
		overflow:hidden;
	}
	#contact p.adress1, #contact p.adress2, #contact p.contact {
		float:left; width:50%;
	}
	p span.tab {
		width:auto; margin-right:.5em;
	}
}
@media only screen and (max-width : 360px) {

}