
/* Allgemeine Einstellungen */
/* barlow-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  src: url('/styles/fonts/barlow-v12-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  src: url('/styles/fonts/barlow-v12-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


html,
body
{
	margin: 0;
	padding: 0;
}
body
{
	padding: 40px 40px 60px 40px;
	background: #efeef0;
	color: #504f4f;
	font: normal normal 1.125em/1.5556em 'Barlow', Arial, sans-serif; /* 18/16 28/18 */
}
a
{
	color: #504f4f;
	text-decoration: none;
}
a:hover,
a:focus
{
	text-decoration: underline;
}
a img
{
	border: none;
}
img
{
	max-width: 100%;
}
h1
{
	margin: 0.6667em 0; /* 24/36 0 */
	color: #504f4f;
	font-weight: normal;
	font-size: 2em; /* 36/18 */
	line-height: 1.2em;
}
h2
{
	margin: 0;
	padding: 0;
	color: #504f4f;
	font-weight: normal;
}
h3
{
	margin: 0;
	padding: 0;
}
p
{
	margin: 0;
	padding: 0;
}
ul
{
	margin: 1.1111em 0 1.2222em 0; /* 20/18 0 22/18 0 */
	padding: 0;
}
li
{
	margin: 0 1.5em 0.3333em 1.1111em; /* 0 27/18 6/18 20/18 */
	padding: 0;
}
form
{
	margin: 0;
	padding: 0;
}
input,
textarea,
select
{
	font: normal normal 1em/normal 'Open Sans', Arial, sans-serif; /* 16/16 */
	outline: none;
}
input.text,
textarea,
select
{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	padding: 0.1667em 0.5556em; /* 3/18 10/18 */
	background: transparent;
	border: solid 1px #bbb9b8;
	color: #504f4f;
	font-size: 1em; /* 32/32 */
	line-height: normal;
}
select
{
	padding: 0.1111em 0.3333em; /* 2/18 6/18 */
}
input.submit
{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	padding: 0.25em 0.8333em; /* 6/24 20/24 */
	background: transparent;
	border: solid 1px #504f4f;
	color: #504f4f;
	font-size: 1.3333em; /* 24/18 */
	line-height: normal;
	text-align: center;
	cursor: pointer;
}
label
{
	color: #878686;
	font-weight: 300;
	line-height: 1.3333em; /* 24/18 */
	cursor: pointer;
}
label.main
{
	display: block;
	margin-bottom: 0.2222em; /* 4/18 */
}
form .row
{
	overflow: hidden;
	padding: 0.3333em 0; /* 6/18 */
}
form .row.submit
{
	padding-top: 1.1111em; /* 20/18 */
}
form .row .column
{
	float: left;
	width: 47.4137931034%; /* (275/580)*100 */
	margin-left: 5.1724137931%; /* (30/580)*100 */
}
form .row .column:first-child
{
	margin-left: 0;
}
form .row input.text,
form .row textarea,
form .row select,
form .row input.submit
{
	width: 100%;
}

/* Framework */

#wrapper
{
	max-width: 800px;
	margin: 0 auto 0 auto;
	background: #fff;
}
#content
{
	padding: 0 11%; /* 0 (88/800)*100 */
}
#content > div
{
	overflow: hidden;
	margin: 0 -14.1025641026%; /* 0 (-88/624)*100 */
	padding-right: 14.1025641026%;
	padding-left: 14.1025641026%;
}
#content > div.header,
#content > div.footer
{
	padding-right: 0;
	padding-left: 0;
}
#content > .form-wrapper
{
	max-width: 580px;
	margin: 0 auto 0;
	padding: 2em 0 2.2222em 0; /* 36/18 0 40/18 0 */
}
.note,
.topic,
.footer-hf
{
	background: #f5f4f5;
}
.header img,
.footer img
{
	display: block;
	width: 100%;
}

/* Inhaltsbereich > Kontaktformular */

