@charset "UTF-8";


/* RESET v2.0 // https://meyerweb.com/eric/tools/css/reset/ */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
blockquote {
	padding: 15px;
	font-style: italic;
	font-size: 1.2em;
	border-left-width: 2px;
	border-left-style: dotted;
	border-color: #000000;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100% !important;
}

/* FLEXBOXGRID2 v7.2.1 // https://github.com/evgenyrodionov/flexboxgrid2 */

.container {
	position: relative;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	padding-right: 8px;
	padding-left: 8px;
}
@media only screen and (min-width:576px) {
	.container {
		width: 560px;
		max-width: 100%;
	}
}
@media only screen and (min-width:768px) {
	.container {
		width: 752px;
		max-width: 100%;
	}
}
@media only screen and (min-width:992px) {
	.container {
		width: 976px;
		max-width: 100%;
	}
}
@media only screen and (min-width:1200px) {
	.container {
		width: 1184px;
		max-width: 100%;
	}
}

.row {
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 0;
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -8px;
	margin-left: -8px;
	padding-bottom: 0px;
}
.row.reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.col.reverse {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-offset-0,
.col-lg-offset-1,
.col-lg-offset-10,
.col-lg-offset-11,
.col-lg-offset-12,
.col-lg-offset-2,
.col-lg-offset-3,
.col-lg-offset-4,
.col-lg-offset-5,
.col-lg-offset-6,
.col-lg-offset-7,
.col-lg-offset-8,
.col-lg-offset-9,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-offset-0,
.col-md-offset-1,
.col-md-offset-10,
.col-md-offset-11,
.col-md-offset-12,
.col-md-offset-2,
.col-md-offset-3,
.col-md-offset-4,
.col-md-offset-5,
.col-md-offset-6,
.col-md-offset-7,
.col-md-offset-8,
.col-md-offset-9,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-offset-0,
.col-sm-offset-1,
.col-sm-offset-10,
.col-sm-offset-11,
.col-sm-offset-12,
.col-sm-offset-2,
.col-sm-offset-3,
.col-sm-offset-4,
.col-sm-offset-5,
.col-sm-offset-6,
.col-sm-offset-7,
.col-sm-offset-8,
.col-sm-offset-9,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-offset-0,
.col-xl-offset-1,
.col-xl-offset-10,
.col-xl-offset-11,
.col-xl-offset-12,
.col-xl-offset-2,
.col-xl-offset-3,
.col-xl-offset-4,
.col-xl-offset-5,
.col-xl-offset-6,
.col-xl-offset-7,
.col-xl-offset-8,
.col-xl-offset-9,
.col-xs,
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-offset-0,
.col-xs-offset-1,
.col-xs-offset-10,
.col-xs-offset-11,
.col-xs-offset-12,
.col-xs-offset-2,
.col-xs-offset-3,
.col-xs-offset-4,
.col-xs-offset-5,
.col-xs-offset-6,
.col-xs-offset-7,
.col-xs-offset-8,
.col-xs-offset-9 {
	box-sizing: border-box;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	padding-right: 15px;
	padding-left: 15px;
	max-width: 100%;
}
.col-xs {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	max-width: 100%;
}
.col-xs-1 {
	-ms-flex-preferred-size: 8.33333333%;
	flex-basis: 8.33333333%;
	max-width: 8.33333333%;
}
.col-xs-2 {
	-ms-flex-preferred-size: 16.66666667%;
	flex-basis: 16.66666667%;
	max-width: 16.66666667%;
}
.col-xs-3 {
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.col-xs-4 {
	-ms-flex-preferred-size: 33.33333333%;
	flex-basis: 33.33333333%;
	max-width: 33.33333333%;
}
.col-xs-5 {
	-ms-flex-preferred-size: 41.66666667%;
	flex-basis: 41.66666667%;
	max-width: 41.66666667%;
}
.col-xs-6 {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
.col-xs-7 {
	-ms-flex-preferred-size: 58.33333333%;
	flex-basis: 58.33333333%;
	max-width: 58.33333333%;
}
.col-xs-8 {
	-ms-flex-preferred-size: 66.66666667%;
	flex-basis: 66.66666667%;
	max-width: 66.66666667%;
}
.col-xs-9 {
	-ms-flex-preferred-size: 75%;
	flex-basis: 75%;
	max-width: 75%;
}
.col-xs-10 {
	-ms-flex-preferred-size: 83.33333333%;
	flex-basis: 83.33333333%;
	max-width: 83.33333333%;
}
.col-xs-11 {
	-ms-flex-preferred-size: 91.66666667%;
	flex-basis: 91.66666667%;
	max-width: 91.66666667%;
}
.col-xs-12 {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	max-width: 100%;
}
.col-xs-offset-0 {
	margin-left: 0;
}
.col-xs-offset-1 {
	margin-left: 8.33333333%;
}
.col-xs-offset-2 {
	margin-left: 16.66666667%;
}
.col-xs-offset-3 {
	margin-left: 25%;
}
.col-xs-offset-4 {
	margin-left: 33.33333333%;
}
.col-xs-offset-5 {
	margin-left: 41.66666667%;
}
.col-xs-offset-6 {
	margin-left: 50%;
}
.col-xs-offset-7 {
	margin-left: 58.33333333%;
}
.col-xs-offset-8 {
	margin-left: 66.66666667%;
}
.col-xs-offset-9 {
	margin-left: 75%;
}
.col-xs-offset-10 {
	margin-left: 83.33333333%;
}
.col-xs-offset-11 {
	margin-left: 91.66666667%;
}
.start-xs {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	text-align: start;
}
.center-xs {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}
.end-xs {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	text-align: end;
}
.top-xs {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.middle-xs {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.bottom-xs {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
.around-xs {
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
.between-xs {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.first-xs {
	-webkit-box-ordinal-group: 0;
	-ms-flex-order: -1;
	order: -1;
}
.last-xs {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}
.initial-order-xs {
	-webkit-box-ordinal-group: NaN;
	-ms-flex-order: initial;
	order: initial;
}
@media only screen and (min-width:576px) {
	.col-sm {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		max-width: 100%;
	}
	.col-sm-1 {
		-ms-flex-preferred-size: 8.33333333%;
		flex-basis: 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-sm-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-sm-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-sm-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-sm-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-sm-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-sm-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-sm-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-sm-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.col-sm-10 {
		-ms-flex-preferred-size: 83.33333333%;
		flex-basis: 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-sm-11 {
		-ms-flex-preferred-size: 91.66666667%;
		flex-basis: 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-sm-12 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.col-sm-offset-0 {
		margin-left: 0;
	}
	.col-sm-offset-1 {
		margin-left: 8.33333333%;
	}
	.col-sm-offset-2 {
		margin-left: 16.66666667%;
	}
	.col-sm-offset-3 {
		margin-left: 25%;
	}
	.col-sm-offset-4 {
		margin-left: 33.33333333%;
	}
	.col-sm-offset-5 {
		margin-left: 41.66666667%;
	}
	.col-sm-offset-6 {
		margin-left: 50%;
	}
	.col-sm-offset-7 {
		margin-left: 58.33333333%;
	}
	.col-sm-offset-8 {
		margin-left: 66.66666667%;
	}
	.col-sm-offset-9 {
		margin-left: 75%;
	}
	.col-sm-offset-10 {
		margin-left: 83.33333333%;
	}
	.col-sm-offset-11 {
		margin-left: 91.66666667%;
	}
	.start-sm {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		text-align: start;
	}
	.center-sm {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		text-align: center;
	}
	.end-sm {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		text-align: end;
	}
	.top-sm {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.middle-sm {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.bottom-sm {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.around-sm {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.between-sm {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.first-sm {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
	}
	.last-sm {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.initial-order-sm {
		-webkit-box-ordinal-group: NaN;
		-ms-flex-order: initial;
		order: initial;
	}
}
@media only screen and (min-width:768px) {
	.col-md,
	.col-md-1,
	.col-md-10,
	.col-md-11,
	.col-md-12,
	.col-md-2,
	.col-md-3,
	.col-md-4,
	.col-md-5,
	.col-md-6,
	.col-md-7,
	.col-md-8,
	.col-md-9,
	.col-md-offset-0,
	.col-md-offset-1,
	.col-md-offset-10,
	.col-md-offset-11,
	.col-md-offset-12,
	.col-md-offset-2,
	.col-md-offset-3,
	.col-md-offset-4,
	.col-md-offset-5,
	.col-md-offset-6,
	.col-md-offset-7,
	.col-md-offset-8,
	.col-md-offset-9 {
		box-sizing: border-box;
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		padding-right: 8px;
		padding-left: 8px;
	}
	.col-md {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		max-width: 100%;
	}
	.col-md-1 {
		-ms-flex-preferred-size: 8.33333333%;
		flex-basis: 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-md-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-md-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-md-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-md-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-md-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-md-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-md-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-md-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.col-md-10 {
		-ms-flex-preferred-size: 83.33333333%;
		flex-basis: 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-md-11 {
		-ms-flex-preferred-size: 91.66666667%;
		flex-basis: 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-md-12 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.col-md-offset-0 {
		margin-left: 0;
	}
	.col-md-offset-1 {
		margin-left: 8.33333333%;
	}
	.col-md-offset-2 {
		margin-left: 16.66666667%;
	}
	.col-md-offset-3 {
		margin-left: 25%;
	}
	.col-md-offset-4 {
		margin-left: 33.33333333%;
	}
	.col-md-offset-5 {
		margin-left: 41.66666667%;
	}
	.col-md-offset-6 {
		margin-left: 50%;
	}
	.col-md-offset-7 {
		margin-left: 58.33333333%;
	}
	.col-md-offset-8 {
		margin-left: 66.66666667%;
	}
	.col-md-offset-9 {
		margin-left: 75%;
	}
	.col-md-offset-10 {
		margin-left: 83.33333333%;
	}
	.col-md-offset-11 {
		margin-left: 91.66666667%;
	}
	.start-md {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		text-align: start;
	}
	.center-md {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		text-align: center;
	}
	.end-md {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		text-align: end;
	}
	.top-md {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.middle-md {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.bottom-md {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.around-md {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.between-md {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.first-md {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
	}
	.last-md {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.initial-order-md {
		-webkit-box-ordinal-group: NaN;
		-ms-flex-order: initial;
		order: initial;
	}
}
@media only screen and (min-width:992px) {
	.col-lg,
	.col-lg-1,
	.col-lg-10,
	.col-lg-11,
	.col-lg-12,
	.col-lg-2,
	.col-lg-3,
	.col-lg-4,
	.col-lg-5,
	.col-lg-6,
	.col-lg-7,
	.col-lg-8,
	.col-lg-9,
	.col-lg-offset-0,
	.col-lg-offset-1,
	.col-lg-offset-10,
	.col-lg-offset-11,
	.col-lg-offset-12,
	.col-lg-offset-2,
	.col-lg-offset-3,
	.col-lg-offset-4,
	.col-lg-offset-5,
	.col-lg-offset-6,
	.col-lg-offset-7,
	.col-lg-offset-8,
	.col-lg-offset-9 {
		box-sizing: border-box;
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		padding-right: 8px;
		padding-left: 8px;
	}
	.col-lg {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		max-width: 100%;
	}
	.col-lg-1 {
		-ms-flex-preferred-size: 8.33333333%;
		flex-basis: 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-lg-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-lg-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-lg-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-lg-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-lg-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-lg-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-lg-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-lg-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.col-lg-10 {
		-ms-flex-preferred-size: 83.33333333%;
		flex-basis: 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-lg-11 {
		-ms-flex-preferred-size: 91.66666667%;
		flex-basis: 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-lg-12 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.col-lg-offset-0 {
		margin-left: 0;
	}
	.col-lg-offset-1 {
		margin-left: 8.33333333%;
	}
	.col-lg-offset-2 {
		margin-left: 16.66666667%;
	}
	.col-lg-offset-3 {
		margin-left: 25%;
	}
	.col-lg-offset-4 {
		margin-left: 33.33333333%;
	}
	.col-lg-offset-5 {
		margin-left: 41.66666667%;
	}
	.col-lg-offset-6 {
		margin-left: 50%;
	}
	.col-lg-offset-7 {
		margin-left: 58.33333333%;
	}
	.col-lg-offset-8 {
		margin-left: 66.66666667%;
	}
	.col-lg-offset-9 {
		margin-left: 75%;
	}
	.col-lg-offset-10 {
		margin-left: 83.33333333%;
	}
	.col-lg-offset-11 {
		margin-left: 91.66666667%;
	}
	.start-lg {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		text-align: start;
	}
	.center-lg {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		text-align: center;
	}
	.end-lg {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		text-align: end;
	}
	.top-lg {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.middle-lg {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.bottom-lg {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.around-lg {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.between-lg {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.first-lg {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
	}
	.last-lg {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.initial-order-lg {
		-webkit-box-ordinal-group: NaN;
		-ms-flex-order: initial;
		order: initial;
	}
}
@media only screen and (min-width:1200px) {
	.col-xl,
	.col-xl-1,
	.col-xl-10,
	.col-xl-11,
	.col-xl-12,
	.col-xl-2,
	.col-xl-3,
	.col-xl-4,
	.col-xl-5,
	.col-xl-6,
	.col-xl-7,
	.col-xl-8,
	.col-xl-9,
	.col-xl-offset-0,
	.col-xl-offset-1,
	.col-xl-offset-10,
	.col-xl-offset-11,
	.col-xl-offset-12,
	.col-xl-offset-2,
	.col-xl-offset-3,
	.col-xl-offset-4,
	.col-xl-offset-5,
	.col-xl-offset-6,
	.col-xl-offset-7,
	.col-xl-offset-8,
	.col-xl-offset-9 {
		box-sizing: border-box;
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		padding: 0;
	}
	.col-xl {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		max-width: 100%;
	}
	.col-xl-1 {
		-ms-flex-preferred-size: 8.33333333%;
		flex-basis: 8.33333333%;
		max-width: 8.33333333%;
	}
	.col-xl-2 {
		-ms-flex-preferred-size: 16.66666667%;
		flex-basis: 16.66666667%;
		max-width: 16.66666667%;
	}
	.col-xl-3 {
		-ms-flex-preferred-size: 25%;
		flex-basis: 25%;
		max-width: 25%;
	}
	.col-xl-4 {
		-ms-flex-preferred-size: 33.33333333%;
		flex-basis: 33.33333333%;
		max-width: 33.33333333%;
	}
	.col-xl-5 {
		-ms-flex-preferred-size: 41.66666667%;
		flex-basis: 41.66666667%;
		max-width: 41.66666667%;
	}
	.col-xl-6 {
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.col-xl-7 {
		-ms-flex-preferred-size: 58.33333333%;
		flex-basis: 58.33333333%;
		max-width: 58.33333333%;
	}
	.col-xl-8 {
		-ms-flex-preferred-size: 66.66666667%;
		flex-basis: 66.66666667%;
		max-width: 66.66666667%;
	}
	.col-xl-9 {
		-ms-flex-preferred-size: 75%;
		flex-basis: 75%;
		max-width: 75%;
	}
	.col-xl-10 {
		-ms-flex-preferred-size: 83.33333333%;
		flex-basis: 83.33333333%;
		max-width: 83.33333333%;
	}
	.col-xl-11 {
		-ms-flex-preferred-size: 91.66666667%;
		flex-basis: 91.66666667%;
		max-width: 91.66666667%;
	}
	.col-xl-12 {
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.col-xl-offset-0 {
		margin-left: 0;
	}
	.col-xl-offset-1 {
		margin-left: 8.33333333%;
	}
	.col-xl-offset-2 {
		margin-left: 16.66666667%;
	}
	.col-xl-offset-3 {
		margin-left: 25%;
	}
	.col-xl-offset-4 {
		margin-left: 33.33333333%;
	}
	.col-xl-offset-5 {
		margin-left: 41.66666667%;
	}
	.col-xl-offset-6 {
		margin-left: 50%;
	}
	.col-xl-offset-7 {
		margin-left: 58.33333333%;
	}
	.col-xl-offset-8 {
		margin-left: 66.66666667%;
	}
	.col-xl-offset-9 {
		margin-left: 75%;
	}
	.col-xl-offset-10 {
		margin-left: 83.33333333%;
	}
	.col-xl-offset-11 {
		margin-left: 91.66666667%;
	}
	.start-xl {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		text-align: start;
	}
	.center-xl {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		text-align: center;
	}
	.end-xl {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		text-align: end;
	}
	.top-xl {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.middle-xl {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.bottom-xl {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.around-xl {
		-ms-flex-pack: distribute;
		justify-content: space-around;
	}
	.between-xl {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.first-xl {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
	}
	.last-xl {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
	}
	.initial-order-xl {
		-webkit-box-ordinal-group: NaN;
		-ms-flex-order: initial;
		order: initial;
	}
}
@media only screen and (max-width:575px) {
	.hidden-xs {
		display: none;
	}
}
@media only screen and (min-width:576px) and (max-width:767px) {
	.hidden-sm {
		display: none;
	}
}
@media only screen and (min-width:768px) and (max-width:991px) {
	.hidden-md {
		display: none;
	}
}
@media only screen and (min-width:992px) and (max-width:1199px) {
	.hidden-lg {
		display: none;
	}
}
@media only screen and (min-width:1200px) {
	.hidden-xl {
		display: none;
	}
}
.row.nomargin {
	margin-right: 0;
	margin-left: 0;
}
.row.nomargin [class*="col"] {
	padding-right: 0;
	padding-left: 0;
}

/* SWIPER v5.4.5 // https://swiperjs.com/ */

@font-face {
	font-family: 'swiper-icons';
	src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
	font-weight: 400;
	font-style: normal;
}
:root {
	--swiper-theme-color: #007aff;
}
.swiper {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	/* Fix of Webkit flickering */
	z-index: 1;
}
.swiper-vertical > .swiper-wrapper {
	flex-direction: column;
}
.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: flex;
	transition-property: transform;
	box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-wrapper {
	transform: translate3d(0px, 0, 0);
}
.swiper-multirow > .swiper-wrapper {
	flex-wrap: wrap;
}
.swiper-multirow-column > .swiper-wrapper {
	flex-wrap: wrap;
	flex-direction: column;
}
.swiper-free-mode > .swiper-wrapper {
	transition-timing-function: ease-out;
	margin: 0 auto;
}
.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform;
}
.swiper-slide-invisible-blank {
	visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
	height: auto;
}
.swiper-autoheight .swiper-wrapper {
	align-items: flex-start;
	transition-property: transform, height;
}
/* 3D Effects */
.swiper-3d {
	perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
	transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}
.swiper-3d .swiper-slide-shadow-left {
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none;
	/* For Firefox */
	-ms-overflow-style: none;
	/* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}
.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
	scroll-snap-type: x mandatory;
}
.swiper-vertical.swiper-css-mode > .swiper-wrapper {
	scroll-snap-type: y mandatory;
}
:root {
	--swiper-navigation-size: 44px;
	/*
	--swiper-navigation-color: var(--swiper-theme-color);
	*/
}
.swiper-button-prev,
.swiper-button-next {
	position: absolute;
	top: 50%;
	width: calc(var(--swiper-navigation-size) / 44 * 27);
	height: var(--swiper-navigation-size);
	margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
	opacity: 0.35;
	cursor: auto;
	pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
	font-family: swiper-icons;
	font-size: var(--swiper-navigation-size);
	text-transform: none !important;
	letter-spacing: 0;
	text-transform: none;
	font-variant: initial;
	line-height: 1;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
	left: 10px;
	right: auto;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
	content: 'prev';
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: 10px;
	left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
	content: 'next';
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
	--swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
	--swiper-navigation-color: #000000;
}
.swiper-button-lock {
	display: none;
}
:root {
	/*
	--swiper-pagination-color: var(--swiper-theme-color);
	*/
}
.swiper-pagination {
	position: absolute;
	text-align: center;
	transition: 300ms opacity;
	transform: translate3d(0, 0, 0);
	z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets {
	bottom: 10px;
	left: 0;
	width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transform: scale(0.33);
	position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	transform: scale(0.33);
}
.swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	display: inline-block;
	border-radius: 100%;
	background: #000;
	opacity: 0.2;
}
button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	box-shadow: none;
	-webkit-appearance: none;
		 -moz-appearance: none;
					appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
}
.swiper-pagination-bullet-active {
	opacity: 1;
	background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets {
	right: 10px;
	top: 50%;
	transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 6px 0;
	display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	transition: 200ms transform, 200ms top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 4px;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
	background: rgba(0, 0, 0, 0.25);
	position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background: var(--swiper-pagination-color, var(--swiper-theme-color));
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: scale(0);
	transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 100%;
	height: 4px;
	left: 0;
	top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 4px;
	height: 100%;
	left: 0;
	top: 0;
}
.swiper-pagination-white {
	--swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
	--swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
	display: none;
}
/* Scrollbar */
.swiper-scrollbar {
	border-radius: 10px;
	position: relative;
	-ms-touch-action: none;
	background: rgba(0, 0, 0, 0.1);
}
.swiper-horizontal > .swiper-scrollbar {
	position: absolute;
	left: 1%;
	bottom: 3px;
	z-index: 50;
	height: 5px;
	width: 98%;
}
.swiper-vertical > .swiper-scrollbar {
	position: absolute;
	right: 3px;
	top: 1%;
	z-index: 50;
	width: 5px;
	height: 98%;
}
.swiper-scrollbar-drag {
	height: 100%;
	width: 100%;
	position: relative;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	left: 0;
	top: 0;
}
.swiper-scrollbar-cursor-drag {
	cursor: move;
}
.swiper-scrollbar-lock {
	display: none;
}
.swiper-zoom-container {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.swiper-slide-zoomed {
	cursor: move;
}
/* Preloader */
:root {
	/*
	--swiper-preloader-color: var(--swiper-theme-color);
	*/
}
.swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	transform-origin: 50%;
	animation: swiper-preloader-spin 1s infinite linear;
	box-sizing: border-box;
	border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
	border-radius: 50%;
	border-top-color: transparent;
}
.swiper-lazy-preloader-white {
	--swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
	--swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
	100% {
		transform: rotate(360deg);
	}
}
/* a11y */
.swiper .swiper-notification {
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
	opacity: 0;
	z-index: -1000;
}
.swiper-fade.swiper-free-mode .swiper-slide {
	transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
	pointer-events: none;
	transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
	pointer-events: none;
}
.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}
.swiper-cube {
	overflow: visible;
}
.swiper-cube .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
					backface-visibility: hidden;
	z-index: 1;
	visibility: hidden;
	transform-origin: 0 0;
	width: 100%;
	height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
	pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
	transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev,
.swiper-cube .swiper-slide-next + .swiper-slide {
	pointer-events: auto;
	visibility: visible;
}
.swiper-cube .swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
					backface-visibility: hidden;
}
.swiper-cube .swiper-cube-shadow {
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.6;
	-webkit-filter: blur(50px);
	filter: blur(50px);
	z-index: 0;
}
.swiper-flip {
	overflow: visible;
}
.swiper-flip .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
					backface-visibility: hidden;
	z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
	pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}
.swiper-flip .swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right {
	z-index: 0;
	-webkit-backface-visibility: hidden;
					backface-visibility: hidden;
}
.swiper {
	overflow: hidden;
}

/* CUSTOM */

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	line-height: normal;
}
body.toggled {
	overflow: hidden;
}
[class*="container-square-"]::after {
	content: '';
	display: block;
	padding-bottom: 100%;
}
.container-square-all {
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
}
.center2-all {
	-webkit-box-pack: initial;
	-ms-flex-pack: initial;
	justify-content: initial;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	text-align: center;
	-ms-flex-direction: column;
	flex-direction: column;
	width:100%;
}
.middle-all {
	-webkit-box-align: initial;
	-ms-flex-align: initial;
	align-items: initial;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content: center;
	-ms-flex-direction: column;
	flex-direction: column;
}
.columns-all {
	column-count: 2;
	-moz-column-count: 2;
	-webkit-column-count: 2;
	-moz-column-gap: var(--column-gap);
	-webkit-column-gap: var(--column-gap);
	column-gap: var(--column-gap);
}

@media only screen and (max-width:575px) {
	.container-square-xs {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
	}
	.center2-xs {
		-webkit-box-pack: initial;
		-ms-flex-pack: initial;
		justify-content: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		text-align: center;
		-ms-flex-direction: column;
		flex-direction: column;
		width:100%;
	}
	.middle-xs {
		-webkit-box-align: initial;
		-ms-flex-align: initial;
		align-items: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack:center;
		-ms-flex-pack:center;
		justify-content: center;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.columns-xs-2 {
		column-count: 2;
		-moz-column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: var(--column-gap);
		-webkit-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
@media only screen and (min-width:576px) and (max-width:767px) {
	.container-square-sm {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
	}
	.center2-sm {
		-webkit-box-pack: initial;
		-ms-flex-pack: initial;
		justify-content: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		text-align: center;
		-ms-flex-direction: column;
		flex-direction: column;
		width:100%;
	}
	.middle-sm {
		-webkit-box-align: initial;
		-ms-flex-align: initial;
		align-items: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack:center;
		-ms-flex-pack:center;
		justify-content: center;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.columns-sm-2 {
		column-count: 2;
		-moz-column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: var(--column-gap);
		-webkit-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
@media only screen and (min-width:768px) and (max-width:991px) {
	.container-square-md {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
	}
	.center2-md {
		-webkit-box-pack: initial;
		-ms-flex-pack: initial;
		justify-content: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		text-align: center;
		-ms-flex-direction: column;
		flex-direction: column;
		width:100%;
	}
	.middle-md {
		-webkit-box-align: initial;
		-ms-flex-align: initial;
		align-items: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack:center;
		-ms-flex-pack:center;
		justify-content: center;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.columns-md-2 {
		column-count: 2;
		-moz-column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: var(--column-gap);
		-webkit-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
@media only screen and (min-width:992px) and (max-width:1199px) {
	.container-square-lg {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
	}
	.center2-lg {
		-webkit-box-pack: initial;
		-ms-flex-pack: initial;
		justify-content: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		text-align: center;
		-ms-flex-direction: column;
		flex-direction: column;
		width:100%;
	}
	.middle-lg {
		-webkit-box-align: initial;
		-ms-flex-align: initial;
		align-items: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack:center;
		-ms-flex-pack:center;
		justify-content: center;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.columns-lg-2 {
		column-count: 2;
		-moz-column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: var(--column-gap);
		-webkit-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
@media only screen and (min-width:1200px) {
	.container-square-xl {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
	}
	.center2-xl {
		-webkit-box-pack: initial;
		-ms-flex-pack: initial;
		justify-content: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		text-align: center;
		-ms-flex-direction: column;
		flex-direction: column;
		width:100%;
	}
	.middle-xl {
		-webkit-box-align: initial;
		-ms-flex-align: initial;
		align-items: initial;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack:center;
		-ms-flex-pack:center;
		justify-content: center;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.columns-xl-2 {
		column-count: 2;
		-moz-column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: var(--column-gap);
		-webkit-column-gap: var(--column-gap);
		column-gap: var(--column-gap);
	}
}
.inline {
	display: inline-block;
	list-style-type: none;
    text-align: center;
	margin: 0;
}
.inline.center {
	display: block;
}
.inline > * {
	display: inline-block;
	vertical-align: top;
}
.inline.middle > * {
    vertical-align: middle;
}
.inline.bottom > * {
    vertical-align: bottom;
}
.inline.padding {
	padding: 0;
	margin: -10px;
}
.inline.padding > * {
	padding: 10px;
}
.toggle-button {}
.toggle-container {
	display: none;
}
.toggle-container.active {
	display: block;
}
img {
	display: inline-block;
	width: 100%;
	height: auto;
}
.template {
	display: none;
}

/* FONTS */

@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('../fonts/open-sans-v20-latin-300.eot');
	src: local(''),
		 url('../fonts/open-sans-v20-latin-300.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/open-sans-v20-latin-300.woff2') format('woff2'),
		 url('../fonts/open-sans-v20-latin-300.woff') format('woff'),
		 url('../fonts/open-sans-v20-latin-300.ttf') format('truetype'),
		 url('../fonts/open-sans-v20-latin-300.svg#OpenSans') format('svg');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/open-sans-v20-latin-regular.eot');
	src: local(''),
		 url('../fonts/open-sans-v20-latin-regular.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/open-sans-v20-latin-regular.woff2') format('woff2'),
		 url('../fonts/open-sans-v20-latin-regular.woff') format('woff'),
		 url('../fonts/open-sans-v20-latin-regular.ttf') format('truetype'),
		 url('../fonts/open-sans-v20-latin-regular.svg#OpenSans') format('svg');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/open-sans-v20-latin-600.eot');
	src: local(''),
		 url('../fonts/open-sans-v20-latin-600.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/open-sans-v20-latin-600.woff2') format('woff2'),
		 url('../fonts/open-sans-v20-latin-600.woff') format('woff'),
		 url('../fonts/open-sans-v20-latin-600.ttf') format('truetype'),
		 url('../fonts/open-sans-v20-latin-600.svg#OpenSans') format('svg');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/open-sans-v20-latin-700.eot');
	src: local(''),
		 url('../fonts/open-sans-v20-latin-700.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/open-sans-v20-latin-700.woff2') format('woff2'),
		 url('../fonts/open-sans-v20-latin-700.woff') format('woff'),
		 url('../fonts/open-sans-v20-latin-700.ttf') format('truetype'),
		 url('../fonts/open-sans-v20-latin-700.svg#OpenSans') format('svg');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/open-sans-v20-latin-800.eot');
	src: local(''),
		 url('../fonts/open-sans-v20-latin-800.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/open-sans-v20-latin-800.woff2') format('woff2'),
		 url('../fonts/open-sans-v20-latin-800.woff') format('woff'),
		 url('../fonts/open-sans-v20-latin-800.ttf') format('truetype'),
		 url('../fonts/open-sans-v20-latin-800.svg#OpenSans') format('svg');
}
@font-face {
	font-family: 'fontello';
	src: url('../fonts/fontello.eot');
	src: local(''),
		 url('../fonts/fontello.eot#iefix') format('embedded-opentype'),
		 url('../fonts/fontello.woff2') format('woff2'),
		 url('../fonts/fontello.woff') format('woff'),
		 url('../fonts/fontello.ttf') format('truetype'),
		 url('../fonts/fontello.svg#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
[class^="icon-"]:before, [class*=" icon-"]:before {
	font-family: 'fontello';
	font-style: normal;
	font-weight: normal;
	speak: never;
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-audio:before { content: '\e800'; }
.icon-close:before { content: '\e801'; }
.icon-cross:before { content: '\e802'; }
.icon-prev:before { content: '\e803'; }
.icon-plus:before { content: '\e804'; }
.icon-next:before { content: '\e805'; }
.icon-facebook:before { content: '\e806'; }
.icon-youtube:before { content: '\e807'; }
.icon-instagram:before { content: '\e808'; }
.icon-search:before { content: '\e809'; }
.icon-spenden:before { content: '\e80a'; }

/* COLORS */

:root {
	--color-text-primary: rgba(77, 77, 77, 1);
	--color-light: rgba(255, 255, 255, 1);
	--color-white: rgba(255, 255, 255, 1);
	--color-dark: rgba(0, 0, 0, 1);
	--color-gray-dark: rgba(89, 89, 89, 1);
	--color-gray-light: rgba(89, 89, 89, 1);
	--color-yellow-dark: rgba(250, 187, 0);
	--color-yellow-transparent: rgba(250, 187, 0, .06);
	--color-orange-dark: rgba(236, 116, 5, 1);
	--color-orange-transparent: rgba(236, 116, 5, .06);
	--color-petrol-dark: rgba(152, 197, 209, 1);
	--color-petrol-light: rgba(218, 232, 237, 1);
	--color-petrol-transparent: rgba(152, 197, 209, .06);
	--color-lilac-dark: rgba(104, 58, 139, 1);
	--color-lilac-transparent: rgba(104, 58, 139, .06);

	--color-red: rgba(255, 0, 0, 1);

	--swiper-navigation-color: #DEDCDD;
	--column-gap: 40px;
}





/* SPACING */

.padding {
	padding: 50px;
}
.padding-height {
	padding-top: 50px;
	padding-bottom: 50px;
}
.padding-width {
	padding-left: 50px;
	padding-right: 50px;
}
.lineheight {
	line-height: 26px;
}

/* HTML */

a {
	color: var(--color-text-primary);
}
/*
a {
	color: var(--color-text-primary);
	background-image: linear-gradient(var(--color-text-primary), var(--color-text-primary));
	background-position: center 100%;
	background-repeat: no-repeat;
	background-size: 0% 1px;
	-webkit-transition: background-size .3s, color .3s;
	-moz-transition: background-size .3s, color .3s;
	-o-transition: background-size .3s, color .3s;
	transition: background-size .3s, color .3s;
}
a.nofx {
	-webkit-transition: none;
	-moz-transition: none;
	-o-transition: none;
	transition: none;
}
a:hover {
	background-image: linear-gradient(var(--color-red), var(--color-red));
	background-size: 90% 1px;
	color: var(--color-red);
}
a.nofx:hover {
	background-image: none;
	color: var(--color-text-primary); 
}
*/
body {
	font-family: 'Open Sans', sans-serif;
	font-size: 17.5px;
	color: var(--color-text-primary);
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin-bottom: 5px;
	margin-top: 5px;
	color: var(--color-text-primary);
}
h1 {
	font-size: 42px;
	margin-bottom: 10px;
	text-transform: normal;
}
h2 {
	font-size: 32.5px;
	font-weight: 700;
	line-height: 1.1em;
	margin-bottom:  12px;
}
h3 {
	font-size: 20px;
}
p {
	margin-bottom: 20px;
	margin-top: 5px;
}
strong {
	font-weight: 700;
}
em {
	font-style: italic;
}
ul {
	list-style-type: disc;
	margin-left: 20px;
}
li p {
	margin-bottom: 3px;
}
figcaption {
	font-size: 70%;
}
@media only screen and (max-width:575px) {

  /* Silbentrennung nur im Fließtext */
  p, li, figcaption {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  /* Überschriften/Titel NIE trennen (sonst “Michaels- / kirche”) */
  h1, h2, h3, h4, h5, h6,
  .module.gottesdienste .item .headline{
    -webkit-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    word-break: normal;
    overflow-wrap: normal;   /* bricht nur an Leerzeichen */
    text-wrap: balance;      /* schönerer Umbruch (wenn unterstützt) */
  }

  /* optional: wenn mal EIN Wort zu lang ist -> Umbruch ohne Trennstrich */
  .module.gottesdienste .item .headline {
    overflow-wrap: anywhere;
  }

  h1 { font-size: 28px; }
  h2 { font-size: 24px; }
  h3 { font-size: 20px; }
}

/* BACKGROUNDS */

.bg-red {
	background-color: var(--color-red);	
}
.bg-gray {
	background-color: var(--color-gray-dark);
}

/* GRID */

.grid {
	display: grid;
}
@media only screen and (min-width:767px) {
	.grid {
		grid-template-columns: repeat(2, 50%);
	}
	.cell-1-header {
	}
	.cell-1-footer {
		grid-row: 2 / 2;
	}
	.cell-2-header {
	}
	.cell-2-footer {
		grid-row: 2 / 2;
	}
	.cell-3-header {
		grid-column: 1 / 1;
		grid-row: 3 / 3;
	}
	.cell-3-footer {
		grid-column: 1 / 1;
		grid-row: 4 / 4;
	}
	.cell-4-header {
		grid-column: 2 / 2;
		grid-row: 3 / 3;
	}
	.cell-4-footer {
		grid-column: 2 / 2;
		grid-row: 4 / 4;
	}
	.cell-5-header {
		grid-column: 1 / 1;
		grid-row: 5 / 5;
	}
	.cell-5-footer {
		grid-column: 1 /1;
		grid-row: 6 / 6;
	}
	.cell-6-header {
		grid-column: 2 / 2;
		grid-row: 5 / 5;
	}
	.cell-6-footer {
		grid-column: 2 / 2;
		grid-row: 6 / 6;
	}
}
@media only screen and (min-width:1024px) {
	.grid {
		display: grid;
		grid-template-columns: repeat(3, 33.3%);
	}
	.cell-1-header {
	}
	.cell-1-footer {
		grid-column: 1 / 1;
		grid-row: 2 / 2;
	}
	.cell-2-header {
	}
	.cell-2-footer {
		grid-row: 2 / 2;
	}
	.cell-3-header {
		grid-column: 3 / 3;
		grid-row: 1 / 1;
	}
	.cell-3-footer {
		grid-column: 3 / 3;
		grid-row: 2 / 2;
	}
	.cell-4-header {
		grid-column: 1 / 1;
		grid-row: 3 / 3;
	}
	.cell-4-footer {
		grid-column: 1 / 1;
		grid-row: 4 / 4;
	}
	.cell-5-header {
		grid-column: 2 / 2;
		grid-row: 3 / 3;
	}
	.cell-5-footer {
		grid-column: 2 / 2;
		grid-row: 4 / 4;
	}
	.cell-6-header {
		grid-column: 3 / 3;
		grid-row: 3 / 3;
	}
	.cell-6-footer {
		grid-column: 3 / 3;
		grid-row: 4 / 4;
	}
}

/* HEADER */

header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 21;
	-webkit-transition: height .3s, background-color .3s;
	-moz-transition: height .3s, background-color .3s;
	-o-transition: height .3s, background-color .3s;
	transition: height .3s, background-color .3s;
	font-size: 15px;
}
body.scrolled header {
	position: fixed;
	background-color: var(--color-petrol-dark);
	/*overflow: hidden;*/
}
header .row-logo {
	margin: 20px 0;
}
header .row-logo * {
	color: var(--color-light);
}
body.scrolled header .row-logo {
	display: none;
}
header .row-search {
	background-color: var(--color-petrol-dark);
background-color: red;
	text-align: center;
	display: none;
}
body.searching header .row-search {
	display: block;
}
header a {
	-webkit-transition: none;
	-moz-transition: none;
	-o-transition: none;
	transition: none;
}
header a:hover {
	background-image: none;
	color: var(--color-text-primary); 
}
header [class*="megamenu-text-"],
header [class*="megamenu-item-"] {
	padding: 10px;
}
header [class*="megamenu-item-"] > a {
	transition: font-weight .3s, color .3s;
}
header [class*="megamenu-item-"] > a:hover,
header [class*="megamenu-item-"].active > a {
	font-weight: 600;
}
header [class*="megamenu-item-"] > [class*="megamenu-menu-"] {
	position: absolute;
	display: none;
}
body.scrolled header [class*="megamenu-item-"] > [class*="megamenu-menu-"] {
	position: fixed;
}
header [class*="megamenu-item-"]:hover > [class*="megamenu-menu-"],
header [class*="megamenu-item-"].active > [class*="megamenu-menu-"] {
	display: block;
}
header .megamenu-toggle {
	display: none;
	padding: 10px;
	border: none;
	margin: 0;
	cursor: pointer;
	line-height: 20px;
	height: 50px;
}
header .megamenu-toggle > span {
	display: block;
	height: 3px;
	width: 30px;
	background-color: var(--color-light);
	position: relative;
	top: 10px;
	left: 0;
	margin: auto;
	transition: all 0.3s ease-in-out;
}
header .megamenu-toggle > span::before {
	content: "";
	height: 3px;
	width: 30px;
	box-shadow: 0 -8px 0 0 var(--color-light);
	position: absolute;
	top: 0;
	left: 0;
	transition: all 0.3s ease-in-out;
}
header .megamenu-toggle > span::after {
	content: "";
	height: 3px;
	width: 30px;
	box-shadow: 0 8px 0 0 var(--color-light);
	position: absolute;
	top: 0;
	left: 0;
	transition: all 0.3s ease-in-out;
}
.toggled header .megamenu-toggle > span {
	transform: rotate(360deg);
	transition: all 0.6s ease-in-out;
	background-color: transparent;
}
.toggled header .megamenu-toggle > span::before {
	left: 6px;
	transform: translateY(6px) rotate(-45deg);
	box-shadow: 0 -10px 0 0 var(--color-light);
}
.toggled header .megamenu-toggle > span::after {
	left: 6px;
	transform: translateY(-8px) rotate(45deg);
	box-shadow: 0 10px 0 0 var(--color-light);
}
header .megamenu-items-0 {
	display: flex;
	list-style-type: none;

}
header .megamenu-item-0 {
	flex-grow: 1;

}
header .megamenu-item-0 * {
	text-align: left;

}
header .megamenu-item-0 > a {
	position: relative;
	display: block;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	color: var(--color-light);
	font-weight: 900;
	letter-spacing: 0.1em;
	text-shadow: 0px 0px 12px var(--color-petrol-transparent);
}
header .megamenu-item-0.sub > a::after {
	content: '';
	position: absolute;
	bottom: -40px;
	left: 50%;
	margin-left: -40px;
	width: 0; 
	height: 0; 
	border-left: 40px solid transparent;
	border-right: 40px solid transparent;
	border-bottom: 20px solid var(--color-petrol-light);
	display: none;
}
header .megamenu-item-0.sub:hover > a::after,
header .megamenu-item-0.sub.active > a::after {
	display: block;
}

header .megamenu-menu-1 {
	left: 0;
	width: 100%;
	padding-top: 40px;
}
header .megamenu-menu-1 .background {
	background-color: var(--color-petrol-light);
	padding: 20px;
}
header .megamenu-item-1 > a {
	display: block;
	text-transform: uppercase;
	text-decoration: none;
}
header .megamenu-menu-2 {
	border-left: 1px dotted var(--color-dark);
	padding: 0 0 0 10px;
}
header .megamenu-item-2 {
	position: relative;
	padding: 10px;
}
header .megamenu-item-2:hover .megamenu-menu-3 {
	display: block;
}
header .megamenu-item-2::before {
	content: '';
	transition: left .3s, opacity .3s;
	left: -17.5px;
	opacity: 0;
}
header .megamenu-item-2:hover::before,
header .megamenu-item-2.active::before {
	position: absolute;
	left: -15px;
	top: 20px;
	width: 10px;
	height: 10px;
	background-color: var(--color-petrol-light);
	border-top: 1px dotted var(--color-dark);
	border-right: 1px dotted var(--color-dark);
	transform: rotate(45deg);
	transform-origin: center center;
	opacity: 1;
}
header .megamenu-item-2 > a {
	display: block;
	text-decoration: none;
}

header .search input[type='text'] {
	padding: 5px 10px;
	height: 32px;
	border: 1px solid var(--color-dark);
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	vertical-align: text-top;
	max-width: 100%;
}

header .search-container {
	position: relative;
}
header #s {
	padding-right: 25px;
	padding-left: 5px;
	font-size: 1.2em;
}
header .submit {
	-webkit-appearance: none;
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	height: 100%;
	background-color: transparent;
}


@media only screen and (max-width:991px) {
	header [class*="megamenu-item-"] > [class*="megamenu-menu-"] {
		position: relative;
	}
	body.scrolled header [class*="megamenu-item-"] > [class*="megamenu-menu-"] {
		position: relative;
	}
	header .megamenu-toggle {
		display: block;
	}
	header .megamenu-menu-0 {
		display: none;
		background-color: var(--color-petrol-dark);
		height: 100%;
		position: fixed;
		left: 0;
		right: 0;
		overflow: scroll;
	}
	header .megamenu-items-0 {
		display: block;
	}
	body.toggled header .megamenu-menu-0 {
		display: block;
	}
	header [class*="megamenu-item-"] > [class*="megamenu-menu-"],
	header .megamenu-item-0.sub > a::after {
		display: block;
	}
}

/* SEARCH-BOX */
div.search-box {
	z-index: 22;
	top: 0;
	width: 100%;
	padding: 15px 25%;
	-webkit-transition: top 0.4s ease;
	-moz-transition: top 0.4s ease;
	-o-transition: top 0.4s ease;
	transition: top 0.4s ease;
}
div.search-box a {
	text-decoration: none;
}
.searching div.search-box {
	top: 89px;
}

div.search-box input[type="text"] {
	width: 100%;
	height: 35px;
	border: 1px solid #000;
	border-radius: 10px;
}
div.ajax-search-results {
	width: 100%;
	background-color: var(--color-petrol-light);
}
div.ajax-search-results a {
	display: block;
	padding: 10px;
	border-bottom: 1px solid #000;
	color: #000;
}
div.ajax-search-results a:hover {
	background-color: var(--color-petrol-dark);
}



/* FOOTER */

footer {
	background-color: var(--color-gray-dark);
	color: var(--color-light);
	padding: 40px 0;
	font-size: 12.5px;
	margin-top: 30px;
}
footer .headline {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}
footer .subline {
	font-weight: 600;
}
/* footer .inline.padding {
	margin: -20px;*/
}
footer .inline.padding > * {
	padding: 20px;
}

footer .inline.padding a {
	font-size: 26px;
}
footer a {
	font-size: 15px;
	text-decoration: none;
	color: var(--color-light);
	-webkit-transition: none;
	-moz-transition: none;
	-o-transition: none;
	transition: none;
}
footer a:hover {
	background-image: none;
	color: var(--color-petrol-dark); 
}

/* MAIN */

main {
	display: block;
}
@media only screen and (max-width:767px) {
	main {
		margin-top: 0;
	}
}

/* SECTION.SPACE */

section.space {
	height: 50px;
}

/* SECTION.HERO */

section.hero {
	position: relative;
	overflow: hidden;
}
/* Weißer „Boden" hinter der Skyline-Welle: deckt die Ecken-Schlitze ab,
   in denen sonst links/rechts das Foto unter der Welle durchblitzt. */
section.hero::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 4%;
	min-height: 18px;
	background: #fff;
	z-index: 1;
}
section.hero .swiper-noslide {
	background-color: var(--color-petrol-dark);
	width: 100%;
	min-height: 400px;
}
section.hero .picture {}
section.hero .skyline {
	position: absolute;
	width: 100%;
	bottom: -1px;
	z-index: 2;
}
section.hero .skyline img {
	display: block;
	width: 100%;
}
section.hero .shader {
	position: absolute;
	width: 100%;
	height: 185px;
	top: 0;
	background-image: linear-gradient(var(--color-petrol-dark) 1%, transparent);
	/*background-color: var(--color-petrol-dark);*/
	background-blend-mode: overlay;
	z-index: 2;
}
section.hero .text {
	display: none;
}
@media only screen and (max-width:767px) {
}

/* SECTION.LAYOUT */

section.layout {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	padding-top: 20px;
	margin-top: 15px;
}

/* SECTION.LAYOUT HAUSKREIS-TABELLE*/

section.layout.hauskreis{
	margin-top: 5px;
	padding-top: 3px;
	padding-bottom: 3px;
}
section.layout.hauskreis p {
	margin-top: 5px;
	margin-bottom: 3px;
}
section.layout.musik p {
	margin-top: 8px;
	margin-bottom: 8px;
}


/* SECTION.LAYOUT KIGAANMELDUNG*/

section.layout.kigaanmeldung {
	margin-top: 0px;
}

/* SECTION.LAYOUT KIGA*/

section.layout.kiga {
	margin-top: 0px;
}

/* SECTION.LAYOUT KIGABILD*/

section.layout.kigabild {
	margin-bottom: 30px;
}

/* SECTION.LAYOUT ZITAT*/

section.layout.zitat-hg {
	padding-bottom: 20px;
}






/* BLOCKQUOTE – FOOTER */

.blocks .blockquote {
	padding: 0;
	color: var(--color-gray-dark);
	font-size: 12.5px;
	font-style: italic;
	margin-top: 10px;
}

/* MODULE.GOTTESDIENSTE */

.module.gottesdienste {
	margin-bottom: 100px;
}
.module.gottesdienste .padding {
	padding: 5px 25px;
	font-size: 15px;
}
.module.gottesdienste .item {
	position: relative;
	display: flex;
	flex: 1 0 0%;
	height: 100%;
	flex-direction: column;
}
.module.gottesdienste .item .item-header {
	position: relative;
	padding-bottom: 20px;
}
.module.gottesdienste .item .date {
	font-size: 15px;
	font-weight: 400;
	background-color: red;
	color: var(--color-light);
}
.module.gottesdienste .item .headline {
	font-size: 25px;
	font-weight: 700;
	margin-top: 15px;
	margin-bottom: 15px;
	line-height: 26px;
}
.module.gottesdienste .item .subline {
	margin-bottom: 5px;
}
.module.gottesdienste .item .untertitel {
	font-style: italic;
	margin-bottom: 10px;
}
.module.gottesdienste .item .baptism {
	margin-bottom: 15px;
}
.module.gottesdienste .item .location {
	font-weight: 600;
	margin-bottom: 15px;
}
.module.gottesdienste .item.yellow .subline {
	color: var(--color-yellow-dark);
}
.module.gottesdienste .item.petrol .subline {
	color: var(--color-petrol-dark);
}
.module.gottesdienste .item.lilac .subline {
	color: var(--color-lilac-dark);
}
.module.gottesdienste .item.orange .subline {
	color: var(--color-orange-dark);
}
.module.gottesdienste .item .sermon {
	margin-bottom: 5px;
}
.module.gottesdienste .item .sermontext {
	margin-bottom: 5px;
}
.module.gottesdienste .item .music {
	margin-bottom: 5px;
}
.module.gottesdienste .item .extra {
	margin-bottom: 5px;
}
.module.gottesdienste .item .sacrifice {
	/*margin-top: 15px;*/
	margin-bottom: 5px;
	font-style: italic;
}
.module.gottesdienste .item a.more {
	position: absolute;
	font-size: 26px;
	bottom: 0;
	right: 0;
	display: inline-block;
	padding: 20px;
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-o-transition: color .3s;
	transition: color .3s;
}
.module.gottesdienste .item .more i::before {
	margin: 0;
	transition: transform .3s;
}
.module.gottesdienste .item .more.active i::before {
	transform: rotate(45deg);
}
.module.gottesdienste .item .text {
}
.module.gottesdienste .item.yellow .item-header,
.module.gottesdienste .item.yellow .item-footer {
	border-bottom: 1px solid var(--color-yellow-dark);
}
.module.gottesdienste .item.yellow .item-footer {
	background-color: var(--color-yellow-transparent);
}
.module.gottesdienste .item.yellow .date {
	background-color: var(--color-yellow-dark);
}
.module.gottesdienste .item.yellow a.more:hover {
	color: var(--color-yellow-dark);
}
.module.gottesdienste .item.orange .item-header,
.module.gottesdienste .item.orange .item-footer {
	border-bottom: 1px solid var(--color-orange-dark);
}
.module.gottesdienste .item.orange .item-footer {
	background-color: var(--color-orange-transparent);
}
.module.gottesdienste .item.orange .date {
	background-color: var(--color-orange-dark);
}
.module.gottesdienste .item.orange a.more:hover {
	color: var(--color-orange-dark);
}
.module.gottesdienste .item.petrol .item-header,
.module.gottesdienste .item.petrol .item-footer {
	border-bottom: 1px solid var(--color-petrol-dark);
}
.module.gottesdienste .item.petrol .item-footer {
	background-color: var(--color-petrol-transparent);
}
.module.gottesdienste .item.petrol .date {
	background-color: var(--color-petrol-dark);
}
.module.gottesdienste .item.petrol a.more:hover {
	color: var(--color-petrol-dark);
}
.module.gottesdienste .item.lilac .item-header,
.module.gottesdienste .item.lilac .item-footer {
	border-bottom: 1px solid var(--color-lilac-dark);
}
.module.gottesdienste .item.lilac .item-footer {
	background-color: var(--color-lilac-transparent);
}
.module.gottesdienste .item.lilac .date {
	background-color: var(--color-lilac-dark);
}
.module.gottesdienste .item.lilac a.more:hover {
	color: var(--color-lilac-dark);
}

.module.gottesdienste .button a {
	display: inline-block;
	border:  2px solid var(--color-text-primary);
	border-radius: 20px;
	padding: 5px 10px;
	text-decoration: none;
	transition: background-color .3s, color .3s;
	font-weight: 700;
}
.module.gottesdienste .button a:hover {
	background-color: var(--color-text-primary);
	color: var(--color-light);
}
.module.gottesdienste .button {
	padding-top: 5px;
	padding-bottom: 15px;
	margin-top: 15px;
}



/* MODULE.TERMINE */

.module.termine {
	margin-bottom: 100px;
}
.module.termine .headline h2 {
	color: var(--color-petrol-dark);
}
.module.termine .items {
	border-bottom: 1px solid var(--color-dark);
}
.module.termine .item {
	position: relative;
	min-height: 40px;
	padding: 0 50px 18px;
	border-top: 1px solid var(--color-dark);
}
.module.termine .item .date .day{
	font-size: 20px;
	font-weight: 600;
	padding-top: 8px;
}

.module.termine .item .date .calendar{
	font-size: 0.8em;
	font-weight: 200;
	padding-top: 13px;
	color: grey;
/*	line-height: 1.5em;*/
}



.module.termine .item [class*="weekday-"] {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	font-size: 20px;
	font-weight: 600;
	color: var(--color-light);
}
.module.termine .item .weekday-1 {
	background-color: #AEC0C5;
}
.module.termine .item .weekday-2 {
	background-color: #90A8AF;
}
.module.termine .item .weekday-3 {
	background-color: #71909A;
}
.module.termine .item .weekday-4 {
	background-color: #537984;
}
.module.termine .item .weekday-5 {
	background-color: #35616E;
}
.module.termine .item .weekday-6 {
	background-color: #F9B200;
}
.module.termine .item .weekday-7 {
	background-color: #EC7405;
}
.module.termine .item .item-header {
	margin: 0 40px;
}
.module.termine .item .time {
	padding-top: 8px;
	font-size: 20px;
}
.module.termine .item .text {
	padding-top: 8px;
	font-size: 20px;
}
.module.termine .item .text-more {
	padding-top: 8px;
	font-size: 17.5px;
}
.module.termine .item .more {
	display: none;
	position: absolute;
	top: 3px;
	right: 0;
	width: 40px;
	height: 40px;
	font-size: 26px;
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-o-transition: color .3s;
	transition: color .3s;
}
.module.termine .item .more:hover {
	color: var(--color-petrol-dark);
}
.module.termine .item.hasmore .more {
	display: block;
}
.module.termine .item .more i::before {
	margin: 0;
	transition: transform .3s;
}
.module.termine .item .more.active i::before {
	transform: rotate(90deg);
}
.module.termine .termin-more {
	text-align: center;
	font-size: 26px;
}
.module.termine .termin-more a {
	display: inline-block;
	padding: 20px;
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-o-transition: color .3s;
	transition: color .3s;
}
.module.termine .termin-more a:hover {
	color: var(--color-petrol-dark);
}



/* MODULE.BUTTON */

.module.button a {
	display: inline-block;
	border:  2px solid var(--color-text-primary);
	border-radius: 20px;
	padding: 5px 10px;
	text-decoration: none;
	transition: background-color .3s, color .3s;
	font-weight: 700;
}
.module.button a:hover {
	background-color: var(--color-text-primary);
	color: var(--color-light);
}
.button {
	padding-top: 5px;
	padding-bottom: 15px;
}
.icon {
	margin-right: 5px;
}

/* SECTION.LAYOUT MUSIK BUTTON*/

section.layout.musik .button {
	margin-top: 0px;
	padding-top: 0px;
	padding-bottom: 5px;
}

/* SECTION.LAYOUT KIGADOWNLOAD*/

section.kigadownload .button {
	padding-bottom: 0px;
}


/* MODULE.DOWNLOAD */

.module.download a {
	position: relative;
	display: inline-block;
	border:  2px solid var(--color-text-primary);
	border-radius: 20px;
	padding: 5px 10px;
	text-decoration: none;
	transition: background-color .3s, color .3s;
}
.module.download a:hover {
	background-color: var(--color-text-primary);
	color: var(--color-light);
}
.download {
	padding-top: 5px;
	padding-bottom: 15px;
}

/* MODULE.TELEFONANDACHTEN */

/* MODULE.TAGESLOSUNG */
/*LOSUNGEN*/
.tageslosung-background {
	padding-bottom: 20px;
}

.tageslosung-container {
	padding: 15px;
	margin-bottom: 20px;
}

.tageslosung a {
	text-decoration: none;
	color: black !important;
}

.tageslosung-headline {
    font-size: 1.7em;
    font-weight: 800;
    margin-bottom: 18px;
}


.tageslosung-verse {
	margin-bottom: 24px;
	font-size: 0.9em;
	font-weight: 400;
}

.tageslosung-subline {
	font-size: 0.68em;
	font-weight: 400;
}


/*Online-Gottesdienste*/
.onlinegodi {
  width: 100%;
    /*float:right;*/ 
}

.onlinegodi-text p {
    font-size: 0.8rem;
}

.onlinegodi-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
}

.onlinegodi-description {
    font-size: 0.9em;
    font-weight: 400;
    margin-top: 10px;
    margin-bottom:10px;
}
.onlinegodi-tags {
    font-size: 0.7em;
    font-weight: 400;
    margin-top: 10px;
    margin-bottom:10px;
}



/* TELEFONANDACHT */
.telefonandachten {
	margin-bottom:  20px;
}

.ta-container {
	padding: 15px;
	margin-bottom: 20px;
	color: var(--color-white);
}

.ta-headline h1 {
    font-size: 1.7em;
    font-weight: 800;
    color: var(--color-white);
   /* margin-bottom: 18px;*/
}

.ta {
  width: 100%;
    /*float:right;*/ 
}

.ta-text p {
    font-size: 0.8rem;
}

.ta-container h2 {
    font-size: 1.35rem;
    color: var(--color-white);
    margin-bottom: 18px;
}



.ta-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
}

.ta-autor {
    font-size: 1.2em;
    font-weight: 800;
    line-height: 1em;
    margin-top: 10px;
    margin-bottom:10px;
    
}

/* KIRCHLICHENACHRICHTEN */
.kirchlichenachrichten {
	margin-bottom:  20px;
}

.kn-container {
	padding: 15px;
	margin-bottom: 20px;
	/*color: var(--color-white);*/
}

.kn-headline {
	font-size: 1.7em;
	font-weight: 800;
	/* margin-bottom: 18px;*/
	line-height: 1.2em;
}

.kn {
  width: 100%;
  float:right;
  margin-bottom: 24px;
}

.kn-text p {
    font-size: 0.8rem;
}

.kn-container h2 {
    font-size: 1.35rem;
    color: var(--color-white);
    margin-bottom: 18px;
}

.kn-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
}

.kn img {
	width:20%;
	eight:auto; 
	float:left; 
	margin-right:20px !important;
	margin-bottom: 20px !important;
}

/* miteinander */

.miteinander {
  width: 100%;
  /*float:right;*/
  margin-bottom: 24px;
}

.miteinander-container {
	padding: 15px;
	margin-bottom: 20px;
	/*color: var(--color-white);*/
} 

.miteinander-headline {
	font-size: 1.7em;
	font-weight: 800;
	/* margin-bottom: 18px;*/
	line-height: 1.2em;
}

.miteinander-text p {
    font-size: 1.2rem;
}

.miteinander-container h2 {
    font-size: 1.35rem;
    color: var(--color-white);
    margin-bottom: 18px;
}

.miteinander img {
	/*width:20%;*/
	height:auto; 
	float:left; 
	margin-right:20px !important;
	margin-bottom: 20px !important;
}
.miteinander .aktuell {
	position: relative;
}

.miteinander-image {
/*	float: left;
	position: absolute;*/
}

.miteinander .aktuell img {
	width:28%;
	height:auto; 
	float:left; 
	margin-right:20px !important;
	margin-bottom: 20px !important;
	position: relative;
	background: #d9d9d9;
}	

.miteinander .ausgabe {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
}

.miteinander .datum {
    font-size: 0.8em;
}

span.ausgabe {
	font-size: 0.5em;
}
.module.miteinander .button {
	padding-top: 5px;
	padding-bottom: 15px;
	margin-top: 15px;
}

.module.miteinander .button a {
	display: inline-block;
	border:  2px solid var(--color-text-primary);
	border-radius: 20px;
	padding: 5px 10px;
	text-decoration: none;
	transition: background-color .3s, color .3s;
	font-weight: 700;
}
.module.miteinander .button a:hover {
	background-color: var(--color-text-primary);
	color: var(--color-light);
}



.miteinander-date {
    font-size: 0.8em;
    border-spacing: 5px 1rem;
    /*border-bottom: 1px solid #a2a2a2;*/
    margin-bottom: 12px;
}




/* Gastfreundschaft-leben */
.gastfreundschaftleben-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
}

.gastfreundschaftleben {
	margin-bottom:  20px;
}

.gastfreundschaftleben .aktuell {
	position: relative;
}

.gastfreundschaftleben .aktuell img {
	width:28%;
	height:auto; 
	float:left; 
	margin-right:25px !important;
	margin-bottom: 20px !important;
	border-right: 10px solid #eeeeee;
	position: relative;
	background: #eeeeee;
}

.gl-container {
	padding: 15px;
	margin-bottom: 20px;
	/*color: var(--color-white);*/
}

.gl-headline {
	font-size: 1.7em;
	font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.2em;
}

.gl {
  width: 100%;
  float:right;
  margin-bottom: 24px;
}

.gl-text p {
    font-size: 1.2rem;
    margin-bottom: 4.2rem;
}

.gl-container h2 {
    font-size: 1.35rem;
    color: var(--color-white);
    margin-bottom: 18px;
}

.gl-date {
    font-size: 0.8em;
    line-height: 0.8em;
    border-spacing: 5px 1rem;
    border-bottom: 1px solid #a2a2a2;
    margin-bottom: 12px;
    line-height: 0.85rem;
}

.gl img {
	width:20%;
	eight:auto; 
	float:left; 
	margin-right:20px !important;
	margin-bottom: 20px !important;
}




/*DOWNLOAD-TAG */
a.dl:before {
  border-color: rgba(128, 128, 128, 0.3);
  background: rgba(128, 128, 128, 0.1);
  color: gray;
  content: attr(data-ext);
  text-transform: uppercase;

  font-size: 0.6em;
  font-family: Arial, sans-serif;
  line-height: 20px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #ddd;
  padding: 4px;
  margin-right: 8px;
  vertical-align: 20%;
  text-decoration: none;

}

a.dl--svg:before {
  border-color: rgba(90, 139, 194, 0.3);
  background: rgba(90, 139, 194, 0.1);
  color: #5A8BC2;
}

a.dl--pdf:before {
  border-color: rgba(200, 77, 79, 0.3);
  background: rgba(200, 77, 79, 0.1);
  color: #C84D4F;
}

a.dl--mp4:before {
  border-color: rgba(124, 103, 152, 0.3);
  background: rgba(124, 103, 152, 0.1);
  color: #7C6798;
}

a.dl--mp3:before {
  border-color: rgba(124, 103, 152, 0.3);
  background: rgba(124, 103, 152, 0.1);
  color: #7C6798;
}

/*FUERBITTEN*/

.fuerbitte {
   /* width: 80%;*/
   /* float:left; */
}

.fuerbitte-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
}

/*GEBETSANLIEGEN*/

.gebetsanliegen {
   /* width: 80%;*/
   /* float:left; */
}

.gebetsanliegen-date {
    font-size: 0.8em;
    border-bottom: 1px solid #a2a2a2;
}

/*
#########################################
            MELDUNGEN AKTUELLES
#########################################
*/


/*.meldung-thumbnail img
{
    mix-blend-mode: luminosity;
    opacity: 0.7;
}

.meldung-thumbnail:hover .meldung-thumbnail img
{
    mix-blend-mode: normal;
    opacity: 1;
}*/

.meldung-more .more a.more {
	text-decoration: none;
} 

.meldung-text h2 {
	font-size: 26px;
	line-height: 32px !important;
}

div.meldungenslider {
	margin-bottom:  50px;
}



/* MODULE.SLIDER */

/* MODULE.VIDEOCUSTOM */

.module.videocustom {}

.module.videocustom .video-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.module.videocustom .video-container .embed-container,
.consent-gate-container[data-vendor="youtube"] .oembed-content,
.consent-gate-container[data-vendor="vimeo"] .oembed-content {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  width: 100%;
  height: auto;
}

.module.videocustom .video-container .embed-container iframe,
.consent-gate-container[data-vendor="youtube"] .oembed-content iframe,
.consent-gate-container[data-vendor="vimeo"] .oembed-content iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}

.module.videocustom .video-container img {
  width: 100%;
}

.module.videocustom .video-container.disabled:after {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: 0.7;
}

.module.videocustom .video-container .video-hint {
  display: none;
}

.module.videocustom .video-container.disabled .video-hint {
  display: inline-block;
  position: absolute;
  max-width: 400px;
  z-index: 1;
  font-size: 0.9rem;
  border: 2px solid #F2F2F2;
}

@media screen and (max-width: 767px) {
  .module.videocustom .video-container.disabled .video-hint {
    position: relative;
    max-width: 100%;
  }
}

.module.videocustom .video-container.disabled .video-hint .video-hint-text {
  background: #ffffff;
  padding: 20px;
}

.module.videocustom .video-container.disabled .video-hint .video-hint-text p {
  margin-top: 0;
}

.module.videocustom .video-container.disabled .video-hint .video-hint-link-container {
  margin: 5px 0;
}

.module.videocustom .video-container.disabled .video-hint .video-id {
  font-size: 0.75rem;
  text-align: right;
  margin-top: 5px;
}

/* MODULE.MAP */

.module.map {}

.module.map .map-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.module.map .map-container .map-preview {
  width: 100%;
  background-image: url(../images/map.jpg);
  background-size: cover;
}

.module.map .map-container .map-hint {
  display: inline-block;
  position: absolute;
  max-width: 400px;
  z-index: 1;
  font-size: 0.9rem;
  border: 2px solid #F2F2F2;

}

@media screen and (max-width: 767px) {
  .module.map .map-container .map-hint {
    position: relative;
    max-width: 100%;
  }
}

.module.map .map-container .map-hint .map-hint-text {
  background: #ffffff;
  padding: 20px;
}

.module.map .map-container .map-hint .map-hint-text p {
  margin-top: 0;
}

/* MODULE.AKKORDEON */

.module.akkordeon {
	margin-bottom: 100px;
}
.module.akkordeon .headline h2 {
	color: var(--color-petrol-dark);
}
.module.akkordeon .items {
	border-bottom: 1px solid var(--color-dark);
}
.module.akkordeon .item {
	position: relative;
	min-height: 40px;
	padding: 0 50px 18px 4px;
	border-top: 1px solid var(--color-dark);
}
.module.akkordeon .item .headline {
	font-size: 20px;
	font-weight: 600;
	padding-top: 8px;
}
.module.akkordeon .item .text-more {
	padding-top: 8px;
	font-size: 17.5px;
}
.module.akkordeon .item .more {
	position: absolute;
	top: 3px;
	right: 0;
	width: 40px;
	height: 40px;
	font-size: 26px;
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-o-transition: color .3s;
	transition: color .3s;
}
.module.akkordeon .item .more:hover {
	color: var(--color-petrol-dark);
}
.module.akkordeon .item .more i::before {
	margin: 0;
	transition: transform .3s;
}
.module.akkordeon .item .more.active i::before {
	transform: rotate(90deg);
}
/* ── Block: Terminliste (manuelle Termine, blendet Vergangenes aus) ── */
.module.terminliste {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid currentColor;
}
.module.terminliste .terminliste-titel {
	margin-top: 0;
	margin-bottom: .25em;
}
.module.terminliste .terminliste-unterzeile {
	margin-top: 0;
	margin-bottom: 1.25em;
}
.module.terminliste .terminliste-gruppe {
	padding-top: 1em;
	margin-top: 1em;
	border-top: 1px solid currentColor;
}
.module.terminliste .terminliste-gruppe:first-of-type {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}
.module.terminliste .terminliste-ort {
	margin: 0 0 .5em;
}
.module.terminliste .terminliste-items {
	list-style: none;
	margin: 0;
	padding: 0;
}
.module.terminliste .terminliste-item {
	margin: 0 0 .4em;
	line-height: 1.4;
}
.module.terminliste .terminliste-datum {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.module.terminliste .terminliste-zusatz {
	margin-left: .5em;
}
.module.terminliste .terminliste-notiz {
	font-style: italic;
}

/* ── Block: Personen (zentrale Pflege, Ausgabe nach Gruppe) ── */
.module.personen .personen-titel {
	margin-bottom: 1.25rem;
}
.module.personen .person {
	margin-bottom: 1.75rem;
	text-align: center;
}
.module.personen .person-foto {
	display: flex;
	gap: 6px;
}
.module.personen .person-foto img {
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 20px;
	display: block;
}
.module.personen .person-name {
	font-weight: 700;
	margin-top: .65em;
	line-height: 1.25;
}
.module.personen .person-funktion {
	font-size: 1em;
	opacity: .8;
	margin-top: .15em;
	margin-bottom: .8em;   /* klarer Abstand nach der Funktion */
}
.module.personen .person-kontakt {
	font-size: .95em;
	margin-top: .25em;
	word-break: break-word;
}
/* Telefon: Label davor, Nummer nicht unterstrichen */
.person-tel-label {
	margin-right: .35em;
}
.person-tel-nr {
	text-decoration: none;
	color: inherit;
}
.module.personen .personen-leer {
	opacity: .7;
	font-style: italic;
}
.module.personen .person-beschreibung {
	font-size: .95em;
	opacity: .8;
	margin-top: .3em;
	line-height: 1.4;
}
/* Liste: insgesamt etwas größere Schrift */
.module.personen.personen-liste .person-text {
	font-size: 1.05rem;
}
.person-mail,
.person-link {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	margin-top: .5em;
	padding: 5px 14px;
	border: 2px solid var(--color-text-primary, currentColor);
	border-radius: 20px;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.6;
	cursor: pointer;
	text-decoration: none;
	color: inherit;
	transition: background-color .3s, color .3s;
}
.person-mail:hover,
.person-link:hover {
	background-color: var(--color-text-primary, #333);
	color: var(--color-light, #fff);
}

/* ── Gruppen »Magazin« (Musik): großes Foto, abwechselnd links/rechts ── */
.module.gruppen.gruppen-magazin .gruppe-magazin-row {
	display: flex;
	gap: 2.5rem;
	align-items: center;
	margin-bottom: 3rem;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-row.foto-links {
	flex-direction: row-reverse;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-text {
	flex: 1 1 50%;
	min-width: 0;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-foto {
	flex: 1 1 50%;
	min-width: 0;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-row.ohne-foto .gruppe-magazin-text {
	flex-basis: 100%;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-foto img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 4px;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-name {
	margin: 0 0 .5em;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-meta {
	margin: 0 0 .8em;
	line-height: 1.5;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-leitung {
	margin: 0 0 .8em;
	line-height: 1.4;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-beschreibung {
	margin: 0 0 .8em;
	line-height: 1.5;
}
.module.gruppen.gruppen-magazin .gruppe-magazin-kontakt .person-kontakt {
	margin-top: .35em;
}
@media (max-width: 768px) {
	.module.gruppen.gruppen-magazin .gruppe-magazin-row,
	.module.gruppen.gruppen-magazin .gruppe-magazin-row.foto-links {
		flex-direction: column;
		gap: 1rem;
		align-items: stretch;
	}
	.module.gruppen.gruppen-magazin .gruppe-magazin-foto {
		order: 2;
	}
}

/* ── Gruppen »Gebetskreise« – Spalten: Wochentag · Ort · Haus ── */
.module.gebet .gebet-cols {
	display: flex;
	flex-wrap: wrap;
	gap: 1.8rem;
}
.module.gebet .gebet-col {
	flex: 1 1 180px;
	min-width: 165px;
}
.module.gebet .gebet-tag {
	margin: 0 0 .6em;
	padding-bottom: .15em;
	border-bottom: 2px solid currentColor;
}
.module.gebet .gebet-ort-gruppe {
	margin-bottom: 1.6em;
}
.module.gebet .gebet-ort {
	margin: 0 0 .4em;
	font-size: 1.15em;
}
.module.gebet .gebet-eintrag {
	margin-bottom: 1.1em;
	line-height: 1.45;
}
.module.gebet .gebet-haus,
.module.gebet .gebet-zeit,
.module.gebet .gebet-name,
.module.gebet .gebet-leiter {
	display: block;
}
.module.gebet .gebet-haus {
	margin-bottom: .1em;
}
.module.gebet .gebet-leiter {
	margin-top: .15em;
	opacity: .85;
}

/* Personen – Listen-Darstellung (Bild links als Rechteck, Daten rechts) */
.module.personen.personen-liste .person {
	margin-bottom: 1.5rem;
	text-align: left;
}
.module.personen .person-karte-liste {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
}
.module.personen .person-karte-liste .person-foto {
	flex: 0 0 42%;
	max-width: 260px;
	flex-direction: column;   /* Ehepaar: Bilder untereinander */
}
.module.personen .person-karte-liste .person-foto img {
	flex: 0 0 auto;
	width: 100%;
	aspect-ratio: 3 / 4;       /* Hochformat */
	border-radius: 16px;
}
/* Ehepaar (2 Bilder): in der Liste nebeneinander, feste Größe → Daten haben Platz */
.module.personen .person-karte-liste .person-foto-2 {
	flex: 0 0 auto;
	flex-direction: row;
	max-width: none;
}
.module.personen .person-karte-liste .person-foto-2 img {
	flex: 0 0 auto;
	width: 200px;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
}
@media (max-width: 700px) {
	.module.personen .person-karte-paar {
		flex-direction: column;
	}
	.module.personen .person-karte-liste .person-foto-2 img {
		width: 140px;
	}
}
/* Info-Karte (statt Person, z. B. unbesetzte Stelle) */
.module.personen .person-karte-info {
	background: rgba(0, 0, 0, .04);
	border-radius: 12px;
	padding: 1rem 1.2rem;
	height: 100%;
}
.module.personen .person-karte-info .person-beschreibung {
	margin-top: 0;
	opacity: 1;
}

/* ── Galerie-Block: Masonry / Polaroid-Stapel / Raster (animiert) ── */
.module.galerie { margin: 1.6rem 0; }
.module.galerie .galerie-caption { text-align: center; font-size: .92em; opacity: .8; margin-top: 1em; }
.module.galerie .galerie-item { display: block; cursor: zoom-in; }
.module.galerie .galerie-item img { display: block; width: 100%; }
@keyframes galerie-in { from { opacity: 0; translate: 0 26px; } to { opacity: 1; translate: 0 0; } }

/* Masonry (versetzt, Original-Format) */
.galerie-masonry { column-gap: 14px; }
.galerie-masonry.galerie-cols-2 { column-count: 2; }
.galerie-masonry.galerie-cols-3 { column-count: 3; }
.galerie-masonry.galerie-cols-4 { column-count: 4; }
.galerie-masonry .galerie-item {
	break-inside: avoid;
	margin: 0 0 14px;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	animation: galerie-in .55s ease both;
	transition: scale .3s, box-shadow .3s;
}
.galerie-masonry .galerie-item:hover { scale: 1.03; z-index: 2; box-shadow: 0 10px 26px rgba(0, 0, 0, .28); }

/* Raster (gleich groß, quadratisch) */
.galerie-raster { display: grid; gap: 14px; }
.galerie-raster.galerie-cols-2 { grid-template-columns: repeat(2, 1fr); }
.galerie-raster.galerie-cols-3 { grid-template-columns: repeat(3, 1fr); }
.galerie-raster.galerie-cols-4 { grid-template-columns: repeat(4, 1fr); }
.galerie-raster .galerie-item {
	border-radius: 8px;
	overflow: hidden;
	animation: galerie-in .55s ease both;
	transition: scale .3s, box-shadow .3s;
}
.galerie-raster .galerie-item img { aspect-ratio: 1 / 1; object-fit: cover; }
.galerie-raster .galerie-item:hover { scale: 1.03; z-index: 2; box-shadow: 0 10px 26px rgba(0, 0, 0, .28); }

/* Polaroid-Stapel (gedreht, fällt animiert ein, richtet sich beim Hover auf) */
.galerie-polaroid { display: flex; flex-wrap: wrap; justify-content: center; gap: 26px; padding: 1rem .5rem 1.6rem; }
.galerie-polaroid .galerie-item {
	background: #fff;
	padding: 12px 12px 40px;
	border-radius: 2px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .22);
	rotate: var(--r, 0deg);
	animation: galerie-in .6s ease both;
	transition: rotate .35s ease, scale .35s ease, box-shadow .35s;
}
.galerie-polaroid .galerie-item img { width: 220px; height: 220px; object-fit: cover; }
.galerie-polaroid .galerie-item:hover { rotate: 0deg; scale: 1.07; z-index: 3; box-shadow: 0 16px 34px rgba(0, 0, 0, .32); }

@media (max-width: 600px) {
	.galerie-masonry.galerie-cols-3,
	.galerie-masonry.galerie-cols-4 { column-count: 2; }
	.galerie-raster.galerie-cols-3,
	.galerie-raster.galerie-cols-4 { grid-template-columns: repeat(2, 1fr); }
	.galerie-polaroid .galerie-item img { width: 150px; height: 150px; }
}
.module.personen .person-karte-liste .person-text {
	flex: 1 1 0;
	min-width: 0;
}
.module.personen .person-karte-liste .person-name {
	margin-top: 0;
}

/* Personen-Block: Zwischenüberschriften (manueller Modus) */
.module.personen .personen-zwischen {
	margin-top: 1.6rem;
	padding-top: 1.6rem;
	border-top: 2px solid var(--color-border, #e2e2e2);
}
.module.personen .personen-zwischen:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}
.module.personen .personen-zwischen h3 {
	margin: 0 0 .3rem;
}
/* Manuell: Abschnitte nebeneinander (Spalten) */
.module.personen .personen-spalten {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}
.module.personen .personen-spalten .personen-spalte {
	flex: 1 1 280px;
	min-width: 240px;
}
.module.personen .personen-spalten .personen-spalte .person {
	width: 100%;
	margin-bottom: 1.2rem;
}
.module.personen .personen-spalten .personen-spalte-titel {
	margin: 0 0 .6rem;
}
/* Block: Einwilligung widerrufen */
.module.einwilligung-widerruf {
	margin: 1em 0;
}
.module.einwilligung-widerruf .einwilligung-widerruf-text {
	font-size: .9em;
	opacity: .85;
	margin: 0 0 .5em;
}
/* Größe der Ausgabe folgt der gewählten Hülle (H1–H6 / p / small) */
.module.einwilligung-widerruf .einwilligung-widerruf-zeile {
	margin: 0;
}
.module.einwilligung-widerruf .person-link {
	font-size: inherit;
}
/* Footer als Blöcke/Spalten: Schrift/Überschriften wie der bisherige Footer */
footer .footer-row {
	margin-bottom: 1.2em;
}
footer .footer-layout-col .blocks > .block {
	margin-bottom: 1em;
}
footer .footer-layout-col h1,
footer .footer-layout-col h2,
footer .footer-layout-col h3,
footer .footer-layout-col h4 {
	font-size: 20px;
	font-weight: 600;
	margin: 0 0 10px;
	color: inherit;
}
/* Links INNERHALB einer Footer-Überschrift erben deren Größe/Gewicht
   (sonst zwingt »footer a« sie auf 15px) */
footer .footer-layout-col h1 a,
footer .footer-layout-col h2 a,
footer .footer-layout-col h3 a,
footer .footer-layout-col h4 a {
	font-size: inherit;
	font-weight: inherit;
}
footer .footer-layout-col p {
	margin: 0 0 .8em;
}
footer .footer-legal {
	margin-top: 1.5em;
}
/* »Einwilligung widerrufen«-Block im Footer wie die anderen Footer-Links */
footer .einwilligung-widerruf {
	margin: 0;
}
footer .einwilligung-widerruf .einwilligung-widerruf-text {
	display: none;
}
footer .einwilligung-widerruf .person-link {
	display: inline;
	border: 0;
	padding: 0;
	border-radius: 0;
	font-weight: 600;
	background: transparent;
	color: var(--color-light);
}
footer .einwilligung-widerruf .person-link i {
	display: none;
}
footer .einwilligung-widerruf .person-link:hover {
	background: transparent;
	color: var(--color-petrol-dark);
}

/* ── Block: Hauskreise (sortier-/filterbare Tabelle) ── */
.module.hauskreise .hauskreise-titel { margin-bottom: 1rem; }
.module.hauskreise .kd-tabelle-filter {
	width: 100%;
	max-width: 360px;
	padding: .5em .9em;
	margin-bottom: 1rem;
	border: 1px solid var(--color-border, #ccc);
	border-radius: 999px;
	font-size: 1em;
}
.module.hauskreise .hauskreise-wrap { overflow-x: auto; }
.module.hauskreise table.kd-tabelle {
	width: 100%;
	border-collapse: collapse;
}
.module.hauskreise .kd-tabelle th,
.module.hauskreise .kd-tabelle td {
	text-align: left;
	padding: .6em .8em;
	border-bottom: 1px solid var(--color-border, #e2e2e2);
	vertical-align: top;
}
.module.hauskreise .kd-tabelle thead th {
	border-bottom: 2px solid currentColor;
	white-space: nowrap;
}
.module.hauskreise .kd-tabelle th.kd-sort { cursor: pointer; user-select: none; }
.module.hauskreise .kd-tabelle th.kd-sort::after {
	content: " ⇅";
	opacity: .4;
	font-size: .85em;
}
.module.hauskreise .kd-tabelle th.kd-sort[data-dir="asc"]::after { content: " ↑"; opacity: 1; }
.module.hauskreise .kd-tabelle th.kd-sort[data-dir="desc"]::after { content: " ↓"; opacity: 1; }
.module.hauskreise .kd-tabelle tbody tr:nth-child(odd) { background: rgba(0, 0, 0, .025); }
.module.hauskreise .hauskreise-zielgruppe,
.module.hauskreise .hauskreise-ort {
	display: block;
	font-size: .85em;
	opacity: .7;
}
.module.hauskreise .hauskreise-kontakt .hauskreise-tel { display: block; margin-bottom: .35em; }
.module.hauskreise .hauskreise-kontakt .person-mail { font-size: .85em; padding: 3px 12px; }
/* Ort-Spalte schmaler halten, damit die Kontaktspalte (Telefonnummer) Platz hat */
.module.hauskreise .kd-tabelle th.kd-ort,
.module.hauskreise .kd-tabelle td.kd-ort {
	width: 1%;
	white-space: nowrap;
	font-size: .9em;
}
/* Telefonnummern in der Tabelle nicht umbrechen */
.module.hauskreise .kd-tabelle .person-tel { white-space: nowrap; }
.module.hauskreise .kd-tabelle .person-tel-nr { white-space: nowrap; }
/* Mobil: Tabelle als Karten */
@media (max-width: 600px) {
	.module.hauskreise .kd-tabelle thead { display: none; }
	.module.hauskreise .kd-tabelle tbody tr {
		display: block;
		margin-bottom: 1rem;
		border: 1px solid var(--color-border, #e2e2e2);
		border-radius: 10px;
		padding: .4em .2em;
	}
	.module.hauskreise .kd-tabelle td {
		display: block;
		border: 0;
		padding: .2em .8em;
	}
	.module.hauskreise .kd-tabelle td::before {
		content: attr(data-label) ": ";
		font-weight: 700;
	}
	.module.hauskreise .kd-tabelle td[data-label="Leitung"]::before { content: ""; }
}
