/* ----------------------------------------------------------------
	Responsive CSS
-----------------------------------------------------------------*/
.device-xl #logo, 
.device-lg #logo {
	width:319px !important;
	height:auto;
}

@media (max-width: 1199.98px) {

	canvas {
		max-width: 100%;
		height: auto !important;
	}

	
}


@media (min-width: 992px) and (max-width: 1199.98px) {

	#wrapper { width: 1000px;  }

	#primary-menu.sub-title ul > li > a {
		padding-left: 15px;
		padding-right: 15px;
	}


	
	
}


@media (max-width: 991.98px) {

	#wrapper {
		width: 100%;
		margin: 0;
		box-shadow: none;
	}


	#header,
	#header-wrap { height: auto !important; }

	
	body:not(.primary-menu-open) #header.dark.transparent-header-responsive,
	body:not(.primary-menu-open) #header.transparent-header-responsive {
		background-color: transparent;
		border: none;
	}

	body:not(.primary-menu-open) #header.semi-transparent.transparent-header-responsive {
		background-color: rgba(255,255,255,0.8);
		z-index: 1;
	}

	body:not(.primary-menu-open) #header.transparent-header-responsive + #slider,
	body:not(.primary-menu-open) #header.transparent-header-responsive + #page-title.page-title-parallax,
	body:not(.primary-menu-open) #slider + #header.transparent-header-responsive,
	body:not(.primary-menu-open) #header.transparent-header-responsive.floating-header + #slider,
	body:not(.primary-menu-open) #header.transparent-header-responsive + #google-map {
		top: -101px;
		margin-bottom: -101px;
	}

	
	#logo {
		display: block;
		float: none;
		padding: 0 !important;
	}

	#logo img {
		width:250px;
		height:auto;
	}

	#logo a.standard-logo { display: inline-block; }
	
	#primary-menu {
		display: block;
		float: none;
		left:0px;
	}

	#primary-menu-trigger {
		opacity: 1;
		pointer-events: auto;
		top: 10px;
		margin-top: 0;
		right:10px;
		z-index: 1;
	}

	#primary-menu .container #primary-menu-trigger {
		top: 5px;
		right:10px;
	}

	#primary-menu > ul,
	#primary-menu > div > ul {
		display: none;
		float: none !important;
		border: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		-webkit-transition: none;
		-o-transition: none;
		transition: none;
	}

	#primary-menu > div > ul { padding-top: 60px !important; }

	body:not(.top-search-open) #primary-menu-trigger {
		opacity: 1;
		-webkit-transition: opacity .2s .2s ease, top .4s ease;
		-o-transition: opacity .2s .2s ease, top .4s ease;
		transition: opacity .2s .2s ease, top .4s ease;
	}

	#primary-menu.style-2 {
		float: left;	
	}

	#primary-menu ul li {
		float:none;
		width:100%;
		margin: 0 !important;
		text-align: left !important;
		border-top: 1px solid #EEE;
	}

	

	#primary-menu ul li:first-child { border-top: 0; }

	#primary-menu ul > li > a,
	#primary-menu.style-2 > div > ul > li > a {
		padding: 14px 5px !important;
		border: none !important;
		margin: 0 !important;
	}

	


	

	#primary-menu ul ul li {
		float: none;
		margin: 0;
		border-top: 1px solid #EEE;
	}

	#primary-menu ul ul li > a {
		padding: 11px 5px !important;
		font-size: 13px;
		text-transform: none;
		font-weight: 400;
	}

	#primary-menu ul ul li:hover > a {
		background-color: transparent !important;
		font-weight: 700;
		padding-left: 5px;
		color: #1ABC9C;
	}


	

	/* Portfolio - Items
	-----------------------------------------------------------------*/

	.portfolio .portfolio-item { width: 33.33333333%; }

	/* Portfolio - Items - 2 Columns - No Margin
	-----------------------------------------------------------------*/

	.portfolio-2 .portfolio-item { width: 50%; }

	/* Portfolio - Items - 1 Column
	-----------------------------------------------------------------*/

	.portfolio-1 .portfolio-item { width: 100%; }

	.portfolio-1 .portfolio-item .portfolio-image {
		float: none !important;
		margin: 0 !important;
		margin-bottom: 20px !important;
	}

	.portfolio-1 .portfolio-item .portfolio-image,
	.portfolio-1 .portfolio-item .portfolio-image a,
	.portfolio-1 .portfolio-item .portfolio-image img,
	.portfolio-1.portfolio-fullwidth .portfolio-item .portfolio-image,
	.portfolio-1.portfolio-fullwidth .portfolio-item .portfolio-image a,
	.portfolio-1.portfolio-fullwidth .portfolio-item .portfolio-image img {
		width: 100%;
		height: auto;
	}

	.portfolio-1 .portfolio-desc {
		width: 100% !important;
		padding: 0 !important;
	}

	/* Portfolio - Items - 1 Column - Full Width
	-----------------------------------------------------------------*/

	.portfolio-1.portfolio-fullwidth { margin: 0 0 -60px 0; }

	.portfolio-1.portfolio-fullwidth .portfolio-item {
		margin-bottom: 60px;
		padding-bottom: 0;
		border-bottom: 0;
		overflow: hidden;
	}

	.portfolio-1.portfolio-fullwidth .portfolio-item .portfolio-image {
		float: none;
		margin: 0 0 20px 0 !important;
	}

	.portfolio-1.portfolio-fullwidth .portfolio-item .portfolio-image img {
		-webkit-transition: none;
		-o-transition: none;
		transition: none;
	}

	.portfolio-1.portfolio-fullwidth .portfolio-item:hover .portfolio-image img,
	.portfolio-1.portfolio-fullwidth .portfolio-item.alt:hover .portfolio-image img {
		-webkit-transform: translateX(0) !important;
		-moz-transform: translateX(0) !important;
		-ms-transform: translateX(0) !important;
		-o-transform: translateX(0) !important;
		transform: translateX(0) !important;
	}

	.portfolio-1.portfolio-fullwidth .portfolio-desc,
	.portfolio-1.portfolio-fullwidth .alt .portfolio-desc {
		position: relative;
		height: auto;
		background-color: transparent;
		left: 0 !important;
		right: 0 !important;
		-webkit-transition: none;
		-o-transition: none;
		transition: none;
	}

	.portfolio-1.portfolio-fullwidth .portfolio-overlay a { left: 50% !important; }

	.portfolio-1.portfolio-fullwidth .alt .portfolio-overlay a {
		left: auto;
		right: 50% !important;
	}




	

}