.form-wrapper h2
{
	margin-bottom: 0.5em; /* 16/32 */
	font-size: 1.7778em; /* 32/18 */
	line-height: 1.0625em; /* 34/32 */
}
.form-wrapper p
{
	margin-top: 10px;
	color: #878787;
	font-weight: 300;
}

/* Inhaltsbereich > Kontaktformular > Nutzermeldungen */

div.messages,
#content > div.messages
{
	margin: 2em 0 1em 0; /* 36/18 0 18/18 0 */
	padding: 0.6667em 20px 0.8889em 20px; /* 12/18 20 16/18 20 */
}
div.messages
{
	border: solid 1px #acd3f1;
}
div.messages h2
{
	margin-bottom: 0;
	color: #005191;
	font-size: 1.1111em; /* 20/18 */
	line-height: 1.3em; /* 26/20 */
	font-weight: normal;
}
div.messages p
{
	margin: 0;
	color: #3c3c3b;
}
div.messages ul
{
	margin: 0.4444em 0 0 0; /* 8/18 0 0 0 */
}
div.messages ul li
{
	margin-bottom: 0;
}
div.messages.error
{
	border-color: #eaa7a7;
}
div.messages.error h2,
div.messages.error ul li:before,
div.messages.error ul li::before
{
	color: #cd1212;
}
div.messages.success
{
	border-color: #90d2b4;
}
div.messages.success h2,
div.messages.success ul li:before,
div.messages.success ul li::before
{
	color: #00914e;
}
#form_signup div.error a,
#form_signup div.error label
{
	color: #cd1212;
}
#form_signup div.error input,
#form_signup div.error select,
#form_signup div.error textarea
{
	border-color: #cd1212;
}

/* Inhaltsbereich > Inhalt unter dem Formular */

.middle,
#content > .middle
{
	margin-top: 2em; /* 36/18 */
	margin-bottom: 2.5em; /* 45/18 */
}
.middle p
{
	line-height: 1.5; /* 27/18 */
}
.middle a
{
	font-weight: bold;
}

/* Inhaltsbereich > Footer-Content */

.footer-content
{
	overflow: hidden;
}
.footer-content div
{
	float: left;
	width: 30%;
}
.footer-content .logo
{
	overflow: hidden;
	width: 40%;
}
.footer-content,
.footer-content a
{
	color: #000;
}
.footer-content p,
.footer-content ul
{
	margin: 0 20px 0 0;
	font-size: 12px;
	line-height: 1.5; /* 18/12 */
}
.footer-content p
{
	margin-top: 20px;
}
.footer-content ul li
{
	margin-bottom: 0;
}

/* Breakpoints */

@media screen and (max-width: 850px)
{

	/* Inhaltsbereich > Footer-Content */

	.footer-content div
	{
		width: 50%;
	}
	.footer-content .logo
	{
		width: 100%;
		margin-top: 2em; /* 36/18 */
	}
	.footer-content .logo img
	{
		float: right;
	}
	.footer-content p
	{
		margin-top: 0;
	}
}

@media screen and (max-width: 800px)
{

	/* Allgemeine Einstellungen */

	body
	{
		padding: 0;
	}
}

@media screen and (max-width: 600px)
{

	/* Allgemeine Einstellungen */

	body
	{
		font-size: 1em; /* 16/16 */
	}
}

@media screen and (max-width: 460px)
{

	/* Inhaltsbereich > Footer-Content */

	.footer-content div
	{
		width: 100%;
		padding-top: 2em; /* 36/18 */
	}
	.footer-content div:first-child
	{
		padding-top: 0;
	}
}

@media screen and (max-width: 320px)
{

	/* Allgemeine Einstellungen */

	body
	{
		font-size: 0.9375em; /* 15/16 */
	}

	/* Framework */

	#content
	{
		padding: 0 30px;
	}
	#content > div
	{
		overflow: hidden;
		margin: 0 -30px;
		padding-right: 30px;
		padding-left: 30px;
	}
}
