/*
Theme Name: Suchthilfe Aachen
Theme URI: http://www.xiqit.de
Author: XIQIT GmbH
Author http://www.xiqit.de
Version: 0.1
*/


/* Fehlerbehebung: Auf "Angebote nach Einrichtung" wurde eine 
nicht-existente Rubrik "Pflege" ausgegeben. 
body.page-id-253 section.fulltext div:nth-child(10), nav#referat a:nth-child(4) {
	display: none!important;
}
*/

/* Fehlerbehebung, weil Exclude Pages nicht funktioniert: 
Um auf Veranstaltungsseiten das Feedback-Formular auszublenden: */

li.page-item-13247, li.page-item-13972, li.page-item-13976, li.page-item-13978, li.page-item-13980, li.page-item-13982 {
	display: none !important;
}

/*--------------------------------------------------------------
	1.0 Schriften 
--------------------------------------------------------------*/

@import "fonts.css"; 

@font-face {
  font-family: 'fontello';
  src: url('font/fontello.eot?98329872');
  src: url('font/fontello.eot?98329872#iefix') format('embedded-opentype'),
       url('font/fontello.woff2?98329872') format('woff2'),
       url('font/fontello.woff?98329872') format('woff'),
       url('font/fontello.ttf?98329872') format('truetype'),
       url('font/fontello.svg?98329872#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
}

.icon-news:before { content: '\f1ea'; }
.icon-standorte:before { content: '\e803'; }
.icon-spenden:before { content: '\e804'; }
.icon-web:before { content: '\e807'; }
.icon-mail:before { content: '\e802'; }
.icon-phone:before { content: '\e806'; }
.icon-zeiten:before { content: '\e813'; }
.icon-download:before { content: '\e80c'; }
.icon-link-ext:before { content: '\f08e'; }
.icon-search:before { content: '\e80d'; -webkit-transform: scaleX(-1); -ms-transform: scaleX(-1); transform: scaleX(-1); } 
.icon-up-open-mini:before { content: '\e80e'; }
.icon-languages:before { content: '\e80f'; } 
.icon-check:before { content: '\e810'; }
.icon-fax:before { content: '\f1ac'; }

.icon-glueck {
	width: 26px;
	height: 26px;
	fill: currentColor;
}

/*--------------------------------------------------------------
	2.0 Reset 
--------------------------------------------------------------*/

html, 
body {
	padding: 0px;
	margin: 0px;
	height: 100%;
}

*,
*::before,
*:after {
	box-sizing: border-box;
}

.clearfix::before,
.clearfix:after {
	content: " ";
	display: table;
	clear: both;
}

.clear {
	clear: both;
	display: block;
}

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

a {
	outline: none;
	text-decoration: none;
	color: inherit;
}

a > img{
	border: 0;
	display: block;
}

input,
select {
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.red {
	color: rgb(204,30,28);
}

/*--------------------------------------------------------------
	3.0 Schriftarten 
--------------------------------------------------------------*/

body {
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 400;
	font-size: 0.95em;
	line-height: 1.45em;
	color: #000;
}

select, input {
	font-family: 'Source Sans Pro', sans-serif;

}

p.logofont {
	font-family: 'Arial', sans-serif;
	font-size: 1rem;
	text-align: right;
}

body.home #content h2 {
	text-align: center;
	font-weight: 400;
	font-size: 1.95rem;
	color: rgba(0,0,0,0.85);
	line-height: 1;
}

body:not(.home) #content h1 {
	font-weight: 300;
	font-size: 2.45rem;
	color: rgba(0,0,0,0.85);
	line-height: 1;
}

body:not(.home) #content h2 {
	font-weight: 300;
	font-size: 1.35rem;
	margin: 1.8rem 0 0.8rem;
	line-height: 1.2;
}

body:not(.home) #content h3 {
	font-weight: 600;
	font-size: 1.1rem;
	margin: 0.8rem 0 0;
	line-height: 1.2;
	color: #cc1e1c;
}

body:not(.home) #content section.fulltext h2.subtitle {
	margin: -0.8rem 0 1.8rem;
	font-size: 1.55rem;
}

body.home div#section-news .news-article h3 {
	font-weight: 600;
	font-size: 1.1rem;
	line-height: 1.35;
	margin: 0.8rem 0 0;
}

div#section-angebote div.angebot h3 {
	font-weight: 600;
	font-size: 1.05rem;
	line-height: 1.35;
	margin: 0;
}

section.fulltext li a, section.fulltext p > a {
	border-bottom: 1px solid #005164;
	-webkit-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
	color: #005164;
}

section.fulltext li a:hover, section.fulltext p > a:hover {
	border-bottom: 1px solid #cc1e1c;
	color: #cc1e1c;
}

/*--------------------------------------------------------------
	4.0 Layout 
--------------------------------------------------------------*/

body {
	overflow-y: scroll;
}

html {
	-webkit-overflow-scrolling: touch;
}

#body-container {
	padding: 0.1px 0;
	overflow: hidden;
}

body.admin-bar #body-container {
	padding-top: 32px;
}

div#nav-container {
	display: block;
	margin: 0 auto;
	padding: 1rem 0;
	height: calc(125px + 2rem);
	position: relative;
}

div#main-container div.wrapper-1300 {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

header#page-header {
	position: relative;
	height: 280px;
	border-bottom: 2px solid rgb(204,30,28);
	background-color: #CCC;
	background-size: cover;
	background-position: center;
}

header#page-header span.fotonachweis {
	position: absolute;
	bottom: 0.5rem;
	right: 0.5rem;
	display: inline-block;
	padding: 0.3rem 0.4rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.6);
	background-color: rgba(255, 255, 255, 0.55);
	font-size: 0.6rem;
}

div#aside-content {
	width: 300px;
	background-color: rgba(0,0,0,0.035);
}

div#content {
	width: calc(100% - 300px);
	padding: 3rem 2rem 0;
	min-height: calc(100vh - calc(125px + 2rem) - 30px - 56px);
}

body.home div#content {
	width: 100%;
	padding: 2rem 2rem 0;
	background-color: rgba(0,0,0,0.045);
}

body:not(.home) div#content h1:first-of-type {
	margin-top: 0;
}

#content section.fulltext {
	padding-bottom: 2rem;
	float: left;
	width: calc(100% - 320px - 2rem);
}

#content section.fulltext-aside {
	float: right;
	width: 320px;
	padding-bottom: 2rem;
}

body.page-template-template-fullwidth #content section.fulltext,
body.page-angebote #content section.fulltext,
body.page-angebotskarte #content section.fulltext,
body.page-angebote-nach-referat #content section.fulltext,
body.page-alle-angebote-von-a-bis-z #content section.fulltext,
body.archive.tax-angebote_categories #content section.fulltext,
body.blog #content section.fulltext,
body.archive #content section.fulltext,
body.search #content section.fulltext {
	float: none;
	width: 100%;
}

body.page-angebotskarte #content section.fulltext {
	padding-bottom: 0;
}

/* Aside auf Angebots-Seiten */

#content section.fulltext-aside div.logo {
	padding: 0.1px 0.5rem 0.8rem;
	border-bottom: 2px solid rgba(0,0,0,0.085);
}

#content section.fulltext-aside > div {
	padding: 0.5rem 0.5rem 0.8rem;
}

#content section.fulltext-aside > div.thumbnail {
	padding: 0.5rem 0 0.8rem;
	position: relative;
}

#content section.fulltext-aside > div.thumbnail img {
	width: 100%;
	height: auto;
}

#content section.fulltext-aside > div.thumbnail span.fotonachweis {
	position: absolute;
	top: 1rem;
	right: 0.5rem;
	display: inline-block;
	padding: 0.3rem 0.4rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.6);
	background-color: rgba(255, 255, 255, 0.55);
	font-size: 0.6rem;
}

#content section.fulltext-aside div.logo img {
	max-width: calc(100% - 2rem);
	height: auto;
	margin-left: 2rem;
}

#content section.fulltext-aside div.logo img.aligncenter {
	margin: 0 auto;
	display: block;
	float: none;
}

#content section.fulltext-aside div.logo p {
	line-height: 1.3;
	margin: 0.8rem 0;
	font-family: 'Arial', sans-serif;
	font-size: 13px;
}

#content section.fulltext-aside [class*='icon-'],
#content section.fulltext-aside p.role {
	padding-left: 2rem;
	position: relative;
}

#content section.fulltext-aside p.role {
	margin: 0 0 0.8rem;
	font-weight: 600;
}

#content section.fulltext-aside [class*='icon-']:before {
	position: absolute;
	left: 0.2rem;
	top: 2px;
	font-size: 120%;
}

#content section.fulltext-aside div.ansprechpartner .icon-languages:before {
	top: 0;
	font-size: 135%;
}

#content section.fulltext-aside div.anschrift-icon:before,
#content section.fulltext-aside div.oeffnungszeiten .icon-zeiten:before {
	font-size: 140%;
	top: 1px;
	left: 0.1rem;
}

#content section.fulltext-aside div.oeffnungszeiten .icon-zeiten:before {
	font-size: 120%;
}