@media only screen
and (orientation: portrait) {
	.portfolio-item { 
	float: left;
	position: relative;
	width: 33.33333333%!important;
	height: auto;
	padding: 0 20px 20px 0;
	}
	
	.bildkontakt img {
	max-width:50% !important;
	height:auto;
	}
	
}


@media (min-width: 768px) and (max-width: 991.98px) {

	

}


@media (max-width: 767.98px) {

	body { padding: 0 !important; }

	#wrapper { width: 100% !important; }

	.container-fullwidth {
		margin: 0 auto;
		padding: 0 15px !important;
	}



	h1 { font-size: 28px; }

	h2 { font-size: 24px; }

	h3 { font-size: 20px; }

	h4 { font-size: 16px; }

	.one-page-arrow { display: none !important; }

	

	.postcontent,
	.postcontent.bothsidebar,
	.sidebar,
	.col_full,
	.col_half,
	.col_one_third,
	.col_two_third,
	.col_three_fourth,
	.col_one_fourth,
	.col_one_fifth,
	.col_two_fifth,
	.col_three_fifth,
	.col_four_fifth,
	.col_one_sixth,
	.col_five_sixth {
		width: 100%;
		margin-right: 0;
		float: none;
		margin-bottom: 50px !important;
	}

	.col_last { float: none; }

	.sidebar.col_last { margin-bottom: 0 !important; }

	form .col_full,
	form .col_half,
	form .col_one_third,
	form .col_two_third,
	form .col_three_fourth,
	form .col_one_fourth,
	form .col_one_fifth,
	form .col_two_fifth,
	form .col_three_fifth,
	form .col_four_fifth,
	form .col_one_sixth,
	form .col_five_sixth { margin-bottom: 25px !important; }


	#page-title {
		padding: 20px 0 25px;
		text-align: left;
	}

	#page-title h1 {
		line-height: 1.5;
		font-size: 24px;
	}

	
	


	/* Blog
	-----------------------------------------------------------------*/

	.small-thumbs .entry-image,
	.ievent .entry-image {
		float: none !important;
		width: 100% !important;
		margin: 0 0 20px !important;
	}

	.entry-title h2,
	.post-grid .entry-title h2 {
		font-size: 18px !important;
		font-weight: 600;
	}

	.entry-meta li {
		font-size: 11px;
		margin: 0 10px 10px 0;
	}

	#posts .entry-meta li i { display: none; }

	#posts.post-grid .entry-meta li i,
	#posts .entry-meta li:last-child i { display: inline-block; }

	.post-grid { margin-right: 0 !important; }

	.post-grid .entry,
	.post-masonry-full.grid-3 .entry {
		float: none !important;
		width: 100% !important;
		margin-right: 0 !important;
		border-right: 0 !important;
	}

	.post-timeline .entry.entry-date-section { margin-left: 0; }

	.postcontent .post-timeline { margin: 0; }

	.timeline-border,
	.post-timeline .entry-timeline { display: none !important; }

	.postcontent .post-timeline { padding-left: 0; }

	.post-masonry-full .entry { padding: 40px !important; }

	.product-1 .product { width: 100%; }

	.product-1 .product-image {
		float: none !important;
		width: 100% !important;
		height: auto !important;
		margin: 0 0 20px !important;
	}

	.product-1 .product-title h3 { font-size: 19px; }

	.product-1 p { display: none; }


	

	.button.button-desc {
		padding: 20px 17px;
		font-size: 15px;
		max-width: 100%;
	}

	.button.button-desc span { font-size: 11px; }

	
	.tabs-responsive .tab-container { padding: 0 !important; }

	.tabs-responsive .tab-container:not(.accordion-border) { border: 0; }

	


}

