/* ------------------------------------------ */
/* Normalize
/* ------------------------------------------ */

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: 500;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 0;
}

hr {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

code,
kbd,
pre,
samp {
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

select {
	text-transform: none;
}

button {
	overflow: visible;
}

button,
input,
select,
textarea {
	max-width: 100%;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled],
html input[disabled] {
	cursor: default;
	opacity: .5;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input[type="checkbox"],
input[type="radio"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: 0.4375em;
	padding: 0;
}
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
input[type="search"] {
	-webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
fieldset {
	border: 1px solid #d1d1d1;
	margin: 0 0 1.75em;
	min-width: inherit;
	padding: 0.875em;
}
fieldset > :last-child {
	margin-bottom: 0;
}
legend {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
	vertical-align: top;
}
optgroup {
	font-weight: bold;
}

/* ------------------------------------------ */
/* General, Structure
/* ------------------------------------------ */

body {
	font-family: 'Roboto', sans-serif;
	margin:0;
	padding:0;
	color:#555;
	background:#FFF;
	font-size:1.0625rem;
	font-size:17px;
	line-height:1.375rem;
	line-height:22px;
	font-weight:300;
}

.key-image-bg {
	width:100%;
	height:0;
	padding-bottom:48%;
	background:url('../images/rabl-keyimage-start-800.jpg') bottom center no-repeat;
	background-size:100% auto;
	position:fixed;
	top:0;
	z-index:0;
}

.key-image-frame {
	width:100%;
	height:0;
	padding-bottom:48%;
}

.paper-edge {
	width:100%;
	height:20px;
	background-image:url('../images/rabl-papierkante1.png');
	background-position:top center;
	background-repeat:no-repeat;
}

.main {
	width:100%;
	margin-top:-22px;
	position:relative;
	z-index:1;
}

.main-inner {
	background:#FFF;
}

.footer {
	width:100%;
	background:#A3D14A;
}

.logo-container {
	margin:0 auto;
	padding:0 20px;
	text-align:center;
}

.logo {
	width: 100%;
	max-width:500px;
	height: auto;
	padding:15px 0;
}

.claim {
	padding:20px 20px 10px 20px;
	text-align:center;
}

.claim img {
	width:100%;
	max-width:1000px;
	display:block;
	margin:0 auto;
}

.navi {
	background:#CCC;
}

.main-container {
	margin: 0 auto;
	padding:0 20px 50px 20px;
	max-width:800px;
}

.footer-container {
	margin: 0 auto;
	padding:13px 20px;
	max-width:800px;
}


.toggle-button {
	display:inline-block;
	background:url("../images/rabl-nav-plus.svg") center left no-repeat;
	margin-bottom:1.2rem;
	padding-left:35px;
	cursor:pointer;
	text-decoration:none;
}
.toggle-button.isOpen {
	background:url("../images/rabl-nav-minus.svg") left center no-repeat;
}
.toggle-button .more {
	text-decoration:underline;
}
.toggle-button.isOpen .more {
	display:none;
}

.toggle-container {
	display:none;
}
.toggle-container.isOpen {
	display:block;
}

@media only screen and (min-width: 480px) {
	.claim {
		padding:35px 20px 15px 20px;
	}
}

@media only screen and (min-width: 640px) {
	.key-image-bg,
	.key-image-frame {
		padding-bottom:43.75%;
	}
	.claim {
		padding:50px 20px 15px 20px;
	}
	
	.logo {
		padding:20px 0;
	}
}

@media only screen and (min-width: 800px) {
	body {
		font-size:1.125rem;
		font-size:18px;
		line-height:1.625rem;
		line-height:26px;
	}
	
	.key-image-bg {
		width:100%;
		height:350px;
		padding-bottom:0;
		background-size:800px auto;
		position:fixed;
		top:0;
		z-index:0;
	}
	
	.key-image-frame {
		width:100%;
		height:350px;
		padding-bottom:0;
	}
}

/* ------------------------------------------ */
/* Common Styles, Typo
/* ------------------------------------------ */

h1, h2, h3, h4, h5, h6 {}
p {margin:0 0 1rem 0;}
strong {font-weight:500;}
/*ul {margin:0; padding:0; list-style-position: inside;}*/

ul {
	padding-left:20px; 
	overflow:auto;
	margin-top:0;
	margin-bottom:1rem;
}

hr {
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid transparent;
  margin-bottom:2rem;
}
a, a:link, a:visited, a:active {
	text-decoration:underline;
	color:#555;
}

/* ------------------------------------------ */
/* Content Styles
/* ------------------------------------------ */
.main .portrait.float-right,	
.main .quadrat.float-right,	
.main .portrait.float-left,	
.main .quadrat.float-left {
	display:block;
	width:100%;
	max-width:150px;
	margin: 0 auto 1rem auto;
}

@media only screen and (min-width: 360px) {
	.float-left {
		float:left;
	}
	.float-right {
		float:right;
	}
	.main .portrait.float-left,	
	.main .quadrat.float-left {
		margin: 0 1rem 1rem 0;
	}
	.main .portrait.float-right,	
	.main .quadrat.float-right {
		margin: 0 0 1rem 1rem;
	}
}

@media only screen and (min-width: 480px) {
	.main .portrait.float-right,	
	.main .quadrat.float-right {
		width:50%;
		max-width:300px;
		margin:0 0 20px 30px;
	}
	.main .portrait.float-left,	
	.main .quadrat.float-left {
		width:50%;
		max-width:300px;
		margin:0 30px 20px 0;
	}
}

/* ------------------------------------------ */
/* Footer Content
/* ------------------------------------------ */
.socialmedia a {
	display:block;
	width:22px;
	height:22px;
	float:left;
	margin-right:10px;
	background-image:url('../images/rabl-social.png');
	background-size:157px 22px;
	background-repeat:no-repeat;
}
.socialmedia a:hover {
	opacity:0.5;
	filter: alpha(opacity=50);
}
.socialmedia a.facebook  { background-position:0 0; }
.socialmedia a.twitter 	 { background-position:-27px 0; }
.socialmedia a.instagram { background-position:-54px 0; }
.socialmedia a.pinterest { background-position:-81px 0; }
.socialmedia a.linkedin  { background-position:-108px 0; }
.socialmedia a.xing      { background-position:-135px 0; }

@media only screen and (min-width: 480px) {
	.socialmedia a {
		width:44px;
		height:44px;
		background-size:314px 44px;
	}
	.socialmedia a.facebook  { background-position:0 0; }
	.socialmedia a.twitter 	 { background-position:-54px 0; }
	.socialmedia a.instagram { background-position:-108px 0; }
	.socialmedia a.pinterest { background-position:-162px 0; }
	.socialmedia a.linkedin  { background-position:-216px 0; }
	.socialmedia a.xing      { background-position:-270px 0; }
}

/* ------------------------------------------ */
/* helper, clearings, fixes
/* ------------------------------------------ */
.no-gap { margin-bottom:0; padding-bottom:0; }
.relative {
	position:relative;
}
button:focus {
  text-decoration: none;
  outline:none;
  border: none;
  box-shadow: none;
}
.notransition {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
  -ms-transition: none !important;
  transition: none !important;
}
.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
	clear: both;
	display:block;
	zoom: 1; /* ie 6/7 */
}

#privacycontainer {
	display:none;
}


/* iOS: remove link background/highlight grey */
a {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}