#content section.fulltext-aside div.anschrift,
#content section.fulltext-aside div.oeffnungszeiten {
	border-bottom: 2px solid rgba(0,0,0,0.085);
}

#content section.fulltext-aside div.downloads {
	border-top: 2px solid rgba(0,0,0,0.085);
	margin-top: 1rem;
}

#content section.fulltext-aside div.anschrift p,
#content section.fulltext-aside div.oeffnungszeiten p,
section.angebot-aside div.ansprechpartner p,
#content section.fulltext-aside div.downloads p,
#content section.fulltext-aside div.downloads ul {
	margin: 0.5rem 0;
	line-height: 1.4;
	color: rgba(0,0,0,0.75);
}

#content section.fulltext-aside div.ansprechpartner [class*='icon-']:before {
	color: rgba(0,0,0,0.75);
}

#content section.fulltext-aside div.ansprechpartner {
	padding-top: 1rem;
}

#content section.fulltext-aside div.oeffnungszeiten p {
	padding-left: 2rem;
}

#content section.fulltext-aside div.oeffnungszeiten p.titel {
	font-weight: 600;
}

.acf-map {
	clear: both;
	width: calc(100% + 4rem);
	height: 280px;
	margin-left: -2rem;
}

body.page-id-255 .acf-map {
	height: 600px;
}

.acf-map h4 {
	margin: 0;
}

.acf-map p {
	margin: 0.2rem 0;
}

.acf-map a {
	color: #cc1e1c;
}

body.page-id-255 .acf-map a {
	display: block;
}

.acf-map a.angebot-standort {
	margin-bottom: 0.3rem;
	cursor: pointer;
}

.acf-map a:before {
	content: '\e808';
	font-family: 'fontello';
	margin-right: 4px;
}

.video-wrapped {
	width: 100% !important;
}

/* Downloads */

body.single-angebot div.downloads p.title {
	font-weight: 600;
}

#content section.fulltext-aside div.downloads ul.downloads {
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 0;
}

ul.downloads div.single-download {
	display: -webkit-flex;
	display: -webkit-box;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	        flex-direction: column;
}

ul.downloads li:not(:last-of-type) div.single-download {
	margin-bottom: 1rem;
}

ul.downloads div.single-download > div {
	padding-left: 2rem;
	position: relative;
}

ul.downloads div.single-download a.title {
	border-bottom: none;
}

ul.downloads div.single-download > div:nth-of-type(2) {
	display: -webkit-flex;
	display: -webkit-box;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

#content section.fulltext-aside div.downloads ul.downloads div.single-download > div:nth-of-type(2) p {
	margin: 0 1.5rem 0 0;
	font-size: 0.8rem;
	color: rgba(60,59,58,0.5);
}

ul.downloads div.single-download > div:nth-of-type(2) p.filesize:before {
	content: 'Dateigröße: ';
}

ul.downloads div.single-download > div:nth-of-type(2) p.filetype:before {
	content: 'Dateityp: ';
}

ul.downloads div.single-download a.title:before {
	content: '\E808';
	font-family: 'fontello';
    border-bottom: none;
    display: inline-block;
    position: absolute;
    left: 0.8rem;
    font-size: 130%;
    line-height: 1.1;
}

.lyte_disclaimer {
	background: #fadddd;
	font-style: italic;
}
.lyte_disclaimer a{
	border-bottom: 1px #3c3b3a dotted;
}


/* Darstellung der Ansprechpartner */

div.ansprechpartner div.img-wrapper {
	position: relative;
	margin-left: -0.5rem;
	border-bottom: 2px solid rgb(204,30,28);
	width: 320px;
	/*height: 159.8px;*/
	margin-bottom: 2.4rem;
	background-color: #e5e5ed;
}

div.ansprechpartner div.img-wrapper img {
	width: 100%;
	height: auto;
	/*min-height: 150px;*/
	display: block;
}

div.ansprechpartner div.img-wrapper div.caption {
	position: absolute;
	bottom: -0.9rem;
	left: 1rem;
}

div.ansprechpartner div.img-wrapper div.caption p {
	margin: 0 0 0 0.8rem;
}

div.ansprechpartner div.img-wrapper div.caption p.title {
	color: #fff;
	background: #655f65;
	padding: 0.25rem 0.8rem 0.5rem;
	display: inline-block;
	font-size: 0.8rem;
	margin: 0;
}

div.ansprechpartner div.img-wrapper div.caption span {
	font-size: 1.4rem;
	color: #f2f2f2;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	padding: 0.3rem 0;
	line-height: 1.4;
	display: inline;
	font-weight: 600;
	background-color: #cc1e1c;
	box-shadow: 0.8rem 0 0 #cc1e1c, -0.8rem 0 0 #cc1e1c;
}

body.search-results section.fulltext div.ansprechpartner {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	        flex-direction: row;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	margin: 2rem 0 3.8rem;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
}

body.search-results section.fulltext div.ansprechpartner div.img-wrapper {
	margin-bottom: 0;
	margin-left: 0;
}

body.search-results section.fulltext div.ansprechpartner div.contact-info {
	width: calc(100% - 320px - 2rem);
	margin-left: auto;
}

body.search-results section.fulltext div.ansprechpartner p > a {
	border-bottom: none;
	color: inherit;
}

body.search-results section.fulltext div.ansprechpartner p > a:hover {
	color: inherit;
}

body.search-results div.ansprechpartner [class*="icon-"], 
body.search-results div.ansprechpartner p.role {
    padding-left: 2rem;
    position: relative;
	line-height: 1.4;
	color: rgba(0,0,0,0.75);
}

body.search-results div.ansprechpartner [class*="icon-"]:before {
    position: absolute;
    left: 0.2rem;
    top: 2px;
    font-size: 120%;
    color: rgba(0,0,0,0.75);
}

body.search-results div.ansprechpartner-results {
	margin-bottom: 6rem;
}

body.search-results article.search-result {
	margin: 3rem 0;
}

/* Breadcrumb */

div.breadcrumb {
	font-size: 0.75rem;
	color: rgba(0,0,0,0.4);
	margin-bottom: 2rem;
	line-height: 1.2rem;
}

div.breadcrumb span {
	color: rgba(0,0,0,0.6);
}

div.breadcrumb a {
	margin-right: 12px;
}

div.breadcrumb a:after {
	position: absolute;
	content: '\e808';
	font-family: 'fontello';
	margin-left: 4px;
	color: rgba(0,0,0,0.6);
}

/* Gallery */

div.gallery {
	display: block;
	width: calc(100% + 0.6rem);
	margin-left: -0.3rem;
	margin-top: 1rem;
}

div.gallery > div {
    width: calc(100% / 4);
    /*margin: 0 1rem 1rem 0;*/
    padding: 0.3rem;
    float: left;
    position: relative;
    cursor: pointer;
}

div.gallery img {
    width: 100%;
    height: auto;
    display: block;
    border: 4px solid rgba(0,0,0,0.065);;
}

/* Slider */

div#slider {
	width: 100%;
	border-bottom: 2px solid rgb(204,30,28);
}

div#slider > div.slide {
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
}

div#nav-container a.logo {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	float: right;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
}

div#nav-container a.logo > p {
	-webkit-align-self: flex-end;
	        align-self: flex-end;
}

div#nav-container a.logo img {
	height: 100px;
	width: auto;
	margin: 5px 1.25rem 5px 2rem;
}

nav#main {
	position: absolute;
	bottom: 1.3rem;
	font-weight: 400; 
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
	height: 75px;
	font-size: 0.95rem;
	font-weight: 700;
	text-transform: uppercase;
	padding: 0 2rem;
	width: 60%;
	color: rgba(0,0,0,0.8);
}

div#topnav-wrapper {
	position: relative;
	background-color: rgba(0,0,0,0.035);
	padding: 0.3rem 0;
	height: 30px;
	border-bottom: 2px solid #005164;
	-webkit-transition: all 500ms ease-in-out;
	-o-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
}

div#topnav-wrapper.open {
	height: 90px;
}

div#topnav-wrapper .mobilelogo {
	display: none;
}

div#topnav-wrapper div.searchform {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	padding: 1rem;
	font-family: 'Lato';
	color: rgba(0,0,0,0.4);
	position: absolute;
	bottom: calc(0.6rem + 18px);
	width: 100%;
}

#topnav-wrapper .icon-search {
	position: relative;
	padding-left: 1.3rem !important;
}

#topnav-wrapper .icon-search:before { 
	position: absolute;
	left: 0;
	top: 0.15rem;
	content: '\e80d'; 
	-webkit-transform: scaleX(-1); 
	-ms-transform: scaleX(-1); 
	    transform: scaleX(-1);
	font-size: 120%;
	line-height: 1;
}

#topnav-wrapper.open .icon-search:before {
	top: 0.15rem;
	content: '\e80e'; 
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	    transform: scaleY(1);
}

#topnav-wrapper.open .icon-search:after {
	content: ' schließen';
}

div#topnav-wrapper div.searchform form {
	margin-left: auto;
}

div#topnav-wrapper div.searchform input {
	padding: 5px;
	width: 240px;
	height: 31px;
	font-family: 'Lato', sans-serif;
	background-color: #FFF;
	border: 1px solid transparent;
}

