/**
 * Custom Stylesheet
 * Site-specific overrides for Oneo theme
 */

/* ==========================================================================
   LAYOUT
   ========================================================================== */

.page {
	background-color: #e8e9ea;
}

.content-wrapper {
	padding-bottom: 20px;
}

.logo {
	top: 17%;
	bottom: 13%;
}

.video_container {
	margin: 0;
	line-height: 0;
}

.video_container video {
	display: block;
	width: 100%;
	height: auto;
}

.audio_container audio {
	display: block;
	width: 100%;
}

/* Breadcrumb
   -------------------------------------------------------------------------- */

.mod_breadcrumb ul li:first-child,
.mod_breadcrumb ul li:nth-child(2):before {
	display: none;
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */

.mega-dropdown {
	background-color: #efefef;
	box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
}

.main-navigation-search > a:after {
	padding-right: 1em;
	padding-left: 0.5em;
	border-left: 0;
}

.main-navigation > ul > li.submenu:hover > a,
.main-navigation > ul > li.submenu:hover > span.active,
.main-navigation > ul > li.submenu:hover > span.trail,
.main-navigation > ul > li.submenu:hover > span.forward {
	background-color: #efefef;
}

.main-navigation > ul > li.submenu:hover > a:after,
.main-navigation > ul > li.submenu:hover > span.active:after,
.main-navigation > ul > li.submenu:hover > span.trail:after,
.main-navigation > ul > li.submenu:hover > span.forward:after {
	box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.1), inset 1px 0 #cfd8dc, inset -1px 0 #cfd8dc, inset 0 -12px #efefef;
}

/* Language Switcher
   -------------------------------------------------------------------------- */

.mod_changelanguage {
	min-width: 25px;
	max-width: 45px;
	float: right;
	font-size: 0.833em;
	padding: 1.5em 0;
}

.mod_changelanguage ul,
.mod_changelanguage ul li {
	display: inline;
	list-style-type: none;
}

.mod_changelanguage ul {
	padding: 0;
}

.mod_changelanguage ul li:hover,
.mod_changelanguage ul li span,
.mod_changelanguage ul li a.active {
	color: #c1121c;
}

/* ==========================================================================
   COMPONENTS
   ========================================================================== */

/* Feature Boxes
   -------------------------------------------------------------------------- */

.feature-box-text,
.feature-box-image {
	margin: 0;
	padding: 25px 0 25px 20px;
}

.feature-box-image img {
	padding: 8px 0;
}

.feature-box.-medium.-vertical-centered,
.feature-box.-medium {
	height: auto;
	min-height: 350px;
	max-height: 600px;
}

.-vertical-centered > .feature-box-image {
	padding: 25px 0 25px 20px;
}

.-vertical-centered > .feature-box-text {
	padding: 25px 0;
}

.feature-box-text h3 {
	margin-top: 0.28571em;
	font-size: 1.4em;
	color: #607d8b;
}

#services .feature-box-image,
#leistungen .feature-box-image,
#home-produkte .feature-box-image {
	width: 33.333%;
}

#services .feature-box-text,
#leistungen .feature-box-text,
#home-produkte .feature-box-text {
	width: 66.666%;
	padding: 5%;
	box-sizing: border-box;
}

#services .-image-right .feature-box-text,
#leistungen .-image-right .feature-box-text {
	padding-left: 0;
}

#services .-image-left .feature-box-text,
#leistungen .-image-left .feature-box-text {
	padding-right: 0;
}

#home-produkte .-vertical-centered.-image-left > .feature-box-text {
	padding-left: 6%;
}

/* Headings
   -------------------------------------------------------------------------- */

h4 {
	text-align: center;
	background-color: #607d8b;
	color: #ffffff;
}

/* Slider
   -------------------------------------------------------------------------- */

.rsts-skin-light .rsts-view {
	border: 0;
	box-shadow: none;
}

.rsts-skin-light .rsts-nav {
	position: relative;
	margin: 10px 0;
	text-align: center;
	z-index: 1;
}

.rsts-skin-light .rsts-nav ul {
	background-color: #ffffff;
	background-image: none;
	border-radius: 0;
	box-shadow: none;
}

.rsts-skin-light .rsts-nav-bullets a {
	width: 15px;
	height: 15px;
	overflow: hidden;
	display: inline-block;
	margin: 8px 4px;
	background-color: #ffffff;
	border: 1px solid #c7c7c9;
	border-radius: 100%;
	text-indent: -999px;
	background-clip: padding-box;
	box-shadow: none;
	outline: none;
}

.rsts-skin-light .rsts-nav-bullets a.active,
.rsts-skin-light .rsts-nav-bullets a:hover {
	background-color: #d9dadd;
	background-image: none;
	border-color: #acb5ba;
	box-shadow: none;
}

/* Tabs
   -------------------------------------------------------------------------- */

.tab-start .ce_text:after {
	height: 0;
	clear: both;
	display: block;
	content: '';
}

/* Video & Media
   -------------------------------------------------------------------------- */

.content-player,
.content-youtube {
	margin: 1.8em 0;
	padding: 0;
	border: 1px solid #c7c7c9;
}

