/*====================================================================================================*/
body {
	margin: 0;
	background: #362D3D;
	color: #362D3D;
	font-family: Rubik, "Segoe UI", "Trebuchet MS", Arial, Helvetica, sans-serif;
	font-size: 0;
}
a, input, select, textarea {
 transition: background-color .25s, color .25s;
	text-decoration: none;
	font: inherit;
}
img {
	max-width: 100%;
	height: auto;
}
/*====================================================================================================*/
section>:only-child, #ca, main {
	width: 95%;
	margin: auto;
	max-width: 1400px;
	position: relative;
}
#blender>:only-child, #nav>:only-child {
	width: 100%;
	max-width: 100%;
}
#preheader, #blender, #nav, #footer {
	color: #fff;
}
#header, #main {
	background: #fff;
	color: #362D3D;
}
#heading {
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	padding: 2rem 0 2rem 0;
	background: inherit;
	position: relative;
	z-index: 170000;
}
#heading h1 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
}
#crumbs {
	background: #E6E7E8;
 font-size: .75rem;
	text-transform: uppercase;
}
#crumbs a, #crumbs label {
	display: inline-block;
 padding: .75rem;
	color: inherit;
	cursor: pointer;
}
#crumbs a:first-of-type {
	padding-left: 0;
}
#crumbs a:last-of-type {
	color: #ED301D;
}
#main main {
	padding: .1rem 0;
}
/*====================================================================================================*/
#hlogo {
	display: inline-block;
	vertical-align: middle;
}
#hlang {
	display: inline-block;
	vertical-align: middle;
	text-align: right;
 background: url(/images/svg/rarrlight.svg) right .5rem center no-repeat;
	background-size: 2rem;
}
#hlang a {
	display: inline-block;
	font-weight: 500;
	color: inherit;
	border-radius: 5rem;
}
#hlang.en a {
	background: url(/images/svg/flagde.svg) left 1.5rem center no-repeat;
	background-size: 2rem;
}
#hlang.de a {
	background: url(/images/svg/flagen.svg) left 1.5rem center no-repeat;
	background-size: 2rem;
}
/*====================================================================================================*/
#hetel a {
	display: inline-block;
	width: 50%;
	height: 3rem;
}
#hetel a:nth-of-type(1) {
 background: url(/images/svg/icontel.svg) center center no-repeat #362D3D;
 background-size: 2rem;
}
#hetel a:nth-of-type(2) {
 background: url(/images/svg/iconmail.svg) center center no-repeat #ED301D;
 background-size: 2rem;
}
/*====================================================================================================*/
#reschk {
	display: none;
}
#nav {
	position: relative;
	z-index: 270000;
}
#nav input {
	display: none;
}
#nav ul li label {
	display: none;
	background-image: url(../../images/svg/darrwhite.svg);
 background-position: right .5rem center;
	background-repeat: no-repeat;
	background-size: 1.75rem;
	cursor: pointer;
}
#nav ul li ul {
	position: static;
}
#nav ul li input:checked + ul {
	height: auto;
}
/*====================================================================================================*/
#footer {
	padding: 3rem 0;
}
#footer div {
 font-size: .75rem;
}
#footer strong {
	color: #ED301D;
}
#footer a {
	color: inherit;
}
#fdiscover, #fcompany, #fcontact, #fdetails {
	display: inline-block;
	vertical-align: top;
	min-width: 25%;
	white-space: nowrap;
	padding: 0 3rem 0 0;
	box-sizing: border-box;
}
#fdiscover, #fcompany, #fcontact {
	line-height: 1.75rem;
}
#fdetails {
	color: #c2c0c4;
	line-height: 1.5rem;
}
#flogos, #fin {
	text-align: center;
	color: #86818B;
	margin: 3rem 0 0 0;
}
.fixedmenu {
	position: fixed !important;
	width: 100%;
}
/*====================================================================================================*/
#blender {
	position: relative;
	background-size: cover;
	margin: -40px 0 0 0;
	overflow: hidden;
}
.smallerblender {
	text-align: center;
}
.smallerblender ~ #heading, .smallerblender + #ca {
 display: none;
}
.smallerblender ~ #crumbs {
 background: #fff;
 text-align: right;
 padding: 1rem 0;
}
.smallerblender ~ #crumbs a {
 color: inherit !important;
}
 .smallerblender ~ #crumbs a:last-child, .smallerblender ~ #crumbs span:last-child {
 font-weight: bold;
}
#blender .slide {
	height: inherit;
	color: #fff;
	padding: 1rem;
	background-size: cover;
	background-position: center center;
	position: absolute;
	width: 100%;
	top: 0;
	box-sizing: border-box;
	opacity: 0;
 transition: opacity .25s;
}
#blender .slide:first-of-type {
	position: relative;
}
#blender input {
	display: none;
}
#blender input:checked + .slide {
	opacity: 1;
	z-index: 170;
}
.spotlabels {
	position: absolute;
	width: 100%;
	bottom: 40px;
	text-align: center;
	padding: 1rem;
	z-index: 270;
}
.spotlabels label {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background: #fff;
	border: 2px solid #fff;
 margin: .25rem;
	border-radius: 100%;
	cursor: pointer;
 transition: background .25s;
}
#blender input:nth-of-type(1):checked ~ .spotlabels label:nth-of-type(1), #blender input:nth-of-type(2):checked ~ .spotlabels label:nth-of-type(2), #blender input:nth-of-type(3):checked ~ .spotlabels label:nth-of-type(3), #blender input:nth-of-type(4):checked ~ .spotlabels label:nth-of-type(4), #blender input:nth-of-type(5):checked ~ .spotlabels label:nth-of-type(5), #blender input:nth-of-type(6):checked ~ .spotlabels label:nth-of-type(6) {
 background: #000;
}
.prevlabel, .nextlabel {
	display: block;
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
}
.prevlabel {
	left: 0;
	background: url(../../images/svg/larrlight.svg) left 1vw center no-repeat;
}
.nextlabel {
	right: 0;
	background: url(../../images/svg/rarrlight.svg) right 1vw center no-repeat;
}
.blendertext {
	text-transform: uppercase;
}
.blendertext h1 {
	font-weight: 500;
	margin: 0;
	font-size: 1rem;
}
.blendertext h2 {
	font-weight: 500;
	margin: 0;
	font-size: 1.75rem;
}
#ca {
	max-width: 1400px;
	margin: -1.5rem auto;
	z-index: 170000;
	position: relative;
}
#ca a {
	background: url(/images/svg/darrlightdouble.svg) center center no-repeat #ED301D;
	background-size: 2rem;
	display: block;
	width: 3rem;
	height: 3rem;
	position: absolute;
}
.videoslide {
    overflow: hidden;
    height: 50vh;
    position: relative;
}
.smallerblender .videoslide {
    height: 40vh;
}
.videoslide video {
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0px;
    margin: -40% 0 0 0;
}
/*====================================================================================================*/
.layoutcolumns {
	font-size: 0;
}
.layoutcolumns > div {
	font-size: 1rem;
}
#srvcrumbs label {
	display: none;
	counter-increment: magicnav;
}
.cnthtm {
	display: none;
}
.magicnav {
	list-style-type: none;
	padding: 0 0 1px 0;
	margin: 0;
	border-top: 1px solid #bec0c2;
	background: #bec0c2;
}
.magicnav li {
	display: block;
	margin: 0 1px 1px 1px;
	background: #fff;
	cursor: pointer;
}
.magicnav li:hover > label, .magicnav input:checked + li label {
	border-left: .5rem solid #ed301d;
	background-color: #e6e7e8;
}
.magicnav li:last-of-type {
	margin: 0 1px;
}
input.hidden {
	display: none;
}
.magicnav ul {
	display: none;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.magicnav ul li {
	margin: 0 !important;
}
.magicnav label {
	display: block;
	padding: 1rem;
	border-left: .5rem solid #e6e7e8;

}
.magicnav input:checked + label + ul {
	display: block;
}
.magicnav input + label {
	background-image: url(../../images/svg/darrdark.svg);
	background-position: right 1rem center;
	background-repeat: no-repeat;
}
.magicnav input:checked + label {
	border-left: .5rem solid #ed301d;
	background: #e6e7e8;
	background-image: url(../../images/svg/uarrdark.svg);
	background-position: right 1rem center;
	background-repeat: no-repeat;
}
/*====================================================================================================*/
@media (max-width: 799px) {
 #preheader {
 display: none;
}
#hetel {
 position: absolute;
 top: 0;
 width: 100vw;
 margin: 0 -2.5vw;
 white-space: nowrap;
}
#hetel a {
 display: inline-block;
 height: 3rem;
}
#hlogo {
 width: 25%;
 margin: 3.5rem 0 .5rem 0;
}
#htext {
 display: none;
}
#hlang {
 width: 75%;
 margin: 3.5rem 0 .5rem 0;
}
#hlang a {
 font-size: .75rem;
 padding: .75rem 3rem .75rem 4rem;
 border: 1px solid #BCBEC0;
}
#hlang.en a {
 background: url(/images/svg/flagde.svg) left 1.5rem center no-repeat;
 background-size: 2rem;
}
#hlang.de a {
 background: url(/images/svg/flagen.svg) left 1.5rem center no-repeat;
 background-size: 2rem;
}
#reschk + label {
 display: block;
 font-size: 1rem;
 font-weight: 500;
 text-align: center;
 background: #ED301D;
 padding: 1.5rem 0;
 cursor: pointer;
}
#reschk + label:after {
 content: "";
 display: inline-block;
 vertical-align: baseline;
 width: 3rem;
 height: 1rem;
 background: url(/images/svg/darrwhite.svg) center center no-repeat;
 background-size: 1.75rem;
}
#reschk:checked + label:after {
 background: url(/images/svg/uarrwhite.svg) center center no-repeat;
 background-size: 1.75rem;
}
#nav ul {
 display: block;
 list-style-type: none;
 padding: 0;
 margin: 0;
 font-size: 1rem;
 font-weight: 500;
 text-align: center;
 position: absolute;
 width: 100%;
 height: 0;
 overflow: hidden;
 transition: height .25s;
}
#nav ul li {
 display: block;
}
#nav ul li a, #nav ul li label {
 display: block;
 padding: 1.5rem 0;
 background-color: #ED301D;
 color: #fff;
 border-top: 1px solid #fff;
}
 #reschk:checked + label + ul {
 height: 1000%;
}
.fixedmenu {
 top: 0;
}
.blendertext {
 margin: 4rem auto 2rem auto;
}
}
/*====================================================================================================*/
@media (min-width: 600px) {
#hlogo, #hlang {
 width: 50%;
}
#hlogo a {
 display: inline-block;
 vertical-align: middle;
 width: 30%;
}
#htext {
 display: inline-block;
 vertical-align: middle;
 width: 60%;
 max-width: 200px;
 font-size: .75rem;
 padding: .25rem 0;
 font-weight: 300;
 margin-left: 5%;
 padding-left: 5%;
 border-left: 1px solid #BCBEC0;
 box-sizing: border-box;
}
.blendertext {
 margin: 10vw auto;
 max-width: 1400px;
}
.smallerblender .blendertext {
 margin: 7.5vw auto;
}
 .blendertext h2 {
 font-size: calc(2rem + 1vw);
 width: 70%;
}
.smallerblender h1 {
 width: auto;
 display: inline-block;
 padding: 10px;
 background-color: #ED301D;
 color: #fff;
}
.smallerblender h2 {
 width: auto;
}
}
/*====================================================================================================*/
@media (min-width: 800px) {
 #preheader {
 text-align: right;
}
 #preheader a {
 display: inline-block;
 padding: .75rem 1.5rem .75rem .5rem;
 margin: 0 0 0 1rem;
 color: #fff;
 background: url(/images/svg/rarrwhite.svg) right center no-repeat;
 background-size: 1rem;
 font-size: .75rem;
}
#header {
 padding: 1.5rem 0 3rem 0;
}
#hlang a {
 font-size: .75rem;
 padding: 1rem 3rem 1rem 4rem;
 border: 1px solid #BCBEC0;
}
#htext {
 font-size: 1rem;
 max-width: 250px;
}
#hlogo {
 width: 45%;
}
#hlang {
 width: 35%;
}
#hetel {
 display: inline-block;
 vertical-align: middle;
 width: 20%;
 text-align: right;
}
#hetel a {
 display: inline-block;
 vertical-align: middle;
 width: 3.5rem;
 height: 3.5rem;
 box-sizing: border-box;
}
#hetel a + a {
 margin-left: 1rem;
}
/*====================================================================================================*/
#nav > :only-child {
 display: table;
 background: url(/images/svg/cornerorange.svg) right center no-repeat;
 background-size: cover;
 height: 4rem;
 width: 95%;
 margin: -2rem auto 0 auto;
 max-width: 1400px;
}
#nav ul {
 display: table-row;
}
#nav ul li {
 display: table-cell;
 text-align: center;
 vertical-align: middle;
}
#nav ul li a, #nav ul li label {
display: block;
padding: 1.5rem 1rem;
height: 1rem;
font-size: .75rem;
color: #fff;
font-weight: 500;
}
 #nav ul li ul {
 display: none;
 position: absolute;
 background: #ED301D;
 padding: 0;
}
#nav ul li ul li {
 display: block;
 text-align: left;
 padding: 0;
}
 #nav ul li ul li a {
 border-bottom: 1px solid #f26e60;
 margin: .5rem;
 padding: 1rem;
}
#nav ul li ul li:last-of-type a {
 border: none;
}
 #nav ul li input:checked + ul, #nav ul li:hover ul {
 display: block;
}
/*====================================================================================================*/
#blender {
 margin-top: -2rem;
}
#fdetails {
 text-align: right;
 border-left: 1px solid #fff;
 padding: 0;
}
.fixedmenu {
 top: 2rem;
}
/*====================================================================================================*/
.col20 {
 display: inline-block;
 vertical-align: top;
 width: 20%;
}
.col80 {
 display: inline-block;
 vertical-align: top;
 width: 80%;
 padding: 0 0 2rem 2rem;
 box-sizing: border-box;
 line-height: 25px;
 font-weight: 300;
}
.cnthtm > *:first-child {
	margin-top: 0;
}
/*====================================================================================================*/
}
/*====================================================================================================*/
@media (min-width: 1300px) {
#hlogo {
 width: 30%;
}
#hlang {
 width: 43%;
 margin-right: 2%;
}
#hetel {
 width: 25%;
}
#hetel a:first-of-type {
 font-size: 1rem;
 width: auto;
 height: auto;
 background-image: none;
 color: #fff;
 text-align: center;
 padding: 1.5rem;
 max-height: 5rem;
 font-weight: 700;
}
#hetel a:first-of-type strong {
 display: block;
 color: #ED301D;
}
#hetel a + a {
 width: 5rem;
 height: 5rem;
}
#nav ul li a, #nav ul li label {
 font-size: 1rem;
}
.blendertext h2 {
 width: 45%;
}
.smallerblender h2 {
 width: auto;
}
}
/*====================================================================================================*/
/*====================================================================================================*/
#blender>:only-child, #main>:only-child {
	font-size: 1rem;
}
/*====================================================================================================*/
.videoslide + .blendertext {
    position: absolute;
    top: 0px;
    height: 25vh;
    margin: 12.5vh 0 12.5vh 0;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
	padding-left: 1rem;
}
.smallerblender .videoslide + .blendertext {
    height: auto;
    margin: 7.5vw auto;
    padding: 1rem;
}