@media (min-width: 576px) and (max-width: 767.98px) {

	#header.full-header .container,
	.container-fullwidth { width: 540px !important; }

	.container.vertical-middle { width: 100% !important; }

	.full-screen:not(.force-full-screen) .container.vertical-middle { width: 540px !important; }


	#page-title.titelbreit .hintergrund {height:550px;}

	/* Portfolio - Items
	-----------------------------------------------------------------*/

	.portfolio:not(.portfolio-1) { margin: 0 -6px -6px 0; }

	.portfolio:not(.portfolio-1) .portfolio-item { padding: 0 6px 6px 0; }

	/* Portfolio - Items - 5 & 6 Columns
	-----------------------------------------------------------------*/

	.portfolio:not(.portfolio-1) .portfolio-item { width: 50%; }

	/* Portfolio - Items - Descriptions
	-----------------------------------------------------------------*/

	.portfolio:not(.portfolio-1) .portfolio-desc { padding: 15px 5px 10px; }

	.portfolio:not(.portfolio-1) .portfolio-desc h3 { font-size: 16px; }

	.portfolio:not(.portfolio-1) .portfolio-desc span { font-size: 14px; }

	.portfolio-notitle:not(.portfolio-1) .portfolio-desc {
		height: 78px;
		padding: 15px 5px;
		bottom: -79px;
	}

	.portfolio-full.portfolio-notitle:not(.portfolio-1) .portfolio-desc,
	.portfolio-nomargin.portfolio-notitle:not(.portfolio-1) .portfolio-desc {
		bottom: -78px;
		border-bottom: 0;
	}

	/* Portfolio - Items - Overlay
	-----------------------------------------------------------------*/

	.portfolio-notitle:not(.portfolio-1) .portfolio-item:hover .portfolio-overlay a.left-icon,
	.portfolio-notitle:not(.portfolio-1) .portfolio-item:hover .portfolio-overlay a.right-icon,
	.portfolio-notitle .iportfolio:hover .portfolio-overlay a.left-icon,
	.portfolio-notitle .iportfolio:hover .portfolio-overlay a.right-icon { margin-top: -55px !important; }

	.portfolio:not(.portfolio-1) .portfolio-item:hover .portfolio-overlay .portfolio-desc ~ a { margin: 20px 0 0 !important; }

	.portfolio:not(.portfolio-1) .portfolio-item:hover .portfolio-overlay .portfolio-desc ~ a.right-icon {
		margin-left: 5px !important;
		margin-right: 0 !important;
	}

	.portfolio.portfolio-nomargin,
	.portfolio.portfolio-full { margin: 0 !important; }

	.post-grid:not(.post-masonry) .entry-image iframe { height: 246px; }

	

	.button.button-full { font-size: 18px; }

	.button.button-full i {
		top: 2px !important;
		margin-left: 3px !important;
	}

	

}

