html {
	font-size: 75.5%;
}

body {
	font-size: 1.5em;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
}

h1 {
	font-size: 3.0rem;
	line-height: 1.2;
	margin-top: 1.5rem;
	margin-bottom: 2rem;
}

h2 {
	font-size: 2.4rem;
	line-height: 1.25;
	margin-top: 1rem;
	margin-bottom: 1.5rem;
}

h3 {
	font-size: 2.0rem;
	line-height: 1.3;
}

h4 {
	font-size: 1.8rem;
	line-height: 1.35;
}

h5 {
	font-size: 1.5rem;
	line-height: 1.5;
}

h6 {
	font-size: 1.3rem;
	line-height: 1.6;
}


@media (max-width: 767px) {
	h1 {
		font-size: 2.0rem;
	}

	h2 {
		font-size: 1.8rem;
	}

	h3 {
		font-size: 1.6rem;
	}

	h4 {
		font-size: 1.4rem;
	}

	h5 {
		font-size: 1.2rem;
	}

	h6 {
		font-size: 1.0rem;
	}
}

aside p {
	font-size: 80%;
}

aside h1 {
	font-size: 1.5em;
	margin-left: 0;
}

aside h2 {
	font-size: 1.4em;
	margin-left: 0;
}

aside h3 {
	font-size: 1.3em;
	margin-left: 0;
}

aside h4 {
	font-size: 1.1em;
	margin-left: 0;
}

aside h5 {
	font-size: 0.9em;
	margin-left: 0;
}

aside h6 {
	font-size: 0.75em;
	margin-left: 0;
}

/*aside > h1,h2,h3,h4,h5,h6{
	padding:0 10px 0 10px;
}*/
#footer h1 {
	font-size: 3rem;
}

#footer h2 {
	font-size: 2.5rem;
}

#footer h3 {
	font-size: 3rem;
}

#footer p {
	font-size: 1.3rem;
	line-height: 1.8rem;
}

.layout-latest h1,
.layout-latest h2,
.layout-latest h3,
.layout-latest h4,
.layout-latest h5,
.layout-latest h6 {
	margin-left: 10px;
}