.content-player h2,
.content-player h3,
.content-youtube h2,
.content-youtube h3,
.main-content .content-downloads h2,
.main-content .content-downloads h3 {
	margin: 0;
	padding: 0.66667em 1.66667em;
	background: #607d8b;
	font-size: 0.8em;
	font-weight: bold;
	line-height: 1.3em;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 0.08333em;
}

.content-player h3::before,
.content-youtube h3::before,
.main-content .content-player h2::before,
.main-content .content-youtube h2::before {
	position: relative;
	top: 0.07143em;
	float: right;
	content: "⇥";
	font: 1.1em/1 "RockSolid Icons";
	text-rendering: geometricprecision;
}

.mejs-video {
	margin: 0;
}

/* Portfolio Tiles
   -------------------------------------------------------------------------- */

.portfolio-tiles-item {
	width: 20%;
	margin-right: -1px;
	border: 1px solid #607d8b;
	font-size: 90%;
}

.portfolio-tiles-item > img {
	padding: 10%;
}

.portfolio-tiles-item-link h4 {
	color: #ffffff;
	background: transparent;
}

/* Fading Boxes
   -------------------------------------------------------------------------- */

#products .fading-boxes-item-image,
#produkte .fading-boxes-item-image {
	background-position: center 360px !important;
	background-repeat: no-repeat;
	background-size: contain;
	color: #ffffff;
	transition: background-position 1s ease-in;
}

#products .fading-boxes-item-image:hover,
#produkte .fading-boxes-item-image:hover {
	background-position: center 70px !important;
}

.white_square .fading-boxes-item-image {
	max-height: 252px;
	background-color: #ffffff;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	border: 1px solid #607d8b;
}

.grey_square .fading-boxes-item-image {
	max-height: 252px;
	border: 1px solid #607d8b;
}

.white_square .fading-boxes-item-text {
	background-color: #fefefe;
}

.white_square .fading-boxes-item-text h2,
.white_square .fading-boxes-item-text p {
	color: #333333;
}

/* ==========================================================================
   CONTENT
   ========================================================================== */

.main-content h2 {
	font-weight: bold;
	color: #607d8b;
}

.main-content .feature-box-text h2 {
	font-size: 1.6em;
	font-weight: normal;
}

.main-content .icon-text-block h3 {
	margin-top: 0.3em;
	text-transform: uppercase;
}

.main-content .icon-text-block::before {
	margin-top: 0.3em;
	padding: 0;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */

footer {
	background-color: #e8e9ea;
}

.footer-top-link {
	margin-top: 0;
}

.footer-top-link:hover:after,
.footer-top-link:focus:after {
	background-color: #607d8b;
	color: #ffffff;
}

footer .slogan {
	margin-top: 15px;
	text-align: center;
	font-size: 1.1em;
	color: #c1121c;
	text-transform: uppercase;
}

footer .adresse {
	text-align: center;
	font-size: 0.9em;
	color: #37474f;
}

.footer-copyright {
	margin: 10px 0 20px;
	font-size: 0.9em;
	color: #607d8b;
}

.footer-copyright a {
	padding-right: 5px;
	border-right: 1px solid #607d8b;
	font-size: 0.8em;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

/* ==========================================================================
   RESPONSIVE
   Aligned with main.css breakpoints: 1280px, 900px, 599px
   ========================================================================== */

/* Large screens (max-width: 1280px)
   -------------------------------------------------------------------------- */

@media (max-width: 1280px) {
	.logo {
		left: 2.677%;
	}

	.main-navigation > ul > li > a,
	.main-navigation > ul > li > span.active,
	.main-navigation > ul > li > span.trail,
	.main-navigation > ul > li > span.forward {
		padding-right: 0.3em;
	}

	.main-navigation-search > a::after {
		padding-right: 0.5em;
		padding-left: 0.5em;
	}

	.main-navigation {
		padding-right: 0;
	}
}

/* Tablet (max-width: 900px)
   -------------------------------------------------------------------------- */

@media (max-width: 900px) {
	.logo {
		float: none;
		margin-left: 0;
		padding-top: 0.8em;
		text-align: center;
	}

	.main-navigation,
	.secondary-navigation {
		display: none;
	}

	.main-navigation-mobile-open {
		display: block;
	}

	.main-navigation-mobile,
	.main-navigation-mobile.is-enabled {
		display: block;
	}

	.main-navigation-search {
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -1.93333em;
	}

	.main-navigation-search > a:after {
		padding-right: 1.5em;
	}

	.mod_changelanguage {
		position: absolute;
		top: 50%;
		right: 5em;
		margin-top: -0.833em;
		padding: 0;
	}

	.mod_changelanguage ul {
		padding-left: 0;
	}

	.feature-box-image {
		width: 100%;
	}

	.-vertical-centered > .feature-box-text,
	.-vertical-centered > .feature-box-image {
		width: 100%;
	}

	.-vertical-centered > .feature-box-image {
		vertical-align: top;
	}

	.tab-navigation-item a {
		padding-right: 0.6em;
		padding-left: 0.6em;
		min-height: 75px;
		hyphens: auto;
	}

	.fading-boxes-item {
		margin-bottom: 1em;
	}

	.portfolio-tiles-item {
		width: 50%;
		margin-bottom: -1px;
		font-size: 1em;
	}
}

/* Mobile (max-width: 599px)
   -------------------------------------------------------------------------- */

@media (max-width: 599px) {
	.feature-box:before {
		display: none;
	}

	.feature-box-text p {
		margin-bottom: 0.5em;
	}

	.-vertical-centered > .feature-box-image {
		padding: 0 0 15px;
	}

	.-vertical-centered > .feature-box-text {
		padding-bottom: 0;
	}

	#home-produkte .feature-box-text,
	#home-produkte .feature-box-image,
	#services .feature-box-image,
	#leistungen .feature-box-image,
	#services .feature-box-text,
	#leistungen .feature-box-text {
		width: 100%;
	}

	#services .feature-box-text,
	#leistungen .feature-box-text {
		padding: 5%;
	}

	#services .-image-right .feature-box-text,
	#leistungen .-image-right .feature-box-text,
	#services .-image-left .feature-box-text,
	#leistungen .-image-left .feature-box-text {
		padding-right: 0;
		padding-left: 0;
	}

	.tab-navigation-item a {
		min-height: 20px;
	}

	.portfolio-tiles-item {
		width: 100%;
	}
}