div#topnav-wrapper div.searchform form input[type="submit"] {
	display: none;
}

div#topnav-wrapper div.searchform .screen-reader-text {
	margin-right: 1rem;
}

nav#topnav {
	position: absolute;
	bottom: 0.3rem;
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
	font-family: 'Lato';
	font-size: 0.75rem;
	font-weight: 700;
	padding: 0 1rem;
	color: rgba(0,0,0,0.4);
}

nav#topnav a.img {
	margin-right: 0.6rem;
}

nav#topnav a:not(.img) {
	padding: 0.2rem 0;
	margin: 0 0.6rem;
	line-height: 1;
}

nav#topnav a:not(.img):hover {
	color: rgba(0,0,0,0.6);
}

nav#topnav a#searchlink {
	margin-left: auto;
	cursor: pointer;
	padding-left: 1rem;
}

nav#topnav a > img {
	height: 11px;
	opacity: 0.6;
	margin-top: -2px;
}
nav#aside {
	padding: 5.5rem 1.2rem 1.5rem;
	font-size: 1rem;
	line-height: 1.5;
	list-style: none;
}

nav#aside li{
	display: block;
}

nav#aside a {
	display: block;
	position: relative;
	margin: 0.2rem 0;
	padding-left: 0.8rem;
	-webkit-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
}

nav#aside a:before {
	content: '';
	position: absolute;
	left: 0;
	top: 11px;
	width: 6px;
	height: 2px;
	background-color: #655f65;
	-webkit-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
}

nav#aside ul.check li a {
	padding-left: 1.2rem;
}

nav#aside ul.check li a:before {
	position: absolute;
	color: #655f65;
	background-color: transparent;
	top: 6px;
	height: auto;
	width: 12px;
	height: 12px;
	border: 2px solid #655f65;
}

nav#aside ul.check li.active a:after {
	content: '\e810';
	font-family: 'fontello';
	position: absolute;
	left: 0.15rem;
	top: 0;
	font-size: 85%;
	color: #A60B0B;
}

nav#aside ul.check li a:hover:before,
nav#aside ul.check li.active a:before {
	color: #A60B0B;
	border: 2px solid #A60B0B;
}

nav#aside a:hover,
nav#aside .current_page_item > a,
nav#aside a.current,
nav#aside a.current_parent,
nav#aside li.active a {
	color: #cc1e1c;
}

nav#aside .current_page_item > a,
nav#aside a.current,
nav#aside a.current_parent {
	font-weight: 600;
}

nav#aside a:hover:before,
nav#aside .current_page_item > a:before {
	background-color: #A60B0B;
}

nav#aside a.margin-top,
nav#aside li.page-item-255 a,
nav#aside li.page-item-58 a{
	margin-top: 1.3rem;
}

nav#aside ul.children,
nav#aside ul.subpages {
	display: none;
	margin-top: 0;
	padding-left: 0.8rem;
}

nav#aside ul.check,
nav#aside ul.themen {
	padding-left: 0;
	margin-bottom: 2rem;
}

nav#aside h3 {
	font-size: 1rem;
	font-weight: 600;
	/*text-transform: uppercase;*/
}

nav#aside li.page_item_has_children.current_page_item ul.children,
nav#aside li.page_item_has_children.current_page_parent ul.children,
nav#aside li.current ul.subpages,
nav#aside li.current_parent ul.subpages {
	display: block;
}

footer#page-footer {
	position: relative;
	padding: 0 2rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	background-color: #005164;
	color: rgba(255,255,255,0.75);
	height: 56px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

footer#page-footer div:nth-of-type(2) {
	text-align: right;
	width: 160px;
	margin-left: auto;
}

footer#page-footer p {
	margin: 0;
	font-size: 0.8rem;
}

/* Ninja Forms Formulare */

section.fulltext .nf-form-cont ul li:before {
	content: "";
    position: absolute;
    left: 0.2rem;
}

.nf-form-content label {
    font-size: 1.1em !important;
    line-height: 1.45em !important;
}


.nf-form-content input[type='radio'] {
    background: none !important;
    border: 0px !important;
    color: black!important;
    transition: all .5s;
}
#nf-form-15-cont .nf-response-msg {
    display: block;
    padding: 1px 10px 1px 25px;
    background: #c2dfe6;
    font-size: larger;
    line-height: 1.45;
}

#nf-form-15-cont a {
	border-bottom: dotted 1px black;
}


/* Wordpress */

.alignright {
	float: right;
	margin: 0 0 2rem 2rem;
}

.alignleft {
	float: left;
	margin: 0 2rem 2rem 0;
}

.alignnone {
	max-width: 100%;
	height: auto;
}

/* Listen */

section.fulltext ul {
	list-style: none;
	padding: 0;
}

section.fulltext ul li {
	padding-left: 1.2rem;
	position: relative;
}

section.fulltext ul li {
	padding-left: 1.2rem;
	position: relative;
}

section.fulltext ul li:before {
	content: '\2013';
	position: absolute;
	left: 0.2rem;
}

/* Stellenanzeigen */

section.fulltext div.stellenanzeigen {
	display: block;
}

section.fulltext div.stellenanzeigen a {
	font-weight: 700;
	font-size: 1.2rem;
	display: block;
}

section.fulltext div.stellenanzeigen ul {
	margin: 0;
	padding: 0;
}

section.fulltext div.stellenanzeigen li {
	display: block;
   padding: 0.7rem;
	margin: 0;
	list-style: none;
	background-color: #F4F4F4;
}
section.fulltext div.stellenanzeigen ul li:before {
	content: none;
	position: static;
	left: auto;
}


/* Partnerlogos */

section.fulltext div.partnerlogos {
	display: block;
}

section.fulltext div.partnerlogos ul {
	margin: 0;
	padding: 0;
}


section.fulltext div.partnerlogos li {
	display: block;
   padding: 0.3rem;
   float: left;
   position: relative;
   cursor: pointer;
	margin: 0;
	list-style: none;
}

section.fulltext div.partnerlogos ul li:before {
	content: none;
	position: static;
	left: auto;
}


section.fulltext div.partnerlogos li img {
    display: block;
    border: 4px solid rgba(0,0,0,0.065);;
}


/* News auf der Startseite */

body.home div#section-news {
	margin: 4rem 0 1rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

div.more-news {
	text-align: center;
}

body.home a.button.icon-news,
body.home a.button.icon-standorte,
body.home a.button.icon-spenden {
	margin: 0 auto 4rem;
	display: inline-block;
	padding: 0.85rem;
	color: rgba(0,0,0,0.65);
	font-weight: 600; 
	font-size: 0.9rem;
	border: 2px solid rgba(0,0,0,0.45);
	border-radius: 6px;
	-webkit-transition: all 350ms ease-in-out;
	-o-transition: all 350ms ease-in-out;
	transition: all 350ms ease-in-out;
}

body.home a.button:hover {
	color: rgb(204,30,28);
	border-color: rgb(204,30,28);
	background-color: #FFF;
}

body.home a.button.icon-news:before,
body.home a.button.icon-standorte:before,
body.home a.button.icon-spenden:before {
	font-size: 160%;
	margin-right: 1rem;
	line-height: 1;
	vertical-align: middle;
}

body.home div#section-news .news-article {
	background-color: #FFF;
	width: calc(100% / 4 - 19.5px);
	margin-bottom: 2rem;
	cursor: pointer;
	position: relative;
	z-index: 10;
	-webkit-transition: all 550ms ease-in-out;
	-o-transition: all 550ms ease-in-out;
	transition: all 550ms ease-in-out;
}

body.home div#section-news .news-article div.content:after {
	content: '';
	position: absolute;
    top:50%;
    left: 0;
    width: 100%;
    height: 50%;
    -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
            transform: scaleY(0);
    -webkit-transform-origin: top center;
        -ms-transform-origin: top center;
            transform-origin: top center;
    background-color: rgb(204,30,28);
    z-index: -1;
    -webkit-transition: all 550ms ease-in-out;
	-o-transition: all 550ms ease-in-out;
	transition: all 550ms ease-in-out;
}

body.home div#section-news .news-article:hover div.content:after {
    -webkit-transform: scaleY(1);
        -ms-transform: scaleY(1);
            transform: scaleY(1);
}

body.home div#section-news .news-article:hover {
	
	color: #f2f2f2;
}

body.home div#section-news .news-article div.content {
	padding: 1.2rem;
}

body.home div#section-news .news-article div.news-thumb {
	background-color: #CCC;
	width: 100%;
	padding-bottom: 100%;
	position: relative;
	border-bottom: 2px solid rgb(204,30,28);
	background-size: cover;
	/*background-position: center;*/
}

body.home div#section-news .news-article div.news-thumb p.category {
	position: absolute;
	font-weight: 400;
	color: #fff;
	background: #655f65;
	padding: 0.6rem 1rem;
	display: inline-block;
	font-size: 1rem;
	bottom: -1.25rem;
	left: 1rem;
	margin: 0;
}

/* Angebote auf der Startseite */

div#section-angebote {
	margin: 3rem 0 1rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