@media (max-width: 575.98px) {

	.container,
	#header.full-header .container,
	.container-fullwidth {
		width: 100% !important;
		padding-left: 40px !important;
		padding-right: 40px !important;
	}


	#primary-menu-trigger {right:10px; }

	
	#header.transparent-header.floating-header .container {
		width: 310px;
		padding: 0 15px;
	}
	#page-title.titelbreit .hintergrund {height:450px;}
	.portfolio-filter li { width: 50%; }

	.portfolio:not(.portfolio-1) { margin: 0; }

	.portfolio .portfolio-item {
		width: 100%;
		padding: 0;
	}

	
	.parallax .entry-overlay-meta,
	.parallax .entry-overlay {
		left: 50% !important;
		right: 0 !important;
		margin: 0 0 0 -140px !important;
		width: 280px !important;
	}

	.parallax .entry-overlay { width: 288px !important; }

	.parallax .countdown-section {
		width: 64px;
		height: 64px;
		margin: 0 8px 0 0;
		font-size: 11px;
		padding: 0;
		padding-top: 12px;
	}

	.parallax .countdown-amount { font-size: 20px; }

	
	
	
	.button.button-full { font-size: 16px; }

	.button.button-full i {
		top: 2px !important;
		margin-left: 3px !important;
	}

	.emphasis-title h1,
	.emphasis-title h2 { font-size: 40px !important; }

	
	.button.button-desc {
		padding: 20px 17px;
		font-size: 15px;
		max-width: 100%;
	}

	.button.button-desc span { font-size: 11px; }

}


/* ----------------------------------------------------------------
	Retina CSS
-----------------------------------------------------------------*/


@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {

	#logo a.standard-logo,
	#header.split-menu #logo a.standard-logo { display: none; }

	#logo a.retina-logo { display: block; width:319px !important; height:auto;}


}

@media
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 991.98px),
only screen and (   min--moz-device-pixel-ratio: 2) and (max-width: 991.98px),
only screen and (     -o-min-device-pixel-ratio: 2/1) and (max-width: 991.98px),
only screen and (        min-device-pixel-ratio: 2) and (max-width: 991.98px),
only screen and (                min-resolution: 192dpi) and (max-width: 991.98px),
only screen and (                min-resolution: 2dppx) and (max-width: 991.98px) {
	#logo a.standard-logo { display: none; }
	#logo a.retina-logo { display: inline-block; width:319px !important; height:auto;}
}


.device-xs .portfolio-item {
	width:100% !important;
}
.device-xs .portfolio-desc {
	width: calc(100% - 0px);
}
.device-sm .portfolio-desc {
	width: calc(100% - 6px);
}
.device-xs .caption, 
.device-sm .caption {
	margin-top:8px;
	margin-bottom:20px;
}

.device-xs .rahmen_blau,
.device-sm .rahmen_blau {
	padding:0px;
	margin-bottom:0px;
	border:none;
}