a {
	text-decoration: none;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

a:focus,
a:active {
	outline: none;
}

figcaption {
	font-size: 1.2rem;
	display: block;
	margin-bottom: 1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.subheadline {
	font-size: 1.6rem;
}

blockquote,
q {
	border-left: 4px solid;
	padding-left: 1rem;
}

hr {
	margin-top: 3rem;
	margin-bottom: 3.5rem;
}

.mod_article .ce_text.intro {
	padding-bottom: 3em;
	font-size: 1.5em;
}

.mod_breadcrumb ul {
	padding: 0;
	font-size: 1.1rem;
	list-style-type: none;
}

.mod_breadcrumb li {
	float: left;
	padding-right: .5em;
}

.mod_breadcrumb li:after {
	content: '\e918';
	font-family: icons;
	padding-left: 0.3em;
}

.mod_breadcrumb .last:after {
	display: none;
}

.mod_breadcrumb .first {
	padding-left: 0;
}

.mod_breadcrumb .active {
	font-weight: bold;
	background: none;
}

.event.layout_upcoming time::before,
p.time::before {
	content: '\f133';
	font-family: icons;
	padding-right: 0.4em;
}

p.info {
	display: inline-block;
	border-bottom: 1px solid;
	margin-left: 10px;
}

/*aside p.info, .more {
   
    margin-left: 10px;*/
.news-sub {
	/*font-family: roboto;*/
	font-size: 2rem;
	font-weight: 300;
}

aside .info {
	margin-bottom: 0;
}

aside .mod_eventlist {
	font-size: 1.6rem;
	margin: 5px 0
}

aside .mod_eventlist a {
	font-family: "exo 2";
}

.event.layout_upcoming time,
aside .mod_eventlist p.time {
	font-size: 1.3rem;
	font-weight: 800;
	text-transform: uppercase;
	margin: 5px 0;
}

body[class^="icon-"]:before,
body[class*="icon-"]:before,
.mod_navigation li[class^="icon-"]:before,
.mod_navigation li[class*="icon-"]:before,
.mod_customnav li[class^="icon-"]:before,
.mod_customnav li[class*="icon-"]:before {
	display: none;
}


/*--------------- Lists and tables --------------- */

.ce_table ul,
.ce_list ul,
.ce_text ul {
	list-style: circle inside;
	list-style-position: outside;
	margin-left: 1em;
	padding-left: 0;
	margin-top: 0;
}

.ce_table ol,
.ce_list ol,
.ce_text ol {
	list-style: decimal inside;
	list-style-position: outside;
	margin-left: 1em;
	padding-left: 0;
	margin-top: 0;
}

.ce_table ul ul,
.ce_list ul ul,
.ce_text ul ul,
.ce_table ul ol,
.ce_list ul ol,
.ce_text ul ol,
.ce_table ol ol,
.ce_list ol ol,
.ce_text ol ol,
.ce_table ol ul,
.ce_list ol ul,
.ce_text ol ul {
	margin: 1.5rem 0 1.5rem 3rem;
}

.ce_table li,
.ce_list li,
.ce_text li {
	margin-bottom: 1rem;
}


[class*="ce_"] table,
.mod_calendar table {
	width: 100%;
}

[class*="ce_"] th,
.mod_calendar th,
[class*="ce_"] td,
.mod_calendar td {
	padding: 12px 10px;
	text-align: left;
	border-bottom: 1px solid #E1E1E1;
}

[class*="ce_"] th:first-child,
.mod_calendar th:first-child,
[class*="ce_"] td:first-child,
.mod_calendar td:first-child {
	padding-left: 0;
}

[class*="ce_"] th:last-child,
.mod_calendar th:last-child,
[class*="ce_"] td:last-child,
.mod_calendar td_last-child {
	padding-right: 0;
}

.tableform table label {
	padding-right: 2em;
}

.mod_calendar thead .label {
	width: 14.28%;
}

.mod_calendar .event.upcoming {
	font-size: 80%;
}

td.weekend.empty {
	background: transparent;
}

td[data-header]:before {
	display: block;
	margin: .7em 0 0;
	font-weight: bold;
	content: attr(title);
}

@media (min-width: 50em) {

	/* assume our reset table fits in there */
	table {
		display: table;
	}

	thead {
		display: table-header-group;
	}

	tfoot {
		display: table-footer-group;
	}

	tbody {
		display: table-row-group;
	}

	tr {
		display: table-row;
	}

	td,
	th {
		display: table-cell;
	}

	td[data-header]:before {
		content: none;
	}
}

/* ------------------ Header image styling ----------------- */

.header-image h1 {
	font-size: 5.0rem;
	line-height: 1.2;
	margin-bottom: 0.1rem;
}

.header-image h2 {
	font-size: 4.6rem;
	line-height: 1.25;
}

.header-image h3 {
	font-size: 4.0rem;
	line-height: 1.3;
}

.header-image h4 {
	font-size: 3.4rem;
	line-height: 1.35;
}

.header-image h5 {
	font-size: 2.8rem;
	line-height: 1.5;
}

.header-image h6 {
	font-size: 2.5rem;
	line-height: 1.6;
}

.header-image p {
	font-size: 1.8rem;
}

@media (max-width: 767px) {

	.header-image h1,
	.hero h1 {
		font-size: 2rem;
		margin-bottom: 1rem;
		margin-top: 0;
		line-height: 1;
	}

	.header-image h2,
	.hero h2 {
		font-size: 1.5rem;
		margin-bottom: .5rem;
	}

	.header-image p,
	.header-image a {
		font-size: 1.1rem;
	}

}

.image_container.float_left {
	margin-right: 3em;
}

.image_container.float_right {
	margin-left: 3em;
}

.image_container .cboxElement:after {
	content: '\e907';
	font-family: icons;
	padding: .3em .7em;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: .7;
}


/* --------------- Forms -------------- */

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="submit"],
textarea,
select {
	height: 38px;
	width: 100%;
	padding: 6px 10px;
	background-color: rgb(66, 87, 134);
	background-color: rgba(222, 222, 222, 0.2);
	border: 1px solid #000;
	border-bottom: 1px solid #000;
	box-shadow: none;
	box-sizing: border-box;
	color: #425786;
	/* -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
*/
	border-radius: 0;
}

input[type="text"].captcha {
	display: inline-block;
	width: 4em;
}

.light input[type="email"],
.light input[type="number"],
.light input[type="search"],
.light input[type="text"],
.light input[type="tel"],
.light input[type="url"],
.light input[type="password"],
.light textarea,
.light select {
	background-color: rgb(255, 255, 255);
	background-color: rgba(255, 255, 255, 0.03);
	border: 1px solid transparent;
	border-bottom: 1px solid #fff;
	color: #fff;
}

textarea {
	min-height: 65px;
	padding-top: 6px;
	padding-bottom: 6px;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
	background-color: rgb(255, 255, 255);
	background-color: rgba(255, 255, 255, 0);
	outline: 0;
}

label,
legend {
	display: block;
	margin-bottom: .5rem;
	font-weight: 300;
}

.radio_container label,
.checkbox_container label {
	display: inline-block;
}

/*fieldset {
  	padding: 0;
  	border-width: 0;
	}*/

input[type="checkbox"],
input[type="radio"] {
	display: inline;
}

label>.label-body {
	display: inline-block;
	margin-left: .5rem;
	font-weight: normal;
}

label.block {
	width: 100%;
}

.widget.block select {
	width: 100%;
}

select {
	border-bottom-left-radius: 0;
}

.error {
	color: #ff0000;
}

.ce_comments input[type="email"],
.ce_comments input[type="number"],
.ce_comments input[type="search"],
.ce_comments input[type="text"],
.ce_comments input[type="tel"],
.ce_comments input[type="url"],
.ce_comments input[type="password"],
.ce_comments textarea,
.ce_comments select {
	width: auto;
}

.ce_comments label {
	display: inline;
}

.comment_default {
	border: 1px solid #dedede;
	padding: 1em;
	margin-bottom: 1em;
}

.comment_default .reply {
	padding-left: 2em;
}

.comment_default .reply p.info {
	font-weight: bold;
}

/* ------------- Buttons and input submit -------------- */

input,
textarea,
select,
fieldset {
	margin-bottom: 1.5rem;
}

input[type="submit"] {
	display: inline-block;
	height: 38px;
	padding: 0 30px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 300;
	line-height: 38px;
	text-decoration: none;
	white-space: nowrap;
	background-color: transparent;
	border-radius: 4px;
	border: 1px solid #425786;
	color: #425786;
	cursor: pointer;
	box-sizing: border-box;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
	color: #0FA0CE;
	border-color: #0FA0CE;
	outline: 0;
}

.light input[type="submit"] {
	color: #425786;
	border-color: #fff;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.light input[type="submit"]:hover {
	color: #0FA0CE;
	border-color: #0FA0CE;
}
a.button, button[type="submit"],
*[class*="btn"] a,
a.btn,
a.btn-large,
a.btn-small {
	display: inline-block;
	border: 1px solid #425786;
	color: #fff;
	text-decoration: none;
	padding: .5em .8em;
	border-radius: 3px;
	margin-bottom: .5em;
	background-color: #425786;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
button[type="submit"]:hover,
*[class*="btn"] a:hover,
a.btn:hover,
a.btn-large:hover,
a.btn-small:hover {
	border-color: #0FA0CE;
	background-color: #8aa2be;
}
button[type="submit"] a,
*[class*="btn"].invert a,
a.btn.invert,
a.btn-small.invert,
a.btn-large.invert {
	background-color: #425786;
	color: #fff;
}
button[type="submit"]>a:hover,
*[class*="btn"].invert a:hover,
a.btn.invert:hover,
a.btn-small.invert:hover,
a.btn-large.invert:hover {
	background-color: #8aa2be;
}
button[type="submit"],
.btn-small a,
a.btn-small {
	padding: .4em 1em;
	font-size: 80%;
	
}

.btn-large a,
a.btn-large {
	padding: 1em 2em;
	font-size: 110%;
}

.light *[class*="btn"] a,
.light a.btn,
.light a.btn-large,
.light a.btn-small,
*[class*="btn"].light a,
.light.btn-large a,
.light.btn-small a {
	border: 1px solid #fff;
	color: #fff;
}

.light *[class*="btn"].invert a,
*[class*="btn"].light.invert a {
	background-color: #fff;
}

/* -------------- Useful helper classes. Extend as needed. ---------------- */

.space-top10 {
	margin-top: 10px;
}

.space-top20 {
	margin-top: 20px;
}

.space-top30 {
	margin-top: 30px;
}

.space-top40 {
	margin-top: 40px;
}

.space-top50 {
	margin-top: 50px;
}

.space-bottom10 {
	margin-bottom: 10px;
}

.space-bottom20 {
	margin-bottom: 20px;
}

.space-bottom30 {
	margin-bottom: 30px;
}

.space-bottom40 {
	margin-bottom: 40px !important;
}

.space-bottom50 {
	margin-bottom: 50px;
}

.mod_article.space-top10,
.mod_article.space-top20,
.mod_article.space-top30,
.mod_article.space-top40,
.mod_article.space-top50,
.mod_article.space-bottom10,
.mod_article.space-bottom20,
.mod_article.space-bottom30,
.mod_article.space-bottom40,
.mod_article.space-bottom50 {
	margin-top: 0;
	margin-bottom: 0;
}

.mod_article.space-top10 .inside::before {
	content: ' ';
	display: block;
	height: 10px;
}

.mod_article.space-top20 .inside::before {
	content: ' ';
	display: block;
	height: 20px;
}

.mod_article.space-top30 .inside::before {
	content: ' ';
	display: block;
	height: 30px;
}

.mod_article.space-top40 .inside::before {
	content: ' ';
	display: block;
	height: 40px;
}

.mod_article.space-top50 .inside::before {
	content: ' ';
	display: block;
	height: 50px;
}

.mod_article.space-bottom10 .inside::after {
	content: ' ';
	display: block;
	height: 10px;
	clear: both;
}

.mod_article.space-bottom20 .inside::after {
	content: ' ';
	display: block;
	height: 20px;
	clear: both;
}

.mod_article.space-bottom30 .inside::after {
	content: ' ';
	display: block;
	height: 30px;
	clear: both;
}

.mod_article.space-bottom40 .inside::after {
	content: ' ';
	display: block;
	height: 40px;
	clear: both;
}

.mod_article.space-bottom50 .inside::after {
	content: ' ';
	display: block;
	height: 50px;
	clear: both;
}

[class*="ce_"].box,
[class*="mod_"].box {
	padding: 1em 1em 0 1em;
	margin-bottom: .5em;
	border: 1px solid #dedede;
}

.infobox {
	background-color: #dedede;
	padding: 1em 1em 0 1em !important;
	margin-bottom: 1rem;
}

.infobox2 {
	background-color: #dedede;
	padding: 1em 1em 0 1em !important;
	margin-bottom: 1rem;
	padding-top: 40px;
}

.infobox-light {
	box-sizing: border-box;
	background-color: #fff;
	padding: 1em 1em 0 1em !important;
	margin-bottom: 1rem;
	border: 1px #dedede solid;
	box-shadow: 2px 2px 4px #dedede;
}

.infobox:before,
infobox-light:before {
	content: '\e822';
	font-family: icons;
	padding: 0 .8em 0 0;
	font-size: 2em;
	float: left;
	margin-top: -10px;
}

.infobox.success {
	background-color: #8DCC33;
}

.success:before {
	content: '\e8ca';
	font-family:icons;
}

.infobox.warning {
	background-color: #CC3333;
	color: #fff;
}

.warning:before {
	content: '\e840';
	font-family:icons;
}

.feature-item {
	text-align: center;
}

.feature-item:before {
	font-size: 6em;
	opacity: .5;
	padding-bottom: 1rem;
}


/* -------------- Misc ------------------ */

.subnav li {
	padding-bottom: .5em;
}

.mod_eventlist .header {
	margin-top: 2rem;
}

.mod_eventlist .event {
	margin-bottom: 1rem;
}

.mod_eventlist p.time {
	font-size: 2rem;

}

.mod_eventlist p.time,
.mod_eventlist p.location {
	margin: 0;
}

.accordion>div {
	padding: 1rem;
}

.toggler {
	position: relative;
	padding: 6px 10px;
	border-bottom: 1px solid;
	font-weight: bold;
	cursor: pointer;
}

.toggler:focus {
	outline: none;
}

.toggler:before {
	display: inline-block;
	width: 1.5rem;
	font-family: icons;
	content: '\e81d';
	padding-right: 2em;
}

.toggler.ui-state-active:before {
	font-family: icons;
	content: '\e81f';
	padding-right: 2em;
}

.link-print::before,
.link-pdf::before,
.link-fb::before,
.link-twitter::before,
.link-google::before {
	height: 1.5rem;
	width: 1.5rem;
	font-family: icons;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 1.5rem;
	line-height: 1.5rem;
	padding: .5em;
	background-color: #dedede;
	display: inline-block;
	border-radius: 50%;
	margin: .2em;
	color: #000;
	opacity: .7;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.link-print:hover::before,
.link-pdf:hover::before,
.link-fb:hover::before,
.link-twitter:hover::before,
.link-google:hover::before {
	color: #fff;
	background-color: #999;
}

.link-print::before {
	content: '\e8d7';
}

.link-pdf::before {
	content: '\e8cc';
}

.link-fb::before {
	content: '\f09a';
}

.link-twitter::before {
	content: '\f099';
}

.link-google::before {
	content: '\f30f';
}

.layout_short>.ce_text {
	padding: 0 !important;
}

.event-wrapper {
	min-height: 180px;
	background-color: ghostwhite;
	overflow: hidden;
	margin-bottom: 1.1rem;
	padding: 0 0.9rem;
}

.iconcards-item h4 {
	font-size: 2.0rem;
	xmargin-bottom: 2rem;
}

.layout_latest .pfarr img {
	border: none;
	border-top: 4px solid red;
}

p .slidertext {
	font-size: 4rem !important
}

.slider-zusatztext {
	font-size: 3rem;
}

.alert {
	background-color: white !important;
	color: #717c8e !important;
	border: 2px solid red;
	padding: 5px !important;
}

.text-overflow {
	width: 100%;
	height: 250px;
	display: block;
	overflow: hidden;
	word-break: break-word;
	word-wrap: break-word;
}

.text-overflow table {
	width: 80%;
}

#article-181 .text-overflow table {
	width: 100%;
}

.btn-overflow {
	display: none;
	text-decoration: none;
}

.-cropped::after {
	background-image: linear-gradient(hsla(0, 0%, 100%, 0), #e7e7e7);
	bottom: 85px;
	content: " ";
	height: 140px;
	left: 0;
	position: absolute;
	right: 0;
	opacity: 1;
	transition-duration: 2.9s;
	transition-property: opacity;
	transition-timing-function: cubic-bezier(.4, 0, .2, 1);
	xz-index: 999;
	display: block;


}

.vdhs {
	background-color: #e7e7e7;
	padding: 5px 10px;
}

.vdhs p,
.vdhs h2,
.vdhs h3,
.vdhs a {
	padding-left: 10px !important;
}


.vdhs a {
	color: #002147;
}

.vdhs .boxinfo {
	background-color: #03327d;
	color: #eee;
	width: 100%;
	padding: 5px;
}

.dl-link {
	margin-top: 10px;
	margin-bottom: 10px;
}

.cc-2 {
	column-count: 1;
}

@media (min-width: 767px) {
	.cc-2 {
		column-count: 2;
	}
}

@media (min-width: 1024px) {
	.cc-2 {
		column-count: 3;
	}
}

.ce_box .ak20 .box,
.ce_hyperlink .ak20 .box {
	margin-bottom: 0;
	border: 2px solid darkred;
}

.ak20:before {
	content: "";
	display: block;
	padding-top: 100%;
}

.ak20 .innercontent {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.ak20 .headline {

	position: absolute;
	top: 5px;
	left: 5px;
	color: #e5c857;
	z-index: 10;
	Font-size: 3rem;
	font-weight: 800;
	text-shadow: black 2px -2px 1px;
	;

}

.ak20 img {
	width: 100%;
	height: auto;
	transform: scale(1);
	transition: all 0.4s linear;
}

.ak20 img:hover {
	transform: scale(1.2);
}

.xmas {
	font-size: 1.2rem;

}

.xmas .ce_card .card-content>* {
	margin-top: .2rem;
	margin-bottom: 0;
}

.xmas .btn-small.invert {
	background-color: darkred;
}

.xmas .btn-small.invert:hover {
	background-color: tomato;
}

xmash .xmas h2,
.xmas h3,
.xmash {
	font-family: "Just Another Hand", "Exo 2", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 3.6rem;
	color: darkred;
}

.xmas h3 {

	font-size: 2.6rem;

}

legend {
	font-weight: 700;
}

.overlay_text {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	z-index: 1;
	display: grid;
	padding: 25px 30px;
	grid-template-columns: 1fr;
	align-items: flex-start;
	justify-content: space-between;

}

.mod_booknav {
	position: relative;
	z-index: 99;
	display: grid;
	grid-template-columns: 1fr;
	justify-content: center;
}

.rahmen {
	width: 80%;
	margin: 0 10%;
}

.legal a {
	color: white;
	text-decoration: underline;

}

.legal a:hover {
	color: aliceblue;
	text-decoration: underline;

}

.right {
	text-align: right
}

.emm h2 {
	font-size: 1.8rem;
}

.headline-small {
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #686868;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 0;
	margin-left: 10px;
}

.headline-big {
	font-weight: bolder;
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 3rem;
	color: #3F3F3F;
	margin-left: 10px;
	line-height: 0;
}

.headline-big2 {
	font-weight: 900;
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 3rem;
	color: #3F3F3F;
	margin-left: 10px;
	line-height: 0;
}

.blue {
	color: rgba(21, 75, 119, 1.00);
}

.wahl .header-image [class*="btn"] {
	/* margin-top: 4rem; */
	margin-top: 0;
}

@media (max-width: 1023px) {

	.headline-big,
	.headline-big2 {
		font-size: 2rem;
		line-height: 2;
	}
}
.h2big{
	font-size: clamp(2.8rem, 2.364rem + 2.18vw, 4rem)
}