
/* Html/Body */

/* the ios way, apparently.. */

.ov-menu-visible,
.ov-menu-visible body
{
	overflow: hidden;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Button-Wrapper */

.ov-menu-button
{
	position: fixed;
	z-index: 1010;
	right: 0;
	top: 0;
}

/* Menü-Wrapper > Button-Wrapper */

.ov-menu-wrapper .ov-menu-button
{
	position: absolute;
	z-index: 1012;
}

/* Menü-Wrapper */

.ov-menu-wrapper
{
	position: fixed;
	z-index: 1011;
	top: 0;
	right: 0;
	bottom: 0;
	overflow-x: hidden;
	overflow-y: auto;
	width: 100%;
	max-width: 414px;
	padding: 90px 25px 40px 25px;
	background: #e4e4e4; /* #f2f2f2 */

	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translate3d(100%, 0, 0);
	-ms-transform: translate3d(100%, 0, 0);
	transform: translate3d(100%, 0, 0);
	transition: -webkit-transform 320ms ease;
	transition: -ms-transform 320ms ease;
	transition: transform 320ms ease;
}
.ov-menu-wrapper:before,
.ov-menu-wrapper::before
{
	content: '';
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	background: #dcdcdc;
}
.ov-menu-visible .ov-menu-wrapper
{
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

/* Navigation-Search-Wrapper (flackert sonst kurz auf) */

.mainnavigation_search_wrapper
{
	display: none;
}
.ov-menu-wrapper .mainnavigation_search_wrapper
{
	display: block;
}

/* Äußerer Seiten-Wrapper */

.ov-site-wrapper-outer
{
	overflow: hidden;
	width: 100%;
}
.ov-menu-visible .ov-site-wrapper-outer
{
	min-height: 100%;
}

/* Äußerer Seiten-Wrapper > Innerer Seiten-Wrapper */

.ov-site-wrapper-inner
{
	width: 100%;
	margin-left: 0;
	transition: margin-left 320ms ease;
}
.ov-menu-visible .ov-site-wrapper-inner
{
	margin-left: -414px;
}

@media (max-width: 414px)
{
	/* Äußerer Seiten-Wrapper > Innerer Seiten-Wrapper */

	.ov-menu-visible .ov-site-wrapper-inner
	{
		margin-left: -320px;
	}
}

/* Äußerer Seiten-Wrapper > Innerer Seiten-Wrapper > Overlay */

.ov-site-wrapper-inner
{
	position: relative;
}
.ov-site-wrapper-inner:before,
.ov-site-wrapper-inner::before
{
	content: '';
	position: fixed; /* absolute does not work with fixed positioned elements inside the wrapper */
	z-index: 1009;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: rgba(288, 288, 288, 0.5); /* #e4e4e4 */
	background: rgba(0, 0, 0, 0.5); /* #e4e4e4 */
	opacity: 0;
	transition: opacity 320ms ease;
	cursor: pointer;
}
.ov-menu-visible .ov-site-wrapper-inner:before,
.ov-menu-visible .ov-site-wrapper-inner::before
{
	left: 0;
	opacity: 1;
}
.ov-menu-in-transition .ov-site-wrapper-inner:before,
.ov-menu-in-transition .ov-site-wrapper-inner::before
{
	left: 0;
	opacity: 0;
}
.ov-menu-visible.ov-menu-in-transition .ov-site-wrapper-inner:before,
.ov-menu-visible.ov-menu-in-transition .ov-site-wrapper-inner::before
{
	left: 0;
	opacity: 1;
}

/* Button */

.ov-menu-button button
{
	height: 80px;
	margin: 0;
	padding-right: 25px;
	padding-left: 25px;
	background: #b72020; /* #c32929 */
	color: #fff;
	font-weight: 800;
	font-size: 1rem; /* 16/16 */
}

/* Button > Menü-Öffnen-Button (direkt im Body) */

.ov-menu-button button .icon
{
	padding-left: 42px;
	background: transparent url(../images/layout/navigation@2x.png) no-repeat right center;
	background-size: auto 100%; /* 46px 34px */
}

/* Button > Menü-Schließen-Button (im Menü-Wrapper) */

.ov-menu-wrapper .ov-menu-button
{
	left: 0;
}
.ov-menu-wrapper .ov-menu-button button
{
	width: 100%;
	background: #b72020;
	text-align: right;
}
.ov-menu-wrapper .ov-menu-button button .icon
{
	padding-left: 32px;
	background-image: url(../images/layout/close@2x.png);
	background-size: auto 100%; /* 50px 50px */
}

@media (min-width: 1209px)
{
	/* Button > Menü-Öffnen-Button (direkt im Body) */

	body > .ov-menu-button button
	{
		width: 80px !important;
		padding-right: 0;
		padding-left: 0;
	}
	body > .ov-menu-button button span
	{
		display: inline-block;
		font-size: 0.875rem; /* 14/16 */
	}
	body > .ov-menu-button button .label
	{
		position: relative;
		top: -2px;
	}
	body > .ov-menu-button button .icon-desktop
	{
		width: 40px;
		height: 30px;
		margin-top: 2px;
		padding: 0;
		background-size: 100% auto; /* 46px 34px */
	}
	body > .ov-menu-button button .icon-mobile
	{
		display: none;
	}
}

@media (max-width: 1209px)
{
	/* Button */

	.ov-menu-button button
	{
		height: 60px;
	}

	/* Button > Menü-Öffnen-Button (direkt im Body) */

	body > .ov-menu-button button .icon-desktop
	{
		display: none;
	}

	/* TEST > Button > Menü-Öffnen-Button (direkt im Body) */

	body > .ov-menu-button button
	{
		padding-right: 15px;
		padding-left: 15px;
	}
	body > .ov-menu-button button span
	{
		display: block;
		font-size: 12px; /* 12/16 */
	}
	body > .ov-menu-button button .label
	{
		position: relative;
		top: -3px;
	}
	body > .ov-menu-button button .icon-desktop
	{
		display: inline-block;
		width: 30px;
		height: 26px;
		margin-top: -2px;
		padding: 0;
		background-size: 100% auto; /* 46px 34px */
	}
	body > .ov-menu-button button .icon-mobile
	{
		display: none;
	}
}

@media (max-width: 460px)
{
	/* Button > Menü-Öffnen-Button (direkt im Body) */

	body > .ov-menu-button button
	{
		padding-right: 10px;
		padding-left: 10px;
	}
	body > .ov-menu-button button span
	{
		display: inline-block;
		font-size: 0.875rem; /* 14/16 */
	}
	body > .ov-menu-button button .icon-desktop
	{
		display: none;
	}
	body > .ov-menu-button button .label
	{
		display: none;
	}
	body > .ov-menu-button button .icon-mobile
	{
		display: inline-block;
		width: 40px;
		height: 24px;
		margin-top: 2px;
		padding: 0;
		background-position: center center;
	}
}

/* Abstand des Body für fix positionierten Hauptmenü- und Such-Wrapper zurücksetzen */

.fixed-header
{
	padding-top: 0;
}

/* Header > Top-Balken */

header .top .content .left .section .arrow-up
{
	display: none;
}
header .top .content .right
{
	transition: margin-right 320ms ease;
}
header .top .content .right > span.search,
header .top .content .right > span.readspeaker + .separator
{
	/* display: none !important; */
}

@media (max-width: 1450px) /* 1500px bei alter Buttonbreite */
{
	/* Header > Top-Balken */

	header .top .content .right
	{
		margin-right: 90px; /* 150px bei alter Buttonbreite */
	}
	.ov-menu-visible header .top .content .right
	{
		margin-right: 0;
	}
}

@media (max-width: 1209px)
{
	/* Header > Top-Balken */

	header .top .content .right
	{
		margin-right: 65px;
		transition: margin-right 320ms ease;
	}
	.ov-menu-visible header .top .content .right
	{
		margin-right: 0;
	}
	header .top .content .right .readspeaker
	{
		margin-right: 0;
		padding-right: 0;
		border: none;
	}
	header .top .content .right a.toggle_mobile_nav,
	header .top .content .right a.toggle_mobile_nav.expanded
	{
		display: none;
	}
}

@media (max-width: 1209px) and (min-width: 784px)
{
	header .top .content .right .date,
	header .top .content .right .date + .separator,
	header .top .content .right .weather,
	header .top .content .right .weather + .separator,
	header .top .content .right .readspeaker,
	header .top .content .right .readspeaker + .separator,
	header .top .content .right .search
	{
		display: inline-block;
	}
	header .top .content .right .date,
	header .top .content .right .weather
	{
		position: relative;
		top: -0.1875rem; /* -3/16 */
		font-size: 0.875rem; /* 14/16 */
	}
	header .top .content .right .separator,
	header .top .content .right span.separator
	{
		position: relative;
		top: 0.125rem; /* 2/16 */
		margin: 0 0.625rem; /* 0 10/16 */
	}
}

@media (max-width: 460px)
{
	/* Header > Top-Balken */

	header .top .content .right
	{
		margin-right: 50px;
	}
	header .top .content .right .readspeaker
	{
		margin-right: 0 !important;
	}
	.ov-menu-visible header .top .content .right
	{
		margin-right: 0;
	}
}

/* Header > Top-Balken > Icon-Navigation (Animation/Transition für neues Menü ergänzt) */

.icon-navigation
{
	transition: top 400ms ease, right 320ms ease !important;
}
.ov-menu-visible .icon-navigation
{
	right: 414px;
}

/* Header > Header-Slider (visueller Workaround für die nicht vergrößerten Slides bei angezeigtem Menü (overflow hidden)) */

.header-slider
{
	margin-left: 0;
	transition: margin-left 320ms ease !important;
}
.ov-menu-visible .header-slider
{
	margin-left: 16px;
}

/* old main navigation (only applicable for desktop widths in order to fix fixed positioning) */

.mainnavigation_search_wrapper
{
	/* width: 100%; */
	/* margin-left: 0; */
	/* transition: none; */
}
.ov-menu-visible.fixed-header .mainnavigation_search_wrapper
{
	/* margin-left: 400px; */
}
.ov-menu-in-transition.fixed-header .mainnavigation_search_wrapper
{
	/* transition: margin-left 320ms ease; */
}

/* Alte Suche */

.ov-menu-wrapper .search_wrapper
{
	display: block !important;
	margin-top: 24px;
}
.ov-menu-wrapper .search_wrapper .form_wrapper
{
	position: relative;
}
.ov-menu-wrapper .search_wrapper .form_wrapper p input[type="text"],
.ov-menu-wrapper .search_wrapper .form_wrapper p input[type="submit"]
{
	height: 50px;
	font-size: 1.25rem; /* 20/16 */
	font-size: 1.125rem; /* 18/16 */
}
.ov-menu-wrapper .search_wrapper .form_wrapper p input[type="text"]
{
	text-overflow: ellipsis;
	/* width: calc(100% - 120px); */
	width: 100%;
	/* padding-right: 20px; */
	padding-right: 70px;
	padding-left: 20px;
}
.ov-menu-wrapper .search_wrapper .form_wrapper p input[type="submit"]
{
	display: none;
	width: 120px;
}
.ov-menu-wrapper .search_wrapper .form_wrapper p .mobile_search_button
{
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 100%;
	margin: 0;
	background-position: center center;
	background-size: 25px 25px;
}
.ov-menu-wrapper .search_wrapper .autocomplete_flyout_wrapper
{
	width: 100%;
	margin: 0;
}
.ov-menu-wrapper .search_wrapper .autocomplete_flyout_wrapper .autocomplete_flyout
{
	z-index: 10;
	width: 100% !important;
	margin-bottom: 40px;
	padding-right: 20px;
	padding-left: 20px;
}
.ov-menu-wrapper .search_wrapper .autocomplete_flyout_wrapper .autocomplete_flyout h3
{
	display: block;
	margin-top: 5px;
	font-size: 1.25rem; /* 20/16 */
	font-size: 1.125rem; /* 18/16 */
}

@media (max-width: 1209px)
{
	/* Alte Suche */

	.ov-menu-wrapper .search_wrapper
	{
		margin-top: 0;
	}
	.ov-menu-wrapper .search_wrapper .form_wrapper p input[type="text"]
	{
		width: 100%;
		height: 40px;
		padding-right: 60px;
		font-size: 1rem;
	}
	.ov-menu-wrapper .search_wrapper .form_wrapper p .mobile_search_button
	{
		top: 0;
		right: 0;
		width: 40px;
		height: 100%;
		background-position: center center;
	}
}

/* Alte Hauptnavigation */

.mainnavigation_search_wrapper h3,
.mainnavigation_search_wrapper .border,
.mainnavigation_search_wrapper .icon-desktop,
.mainnavigation_search_wrapper .fa-caret-down,
.mainnavigation_search_wrapper .fa-caret-up
{
	display: none;
}
.mainnavigation_search_wrapper ul
{
	height: auto !important;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.mainnavigation_search_wrapper li
{
	margin: 0;
	padding: 0;
}
.mainnavigation_search_wrapper a
{
	position: relative;
	display: block;
	padding: 0.625em 3.75em 0.625em 1.25em; /* 10/16 60/16 10/16 20/16 */
	border-bottom: solid 1px #fff; /* #e4e4e4 */
	color: #4b4f55;
	font-weight: bold;
	font-size: 1rem; /* 16/16 */
	text-decoration: none;
}
.mainnavigation_search_wrapper a:hover,
.mainnavigation_search_wrapper a:focus
{
	color: #d32f2e;
}
.mainnavigation_search_wrapper li:first-child > a
{
	/*border-top: solid 1px #fff; /* #e4e4e4 */
	border-top: none;
}
.mainnavigation_search_wrapper .active > a
{
	color: #d32f2e;
	font-weight: bold;
}
.mainnavigation_search_wrapper .more-arrow
{
	position: absolute;
	top: 0;
	right: 0;
	width: 2.5em; /* 40/16 */
	height: 100%;
	border-left: solid 1px #fff; /* #e4e4e4 */
}
.mainnavigation_search_wrapper .more-arrow .fa
{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 1.25em; /* 20/16 */
}
.mainnavigation_search_wrapper .back-link
{
	padding-left: 3.75em; /* 60/16 */
}
.mainnavigation_search_wrapper .back-arrow
{
	position: absolute;
	top: 0;
	left: 0;
	width: 2.5em; /* 40/16 */
	height: 100%;
	border-right: solid 1px #fff; /* #e4e4e4 */

	margin-right: 0.875em; /* 14/16 */
	margin: 0;

}
.mainnavigation_search_wrapper .back-arrow .fa
{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 1.25em; /* 20/16 */
}

/* Neue Menü-Listen-Wrapper */

.ov-menu
{
	overflow: hidden;
	position: absolute;
	top: 230px;
	right: 25px;
	bottom: 40px;
	left: 25px;
}
.ov-menu-list-wrapper
{
	overflow-x: hidden;
	overflow-y: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	-webkit-transform: translate3d(-100%, 0, 0);
	-ms-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	transition: -webkit-transform 400ms;
	transition: -ms-transform 400ms;
	transition: transform 400ms;
	background: #e4e4e4; /* #f2f2f2 */
	display: none;
}


.ov-menu-list-wrapper.ov-menu-list-wrapper-expanded,
.ov-menu-list-wrapper.ov-menu-list-wrapper-expanded-parent
{
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	display: block;
}

@media (max-width: 1209px)
{
	/* Neue Menü-Listen-Wrapper */

	.ov-menu-wrapper
	{
		padding-top: 90px;
	}
	.ov-menu
	{
		top: 196px;
	}
}

/* Icon-Navigation in der ersten Menü-Ebene */

.icon-navigation
{
	display: none; /* prevent flickering on the site */
}
.item-icon-navigation .icon-navigation
{
	display: block; /* show navigation in the menu */
}

.item-icon-navigation,
.mainnavigation_search_wrapper .item-icon-navigation
{
	margin-top: 2.5rem; /* 40/16 */
}
.item-icon-navigation .icon-navigation
{
	position: static;
}
.item-icon-navigation .icon-navigation ul
{
	overflow: hidden;
}
.item-icon-navigation .icon-navigation li
{
	position: relative;
	float: left;
	width: 25%;
	padding-left: 1px;
	/* padding-bottom: 55px; */
	padding-bottom: 75px;
}
.item-icon-navigation .icon-navigation li:first-child
{
	padding-left: 0;
}
.item-icon-navigation .icon-navigation a
{
	position: static;
	height: 55px;
	padding: 0;
	background: #d32f2e;
	border: none;
	outline: none;
	text-align: left;
}
.item-icon-navigation .icon-navigation a:hover,
.item-icon-navigation .icon-navigation a:focus
{
	background: #000;
}
.item-icon-navigation .icon-navigation a span
{
	display: none;

	position: absolute;
	z-index: 2;
	/* top: 81px; */
	top: 70px;
	left: 0;
	/* -webkit-transform: translate(0, -50%); */
	/* -ms-transform: translate(0, -50%); */
	/* transform: translate(0, -50%); */
	width: 100%;
	padding-top: 0.25em; /* 3/12 */
	padding-bottom: 0.25em; /* 3/12 */
	background: #fff;

	font-weight: normal;
	font-size: 0.75rem; /* 12/16 */
	line-height: 1.4;
	text-align: center;
}
.item-icon-navigation .icon-navigation a:hover span,
.item-icon-navigation .icon-navigation a:focus span
{
	display: block;
}
.item-icon-navigation .icon-navigation a:after,
.item-icon-navigation .icon-navigation a::after
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	/* height: 100%; */
	height: 55px;
	background-color: transparent;
	background-size: 55px auto;
}
.item-icon-navigation .icon-navigation .icon-suche
{
	display: none;
}
@media (max-width: 1209px)
{
	.icon-navigation
	{
		display: block;
	}
}
@media (max-width: 414px)
{
	.icon-navigation
	{
		display: block;
	}
	.item-icon-navigation .icon-navigation li
	{
		padding-bottom: 0;
	}
	.item-icon-navigation .icon-navigation a:hover span,
	.item-icon-navigation .icon-navigation a:focus span
	{
		display: none;
	}
}

/* Suchergebnis-Menü (im Inhaltsbereich) */

.search-result-navigation
{
	margin-left: 0;
	transition: margin-left 320ms ease, box-shadow 160ms ease;
}
.ov-menu-visible .fixed-search-result-navigation .search-result-navigation
{
	margin-left: -414px;
}

@media (max-width: 414px)
{
	/* Suchergebnis-Menü (im Inhaltsbereich) */

	.ov-menu-visible .fixed-search-result-navigation .search-result-navigation
	{
		margin-left: -320px;
	}
}

/* Datenschutzhinweis (unter dem Footer) */

.cookie_layer_wrapper
{
	margin-left: 0;
	transition: margin-left 320ms ease;
}
.ov-menu-visible .cookie_layer_wrapper
{
	margin-left: -414px;
}

@media (max-width: 414px)
{
	/* Datenschutzhinweis (unter dem Footer) */

	.ov-menu-visible .cookie_layer_wrapper
	{
		margin-left: -320px;
	}
}



.ov-menu-wrapper .homelink
{
	position: relative;
	margin-top: 1.25rem; /* 20/16 */
	border-top: solid 1px #fff;
}
.ov-menu-wrapper .homelink a
{
	padding-left: 3.75rem; /* 60/16 */
}
.ov-menu-wrapper .homelink a:before,
.ov-menu-wrapper .homelink a::before
{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 2.5rem; /* 40/16 */
	height: 100%;
	border-right: solid 1px #fff;
}
.ov-menu-wrapper .homelink a:after,
.ov-menu-wrapper .homelink a::after
{
		content: '\f015'; /* fa-home */
		position: absolute;
		top: 50%;
		left: 0;
		-webkit-ransform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
		width: 2.5rem; /* 40/16 */
		font-weight: normal;
		font-size: 1.25rem; /* 20/16 */
		font-family: FontAwesome;
		text-align: center;
}
.ov-menu-visible .icon-navigation
{
	position: fixed;
	bottom: 20px;
	right: 25px;
	top: auto;
	display: block;
	width: 100%;
	max-width: 364px;
}
@media (max-width: 414px)
{
	.ov-menu-visible .icon-navigation
	{
		width: calc(100% - 50px);
		max-width: none;
	}
}

.icon-navigation ul {
    overflow: hidden;
}

.mainnavigation_search_wrapper .icon-navigation li.icon-suche {
    display: none;
}

.mainnavigation_search_wrapper .icon-navigation li {
    margin: 0 0 1px 0;
    padding: 0;
    float: left;
    position: relative;
    float: left;
    width: 25%;
    padding-left: 1px;
	padding-bottom: 75px;
}

.ov-menu
{
	bottom: 160px;
}

@media (max-height: 940px)
{
	.mainnavigation_search_wrapper .icon-navigation li {
		padding-bottom: 0;
	}
	.ov-menu
	{
		bottom: 120px;
	}

}

.mainnavigation_search_wrapper .icon-navigation a {
    position: static;
    height: 55px;
    padding: 0;
    background: #d32f2e;
    border: none;
    outline: none;
    text-align: left;
    text-align: center;
}


.mainnavigation_search_wrapper .icon-navigation a span {
    display: none;
    position: absolute;
    z-index: 2;
    top: 70px;
    left: 0;
    width: 100%;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    background: #fff;
    font-weight: normal;
    font-size: 0.75rem;
    line-height: 1.4;
    text-align: center;
}

.mainnavigation_search_wrapper .icon-navigation a:hover span, .mainnavigation_search_wrapper .icon-navigation a:focus span {
    display: block;
}

.mainnavigation_search_wrapper .icon-navigation a:after, .mainnavigation_search_wrapper .icon-navigation a::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* height: 100%; */
    height: 55px;
    background-color: transparent;
    background-size: 55px auto;
}

.mainnavigation_search_wrapper .icon-navigation a:hover, .mainnavigation_search_wrapper .icon-navigation a:focus {
    background: #000;
}


.mainnavigation_search_wrapper .icon-navigation li:first-child > a {
    border-top: none;
}