body.page-angebote div#section-angebote {
	margin-top: 1.5rem;
}

body.home div#section-angebote:hover .angebot:not(:hover) {
	opacity: 0.6;
}

div#section-angebote .angebot {
	width: calc(100% / 4 - 1rem);
	margin-bottom: 0.9rem;
	cursor: pointer;
	position: relative;
	-webkit-transition: all 450ms ease-in-out;
	-o-transition: all 450ms ease-in-out;
	transition: all 450ms ease-in-out;
}

body.page-angebote div#section-angebote .angebot {
	width: calc(100% / 4 - 1rem);
	margin-bottom: 1.4rem;
}

body.page-angebote div#section-angebote .angebot.full {
	width: 100%;
}

body.home div#section-angebote .angebot:hover {
	opacity: 1;
}

div#section-angebote .angebot div.content {
	padding: 1.1rem 1.5rem;
	position: absolute;
	bottom: 0;
}

div#section-angebote .angebot div.content h3 {
	margin: 0;
}

div#section-angebote .angebot div.angebot-thumb {
	background-color: #FFF;
	width: 100%;
	padding-bottom: 65%;
	position: relative;
	background-size: cover;
	background-position: center;
	opacity: 0.7;
	background-color: rgba(0,0,0,0.035);
	overflow: hidden;
}

div#section-angebote .angebot div.angebot-thumb span.fotonachweis {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	display: inline-block;
	padding: 0.3rem 0.4rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.6);
	background-color: rgba(255, 255, 255, 0.55);
	font-size: 0.6rem;
}

div#section-angebote .angebot:hover div.angebot-thumb span.fotonachweis {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	    transform: translateX(0);
}

body.page-angebote div#section-angebote .angebot div.angebot-thumb {
	padding-bottom: 120%;
	opacity: 0.8;
}

body.page-angebote div#section-angebote .angebot.full div.angebot-thumb {
	padding-bottom: 195px;
}

div#section-angebote .angebot h3 span {
	color: #f2f2f2;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	padding: 0.15rem 0;
	line-height: 1.4;
	display: inline;
	font-weight: 600;
	background-color: #005164;
	box-shadow: 0.4rem 0 0 #005164, -0.4rem 0 0 #005164;
}

/* Angebote auf den Angebots-Seiten */

body.tax-angebote_categories article.angebot {
	position: relative;
	width: calc(100% / 2 - 0.5rem);
	float: left;
	margin: 1rem 1rem 0 0;
	background-size: cover;
	background-position: center;
	padding-bottom: 23%;
	background-color: rgba(0,0,0,0.035);
}

body.tax-angebote_categories article.angebot span.fotonachweis {
	position: absolute;
	bottom: 0.5rem;
	right: calc(19px + 0.5rem);
	display: inline-block;
	padding: 0.3rem 0.4rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.6);
	background-color: rgba(255, 255, 255, 0.55);
	font-size: 0.6rem;
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-ms-transform-origin: 100% 100%;
	-webkit-transform-origin: 100% 100%;
	transform-origin: 100% 100%;
}

body.tax-angebote_categories article.angebot#angebot-34  {
	background-position: -300px center; /* FIXME */
}

body.tax-angebote_categories article.angebot#angebot-32  {
	background-position: left center; /* FIXME */
}

body.tax-angebote_categories #content article.angebot h2 {
	font-size: 1.2rem;
	line-height: 1.5;
	font-weight: 600;
	color: #f2f2f2;
	max-width: calc(100% - 3.2rem);
	margin: 0;
	position: absolute;
	bottom: 1rem;
	left: 1.6rem;
}

body.tax-angebote_categories #content article.angebot h2 span {
	padding: 0.3rem 0;
	display: inline;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	background-color: #005164;
	box-shadow: 0.6rem 0 0 #005164, -0.6rem 0 0 #005164;
}

body.tax-angebote_categories section.angebote > a:nth-child(2n+2) article.angebot {
	margin-right: 0;
}

/* Header und Header-Caption */

header#page-header div.caption {
	position: absolute;
	bottom: -1.8rem;
	left: 2rem;
	width: calc(100% - 6rem);
}

header#page-header div.caption p {
	margin: 0 0 0 1rem;
}

header#page-header div.caption p.title {
	font-weight: 400;
	color: #fff;
	background: #655f65;
	padding: 0.6rem 1rem;
	display: inline-block;
	font-size: 1rem;
	margin: 0;
}

header#page-header div.caption span {
	margin-bottom: 4px;
	font-size: 2.6rem;
	color: #f2f2f2;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	padding: 0.3rem 0;
	line-height: 1.4;
	display: inline;
	font-weight: 600;
	background-color: #005164;
	box-shadow: 1rem 0 0 #005164, -1rem 0 0 #005164;
}

/* Slides auf der Startseite */

.metaslider .caption-wrap {
	opacity: 1 !important;
}

.slides {
  position: relative;
  list-style: none;
  width: 100%;
  padding: 0;
  margin: 0;
  border-bottom: none;
  }

.slides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  }

.slides li:first-child {
  position: relative;
  display: block;
  float: left;
  }

  .slides li div.img {
  	overflow: hidden;
  	width: 100%;
  height: 558px;
  }

.slides li div.caption {
	position: absolute;
	bottom: -2rem;
	left: 0;
	padding: 0 0 0 3rem;
	width: 100%;
}

.slides li div p {
	margin: 0 0 0 1rem !important;
}

.slides li div span:not(.fotonachweis) {
	margin-bottom: 4px;
	font-size: 2.6rem;
	color: #f2f2f2;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	padding: 0.3rem 0;
	line-height: 1.4;
	display: inline;
	font-weight: 600;
	background-color: #005164;
	text-align: left;
	box-shadow: 1rem 0 0 #005164, -1rem 0 0 #005164;
}

.slides li div span.fotonachweis {
    position: absolute;
    bottom: 2.5rem;
    right: 0.5rem;
    display: inline-block;
    padding: 0.3rem 0.4rem;
    line-height: 1;
    color: rgba(0, 0, 0, 0.6);
    background-color: rgba(255, 255, 255, 0.55);
    font-size: 0.6rem;
}

.slides li div p.title {
	font-weight: 400;
	color: #fff;
	background: #655f65;
	padding: 0.6rem 1rem;
	display: inline-block;
	font-size: 1.1rem;
	margin: 0 !important;
}

.slides img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
	margin-top: -5rem;
}

.centered-btns_tabs,
.transparent-btns_tabs,
.large-btns_tabs {
	display: none;
	position: absolute;
	width: 100%;
	top: 560px;
	text-align: center;
	z-index: 10;
	padding: 0px;
}

.centered-btns_tabs li,
.transparent-btns_tabs li,
.large-btns_tabs li {
	display: inline;
	float: left;
	margin-right: 5px;
}

.centered-btns_tabs a,
.transparent-btns_tabs a,
.large-btns_tabs a {
	text-indent: -9999px;
	overflow: hidden;
	border-radius: 15px;
	background: #ccc;
	background: rgba(0,0,0, .2);
	display: block;
	box-shadow: inset 0 0 2px 0 rgba(0,0,0,.3);
	width: 9px;
	height: 9px;
}

.centered-btns_here a,
.transparent-btns_here a,
.large-btns_here a {
	background: #222;
	background: rgba(0,0,0, .8);
}

/* Mappress auf der Startseite */

div#section-standorte {
	margin-left: -2rem;
	width: calc(100% + 4rem);
	height: 400px;
	position: relative;
	background-size: cover;
	background-position: center;
}

div#section-standorte:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 420px;
	background-color: rgba(255,255,255,0.6);
	z-index: 10;
}

div#section-standorte h2 {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 100;
	top: 5rem;
}

div#section-standorte div.button-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	top: 10rem;
	text-align: center;
	z-index: 100;
}

.mapp-layout {
	margin: 0;
	border: none;
}

.mapp-map-links,
.mapp-iw .mapp-links {
	display: none;
}

/* Hilfe/Auswahl auf der Startseite */

div#section-help-questions {
	margin-left: -2rem;
	width: calc(100% + 4rem);
	position: relative;
	padding: 1rem 2rem 0;
	background-color: #005164;
	color: rgba(255,255,255,0.95);
}

body.home #content div#section-help-questions h2 {
	color: rgba(255,255,255,0.95);
}

form#frontpage-fragen {
	text-align: center;	
	margin: 4rem 0 3rem;
}

form#frontpage-fragen select {
	border-radius: 6px;
	border: 3px solid #004251;
	padding: 0.85rem 40px 0.85rem 0.85rem;
	color: #FFF;
	background-color: #005164;
	font-weight: 600;
	font-size: 0.95rem;
}

form#frontpage-fragen div.select-wrapper {
	position: relative;
	display: inline-block;
}

form#frontpage-fragen div.select-wrapper:before {
	position: absolute;
	right: 1rem;
	font-size: 150%;
	line-height: 55px;
	content: '\e808';
	font-family: 'fontello';
	font-weight: 400;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
	pointer-events: none;
}