/* ==========================================================================
   PRINT
   ========================================================================== */

@media print {
	@page {
		margin: 1.5cm 2cm;
	}

	.page {
		font-size: 8.5pt;
		background: none;
		orphans: 3;
		widows: 3;
	}

	header {
		padding-bottom: 0 !important;
	}

	.header-navigation.is-fixed,
	.main-navigation-wrapper {
		position: relative;
		display: block;
		border: 0;
		box-shadow: none;
	}

	nav,
	.main-navigation,
	.main-navigation-search,
	.footer-top-link,
	.footer-copyright a,
	.main-navigation-mobile-open,
	.tagline,
	.pdf_link {
		display: none;
	}

	#kontakt .tagline,
	#contact .tagline {
		display: block;
	}

	header,
	.tagline {
		margin: auto;
	}

	.logo {
		position: relative;
		top: 0;
		left: 0;
		height: 60px;
		display: block;
	}

	.rsts-crop {
		font-size: 0.83em;
		height: 100% !important;
	}

	.rsts-slide img,
	.feature-box-text,
	.feature-box-image {
		max-width: 50%;
	}

	.rsts-slide.rsts-slide-default.rsts-inactive,
	.rsts-slide.rsts-slide-default.rsts-postactive {
		position: relative;
		display: block;
	}

	.rsts-slides,
	.rsts-slide {
		width: 100%;
		position: relative;
		clear: both;
		display: block;
		transition: none !important;
		transform: none !important;
	}

	.rsts-prev,
	.rsts-next {
		display: none;
	}

	.not-in-view > .icon-boxes-item > .icon-boxes-item-icon {
		color: #ffffff;
		transform: scale(1);
	}

	.portfolio-tiles-item {
		width: 100%;
		border: 0;
	}

	.portfolio-tiles-item img {
		width: 3cm;
		float: left;
		padding: 0;
	}

	.portfolio-tiles-item-link {
		width: 9cm;
		position: relative;
		float: left;
		display: block;
		padding: 0.5cm;
		text-align: left;
		opacity: 1;
		background: transparent;
	}

	.portfolio-tiles-item-link:before {
		display: none;
	}

	.portfolio-tiles-item-link h3,
	.portfolio-tiles-item-link h4 {
		text-align: left;
		color: #333333;
	}

	.fading-boxes-item-text {
		opacity: 1;
	}

	#products .fading-boxes-item-image,
	#produkte .fading-boxes-item-image {
		background-position: center bottom !important;
	}

	.fading-boxes-item-image::before,
	.fading-boxes-item-image::after {
		display: none;
	}

	.accordion.ui-accordion-content {
		display: block !important;
		background-color: #ffffff;
	}

	.tab-start.-has-border {
		clear: both;
		margin: 0;
		padding: 0 10px;
		vertical-align: top;
	}

	.tab-start .rs-columns {
		display: inline;
		page-break-inside: auto;
	}

	.tab-start .rs-columns:after {
		width: 100%;
		height: 1px;
		clear: both;
		display: block;
		content: " ";
	}

	.oneo-no-sidebar .rs-column {
		float: left;
		clear: none;
		display: inline;
		margin-top: 0;
		page-break-before: auto;
	}

	.tab-start {
		display: block !important;
	}

	.not-in-view > .feature-box-text.-move,
	.not-in-view > .feature-box-image.-move {
		transform: translate(0, 0);
		opacity: 1;
	}

	.mejs-container {
		display: none;
	}

	h1, h2, h3, h4 {
		orphans: 0;
		page-break-after: avoid;
	}

	footer.page-footer {
		display: block;
		margin-top: 10px;
		border-top: 2px solid #cccccc;
		background: none;
	}
}
