/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

   html,
   button,
   input,
   select,
   textarea {
   	color: #222;
   }

   html {
   	font-size: 1em;
   	line-height: 1.4;
   }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

 ::-moz-selection {
 	background: #b3d4fc;
 	text-shadow: none;
 }

 ::selection {
 	background: #b3d4fc;
 	text-shadow: none;
 }

/*
 * A better looking default horizontal rule
 */

 hr {
 	display: block;
 	height: 1px;
 	border: 0;
 	border-top: 1px solid #ccc;
 	margin: 1em 0;
 	padding: 0;
 }

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

 audio,
 canvas,
 img,
 video {
 	vertical-align: middle;
 }

/*
 * Remove default fieldset styles.
 */

 fieldset {
 	border: 0;
 	margin: 0;
 	padding: 0;
 }

/*
 * Allow only vertical resizing of textareas.
 */

 textarea {
 	resize: vertical;
 }

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

   .browsehappy {
   	margin: 0.2em 0;
   	background: #ccc;
   	color: #000;
   	padding: 0.2em 0;
   }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */


/*
	Global
	*/

	*, *:before, *:after {
		-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
	}

	html {
		overflow: scroll;
		height: 100%;
		overflow-x: hidden;
	}

	html,
	body {
		font-family: 'adobe-garamond-pro', Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;
		font-size: 15px; /* 11 */
		min-height: 100%;
	}

	/* font-sizes */
	nav a,
	h3,
	.project .title h2 {
		font-size: 15px;
	}

	.headline h2 {
		font-size: 23px;
	}

	.text-2-columns h3,
	.text-1-column h3 {
		font-size: 18px;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	ul,
	ol {
		margin-top: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		font-weight: normal;
		line-height: 1em;
	}

	p {

	}

	ul,
	ol {
		padding: 0;
	}

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

	b,
	strong {
		font-weight: 600;
	}

	a:hover,
	u,
	a.rex-current,
	a.active,
	.text-2-columns a,
	.text-1-column a,
	.project-list h3,
	.project .info .text a:hover {
		border-bottom: 1px solid #000;
	}

	.project-overview-template footer a:hover,
	.start-template footer a:hover {
		border-bottom: 1px solid #FFF;
	}

	a:focus {
		outline: 0 none;
	}

	header {
		height: 75px;
		position: fixed;
		width: 100%;
		left: 0;
		background-color: #FFF;
		z-index: 15;
	}

	footer {
		padding-top: 1px;
		height: 62px;
		text-align: center;
		position: relative;
		z-index: 10;
		background-color: #FFF;
	}

	.stage-contents footer {
		background-color: transparent;
	}

	footer p {
		margin: 0;
	}

	footer .wrapper {
		padding-bottom: 20px;
		padding-left: 0;
		padding-right: 0;
	}

	nav {
		float: left;
		position: relative;
		z-index: 5;
		top: 20px;
	}

	nav ul {
		margin: 0;
	}

	nav li {
		display: inline-block;
		margin-right: 22px;
	}

	nav a {
		display: block;
		line-height: 1em;
	}
/*
.start-template,
.start-template .main,
.start-template .contents {
	height: 100%;
}
*/

.project-overview-template header,
.start-template header {
	position: relative;
}

.project-overview-template .contents footer,
.start-template .contents footer {
	color: #FFF;
	position: absolute;
	z-index: 5;
	bottom: 0;
	width: 100%;
}

.project-overview-template .contents footer.fade-out,
.project-overview-template .contents header.fade-out,
.start-template .contents footer.fade-out,
.start-template .contents header.fade-out {
	opacity: 0 !important;
}

.project-overview-template .project-list-main-wrapper,
.start-template .project-list-main-wrapper {
	background-color: #FFF;
	position: relative;
	z-index: 10;
}

/* .project-overview-template .project-list-main-wrapper .contents, */
.start-template .project-list-main-wrapper .contents {
	padding: 0 40px;
}

.project-overview-template footer a,
.start-template footer a {
	/*color: #FFF;*/
	display: inline-block;
	line-height: 1em;
}

.project-overview-template a.next-section,
.start-template a.next-section {
	display: block;
	height: 100%;
	width: 100%;
	bottom: 0;
	left: 0;
	position: absolute;
	z-index: 3;
}
/*
.start-template a.next-section:hover {
	cursor: url(../img/arrow-down.png), pointer;
}
*/

.main {
	min-height: 100%;
	position: relative;
	z-index: 2;
}

.project-overview-template .main,
.start-template .main {
	padding: 0;
}

.project-overview-template .contents,
.start-template .contents {
	margin: 0;
	padding-top: 0;
	position: relative;
	z-index: 5;
}

.project-overview-template .contents-2,
.start-template .contents-2 {
	padding-left: 50px;
	padding-right: 50px;
}

.template-columns-2 .contents {
	padding-left: 16.666666666666664%;
	padding-right: 16.666666666666664%;
}

.main {
	padding-left: 50px;
	padding-right: 50px;
}

.contents {
	margin-bottom: 12px;
	padding-top: 75px;
}

.project-template .contents {
	margin: 0;
}

.wrapper,
.module {
	position: relative;
	padding-left: 10px;
	padding-right: 10px;
}

header .wrapper {
	padding-left: 60px;
	padding-right: 60px;
}

.logo {
	position: absolute;
	z-index: 19;
	width: 90px;
	left: 50%;
	margin-left: -45px;
	top: 25px;
}

.logo a {
	display: block;
	width: 90px;
	height: 25px;
	margin: 0 auto;
}

.logo a:hover {
	border: 0 none;
}

.logo img {
	display: block;
	width: 90px;
	height: 25px;
}

.logo span {
	display: none;
}

.project-list {
	padding: 0;
}

.project-list .sort-by {
	position: absolute;
	right: 10px;
	top: -50px;
	z-index: 20;
	white-space: nowrap;
	vertical-align: top;
}

.project-list .sort-by {
	position: fixed;
	right: 60px;
	top: 23px;
	visibility: hidden;
}

header .sort-by {
	display: none;
}

.project-list-main-wrapper header .sort-by {
	display: block;
	position: absolute;
	right: 60px;
	top: 23px;
}

.project-list-main-wrapper header .logo {
	z-index: 14;
}

.sort-by .points {
	visibility: hidden;
}

.sort-by ul {
	position: relative;
	margin-bottom: 0;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
	margin-left: 0px;
	line-height: 1em;
	background-color: #000;
}

.sort-by.opened ul {
	margin-left: 0px;
	vertical-align: top;
}

.sort-by li {
	display: inline-block;
	list-style-type: none;
}

.sort-by .mobile-headline {
	display: none;
}

.sort-by .mobile-headline a:hover {
	border-bottom: 0 none;
}

.sort-by a {
	line-height: 16px;
	display: block;
	/*vertical-align: top;*/
}

.sort-by ul a {
	display: block;
	position: relative;
	font-family: "din_lightregular",sans-serif;
	padding: 15px 15px 15px 0;
	border: 0 none;
}

.sort-by ul a:hover {
	font-family: "din_lightregular",sans-serif;
	border: 0 none;
}

.sort-by ul a span {
	position: absolute;
	display: block;
	font-family: "din_lightregular",sans-serif;
	top: 15px;
	left: 0;
	line-height: 16px;
}

.sort-by ul a:hover span,
.sort-by ul a.active span {
	font-family: "dinbold",sans-serif;
}

.sort-by ul a span.full {
	position: relative;
	visibility: hidden;
	font-family: "dinbold",sans-serif;
	top: 0;
}

.sort-by li a {
	display: block;
}

.sort-by a.show-sort-categories {
}

.project-list .grid-sizer {
	width: 33.3333%;
	height: 1px;
}

.project-list article {
	width: 33.3333%;
	display: block;
	float: left;
	margin-bottom: 27px; /* 16 */
}

.project-list article a {
	display: block;
	padding-right: 10px;
	padding-left: 10px;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/*
.project-list article a:hover {
	border: 0 none;
}
*/

.project-list .image {
	margin-top: -1px;
	margin-bottom: -1px;
}

.project-list .image:hover {
	/*opacity: 0.25;*/
}

.project-list .caption {
	padding-top: 7px;
}

.project-list h3 {
	margin-bottom: 0;
	display: inline-block;
}

.project-list p {
	margin-bottom: 0;
}

.project-list img {
	display: block;
	width: 100%;
}

.project-list .caption {
	text-align: center;
}

.project-preview {
	padding: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background-color: #000;
}

.project-preview .background {
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
	opacity: 0.90;
}

.project-preview .height {
	width: auto;
	height: 100%;
}

.project-preview .logo {
	position: absolute;
	z-index: 5;
	width: 380px;
	height: 143px;
	top: 50%;
	margin-top: -71px;
	left: 50%;
	margin-left: -190px;
	cursor: pointer;
}

.project-preview .logo.fade-out {
	opacity: 0;
}

.project-preview .logo img {
	width: 100%;
	height: 100%;
}

.project {
	padding-bottom: 60px;
}

.project .stage {
	position: relative;
	overflow: hidden;
}

.project .info {
	position: fixed;
	top: 85px;
	bottom: 60px;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 13;
	display: none;
	background-color: rgba(255,255,255,0.85);
}

.project.info-active .info {
	display: block;
}

.project table {
	width: 100%;
	height: 100%;
}

.project td {
	vertical-align: middle;
}

.project article {
	width: 33.3333%;
	margin: 0 auto;
}

.project .info .text {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 30px;
	padding-bottom: 30px;
	/* text-align: justify;
	 text-align-last: center;
	-moz-text-align-last: center;
	-webkit-text-align-last: center;
	-khtml-text-align-last: center; */
}

.project .info .text a {
	display: inline-block;
	line-height: 1em;
}

.project .title {
	position: absolute;
	bottom: 22px;
	z-index: 4;
	width: 100%;
	padding-left: 10px;
	padding-right: 10px;
	left: 0;
}

.project .title h2,
.project .info .text h3 {
	text-align: center;
}

.project .title h2 {
	margin-bottom: 0;
	line-height: 1em;
	display: inline-block;
	width: 100%;
	text-align: center;
}

.project .info .text li {
	/*text-align: center;*/
	list-style-type: none;
}

.project .info .text h2 {
	text-transform: uppercase;
	font-size: 15px;
	margin-bottom: 20px;
}

.project .close-button,
header .close-button {
	position: absolute;
	right: 10px;
	top: -50px;
	z-index: 20;
}

/* seems to be the right one, delete, if it should be the other way */
.project .close-button,
header .close-button {
	position: fixed;
	top: 25px;
	right: 60px;
}

.project .close-button a,
header .close-button a {
	display: block;
}

.project .close-button a:hover,
header .close-button a:hover {
	border: 0 none;
}

.project .close-button img,
header .close-button img {
	display: block;
	width: 9px;
}

.project .close-button img.close-mobile,
header .close-button img.close-mobile {
	display: none;
}

.project .arrow {
	position: absolute;
	width: 50%;
	height: 100%;
	top: 0;
	z-index: 14;
}

.project .arrow a {
	position: absolute;
	display: block;
	top: 0; /* 50% */
	/* margin-top: -14px; */
	width: 100%; /* 28px */
	height: 100%; /* 20px */
	opacity: 0;
}

.project .arrow:hover a {
	opacity: 1;
}

.project .arrow a:hover {
	border: 0 none;
}

.project .arrow img {
	display: block;
	width: 28px;
	visibility: hidden;
}

.project .arrow-left {
	left: 0;
}

.project .arrow-left:hover {
	cursor: url(../img/arrow-left.png), pointer;
}

.project .arrow-left a {
	/*left: 25%;*/
	cursor: url(../img/arrow-left.png), pointer;
}

.project .arrow-right {
	right: 0;
}

.project .arrow-right:hover {
	cursor: url(../img/arrow-right.png), pointer;
}

.project .arrow-right a {
	/*right: 25%; */
	cursor: url(../img/arrow-right.png), pointer;
}
/*
.project.image-slider .arrow-right a {
	cursor: url(../img/arrow-right-white.png), pointer;
}

.project.image-slider .arrow-left a {
	cursor: url(../img/arrow-left-white.png), pointer;
}
*/

.image-slider {
	padding-left: 0;
	padding-right: 0;
}

.image-slider .owl-carousel .owl-item img {
	/*position: absolute;*/
}

.image-slider .owl-carousel .owl-item img.placeholder {
	/* position: relative; */
	position: absolute;
	display: none;
}
/*
.image-slider .owl-carousel .owl-item img.placeholder-3-columns {
	display: block;
}
*/

.lined-headline.second {
	margin-top: 56px;
}

.slider {
	z-index: 4;
}

.project.info-active .slider {
	z-index: 2;
}

.project-template .project .slider img.height {
	height: 100%;
	width: auto;
}

.slider img {
	display: block;
	width: 100%;
}

.slider .item {
	float: left;
	width: 100%;
	display: inline-block;
	white-space: nowrap;
	overflow: hidden;
	position: relative;
}

.slider .owl-item {
	display: inline-block;
	float: none;
	vertical-align: top;
}

.owl-stage {
	white-space: nowrap;
}

.slider-navigation {
	left: 0;
	bottom: 22px;
	position: absolute;
	width: 100%;
	padding-top: 23px;
	padding-left: 10px;
	padding-right: 10px;
	z-index: 5;
}

.slider-navigation .middot,
.sort-by .middot {
	margin-left: 3px;
	margin-right: 3px;
}

.slider-navigation a {
	display: inline-block;
	line-height: 1em;
}

.show-info {
	float: left;
}

.show-info a {
	border: 0 none;
	line-height: 16px;
}

.show-info a:hover {
	border: 0 none;
}

.pagination {
	float: right;
}

.pagination ul {
	margin-bottom: 0;
}

.pagination li {
	display: inline-block;
	list-style-type: none;
}

.pagination a {

}

.google-maps {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
}

.google-maps-placeholder {
	position: relative;
	z-index: 1;
}

.image-slider .slider-navigation {
	display: none;
}

.contents .image-slider,
.maps {
	padding-bottom: 0;
	margin-bottom: 30px;
}

.headline {
	margin-bottom: 22px;
}

.headline h2 {
	text-align: center;
	border-bottom: 1px solid #919191;
	margin-bottom: 0;
}

.text-2-columns {
	text-align: left;
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 0px; /* 12 */
}

.text-1-column {
	margin-bottom: 20px;
}

.text-2-columns a,
.text-1-column a {
	display: inline;
	line-height: 14px;
}

.text-2-columns ul,
.text-1-column ul {
	padding-left: 1em;
}

.text-2-columns h3,
.text-1-column h3 {
	line-height: 25px;
	letter-spacing: 1px;
}

.text-2-columns h3 a,
.text-1-column h3 a {
	line-height: 16px;
}

.text-2-columns .col {
	width: 33.3333%;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 20px;
}

.text-2-columns .inner {
	padding-left: 10px;
	padding-right: 10px;
}

.text-2-columns .image img {
	display: block;
	width: 100%;
	margin-bottom: 16px;
}

a.burger,
a.sort {
	display: none;
}

a.burger img,
a.sort img {
	display: block;
	width: 20px;
}

.kontakt footer,
.contact footer {
	visibility: hidden;
}

.owl-carousel .owl-item img {
	position: relative;
	z-index: 2;
}

.owl-carousel .owl-item .play-button {
	position: absolute;
	width: 100%;
	height: 100%;
	cursor: pointer;
	top: 0;
	left: 0;
}

.owl-carousel .owl-item .play-button img {
	width: 125px;
	display: block;
	left: 50%;
	top: 50%;
	margin-left: -62px;
	margin-top: -62px;
}

.owl-resizing .owl-item img,
.owl-resizing .owl-item .google-maps {
	visibility: hidden;
}

.owl-resizing .owl-item.active img,
.owl-resizing .owl-item.active .google-maps {
	visibility: visible;
}

.video-js {

}

.vjs-default-skin .vjs-control-bar {
	left: 50%;
}

.vjs-default-skin .vjs-big-play-button {
	display: none;
}

.video-wrapper {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
}

.vjs-default-skin .vjs-play-progress,
.vjs-default-skin .vjs-volume-level {
	background-color: #AAAAAA;
}

.owl-carousel .owl-item .video-is-playing .project-background {
	visibility: hidden;
	display: none;
}

.video-is-playing .play-button {
	display: none;
}

footer .logo,
footer .logo img {
	top: auto;
	left: auto;
	margin: 0;
	border: 0 none;
	display: block;
	position: relative;
	width: auto;
	height: auto;
}

footer .logo {
	max-width: 202px;
}

footer .logo img {
	width: 100%;
}

footer .logo-wrapper {
	padding-top: 0px;
}

/**** Isotope Filtering ****/

.isotope-item {
	z-index: 2;
}

.isotope-hidden.isotope-item {
	pointer-events: none;
	z-index: 1;
}

/**** Isotope CSS3 transitions ****/

.isotope,
.isotope .isotope-item {
	-webkit-transition-duration: 0.8s;
	-moz-transition-duration: 0.8s;
	-ms-transition-duration: 0.8s;
	-o-transition-duration: 0.8s;
	transition-duration: 0.8s;
}

.isotope {
	-webkit-transition-property: height, width;
	-moz-transition-property: height, width;
	-ms-transition-property: height, width;
	-o-transition-property: height, width;
	transition-property: height, width;
}

.isotope .isotope-item {
	-webkit-transition-property: -webkit-transform, opacity;
	-moz-transition-property:    -moz-transform, opacity;
	-ms-transition-property:     -ms-transform, opacity;
	-o-transition-property:      -o-transform, opacity;
	transition-property:         transform, opacity;
}

/**** disabling Isotope CSS3 transitions ****/

.isotope.no-transition,
.isotope.no-transition .isotope-item,
.isotope .isotope-item.no-transition {
	-webkit-transition-duration: 0s;
	-moz-transition-duration: 0s;
	-ms-transition-duration: 0s;
	-o-transition-duration: 0s;
	transition-duration: 0s;
}

/* End: Recommended Isotope styles */

/* ==========================================================================
   Helper classes
   ========================================================================== */

   .clear {
   	clear: both;
   }

   .clickable {
   	cursor: pointer;
   }

   .css-animated,
   .owl-item.active,
   .image-slider .owl-item,
   .owl-stage,
   .project-overview-template .contents footer,
   .project-overview-template .contents header,
   .start-template .contents footer,
   .start-template .contents header,
   .project-preview .logo,
   .project .info {
   	-webkit-transition: all 0.5s ease-out;
   	-moz-transition: all 0.5s ease-out;
   	-ms-transition: all 0.5s ease-out;
   	-o-transition: all 0.5s ease-out;
   	transition: all 0.5s ease-out;
   }

   .project .info {
   	-webkit-transition: opacity 0.5s ease-out;
   	-moz-transition: opacity 0.5s ease-out;
   	-ms-transition: opacity 0.5s ease-out;
   	-o-transition: opacity 0.5s ease-out;
   	transition: opacity 0.5s ease-out;
   }

   .project-template .project .slider img {
   	-webkit-transition: margin-left 0.5s ease-out;
   	-moz-transition: margin-left 0.5s ease-out;
   	-ms-transition: margin-left 0.5s ease-out;
   	-o-transition: margin-left 0.5s ease-out;
   	transition: margin-left 0.5s ease-out;
   }

   .owl-stage {
   	overflow: hidden;
   }

   .loader {
   	position: fixed;
   	z-index: 1;
   	width: 100%;
   	height: 100%;
   	top: 0;
   	left: 0;
   }

   .loader img {
   	width: 52px;
   	position: absolute;
   	top: 50%;
   	margin-top: -26px;
   	left: 50%;
   	margin-left: -26px;
   }

   footer .text-2-columns a,
   .project-overview-template footer .text-2-columns a,
   .start-template footer .text-2-columns a {
   	text-decoration: none;
   	border: 0 none;
   }

   .project-overview-template footer .text-2-columns {
   	margin-left: -20px;
   	margin-right: -20px;
   }

   .project-overview-template .company-social {
   	right: 0;
   }

   .module.news {
   	padding-bottom: 60px;
   	margin-left: -10px;
   	margin-right: -10px;
   }

   .module.news .image {
   	width: 50%;
   	margin: 0 auto;
   	margin-bottom: 2em;
   }

   .module.news .image.portrait {
   	width: 31.25%;
   }

   .module.news .image img {
   	display: block;
   	width: 100%;
   }

   .module.news .text {
   	width: 33.33%;
   	margin: 0 auto;
   	text-align: center;
   }

   .module.news .date {
   	margin: 0;
   }

   .module.news h1,
   .module.news h2 {
   	font-family: 'dinbold',sans-serif;
   	font-size: 15px;
   	text-transform: uppercase;
   	line-height: 1.4;
   	margin-bottom: 1em;
   }

   div.project-template {
   	position: fixed;
   	z-index: 20;
   	top: 0;
   	left: 0;
   	bottom: 0;
   	right: 0;
   	background-color: #FFF;
   	overflow: hidden;
   	opacity: 0;
   }

   div.project-template iframe {
   	width: 100%;
   	height: 100%;
   	width: 100vw;
   	height: 100vh;
   	display: block;
   }

   .show-project div.project-template {
   	opacity: 1;
   }

   div.project-template {
   	-webkit-transition: opacity 0.5s ease-out;
   	-moz-transition: opacity 0.5s ease-out;
   	-ms-transition: opacity 0.5s ease-out;
   	-o-transition: opacity 0.5s ease-out;
   	transition: opacity 0.5s ease-out;
   }

/*
.gmnoprint img[src="/img/google-maps-marker.png"] {
	width: 50px !important;
	height: 81px !important;
}
*/

/*
 * Image replacement
 */

 .ir {
 	background-color: transparent;
 	border: 0;
 	overflow: hidden;
 	/* IE 6/7 fallback */
 	*text-indent: -9999px;
 }

 .ir:before {
 	content: "";
 	display: block;
 	width: 0;
 	height: 150%;
 }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

 .hidden,
 .map-hidden,
 .video-hidden {
 	display: none !important;
 	visibility: hidden;
 }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

 .visuallyhidden {
 	border: 0;
 	clip: rect(0 0 0 0);
 	height: 1px;
 	margin: -1px;
 	overflow: hidden;
 	padding: 0;
 	position: absolute;
 	width: 1px;
 }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

 .visuallyhidden.focusable:active,
 .visuallyhidden.focusable:focus {
 	clip: auto;
 	height: auto;
 	margin: 0;
 	overflow: visible;
 	position: static;
 	width: auto;
 }

/*
 * Hide visually and from screenreaders, but maintain layout
 */

 .invisible {
 	visibility: hidden;
 }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

 .clearfix:before,
 .clearfix:after {
 	content: " "; /* 1 */
 	display: table; /* 2 */
 }

 .clearfix:after {
 	clear: both;
 }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

 .clearfix {
 	*zoom: 1;
 }

/* ==========================================================================
 EXAMPLE Media Queries for Responsive Design.
These examples override the primary ('mobile first') styles.
Modify as content requires.
========================================================================== */

@media only screen and (min-width: 35em) {
	/* Style adjustments for viewports that meet the condition */
}


/* Cookie Disclaimer */
.cc-window.cc-banner,
.cc-theme-edgeless.cc-window {
	font-family: inherit;
	padding: 0;
	font-weight: 300;
	font-size: 1em;
	line-height: 1.1;
	letter-spacing: .1em;
	word-spacing: .1em;
	padding: 14px 40px;
}

.cc-banner.cc-theme-edgeless .cc-message {
	margin: 0;
	margin-right: 14px;
}

.cc-banner.cc-theme-edgeless .cc-message a {
	padding: 0;
}

.cc-banner.cc-theme-edgeless .cc-message a:hover,
.cc-banner.cc-theme-edgeless .cc-message a:focus {
	font-family: inherit;
}

.cc-link {
	opacity: 1;
	text-decoration: underline;
}
.cc-link:hover {
	color: rgba(255,255,255,.75) !important;
	border-bottom: none;
}

.cc-btn {
	background-color: #fff;
	opacity: 1;
	border: none;
}

.cc-btn:focus,
.cc-btn:hover {
	background-color: rgba(255,255,255,.75) !important;
	font-family: inherit;
	border-bottom: none;
}

@media screen and (max-width: 1024px) and (orientation: portrait), (max-width: 736px) and (orientation: landscape) {
	.cc-window.cc-banner,
	.cc-theme-edgeless.cc-window {
		padding: 14px 30px;
	}
}

@media all and (max-width: 414px) {
	.cc-window.cc-banner,
	.cc-theme-edgeless.cc-window {
		padding-right: 0;
		padding-left: 0;
		padding-bottom: 0;
		line-height: 1.2;
	}
	.cc-banner.cc-theme-edgeless .cc-message {
		margin: 10px 30px;
	}
}
/* Cookie Disclaimer */