form#frontpage-fragen button {
	text-align: center;
    text-decoration: none;
    display: inline-block;
    padding: 0.85rem;
    background-color: #004251;
    color: #FFF;
    font-weight: 600;
    border: 3px solid #004251;
	border-radius: 6px;
	margin-left: 1rem;
	font-size: 0.95rem;
	cursor: pointer;
}

div#section-help-questions hr {
	border: 0;
	height: 3px;
	background: #004251;
	margin: 0;
}

div#sitemap {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

div#sitemap > div {
	width: calc(100% / 4 - 1rem);
}

div#sitemap h3 {
	font-weight: 400;
	font-size: 1.25rem;
	margin-bottom: 0;
}

div#sitemap ul {
	list-style: none;
	padding-left: 0;
	font-size: 1rem;
	line-height: 1.5;
	color: rgba(255,255,255,0.55);
}

div#sitemap ul li a{
	position: relative;
	padding-left: 0.8rem;
	-webkit-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
}

div#sitemap ul li a:before {
	content: '';
	position: absolute;
	left: 0;
	top: 9.5px;
	width: 6px;
	height: 2px;
	background-color: rgba(255,255,255,0.55);
	-webkit-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
}

div#sitemap ul li a:hover {
	color: rgba(255,255,255,0.95);
}

div#sitemap ul li a:hover:before {
	background-color: #A60B0B;
}

div#section-help-questions div.slogan {
	padding: 1.5rem 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
}

div#section-help-questions div.slogan p {
	display: inline;
	font-size: 1.8rem;
	font-weight: 300;
	margin: 0 1.5rem;
	line-height: 1;
	vertical-align: middle;
}

div#section-help-questions div.slogan img {
	height: 27px;
	width: auto;
	vertical-align: middle;
	margin-top: -5px;
}

/* GlÃƒÂ¼ckspender-Block auf der Startseite */

div#section-engagement {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	margin-left: -2rem;
	width: calc(100% + 4rem);
	position: relative;
	padding: 1rem 2rem 2rem;
	background-color: #fefffa;
	color: rgba(0,0,0,0.85);
	background-size: auto;
	background-position: left 2rem;
	background-repeat: no-repeat;
	border-top: 2px solid #cc1e1c;
}

/*div#section-engagement > div {
	position: absolute;
} */

div#section-engagement div.teaser {
	width: calc(50% - 5rem);
}

div#section-engagement div.button-wrapper {
	width: calc(50% - 4rem);
	text-align: center;
	padding-top: 10.5rem;
}

div#section-engagement div.teaser h3 {
	font-weight: 400;
	font-size: 1.7rem;
	line-height: 1.2;
	margin-bottom: 0;
}

div#section-engagement div.teaser p {
	margin-top: 0.4rem;
}

div#section-engagement div.teaser div.floated {
	float: left;
	width: 50%;
}

/* Angebote von A-Z, Angebote nach Referat */

body.page-id-58  #content nav#alphabet,
body.page-id-253  #content nav#referat {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	        flex-direction: row;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	margin: 0 0 2rem;
}

body.page-id-253  #content nav#referat {
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	        justify-content: flex-start;
}

body.page-id-58  #content nav#alphabet > a,
body.page-id-253  #content nav#referat > a {
	width: 32px;
	height: 32px;
	background-color: rgba(0,0,0,0.035);
	line-height: 30px;
	text-align: center;
}

body.page-id-253  #content nav#referat > a {
	width: auto;
	text-align: left;
	padding: 0 0.6rem;
	margin-right: 0.4rem;
	margin-bottom: 0.4rem;
}

body.page-id-58  #content nav#alphabet > a:hover,
body.page-id-253  #content nav#referat > a:hover {
	background-color: rgba(0,0,0,0.1);
}

body.page-id-58  #content .anchor {
	padding-top: 30px;
	margin-top: -30px;
}

body.page-id-58  #content div.gruppe {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	        flex-direction: row;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	margin-bottom: 2.5rem;
}

body.page-id-253  #content div.gruppe {
	margin-bottom: 2.5rem;
}

body.page-id-255  #content div.gruppe {
	display: none;
	margin-bottom: 2rem;
}

body.page-id-58  #content div.gruppe > h2,
body.page-id-253  #content div.gruppe > h2 {
	width: 32px;
	text-align: center;
	height: 32px;
	background-color: #cc1e1c;
	margin-top: 0;
	font-weight: 600;
	color: #FFF;
	line-height: 30px;
}

body.page-id-253  #content div.gruppe > h2  {
	width: auto;
	text-align: left;
	display: inline-block;
	padding: 0 0.4rem;
}

body.page-id-58  #content div.gruppe ul,
body.page-id-253  #content div.gruppe ul,
body.page-id-255  #content div.gruppe ul {
	width: calc(100% - 32px - 1.5rem);
	margin: 0.2rem 0 0;
	padding: 0;
	list-style: none;
	line-height: 1.7;
	font-size: 1rem;
}

body.page-id-58  #content div.gruppe > ul li,
body.page-id-253 #content div.gruppe > ul li,
body.page-id-255  #content div.gruppe > ul li {
	position: relative;
	padding-left: 1rem;
}

body.page-id-58  #content div.gruppe > ul li:before,
body.page-id-253 #content div.gruppe > ul li:before,
body.page-id-255  #content div.gruppe > ul li:before {
	content: '\e808';
	font-family: 'fontello';
	position: absolute;
	left: 0;
}

body.page-id-58  #content div.gruppe a.external:after,
body.page-id-253 #content div.gruppe a.external:after {
	content: '\f08e';
	font-family: 'fontello';
	font-size: 75%;
	margin-left: 0.4rem;
	opacity: 0.5;
}

/* Blog */

body.blog article.blog-article,
body.archive article.blog-article {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	margin-bottom: 2.5rem;
}

body.blog article.blog-article > a,
body.archive article.blog-article > a {
	position: relative;
	margin-right: 2rem;
}

body.blog article.blog-article > a span.fotonachweis,
body.archive article.blog-article > a span.fotonachweis,
body.home div#section-news .news-article div.news-thumb span.fotonachweis {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	display: inline-block;
	padding: 0.3rem 0.4rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.6);
	background-color: rgba(255, 255, 255, 0.55);
	font-size: 0.6rem;
}

body.blog article.blog-article img,
body.archive article.blog-article img {
	width: 220px;
	height: auto;
	-webkit-align-self: flex-start;
	        align-self: flex-start;
}

body.blog article.blog-article .content,
body.archive article.blog-article .content {
	width: calc(100% - 220px - 2rem);
}

body.blog #content article.blog-article .content h2,
body.archive #content article.blog-article .content h2 {
	margin: 1rem 0 0;
}

body.blog article.blog-article p.date,
body.archive article.blog-article p.date,
body.single-post p.date {
	margin: 0 0 1rem;
	font-size: 0.8rem;
	color: rgba(0,0,0,0.4);
}

body.single-post p.date {
	margin-bottom: 2rem;
}

body.single-post #content h1 {
	margin-bottom: 0.4rem;
}

div.navigation ul {
	list-style: none;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
	margin: 4rem 0 1.5rem;
	padding-left: 0;
	font-weight: 300;
	color: #C98E49;
}

div.navigation ul li {
	padding-left: 0;
	text-align: center;
}

div.navigation ul li a {
    display: block;
    width: 24px;
    height: 24px;
    line-height: 22px;
    border: 1px solid rgba(0,0,0,0.25);
    margin: 0 0.5rem;
    font-size: 0.85rem;
    color: rgba(60,59,58,0.5);
}

div.navigation ul li a:hover {
	border: 1px solid rgba(0,0,0,0.5);
	color: rgba(60,59,58,0.9);
}

div.navigation ul li.next a,
div.navigation ul li.previous a {
	line-height: 20px;
	font-size: 1.1rem;
}

div.navigation ul li:before {
	display: none;
}

div.navigation ul li.active a {
	color: rgba(60,59,58,0.9);
	font-weight: 400;
	border-color: rgba(0,0,0,0.5);
}




/* Blog - verwandte BeitrÃƒÂ¤ge auf Seiten oder bei Angeboten */

div.blog-meldungen {
	margin-top: 4rem;
}

div.blog-meldungen h2:before {
	color: rgba(0,0,0,0.75);
	margin: 0 0.8rem 0 0.1rem;
}

#content div.blog-meldungen article.blog-article {
	color: rgba(0, 0, 0, 0.75);
}

#content div.blog-meldungen article.blog-article h2 {
	font-size: 1.1rem;
}

/* Shortcodes */

body:not(.home) #content h3.openButton {
	cursor: pointer;
	margin-top: 0;
	position: relative;
	padding-left: 1.3rem;
}

body:not(.home) #content h3.openButton:before {
	content: '+';
	position: absolute;
	left: 0;
	font-size: 1.4rem;
	line-height: 0.9;
	-webkit-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;
}

body:not(.home) #content .open h3.openButton:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

div.kunde,
div.faq {
	background-color: rgba(0,0,0,0.035);
	padding: 0.8rem 0.8rem 0;
	margin: 1rem 0;
}

div.kunde div.hidden,
div.faq div.hidden {
	position: relative;
	border-top: 2px solid transparent;
	padding: 0.8rem 0 0;
	-webkit-transition: all 650ms ease-in-out;
	-o-transition: all 650ms ease-in-out;
	transition: all 650ms ease-in-out;
	max-height: 0px;
	overflow: hidden;
	
}

div.kunde.open div.hidden,
div.faq.open div.hidden {
	max-height: 4000px;
}

blockquote {
	margin: 2rem 1.5rem 1rem 1.5rem;
	border-left: #CC1E1C 1px solid;
	padding-left: 0.5rem;
}

blockquote img {
	max-width: 35%;
	height: auto;
}


div.kunde div.hidden blockquote {
	margin: 0.5rem 0.8rem;
	border-left: none;
	padding-left: 0;
}

div.kunde div.hidden blockquote p strong {
	font-size: 1.2rem;
	font-weight: 300;
	display: block;
	line-height: 1.2;
	margin-bottom: 0;
	
}

div.kunde div.hidden blockquote p:not(:first-of-type) strong {
	margin-top: 2rem;
}

div.kunde div.hidden blockquote p em {
	font-style: normal;
	font-size: 0.85rem;
	color: rgba(0,0,0,0.75);
	display: block;
	margin-top: 0.2rem;
	position: relative;
}

div.kunde div.hidden blockquote p em:before {
	content: '\2014 ';
}

body:not(.home) #content div.faq div.hidden h3 {
	color: #292929;
	font-weight: 600;
	font-size: 0.95rem;
}

body:not(.home) #content div.faq div.hidden h3:not(:first-of-type) {
	margin-top: 1.5rem;
}

body:not(.home) #content div.faq div.hidden h3 strong {
	font-weight: 600;
}

body:not(.home) #content div.faq div.hidden ul {
	margin-top: 0;
}

div.faq div.hidden p {
	margin: 0.5rem 0 0.6rem;
}

/*--------------------------------------------------------------
	5.0 Responsive 
--------------------------------------------------------------*/

div.show-mobile,
div#mobile-header,
form#pageselect {
	display: none;
}

.wrapper-1300 {
	width: 1250px;
	margin: 0 auto;
}

div#nav-button-wrapper {
	cursor: pointer;
	position: absolute;
	bottom: 0;
	left: 1rem;
	display: none;
	width: calc(40px + 1rem);
	height: 75px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	        align-items: center;
}

div#nav-button {
	position: relative;
    width: 40px;
    height: 35px;
    cursor: pointer;
	z-index: 100000;
	-webkit-transition: 0.5s ease-in-out;
	-o-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

#nav-button span {
	display: block;
	position: absolute;
	height: 3px;
	width: 100%;
	background: rgb(102, 102, 102);
	opacity: 1;
	left: 0;
	right: 0;
	margin: 0 auto;
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	    transform: rotate(0deg);
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#nav-button span:nth-child(1) {
	top: 5px;
	-webkit-transform: translateY(2px);
	-ms-transform: translateY(2px);
	    transform: translateY(2px);
}

#nav-button span:nth-child(2) {
	top: 16px;
}

#nav-button span:nth-child(3) {
	top: 27px;
	-webkit-transform: translateY(-2px);
	-ms-transform: translateY(-2px);
	    transform: translateY(-2px);
}

#nav-button.open span:nth-child(1) {
	top: 16px;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	    transform: rotate(135deg);
}

#nav-button.open span:nth-child(2) {
	opacity: 0;
	right: 15px;
	width: 0;
}

#nav-button.open span:nth-child(3) {
	top: 16px;
	-webkit-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	    transform: rotate(-135deg);
}

div.responsive_nav {
	display: none;
}

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

	.wrapper-1300 {
		width: calc(100% - 50px);
		margin: 0 auto;
	}

	div#aside-content {
    	width: 260px;
    }

    div#content {
    	width: calc(100% - 260px);
    	padding: 3rem 0 0 2rem;
    }

    .acf-map {
    	width: calc(100% + 2rem);
    }

    #content section.fulltext-aside,
    div.ansprechpartner div.img-wrapper {
    	width: 280px;
    }

    body.single-angebot #content section.fulltext {
	    width: calc(100% - 280px - 2rem);
	}

}

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

	nav#main {
    	padding: 0 1rem;
		width: 62%;
    }

	div#nav-container {
    	height: calc(105px + 2rem);
    }

	div#nav-container a.logo img {
    	height: 95px;
    }

    p.logofont {
    	font-size: 0.9rem;
    }

	div#aside-content {
    	width: 230px;
    }

    nav#aside {
    	font-size: 0.9rem;
    	line-height: 1.3;
    }

    nav#aside ul.check li.active a:after {
		top: 0.1rem;
		font-size: 95%;
    }

    nav#aside li {
    	margin: 0.3rem 0;
    }

    div#content {
    	width: calc(100% - 230px);
    }

}

@media only screen and (max-width: 980px) {
	
	nav#main {
	    padding: 0 0.5rem;
	    width: 56%;
	    font-size: 0.85rem;
	}

	#content section.fulltext-aside,
	#content section.fulltext,
	body.single-angebot #content section.fulltext {
    	width: 100%;
    	float: none;
    	padding-right: 2rem;
    }

    #content section.fulltext-aside > div:first-of-type {
    	border-top: 2px solid rgba(0,0,0,0.085);
    	padding-top: 1rem;
    }

    div.ansprechpartner div.img-wrapper {
	    width: 320px;
	}

	div#section-engagement {
		background-size: 55%;
	}

	div#sitemap > div {
	    width: calc(100% / 3 - 1rem);
	}

}

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

	.wrapper-1300 {
    	width: 100%;
    }

    form#pageselect {
    	display: block;
    	width: 100%;
		margin: 0 0 2rem;
    }

    form#pageselect select {
    	border-radius: 6px;
		border: 2px solid #655f65;
		padding: 0.5rem 25px 0.5rem 0.8rem;
		width: 100%;
		background-color: transparent;
    }

    form#pageselect div.select-wrapper {
    	position: relative;
    }

    form#pageselect div.select-wrapper:before {
    	position: absolute;
		right: 1rem;
		line-height: 39px;
		content: '\e808';
		font-family: 'fontello';
		font-weight: 400;
		-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
		pointer-events: none;
    }

    #content section.fulltext-aside,
	#content section.fulltext,
	body.single-angebot #content section.fulltext {
    	padding-right: 0;
    }

    .acf-map {
    	width: calc(100% + 4rem);
    }

    div#nav-button-wrapper {
    	display: -webkit-box;
    	display: -webkit-flex;
    	display: flex;
    }

    body.nav-open {
    	overflow: hidden;
	    position: fixed;
    }

    #body-container {
    	padding-top: 75px;
    	-webkit-transition: all 400ms ease-in-out;
    	-o-transition: all 400ms ease-in-out;
    	transition: all 400ms ease-in-out;
    	overflow: initial;
    }

    body.nav-open #body-container,
    body.nav-open #topnav-wrapper {
    	-webkit-transform: translateX(400px);
    	    -ms-transform: translateX(400px);
    	        transform: translateX(400px);
    }

    div#main-container:before {
    	content: '';
    	position: absolute;
    	width: 100%;
    	height: 100%;
    	-webkit-transition: all 400ms ease-in-out;
    	-o-transition: all 400ms ease-in-out;
    	transition: all 400ms ease-in-out;
    	background-color: transparent;
    	z-index: 100;
    	pointer-events: none;
    }

    body.nav-open div#main-container:before {
    	pointer-events: auto;
    	background-color: rgba(0,0,0,0.7);
    }

    div#topnav-wrapper {
    	position: fixed;
    	height: 75px;
    	top: 0;
    	background-color: #FFF;
    	z-index: 1000;
    	-webkit-transition: all 400ms ease-in-out;
    	-o-transition: all 400ms ease-in-out;
    	transition: all 400ms ease-in-out;
    }

    div#topnav-wrapper div.searchform {
		bottom: calc(0.6rem + 75px);
    }

    div#topnav-wrapper .mobilelogo {
    	display: -webkit-box;
    	display: -webkit-flex;
    	display: flex;
    	position: absolute;
		bottom: 0.4rem;
		left: calc(2rem + 56px);
		-webkit-box-align: center;
		-webkit-align-items: center;
		        align-items: center;
		z-index: 10000;
    }

    div#topnav-wrapper .mobilelogo img {
    	height: 60px;
    	width: auto;
    	float: left;
    	margin-right: 0.75rem;
    }

    div#topnav-wrapper .mobilelogo p.logofont {
    	text-align: left;
    	white-space: nowrap;
    	margin: 0;
    }

    nav#topnav {
    	height: calc(75px - 0.6rem);
    }

    nav#topnav a:not(#searchlink) {
    	display: none;
    }

    nav#topnav a#searchlink {
    	display: inline-block;
	    overflow: hidden;
	    text-indent: -9999px;
	    height: 40px;
	    width: 40px;
	    font-size: 30px;
	    padding-left: 40px !important;
	    color: rgba(0,0,0,0.6);
    }

    #topnav-wrapper .icon-search:before {
    	text-indent: 0;
    }

    div#topnav-wrapper div.searchform input {
    	background-color: rgb(244,244,244);
    }

    div#topnav-wrapper div.searchform form {
	    margin: auto;
	}

    div#topnav-wrapper.open {
	    height: 160px;
	}

	div#nav-container {
		position: fixed;
		padding: 0;
		left: 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		height: 100vh;
		width: 400px;
		-webkit-transform: translateX(-400px);
		    -ms-transform: translateX(-400px);
		        transform: translateX(-400px);
		background-color: rgb(244, 244, 244);
		-webkit-transition: all 400ms ease-in-out;
		-o-transition: all 400ms ease-in-out;
		transition: all 400ms ease-in-out;
		overflow-y: auto;
	}

	body.nav-open div#nav-container {
		-webkit-transform: translateX(0px);
		    -ms-transform: translateX(0px);
		        transform: translateX(0px);
	}

	div#nav-container nav#main {
		display: none;
	}

	div#nav-container div.responsive_nav {
		display: block;
		width: 100%;
	}

	div#nav-container div.responsive_nav nav {
		font-family: 'Lato';
		position: relative;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		        flex-direction: column;
		height: auto;
		width: 100%;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		        justify-content: flex-start;
		-webkit-box-align: start;
		-webkit-align-items: flex-start;
		        align-items: flex-start;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		padding: 0.8rem 2rem 5rem;
		list-style: none;
		font-size: 1.5rem;
		line-height: 1.2;

	}

	div#nav-container div.responsive_nav nav li {
		position: relative;
		padding-left: 1rem;
	}

	div#nav-container div.responsive_nav nav li.active > a,
	div#nav-container div.responsive_nav nav li.current_page_item > a,
	div#nav-container div.responsive_nav nav li.current_item > a,
	div#nav-container div.responsive_nav nav li.current_term > a {
		font-weight: 600;
		color: #cc1e1c;
	}

	div#nav-container div.responsive_nav nav li:before {
		position: absolute;
		left: 0;
		content: '\e808';
		font-family: 'fontello';
		color: #cc1e1c;
		padding: 0.85rem 0;
		font-weight: 400;
	}

	div#nav-container div.responsive_nav nav ul.children li:before {
		padding: 0.45rem 0;
	}

	div#nav-container div.responsive_nav nav li.page_item_has_children.active:before {
		-webkit-transform: rotate(90deg);
		    -ms-transform: rotate(90deg);
		        transform: rotate(90deg);
	}


	div#nav-container div.responsive_nav nav li a {
		padding: 0.85rem 0;
		display: block;
	}

	div#nav-container div.responsive_nav nav ul.children {
		display: none;
		list-style: none;
		margin: 0 0 1.5rem;
		padding: 0 0 0 0.2rem;
		font-size: 1rem;
		line-height: 1;
	}

	div#nav-container div.responsive_nav nav .current_item > ul.children,
	div#nav-container div.responsive_nav nav .current_parent > ul.children,
	div#nav-container div.responsive_nav nav .current_term > ul.children {
		display: block;
	}

	div#nav-container div.responsive_nav nav ul.children a {
		padding: 0.45rem 0;
	}

	div#nav-container a.logo {
		display: none;
	}

	body.home div#section-news .news-article {
	    width: calc(100% / 2 - 19.5px);
	}

	div#section-angebote .angebot {
    	width: calc(100% / 2 - 1rem);
    }

    div#aside-content {
    	display: none;
    }

    div#content {
    	width: 100%;
		padding: 3rem 2rem 0;
    }

    .slides li div span:not(.fotonachweis),
    header#page-header div.caption span {
	    font-size: 2rem;
	}

	header#page-header div.caption p.title,
	.slides li div p.title {
	    padding: 0.4rem 0.8rem;
	    font-size: 0.85rem;
	}

	#content section.fulltext-aside div.ansprechpartner {
		width: 50%;
		float: left;
	}

	body.page #content section.fulltext-aside div.ansprechpartner {
		border-top: 2px solid rgba(0,0,0,0.085);
	}

	#content section.fulltext-aside div.downloads {
		width: 100%;
		clear: both;
	}

	body.single-post #content {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		        flex-direction: row;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		        justify-content: space-between;
	}

	body.single-post #content div.breadcrumb {
		width: 100%;
	}

	body.single-post #content section.fulltext {
	    width: calc(100% - 280px - 2rem);
	}

	body.single-post #content section.fulltext-aside {
		width: 280px;
		margin-left: auto;
	}

	body.single-post #content section.fulltext-aside > div.thumbnail {
		border: none;
		padding: 0;
	}

	body.single-post #content section.fulltext-aside > div.thumbnail span.fotonachweis {
		top: 0.5rem;
	}

}

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

	body.single-post #content div.breadcrumb {
		width: 100%;
	}

	body.single-post #content section.fulltext {
	    width: calc(100% - 180px - 2rem);
	}

	body.single-post #content section.fulltext-aside {
		width: 180px;
		margin-left: auto;
	}

	body.page-id-58 #content nav#alphabet > a {
	    width: 28px;
	    height: 28px;
	}

	div#section-engagement {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}

	div#section-engagement div.teaser,
	div#section-engagement div.button-wrapper {
		width: 100%;
	}

	footer#page-footer {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		        flex-direction: column;
		padding: 1rem 2rem;
		height: 75px;
	}

	footer#page-footer div,
	footer#page-footer div:nth-of-type(2) {
		margin-left: 0;
		width: 100%;
		text-align: left;
	}

}

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

	#content section.fulltext-aside div.ansprechpartner {
		width: 100%;
		float: none;
	}

	body.page-id-58 #content nav#alphabet {
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		        justify-content: flex-start;
	}

	body.page-id-58 #content nav#alphabet > a {
		margin: 0.1rem;
	}

}

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

	body:not(.home) #content h1 {
		font-size: 2rem;
	}

	.slides li div.caption {
		padding: 0 1rem;
		bottom: auto;
		top: -1rem;
	}

	.slides li div span.fotonachweis {
		bottom: auto;
		top: -0.5rem;
	}

	.slides li div span:not(.fotonachweis), 
	header#page-header div.caption span {
	    font-size: 1.4rem;
	    padding: 0.2rem 0;
	}

	.slides li div span:not(.fotonachweis) br {
		display: none;
	}

	body.home div#section-news .news-article {
	    width: calc(100% / 2 - 0.5rem);
	    margin-bottom: 1rem;
	}

	div#section-angebote .angebot {
	    width: calc(100% / 2 - 0.5rem);
	}

	div#content,
	body.home div#content {
		padding: 3rem 1rem 0;
	}

	body.home div#content {
		padding: 90px 1rem 0;
	}

	body.home div#section-news {
		margin-top: 2rem;
	}

	div#sitemap > div {
	    width: calc(100% / 2 - 1rem);
	}

	div#section-engagement,
	div#section-standorte,
	div#section-help-questions,
	.acf-map {
		margin-left: -1rem;
		width: calc(100% + 2rem);
	}

	form#frontpage-fragen {
		margin: 2rem 0 1rem;
	}

	form#frontpage-fragen select {
		width: 100%;
	}

	form#frontpage-fragen button {
		width: 100%;
		margin-left: 0;
		margin-top: 1rem;
	}

	div#section-help-questions div.slogan p {
	    font-size: 1.7rem;
	    margin: 0 0.5rem 0 0;
	}

	footer#page-footer {
		height: auto;
	}

	footer#page-footer p {
		line-height: 1.2;
	}

	footer#page-footer div:nth-of-type(2) {
		margin-top: 0.5rem;
	}

	body.page-angebote div#section-angebote .angebot {
	    width: calc(100% / 2 - 0.5rem);
	    margin-bottom: 1rem;
	}

	header#page-header div.caption {
	    bottom: -1.2rem;
	    left: 1rem;
	}

	body.tax-angebote_categories article.angebot {
		width: 100%;
		margin: 1rem 0 0 0;
		padding-bottom: 45%;
	}

	body.tax-angebote_categories article.angebot span.fotonachweis {
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		top: 0.5rem;
		right: 0.5rem;
		bottom: auto;
	}

	header#page-header {
		height: 180px;
	}

	header#page-header span.fotonachweis {
		bottom: auto;
		top: 0.5rem;
	}

	body.single-post #content div.breadcrumb {
		-webkit-box-ordinal-group: 2;
		-webkit-order: 1;
		        order: 1;
	}

	body.single-post #content section.fulltext-aside {
		width: 100%;
		-webkit-box-ordinal-group: 3;
		-webkit-order: 2;
		        order: 2;
	}

	body.single-post #content section.fulltext {
		width: 100%;
		-webkit-box-ordinal-group: 4;
		-webkit-order: 3;
		        order: 3;
	}

	body.blog article.blog-article > a, 
	body.archive article.blog-article > a {
		margin-right: 1rem;
		-webkit-align-self: flex-start;
		        align-self: flex-start;
	}

	body.blog article.blog-article img, 
	body.archive article.blog-article img {
		width: 90px;
	}

	body.blog article.blog-article .content, 
	body.archive article.blog-article .content {
	    width: calc(100% - 90px - 1rem);
	}

	body.blog #content article.blog-article .content h2, 
	body.archive #content article.blog-article .content h2 {
		margin-top: 0.2rem;
	}

	body.blog article.blog-article > a span.fotonachweis, 
	body.archive article.blog-article > a span.fotonachweis {
		top: 95px;
		padding: 0.2rem;
	}

}

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

	blockquote {
	    margin: 2rem 0 1rem 0;
	}

	div#nav-container {
		width: calc(100vw - 56px);
		-webkit-transform: translateX(calc(-100vw + 56px));
	    -ms-transform: translateX(calc(-100vw + 56px));
	    transform: translateX(calc(-100vw + 56px));
	}

	body.nav-open #body-container, body.nav-open #topnav-wrapper {
	    -webkit-transform: translateX(calc(100vw - 56px));
	    -ms-transform: translateX(calc(100vw - 56px));
	    transform: translateX(calc(100vw - 56px));
	}

	div#topnav-wrapper .mobilelogo {
		bottom: 0.75rem;
		left: calc(1rem + 46px);
	}

	nav#topnav a#searchlink {
		margin-right: 0;
	}

	p.logofont {
	    font-size: 0.7rem;
	    line-height: 1.2;
	}

	div#topnav-wrapper .mobilelogo img {
		height: 50px;
	}

	div#nav-button-wrapper {
		left: 0;
	}

	div#nav-button {
		width: 30px;
	}

	body.home div#section-news .news-article,
	div#section-angebote .angebot,
	div#sitemap > div {
	    width: 100%;
	}

	
	body.home div#section-news .news-article div.news-thumb {
		padding-bottom: 55%;
	}

	div#section-angebote .angebot div.angebot-thumb {
		padding-bottom: 55%;
	}

	div#section-help-questions div.slogan p {
	    font-size: 1.4rem;
	}

	div#section-help-questions div.slogan img {
	    height: 18px;
	}

	div#section-engagement {
	    background-size: 100%;
	}

	div#section-engagement div.button-wrapper {
		padding-top: 15rem;
	}

	body.home a.button.icon-news, 
	body.home a.button.icon-standorte, 
	body.home a.button.icon-spenden {
		margin-bottom: 1rem;
		max-width: 250px;
	}

	body.home a.button.icon-standorte:before {
		display: block;
		margin: 0 auto 1rem;
	}

}

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

	nav#topnav a#searchlink {
		width: 25px;
	    height: 25px;
    	font-size: 20px;
    	padding-left: 25px !important;
    }

    #nav-button span {
    	height: 2px;
    }

    #nav-button span:nth-child(1) {
    	top: 6px;
    }

    #nav-button span:nth-child(3) {
	    top: 26px;
	}

	div#nav-container div.responsive_nav nav {
		font-size: 1.3rem;
	}

	div#nav-container div.responsive_nav nav ul.children {
	    margin: 0 0 1rem;
	    font-size: 0.9rem;
	}

	div#nav-container div.responsive_nav nav ul.children a {
		padding: 0.4rem 0;
	}

	div#topnav-wrapper div.searchform .screen-reader-text {
		display: none;
	}

	div#topnav-wrapper div.searchform form,
	div#topnav-wrapper div.searchform input {
		width: 100%;
	}

}

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

	nav#topnav,
	div#nav-button-wrapper,
	div#topnav-wrapper {
	    height: 55px;
	}

	div#topnav-wrapper.open {
	    height: 120px;
	}

	nav#topnav {
		bottom: 0
	}

	div#topnav-wrapper div.searchform {
	    bottom: calc(0.2rem + 55px);
	}

	#body-container {
	    padding-top: 55px;
	}

	div#topnav-wrapper .mobilelogo img {
		height: 40px;
		margin-right: 0.5rem;
	}

	div#topnav-wrapper .mobilelogo {
	    bottom: 0.4rem;
	    left: 56px;
	}

	p.logofont {
		font-size: 0.6rem;
	}

	div#section-engagement, 
	div#section-help-questions {
	    padding: 1rem 1rem 2rem;
	}

	footer#page-footer {
		padding: 1rem;
	}

	div#section-help-questions div.slogan {
		padding: 1rem 0;
	}

	div#section-help-questions div.slogan p {
		font-size: 1.2rem;
	}

}

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

	body.blog article.blog-article img, 
	body.archive article.blog-article img,
	body.blog article.blog-article .content, 
	body.archive article.blog-article .content {
		width: 100%;
	}

	body.blog article.blog-article > a, 
	body.archive article.blog-article > a {
		margin-right: 0;
		margin-bottom: 0.8rem;
		width: 100%;
	}

	body.blog article.blog-article > a span.fotonachweis, 
	body.archive article.blog-article > a span.fotonachweis {
		top: 0.5rem;
	}

	.alignright,
	.alignleft {
		max-width: 35%;
		height: auto;
	}

}

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

	div.ansprechpartner div.img-wrapper {
		width: 100%;
		margin-left: 0;
	}

	#content section.fulltext-aside > div {
    	padding: 0.5rem 0 0.8rem;
    }

	#content section.fulltext-aside div.logo img {
	    max-width: 100%;
	    height: auto;
	    margin-left: 0;
	}

}

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

	body:not(.home) #content h1 {
	    font-size: 1.4rem;
	}

	div.breadcrumb {
		margin-bottom: 1.2rem;
	}

	body.page-angebote div#section-angebote .angebot {
		width: 100%;
	}

	body.page-angebote div#section-angebote .angebot div.angebot-thumb {
	    padding-bottom: 50%;
	}

	.slides li div span:not(.fotonachweis) {
		font-size: 1.1rem;
	}

}

table.fwz {
        margin-bottom: 4em;
}

table.fwz, table.fwz th, table.fwz td {
  border-bottom: 1px solid #E5E5ED;
  border-collapse: collapse;
}

table.fwz th {
  background-color: #CCCCCC;
  vertical-align: bottom;
}

table.fwz th, table.fwz td {
        text-align: left;
        vertical-align: top;
        padding: 0.2em 0.5em;
}

table.fwz tbody tr:nth-child(odd) {
  background-color: #F9F9F9;
  color: #000;
}

table.fwz td.mehr {
        vertical-align: bottom;
}

table.fwz td.mehr a:hover {
        color: #CC1E1C;
}

table.fwz td.mehr a:before {
        content: '\E808';
        font-family: 'fontello';
        padding-right: 0.3rem;
}


table.fwzausgabe, table.fwzausgabe th, table.fwzausgabe td {
  border-bottom: 1px solid #E5E5ED;
  border-collapse: collapse;
}

table.fwzausgabe th {
  vertical-align: bottom;
  font-weight: normal;
}
table.fwzausgabe th, table.fwzausgabe td {
        text-align: left;
        vertical-align: top;
        padding: 0.2em 0.5em;
}

table.fwzausgabe tbody tr:nth-child(odd) {
  background-color: #F9F9F9;
  color: #000;
}

table.fwzausgabe td.mehr {
        vertical-align: bottom;
}

table.fwzausgabe td.mehr a:hover {
        color: #CC1E1C;
}

table.fwzausgabe td.mehr a:before {
        content: '\E808';
        font-family: 'fontello';
        padding-right: 0.3rem;
}

div.fwzsearchform span.heading {
        display: block;
        font-weight: 600;
        margin: 1rem 0 0.2rem 0;
  border-bottom: 1px solid #E5E5ED;
}

.cities, .categories, .activities {
        float: left;
        margin-right: 3em;
        margin-bottom: 1.5em;
        padding: 0.5em;
        background: #F9F9F9;
}

.fwzsearchform input[type='submit']  {
        font-family: 'Source Sans Pro', sans-serif;
        clear: both;
        display: block;
        background: rgb(204,30,28);
    border: none;
    color: white;
    padding: 6px 22px;
    text-align: center;
    text-decoration: none;
    font-size: 1.1em;
        margin: 2em 0;

}



/* graceful degradation for ie8 */
.fwzsearchform input[type='checkbox'] {
  width:auto;
  float:left;
  margin-right: .5em;
  background:transparent;
  border:none;
}

.fwzsearchform input[type='checkbox']:checked,
.fwzsearchform input[type='checkbox']:not(:checked) {
  background: transparent;
  position: relative;
  visibility: hidden;
  margin:0;
  padding:0;
}

.fwzsearchform input[type='checkbox'] + label {
  cursor: pointer;
}

.fwzsearchform input[type='checkbox']:checked + label::before,
.fwzsearchform input[type='checkbox']:not(:checked) + label::before {
    content:' ';
    display:inline-block;
    width: 17px;
    height:17px;
    position: relative;
    top:4px;
    border: 1px solid #bbb;
    background: white;
    margin-right: 1em;
    box-shadow: inset 0 1px 1px 0 rgba(0,0,0,.1);
}

.fwzsearchform input[type='checkbox']:hover  + label::before,
.fwzsearchform input[type='radio']:hover  + label::before {
  background:#ddd;
  box-shadow: inset 0 0 0 2px white;
}

.fwzsearchform input[type='checkbox']:checked  + label::before {
  background: rgb(204,30,28);
  box-shadow: inset 0 0 0 2px white;
}

.fwzsearchform label {font-size: 100%;}

