.rs-columns {
  clear: both;
  display: inline-block;
  width: 100%;
}

.rs-column {
  float: left;
  width: 100%;
  margin-top: 7.69231%;
  margin-right: 7.69231%;
}
.rs-column.-large-first {
  clear: left;
}
.rs-column.-large-last {
  margin-right: -5px;
}
.rs-column.-large-first-row {
  margin-top: 0;
}
.rs-column.-large-col-1-1 {
  width: 100%;
}
.rs-column.-large-col-2-1 {
  width: 46.15385%;
}
.rs-column.-large-col-2-2 {
  width: 100%;
}
.rs-column.-large-col-3-1 {
  width: 28.20513%;
}
.rs-column.-large-col-3-2 {
  width: 64.10256%;
}
.rs-column.-large-col-3-3 {
  width: 100%;
}
.rs-column.-large-col-4-1 {
  width: 19.23077%;
}
.rs-column.-large-col-4-2 {
  width: 46.15385%;
}
.rs-column.-large-col-4-3 {
  width: 73.07692%;
}
.rs-column.-large-col-4-4 {
  width: 100%;
}
.rs-column.-large-col-5-1 {
  width: 13.84615%;
}
.rs-column.-large-col-5-2 {
  width: 35.38462%;
}
.rs-column.-large-col-5-3 {
  width: 56.92308%;
}
.rs-column.-large-col-5-4 {
  width: 78.46154%;
}
.rs-column.-large-col-5-5 {
  width: 100%;
}
.rs-column.-large-col-6-1 {
  width: 10.25641%;
}
.rs-column.-large-col-6-2 {
  width: 28.20513%;
}
.rs-column.-large-col-6-3 {
  width: 46.15385%;
}
.rs-column.-large-col-6-4 {
  width: 64.10256%;
}
.rs-column.-large-col-6-5 {
  width: 82.05128%;
}
.rs-column.-large-col-6-6 {
  width: 100%;
}
@media screen and (max-width: 900px) {
  .rs-column {
    margin-top: 7.69231%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-first {
    clear: none;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-medium-first {
    clear: left;
  }
  .rs-column.-medium-last {
    margin-right: -5px;
  }
  .rs-column.-medium-first-row {
    margin-top: 0;
  }
  .rs-column.-medium-col-1-1 {
    width: 100%;
  }
  .rs-column.-medium-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-2-2 {
    width: 100%;
  }
  .rs-column.-medium-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-3-3 {
    width: 100%;
  }
  .rs-column.-medium-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-medium-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-medium-col-4-4 {
    width: 100%;
  }
  .rs-column.-medium-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-medium-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-medium-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-medium-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-medium-col-5-5 {
    width: 100%;
  }
  .rs-column.-medium-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-medium-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-medium-col-6-6 {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .rs-column {
    margin-top: 7.69231%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-medium-first {
    clear: none;
  }
  .rs-column.-medium-last {
    margin-right: 7.69231%;
  }
  .rs-column.-medium-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-small-first {
    clear: left;
  }
  .rs-column.-small-last {
    margin-right: -5px;
  }
  .rs-column.-small-first-row {
    margin-top: 0;
  }
  .rs-column.-small-col-1-1 {
    width: 100%;
  }
  .rs-column.-small-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-small-col-2-2 {
    width: 100%;
  }
  .rs-column.-small-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-small-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-small-col-3-3 {
    width: 100%;
  }
  .rs-column.-small-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-small-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-small-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-small-col-4-4 {
    width: 100%;
  }
  .rs-column.-small-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-small-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-small-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-small-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-small-col-5-5 {
    width: 100%;
  }
  .rs-column.-small-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-small-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-small-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-small-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-small-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-small-col-6-6 {
    width: 100%;
  }
}

#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
/**
* html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
* Richard Clark (http://richclarkdesign.com)
* http://cssreset.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body {
line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
nav ul {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
/* change colours to suit your needs */
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
/* change colours to suit your needs */
mark {
background-color:#ff9;
color:#000;
font-style:italic;
font-weight:bold;
}
del {
text-decoration: line-through;
}
abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}
table {
border-collapse:collapse;
border-spacing:0;
}
/* change border colour to suit your needs */
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}
input, select {
vertical-align:middle;
}
html {
	overflow-x: hidden;
	font-size: 62.5%;
}

body {
	line-height: 1.5;
	color: #676972;
	font-size: 1.7rem;
    font-family: 'Roboto', sans-serif;
}

::selection { color: #fff; background: #4A90E2; }
::-moz-selection { color: #fff; background: #4A90E2; }
::-webkit-selection { color: #fff; background: #4A90E2; }

*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box
}

h1, h2, h3, h4, h5, h6 {
	color: #3E3F47;
	line-height: 1.2;
}

.home .main h1 {
	font-size: 7rem;
}

.main h1 {
	margin: 0 0 0.75em;
	font-size: 5rem;
	letter-spacing: 0.1rem;
}

.main h1::after,
.red-line::after {
	content: "";
	display: block;
	margin: 1rem 0 4rem;
	width: 8rem;
	height: 2px;
	background: #F31F19;
}

.text-center .red-line::after,
.headline-center.red-line::after {
	margin: 1rem auto 4rem;
}

.main .headline-center {
	text-align: center;
}

.main h1.headline-center::after {
	margin: 1rem auto 0;
}

.main h2 {
	margin: 1em 0 0.75em;
	font-size: 2.6rem;
	font-weight: 500;
}

.main h3 {
	margin: 0 0 0.75em;
	font-size: 2rem;
	font-weight: 500;
}

.main h4 {
	margin: 0 0 0.5em;
	font-size: 1.7rem;
}

@media only screen and (max-width: 50em) {
	
	.home .main h1 {
		font-size: 5rem;
	}
	
	.main h1 {
		font-size: 4.2rem;
	}
	
	.main h2 {
		font-size: 2.4rem;
	}
	
	.main h3 {
		font-size: 1.9rem;
	}
}

@media only screen and (max-width: 35em) {
	
	.home .main h1 {
		font-size: 4rem;
	}
	
	.main h1 {
		font-size: 3.5rem;
	}
	
	.main h2 {
		font-size: 2.2rem;
	}
	
	.main h3 {
		font-size: 1.8rem;
	}
}




p, ul, ol {
	margin: 0 0 3rem;
}

.main ul {
	list-style: inside;
}

.main ul ul {
	list-style: inside !important;
}

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

.ce_text img {
	margin: 0 0 3rem;
}

.ce_text::after {
	content: "";
	display: table;
	clear: both;
}

ol {
	list-style-position: inside;
}

a {
	-webkit-transition: all 0.35s;
	-o-transition: all 0.35s;
	transition: all 0.35s;
	color: #4A90E2;
	text-decoration: none;
}

a:hover {
	color: #F21B2B;
}

blockquote {
  background: #f8f8f8;
  border-left: 1rem solid #F31F19;
  margin: 0 0 5rem;
  padding: 3rem 5rem;
}
blockquote:before {
  color: #bbb;
  content: '"';
  font-size: 6rem;
  line-height: 0.1em;
  margin-right: 1.5rem;
  font-style: italic;
  vertical-align: -0.4em;
}
blockquote p {
  display: inline;
}
blockquote footer {
	margin: 2rem 0 0;
	text-align: right;
	font-style: italic;
}
blockquote footer::before {
	content: "- ";
}

figcaption {
	padding: 0 1rem;
	opacity: 0.7;
	font-size: 1.3rem;
}

.ce_youtube {
 position: relative;
 padding-bottom: 56.25%;
 width: 100%;
 height: auto;
}
 
.ce_youtube iframe {
 position: absolute;
 top: 0; left: 0; right: 0; bottom: 0;
 width: 100% !important;
 height: 100% !important;
}

.ce_image {
	margin: 0 0 3rem;
}

.ce_table {
	margin: 0 0 5rem;
	overflow-x: scroll;
}

table {
	overflow: auto;
	margin: 0 0 5rem;
	width: 100% !important;
}

table p {
	margin: 0;
}

.ce_table table {
	margin-bottom: 0;
}

.ce_table h1,
.ce_table h2,
.ce_table h3,
.ce_table h4 {
	margin-top: 0 !important;
}

table td,
table th {
	padding: 1.2rem;
	border-bottom: 1px solid #eee;
	font-size: 1.6rem;
	text-align: left;
	vertical-align: top;
}

table thead th {
	white-space: nowrap;
	padding: 1.7rem 1.2rem;
	color: #fff;
	font-weight: 400;
	background: #4A90E2;
}

table tbody th {
	color: #000;
	font-weight: 500;
}

table tbody tr:hover td ,
table tbody tr:hover th {
	background: #eee !important;
}

.table-red thead th {
	background: #F31F19;
}

.table-blue thead th {
	background: #0E90EA;
}

.table-grey thead th {
	background: #555;
}

.table-blank thead th {
	color: inherit;
	font-weight: 600;
	background: none;
}

table td img {
	width: 50%;
}

.table-blank td,
.table-blank th {
	border: none;
}

.table-striped tr.odd td,
.table-striped tr.odd th,
.table-striped tbody tr:nth-of-type(odd) td, 
.table-striped tbody tr:nth-of-type(odd) th{
	background: #f8f8f8;
}

.tabelle-mit-rahmen td,
.wettkampf-tabelle td  {
	border: 1px solid #222;
}

#container.two-cols {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 10rem 2rem;
	margin: 0 auto;
	max-width: 122rem;
}

#container.two-cols .main {
	max-width: none;
	margin: 0;
	padding: 2rem 3% 2rem 0;
	width: 70%;
}

#container.two-cols .sidebar {
	padding: 2rem 0 2rem 5%;
	width: 28%;
	box-shadow: -19px 0px 16px -20px rgba(0, 0, 0, 0.1);
}

.main {
	margin: 0 auto;
	padding: 10rem 3rem;
	max-width: 122rem;
}

@media only screen and (max-width: 70em) {
	
	.main {
		padding: 8rem 3rem;
	}
	
	#container.two-cols {
		padding: 6rem 2rem 3rem;
		
	}
	
	#container.two-cols .main {
		margin: 0 0 3rem;
		padding-right: 0;
		width: 100%;
	}
	
	#container.two-cols .sidebar {
		display: none;
	}
}

@media only screen and (max-width: 50em) {
	
	.main {
		padding: 6rem 2rem;
	}
}



label {
	display: block;
	margin: 0 0 0.5rem;
	font-size: 1.5rem;
}

input, textarea {
	display: block;
	width: 100%;
	padding: 1.3rem 1.5rem;
	color: #5d5d5d;
	font-size: 1.5rem;
	font-family: inherit;
	border: 1px solid transparent;
	transition: 0.35s all;
	background: #eee;
}

input.checkbox {
	display: inline;
	margin: 0 0.5rem 0 0;
	width: auto;
	padding: 0;
}

input.checkbox + label {
    position: relative;
    top: 2px;
    display: inline;
}

textarea {
	height: 13rem;
}

input:hover,
input:focus,
textarea:hover,
textarea:focus {
	border: 1px solid #0071BF;
}

button.submit {
	display: inline-block;
	margin: 0 0 5rem;
	padding: 2rem 4rem;
	width: 25rem;
	border: 0;
	color: #fff;
	font-size: 1.5rem;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 0.1rem;
	white-space: nowrap;
	cursor: pointer;
	transition: 0.35s all;
	background: #0071BF;
}

button.submit:hover {
	background: #005793;
}

.widget {
	margin: 0 0 3rem;
}

span.mandatory {
	margin: 0 0 0 0.3rem;
	color: #F31F19;
	font-weight: 600;
}
.clear::after {
	content: "";
	display: table;
	clear: both;
}

.invisible {
	position:absolute;
	left:-10000px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
}

.float_left {
	position: relative;
	float: left;
	margin: 0 3% 1rem 0;
	width: 25%;
}

.float_right {
	position: relative;
	float: right;
	margin: 0 0 1rem 3%;
	width: 25%;
}

.float_left img,
.float_right img {
	margin: 0;
}

.ce_text.text-mt--20,
.ce_hyperlink_mt--20 {
	margin-top: -2rem;
}

.text-center {
	text-align: center;
}

.image-center {
	text-align: center;
}

.mod_article.grey-box,
.ce_text.grey-box {
	margin: 5rem 0;
	padding: 5rem 4rem 2rem;
	color: #585a61;
	background: #eee;
}

.ce_headline + .ce_text.grey-box {
	margin-top: 0;
}

.mod_article.grey-box > h1,
.mod_article.grey-box > h2,
.mod_article.grey-box > h3,
.ce_text.grey-box > h1,
.ce_text.grey-box > h2,
.ce_text.grey-box > h3 {
	margin-top: 0;
}

.mod_article.grey-box > * > h1,
.mod_article.grey-box > * > h2,
.mod_article.grey-box > * > h3,
.ce_text.grey-box > * > h1,
.ce_text.grey-box > * > h2,
.ce_text.grey-box > * > h3 {
	margin-top: 0;
}

.mod_article.grey-box h1,
.mod_article.grey-box h2,
.mod_article.grey-box h3,
.mod_article.grey-box h4,
.mod_article.grey-box h5,
.mod_article.grey-box h6,
.ce_text.grey-box h1,
.ce_text.grey-box h2,
.ce_text.grey-box h3,
.ce_text.grey-box h4,
.ce_text.grey-box h5,
.ce_text.grey-box h6 {
	color: #313238;
}

@media only screen and (max-width: 800px) {
	
	.mod_article.grey-box,
	.ce_text.grey-box {
		padding: 4rem 2rem 1rem;
		font-size: 1.6rem;
	}
}

.space {
	float: left;
	width: 6.5rem;
}

.text-center {
	text-align: center;
}

.text-blue {
	color: #4A90E2;
}

.text-red {
	color: #F21B2B;
}

.uppercase {
	text-transform: uppercase;
}

@media only screen and (max-width: 600px) {
	
	.float_left,
	.float_right {
		width: 100%;
	}
}
.rs-columns {
  clear: both;
  display: inline-block;
  width: 100%;
}

.rs-column {
  float: left;
  width: 100%;
  margin-top: 3%;
  margin-right: 7.69231%;
}
.rs-column.-large-first {
  clear: left;
}
.rs-column.-large-last {
  margin-right: -5px;
}
.rs-column.-large-first-row {
  margin-top: 0;
}
.rs-column.-large-col-1-1 {
  width: 100%;
}
.rs-column.-large-col-2-1 {
  width: 46.15385%;
}
.rs-column.-large-col-2-2 {
  width: 100%;
}
.rs-column.-large-col-3-1 {
  width: 28.20513%;
}
.rs-column.-large-col-3-2 {
  width: 64.10256%;
}
.rs-column.-large-col-3-3 {
  width: 100%;
}
.rs-column.-large-col-4-1 {
  width: 19.23077%;
}
.rs-column.-large-col-4-2 {
  width: 46.15385%;
}
.rs-column.-large-col-4-3 {
  width: 73.07692%;
}
.rs-column.-large-col-4-4 {
  width: 100%;
}
.rs-column.-large-col-5-1 {
  width: 13.84615%;
}
.rs-column.-large-col-5-2 {
  width: 35.38462%;
}
.rs-column.-large-col-5-3 {
  width: 56.92308%;
}
.rs-column.-large-col-5-4 {
  width: 78.46154%;
}
.rs-column.-large-col-5-5 {
  width: 100%;
}
.rs-column.-large-col-6-1 {
  width: 10.25641%;
}
.rs-column.-large-col-6-2 {
  width: 28.20513%;
}
.rs-column.-large-col-6-3 {
  width: 46.15385%;
}
.rs-column.-large-col-6-4 {
  width: 64.10256%;
}
.rs-column.-large-col-6-5 {
  width: 82.05128%;
}
.rs-column.-large-col-6-6 {
  width: 100%;
}
@media screen and (max-width: 900px) {
  .rs-column {
    margin-top: 3%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-first {
    clear: none;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 3%;
  }
  .rs-column.-medium-first {
    clear: left;
  }
  .rs-column.-medium-last {
    margin-right: -5px;
  }
  .rs-column.-medium-first-row {
    margin-top: 0;
  }
  .rs-column.-medium-col-1-1 {
    width: 100%;
  }
  .rs-column.-medium-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-2-2 {
    width: 100%;
  }
  .rs-column.-medium-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-3-3 {
    width: 100%;
  }
  .rs-column.-medium-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-medium-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-medium-col-4-4 {
    width: 100%;
  }
  .rs-column.-medium-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-medium-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-medium-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-medium-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-medium-col-5-5 {
    width: 100%;
  }
  .rs-column.-medium-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-medium-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-medium-col-6-6 {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .rs-column {
    margin-top: 3%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 3%;
  }
  .rs-column.-medium-first {
    clear: none;
  }
  .rs-column.-medium-last {
    margin-right: 7.69231%;
  }
  .rs-column.-medium-first-row {
    margin-top: 3%;
  }
  .rs-column.-small-first {
    clear: left;
  }
  .rs-column.-small-last {
    margin-right: -5px;
  }
  .rs-column.-small-first-row {
    margin-top: 0;
  }
  .rs-column.-small-col-1-1 {
    width: 100%;
  }
  .rs-column.-small-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-small-col-2-2 {
    width: 100%;
  }
  .rs-column.-small-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-small-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-small-col-3-3 {
    width: 100%;
  }
  .rs-column.-small-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-small-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-small-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-small-col-4-4 {
    width: 100%;
  }
  .rs-column.-small-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-small-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-small-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-small-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-small-col-5-5 {
    width: 100%;
  }
  .rs-column.-small-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-small-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-small-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-small-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-small-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-small-col-6-6 {
    width: 100%;
  }
}

/***
TABLE OF CONTENTS

--- general stuff
--- navigation
--- phone number
--- pushy (mobile navigation)

***/

/* ************************************************ 
***************** general stuff  ******************
************************************************ */

.header-main {
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	padding: 0 3rem;
	height: 10rem;
	line-height: 10rem;
	background: #fff;
}

.header-main .logo {
	display: block;
	width: 6.2rem;
	height: 6.9rem;
	text-indent: -999rem;
	background: url("../../files/theme/img/logo.svg") no-repeat;
}

@media only screen and (max-width: 80em) { 
	
	.header-main {
		display: block;
	}	
	
	.header-main .logo {
		float: left;
		margin: 1.5rem 0 0;
	}
}



/* ************************************************ 
*******************  navigation  ******************
***********************************************  */

.header-main .nav-main li {
	float: left;
	position: relative;
	margin: 0 3rem;
}

.header-main .nav-main li::before {
	content: "";
	position: absolute;
	left: -3rem;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	height: 1rem;
	width: 1px;
	background: #414345;
}

.header-main .nav-main li:first-of-type::before {
	display: none;
}

.header-main .nav-main li.submenu {
	padding: 0 1rem 0 0;
}

.header-main .nav-main li.submenu::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: -0.5rem;
	margin: -2px 0 0 0.5rem;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 4px 0 4px;
	border-color: #333 transparent transparent transparent;
}

.header-main .nav-main li.mobile {
	display: none;
}

.header-main .nav-main li a,
.header-main .nav-main li strong {
	color: #333;
	font-weight: 400;
	font-size: 1.4rem;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

.header-main .nav-main li a:hover,
.header-main .nav-main li strong,
.header-main .nav-main li a.trail {
	color: #F31F19;
}

.header-main .nav-main ul ul {
	position: absolute;
	z-index: 10000;
	left: -3rem;
	top: 10rem;
	width: 25rem;
	display: none;
}

.header-main .nav-main ul li:hover > ul.level_2 {
	left: -3rem;
	display: block;
}

.header-main .nav-main ul ul li {
	float: none;
	margin: 0;
}

.header-main .nav-main ul ul li::before {
	display: none;
}

.header-main .nav-main ul ul li.submenu {
	padding: 0;
}

.header-main .nav-main ul ul li.submenu::after {
	right: 2rem;
	border-width: 4px 0 4px 4px;
	border-color: transparent transparent transparent #b6b6b6;
}

.header-main .nav-main ul ul li a,
.header-main .nav-main ul ul li strong {
	display: block;
	padding: 1.5rem 3rem;
	line-height: normal;
	border-bottom: 1px solid #444;
	text-transform: none;
	white-space: nowrap;
	letter-spacing: 0.1rem;
	color: #B6B6B6;
	background: #202125;
}

.header-main .nav-main ul ul li a:hover,
.header-main .nav-main ul ul li strong,
.header-main .nav-main ul ul li a.trail {
	border-bottom-color: #ff6c55;
	color: #fff;
	background: #F31F19;
}

.header-main .nav-main ul ul ul {
	z-index: 100000;
	left: -999rem !important;
	top: 0;
	width: 25rem;
	display: none;
}

.header-main .nav-main ul ul > li:hover ul.level_3 {
	left: 25rem !important;
	display: block;
}

.header-main .nav-main ul ul ul ul {
	left: -999rem !important;
	display: none;
}

.header-main .nav-main ul ul ul > li:hover ul.level_4 {
	left: 25rem !important;
	display: block;
}

@media only screen and (max-width: 90em) { 
	
	.header-main .nav-main li {
		margin: 0 2rem;	
	}
	
	.header-main .nav-main li::before {
		left: -2rem;
	}
	
	.header-main .nav-main li.submenu {
		padding: 0 2rem 0 0;
	}
	
	.header-main .nav-main li.submenu::after {
		right: 0;	
	}
	
	.header-main .nav-main li a,
	.header-main .nav-main li strong {
		font-size: 1.3rem;
	}
}

@media only screen and (max-width: 80em) { 
	
	.header-main .nav-main {
		display: none;
	}	
}




/* ************************************************ 
******************  phone number  *****************
***********************************************  */

.header-main .phone {
	display: inline-block;
	padding: 0 4rem 0 2.5rem;
	line-height: 4.2rem;
	height: 4.2rem;
	color: #000;
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.2rem;
	border-radius: 2rem;
	white-space: nowrap;
	background: #C5C8D8;
}

.header-main .phone::before {
	content: "";
	display: inline-block;
	position: relative;
	top: 0.4rem;
	margin: 0 1.5rem 0 0;
	width: 1.7rem;
	height: 1.7rem;
	background: url("../../files/theme/img/phone.svg") no-repeat;
}

@media only screen and (max-width: 80em) { 

	.header-main .phone {
		float: right;
		margin: 3rem 3rem 0 0;
	}	
}	
	
@media only screen and (max-width: 30em) {
	
	.header-main .phone {
		display: none;
	}	
}


/* ************************************************ 
************  pushy (mobile navigation)  **********
***********************************************  */

.menu-burger {
	display: none;
	float: right;
	margin: 4.3rem 0 0 0;
	width: 30px;
	height: 18px;
	position: relative;
	vertical-align: 3px;	
	cursor: pointer;
}

.menu-burger::after, .menu-burger::before {
    display: inline-block;
    position: absolute;
    left: 0px;
    width: 100%;
    height: 1px;
    background: #333;
    content: '';
    -moz-transition: width 0.3s;
    -o-transition: width 0.3s;
    -webkit-transition: width 0.3s;
    transition: width 0.3s;
}

.menu-burger::before {
    top: 50%;
}

.menu-burger::after {
    bottom: 0px;
    width: 60%;
}

.menu-burger:hover::after {
	bottom: 0;
	width: 100%;
}

.menu-burger-line {
    display: inline-block;
    position: absolute;
    left: 0px;
    right: 0px;
    height: 1px;
    background: #333;
    top: 0px;
    vertical-align: top;
}

.pushy {
	overflow-x: hidden;
	background: #202125 !important;
}

.pushy ul {
	margin: 0 auto;
	max-width: 45rem;
}

.pushy > ul::before {
	content: "Menü";
	display: block;
	padding: 2rem;
	font-size: 1.4rem;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	background: #444;
}

.pushy li {
	border-bottom: 1px solid #444;
}

.pushy li a,
.pushy li span {
	display: block !important;
	padding: 1.5rem 2rem !important;
	font-size: 1.6rem !important;
}

.pushy span {
	cursor: pointer;
}

.pushy li a,
.pushy li span.active,
.pushy li span.forward,
.pushy li span.trail {
	position: relative;
	display: inline;
	padding: 0;
	color: #B6B6B6;
	font-size: 1.4rem;
	font-weight: 300;
}

.pushy li a:hover,
.pushy li span.active, 
.pushy li span.forward, 
.pushy li span.trail, 
.pushy li a.trail {
	color: #fff !important;
	background: #F31F19;
}

.pushy ul ul li {
	border: 0;
}

.pushy ul ul li a,
.pushy ul ul li span.active,
.pushy ul ul li span.forward {
	padding-left: 4rem !important;
	white-space: nowrap;
	line-height: 1;
	font-size: 1.6rem;
	text-transform: none;
}

.pushy ul ul li a:hover,
.pushy ul ul li span.active, 
.pushy ul ul li span.forward, 
.pushy ul ul li span.trail, 
.pushy ul ul li a.trail {
	background: #ff6046;
}

.pushy ul ul ul li a,
.pushy ul ul ul li span.active,
.pushy ul ul ul li span.forward {
	padding-left: 6rem !important;
}

.pushy ul ul ul li a:hover,
.pushy ul ul ul li span.active, 
.pushy ul ul ul li span.forward, 
.pushy ul ul ul li span.trail, 
.pushy ul ul ul li a.trail {
	background: #444;
}

.pushy ul ul ul ul li a,
.pushy ul ul ul ul li span.active,
.pushy ul ul ul ul li span.forward {
	padding-left: 8rem !important;
}

.pushy ul ul ul ul li a:hover,
.pushy ul ul ul ul li span.active, 
.pushy ul ul ul ul li span.forward, 
.pushy ul ul ul ul li span.trail, 
.pushy ul ul ul ul li a.trail {
	background: #666;
}

.pushy-close {
	position: absolute;
	z-index: 10;
	top: 1.8rem;
	right: 1.5rem;
	display: block;
	padding: 0 !important;
	width: 3rem;
	height: 3rem;
	cursor: pointer;
	background: url("../../files/theme/img/pushy-close.svg") no-repeat;
	background-size: contain;
}

@media only screen and (max-width: 80em) {

	.header-main .menu-burger {
		display: block;
	}
}

.footer-main {
	display: flex;
	flex-wrap: wrap;
	line-height: 2.8rem;
	color: #aaa;
	font-size: 1.5rem;
	background: #1F1F1F;
}

.footer-main .col {
	padding: 3.5%;
	width: 25%;
	border-right: 1px solid #4c4c4c;
}

.footer-main h5 {
	margin: 0 0 2em;
	text-transform: uppercase;
	font-size: 1.6rem;
	color: #fff;
	font-weight: 500;
	letter-spacing: 0.1rem;
}

.footer-main a {
	color: #aaa;
}

.footer-main a:hover {
	color: #F31F19;
}

.footer-main ul li {
	list-style: none;
}

.footer-main ul li a:hover {
	padding: 0 0 0 2rem;
}

.footer-main ul li a::before {
	content: "» ";
	margin: 0 0.5rem 0 0;
	transition: 0.35s all;
}

.footer-main ul li a:hover::before {
	color: #F31F19;
}

.footer-main .ce_text + .ce_text {
	margin: 5rem 0 0;
}

.footer-main .socials {
	margin: 0 0 0 -1rem;
}

.footer-main .socials li {
	display: inline-block;
	margin: 0 1rem;
}

.footer-main .socials li a::before {
	display: none;
}

.footer-main .socials li a {
	display: block;
	width: 4rem;
	height: 4rem;
	opacity: 0.5;
	text-indent: -999rem;
	background: url("../../files/theme/img/footer-icons.svg") no-repeat 0 0;
	background-size: 14rem 4rem;
}

.footer-main .socials li a:hover {
	opacity: 1;
}

.footer-main .socials li a.tw {
	background-position: -5rem 0;
}

.footer-main .socials li a.insta {
	background-position: -10rem 0;
}

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

	.footer-main .col {
		padding: 8% 5%;
		width: 50%;
		border-bottom: 1px solid #4c4c4c;
	}	
}

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

	.footer-main .space {
		float: none;
		width: auto;
	}

	.footer-main .col {
		padding: 15% 5% 13%;
		width: 100%;
		text-align: center;
	}	
}
/***
TABLE OF CONTENTS

--- breadcrumb
--- ce_hyperlink / more-buttons
--- downloads
--- lists
--- ce_linkbox
--- sportarten teaser
--- news/events boxes
--- news list / details / pagination
--- ce_contactbox
--- lightbox / gallery module

***/


.ce_address {
	margin: 0 0 3rem;
}

.syndication {
	margin: 0 0 3rem;
}

.ce_accordion {
	margin: 0 0 2rem;
}

.ui-accordion-header {
	position: relative;
	padding: 2rem 4.5rem 2rem 2.5rem;
	cursor: pointer;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
	font-size: 1.8rem;
	color: #222;
}

.ui-accordion-content {
	padding: 2.5rem 2.5rem 0;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

.ui-accordion-header-icon {	
	position: absolute;
	top: 50%;
	right: 2rem;
	-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);transform: translateY(-50%);
	display: block;
	width: 1.2rem;
	height: 0.8rem;
	background: url("../../files/theme/img/accordeon-arrow.svg") no-repeat;
}

.ui-accordion-header-collapsed .ui-accordion-header-icon {
	-webkit-transform: translateY(-50%) rotate(180deg);-ms-transform: translateY(-50%) rotate(180deg);transform: translateY(-50%) rotate(180deg);
}


/* ************************************************ 
******************** breadcrumb  ******************
************************************************ */

body.home #breadcrumb {
	display: none;
}

#breadcrumb {
	padding: 2rem;
	font-size: 1.4rem;
	font-weight: 300;
	border-bottom: 1px solid #ddd;
	background: #eee;
}

#breadcrumb .inside {
	margin: 0 auto;
	max-width: 118rem;
	padding: 0 2rem;
}

#breadcrumb .inside::after {
	content: "";
	display: table;
	clear: both;
}

#breadcrumb .mod_breadcrumb {
	float: right;
}

#breadcrumb p {
	float: left;
	margin: 0 3rem 0 0;
}

#breadcrumb ul {
	float: left;
	margin: 0 -2rem 0 0;
}

#breadcrumb ul::after {
	content: "";
	display: table;
	clear: both;
}

#breadcrumb li {
	float: left;
	margin: 0 2rem 0 0;
	list-style: none;
}

#breadcrumb li:not(.last)::after {
	content: "";
	position: relative;
	top: -0.1rem;
	display: inline-block;
	margin: 0 0 0 2rem;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 4px;
	border-color: transparent transparent transparent #000;
}

#breadcrumb a {
	color: inherit;
}

#breadcrumb a:hover {
	color: #F31F19;
}

#breadcrumb strong {
	color: #F31F19;
}

@media only screen and (max-width: 60em) {

	#breadcrumb {
		display: none;
	}	
}



/* ************************************************ 
*********** ce_hyperlink / more-buttons  **********
************************************************ */

.ce_hyperlink a,
p.back a {
	display: inline-block;
	margin: 0 0 5rem;
	padding: 2rem 4rem;
	color: #fff;
	font-size: 1.5rem;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	white-space: nowrap;
	background: #F31F19;
}

.ce_hyperlink.full-width a {
	width: 100%;
	text-align: center;
}

.ce_hyperlink a:hover {
	background: #d10702;
}

.ce_hyperlink.blue a,
p.back a {
	background: #0E90EA;
}

.ce_hyperlink.blue a:hover,
p.back a:hover {
	background: #0278ca;
}


a.more {
	font-weight: 600;
	color: #000000;
	font-size: 1.4rem;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
}

a.more:hover {
	padding: 0 0 0 2rem;
}

a.more::before {
	content: "";
	display: inline-block;
	position: relative;
	top: 0.3rem;
	margin: 0 1rem 0 0;
	width: 2.6rem;
	height: 1.8rem;
	background: url("../../files/theme/img/more-arrow.svg") no-repeat;
}




/* ************************************************ 
******************+ downloads  ********************
************************************************ */

.ce_downloads {
	margin: 0 0 5rem;
}

.ce_downloads h3 {
	font-size: 2.2rem;
}

.ce_downloads li {
	list-style: none;
	border-bottom: 1px dotted #ccc;
}

.ce_downloads li a {
	display: block;
	padding: 1rem 2rem;
	color: inherit;
	font-size: 1.6rem;
}

.ce_downloads li a::before {
	content: "» ";
}

.ce_downloads li a:hover {
	background: #eee;
}

.ce_downloads .size {
	font-size: 1.2rem;
	font-style: italic;
}




/* ************************************************ 
******************+** lists  **********************
************************************************ */

.ce_list.icon-blue,
.ce_list.icon-red {
	margin-top: 3rem;
	margin-bottom: 5rem;
}

.ce_list.icon-blue li,
.ce_list.icon-red li {
	position: relative;
	margin: 0 0 2.5rem;
	padding: 0 0 0 4.5rem;
	list-style: none;
}

.ce_list.icon-blue li::before,
.ce_list.icon-red li::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: -0.4rem;
	width: 3rem;
	height: 3rem;
}

.ce_list.icon-blue li::before {
	background: url("../../files/theme/img/check-blue.svg") no-repeat;	
}

.ce_list.icon-red li::before {
	background: url("../../files/theme/img/check-red.svg") no-repeat;	
}

.list-arrows li {
	position: relative;
	padding: 1rem 2rem 1rem 3.2rem;
	font-size: 1.6rem;
	list-style: none;
	border-bottom: 1px dotted #ccc;
}

.list-arrows li a {
	display: block;
	color: inherit;
}

.list-arrows li::before {
	content: "» ";
	position: absolute;
	left: 2rem;
}

.list-arrows li:hover {
	background: #eee;
}



/* ************************************************ 
******************** ce_linkbox  ******************
************************************************ */

.ce_linkbox {
	margin: 0 0 -1px;
	padding: 3rem;
	border: 1px solid #DCDCDC;
	font-size: 1.6rem;
}

.ce_linkbox h3 {
	margin: 0 0 1.25em;
	color: #2D2D2D;
	font-size: 2rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
}

.ce_linkbox h3::after {
	content: "";
	display: block;
	margin: 1rem 0 0;
	width: 4rem;
	height: 2px;
	background: #F31F19;
}

.ce_linkbox p {
	margin: 0 0 2rem;
}




/* ************************************************ 
**************** sportarten teaser  ***************
************************************************ */

.sportarten {
	display: flex;
	flex-wrap: wrap;
}

.sportarten .ce_text {
	margin: 0 -1px -1px 0;
	border: 1px solid #E5E5E5;
	padding: 3.5rem 3.5rem 0;
	width: 33.3334%;
}

.sportarten h2 {
	margin: 2rem 0;
	color: #2D2D2D;
	font-size: 2rem;
}

.sportarten figure {
	height: 5rem;
	max-width: 6rem;
}

.sportarten img {
	opacity: 0.4;
	max-height: 5rem;
}

.sportarten p {
	margin: 0 0 2rem;
	line-height: 2.4rem;
	font-size: 1.5rem;
}

.sportarten p:first-of-type {
	display: none;
}

.sportarten a {
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
}

.sportarten a:hover {
	padding: 0 0 0 2rem;
}

.sportarten a::before {
	content: "» ";
}

@media only screen and (max-width: 60em) { 
	
	.sportarten .ce_text {
		width: 50%;	
	}
}

@media only screen and (max-width: 40em) { 
	
	.sportarten .ce_text {
		width: 100%;	
	}
}
	



/* ************************************************ 
*************  news/events boxes  *****************
************************************************ */

.news-event-box {
	position: relative;
	left: 50%;
	right: 50%;
	margin: 0 -50vw;
	width: 100vw;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #C9C9C9;
	border-bottom: 1px solid #C9C9C9;
	background: #F9F9F9;
}

body.home .news-event-box {
	margin-top: -10rem;
	margin-bottom: 10rem;
}

@media only screen and (max-width: 1450px) {
	
	body.home .news-event-box {
		top: -10rem;
		margin-bottom: 0;
	}
}

.news-event-box .header {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	margin: 0 0 4rem;
}

.news-event-box a.more:hover {
	padding: 0 2rem 0 0;
}

.news-event-box .news-box,
.news-event-box .event-box {
	padding: 5rem;
	width: 50%;
}

.news-event-box .news-box {
	border-right: 1px solid #C9C9C9;
}

.news-event-box .mod_newslist,
.news-event-box .mod_eventlist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.news-event-box .entry {
	position: relative;
	padding-bottom: 6rem;
	width: 48.5%;
	border: 1px solid #DCDCDC;
	border-bottom: 5px solid #DCDCDC;
	background: #fff;
}

.news-event-box h4 {
	margin: 0 2rem 0 0;
	color: #3E3F47;
	font-size: 4rem;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

.news-event-box .image-wrapper {
	position: relative;
	display: block;
	overflow: hidden;
	padding-bottom: 65%;
	height: 0;
}

.news-event-box a.image-wrapper::before {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: 0.35s all;
	background: #F31F19;
}

.news-event-box a.image-wrapper:hover::before {
	opacity: 0.8;
}

.news-event-box a.image-wrapper::after {
	content: "";
	position: absolute;
	z-index: 10;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-100%);
	display: block;
	width: 4rem;
	height: 4rem;
	opacity: 0;
	transition: 0.35s all;
	background: url("../../files/theme/img/plus-icon.svg") no-repeat;
}

.news-event-box a.image-wrapper:hover::after {
	opacity: 1;
	transform: translate(-50%,-50%);
}

.news-event-box img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	display: block;
	max-width: none;
}

.news-event-box img.breitkant {
	max-height: 120%;
	width: auto;
}

.news-event-box img.hochkant {
	width: 120%;
	height: auto;
}

.news-event-box .category {
	font-size: 1.2rem;
	color: #242424;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

.news-event-box .category::before {
	content: "";
	display: inline-block;
	position: relative;
	top: -0.2rem;
	margin: 0 1rem 0 0;
	width: 2.5rem;
	height: 0.5rem;
	background: #F31F19;	
}

.news-event-box h5 {
	margin: 2rem 0;
	line-height: 1.3;
	color: #000;
	font-size: 1.8rem;
}

.news-event-box .content {
	padding: 2rem;
	line-height: 2.6rem;
	font-size: 1.5rem;
	color: #242424;
}

.news-event-box .content p:last-of-type::after {
	content: "...";
}

.news-event-box .footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #DCDCDC;
}

.news-event-box .footer .time {
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	width: 50%;
	height: 8rem;
	color: #535353;
	font-size: 1.3rem;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
}

.news-event-box .footer .btn {
	width: 50%;
	height: 8rem;
	line-height: 8rem;
	color: #000;
	font-size: 1.5rem;
	font-weight: 500;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	background: #E6E6E6;
}

.news-event-box .footer .btn:hover {
	color: #fff;
	background: #F31F19;
}

@media only screen and (max-width: 1300px) {
	
	.news-event-box .news-box,
	.news-event-box .event-box {
		width: 100%;
	}
}

@media only screen and (max-width: 700px) {
	
	.news-event-box .news-box,
	.news-event-box .event-box {
		padding: 5rem 3rem;
	}
	
	.news-event-box .event-box {
		padding-top: 0;
	}
	
	.news-event-box .entry {
		margin: 0 0 3rem;
		width: 100%;
	}
}
	
@media only screen and (max-width: 500px) {
	
	.news-event-box .footer .time {
		font-size: 12px;
		letter-spacing: 0;	
	}
}




/* ************************************************ 
******** news list / details / pagination  ********
************************************************ */

.news-list,
.event-list {
	margin: 0 0 6rem;
}

.news-list .content,
.event-list .content {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.news-list h3,
.event-list h3 {
	margin: -1.5rem 0 1.25em;
}

.event-list .meta {
	margin: -1.5rem 0 3rem;
}

.news-list time {
	display: block;
	margin: -1.5rem 0 0;
	opacity: 0.6;
	font-size: 1.6rem;
}

.event-list time,
.event-list .location {
	display: inline;
	opacity: 0.6;
	font-size: 1.6rem;
}

.event-list .location {
	margin: 0 0 0 3rem;
}

.news-list time::before,
.event-list time::before {
	content: "";
	display: inline-block;
	margin: 0 0.6rem 0 0;
	width: 1.2rem;
	height: 1.2rem;
	opacity: 0.6;
	background: url("../../files/theme/img/calendar.svg") no-repeat;
}

.event-list .location::before {
	content: "";
	display: inline-block;
	margin: 0 0.1rem 0 0;
	position: relative;
	top: 1px;
	width: 1.1rem;
	height: 1.4rem;
	opacity: 0.6;
	background: url("../../files/theme/img/event-marker.svg") no-repeat;
}

.news-list .content,
.event-list .content {
	margin: 2rem 0 1rem;
}

.news-list .ce_text,
.event-list .ce_text {
	width: 60%;
}

.news-list .image-wrapper,
.event-list .image-wrapper {
	overflow: hidden;
	position: relative;
	width: 35%;
	padding-bottom: 23%;
	height: 0;
}

.news-list .image-wrapper img,
.event-list .image-wrapper img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	display: block;
}

.news-list .ce_hyperlink a,
.event-list .ce_hyperlink a {
	padding-left: 6rem;
	padding-right: 6rem;
}

.news-list a.image-wrapper::before,
.event-list a.image-wrapper::before {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: 0.35s all;
	background: #F31F19;
}

.news-list a.image-wrapper:hover::before,
.event-list a.image-wrapper:hover::before {
	opacity: 0.8;
}

.news-list a.image-wrapper::after,
.event-list a.image-wrapper::after {
	content: "";
	position: absolute;
	z-index: 10;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-100%);
	display: block;
	width: 4rem;
	height: 4rem;
	opacity: 0;
	transition: 0.35s all;
	background: url("../../files/theme/img/plus-icon.svg") no-repeat;
}

.news-list a.image-wrapper:hover::after,
.event-list a.image-wrapper:hover::after {
	opacity: 1;
	transform: translate(-50%,-50%);
}

.news-list .ce_hyperlink a,
.event-list .ce_hyperlink a {
	margin: 0;
}

@media only screen and (max-width: 40em) {
	
	.news-list .ce_text,
	.event-list .ce_text {
		width: 100%;
	}
	
	.news-list .image-wrapper,
	.event-list .image-wrapper {
		height: auto;
		padding: 0;
		width: 100%;
	}
	
	.news-list .image-wrapper img,
	.event-list .image-wrapper img {
		position: static;
		transform: none;
		width: 100%;
	}
	
	.news-list .ce_hyperlink a,
	.event-list .ce_hyperlink a {
		width: 100%;
		text-align: center;
	}
}

.news-detail time {
	display: block;
	margin: 0 0 1rem;
	opacity: 0.6;
	font-size: 1.6rem;
}

.event-detail time,
.event-detail .location {
	display: inline;
	margin: 0 0 1rem;
	opacity: 0.6;
	font-size: 1.6rem;
}

.event-detail .location {
	margin: 0 0 0 3rem;
}

.news-detail time::before {
	content: "";
	display: inline-block;
	margin: 0 0.6rem 0 0;
	width: 1.2rem;
	height: 1.2rem;
	opacity: 0.6;
	background: url("../../files/theme/img/calendar.svg") no-repeat;
}

.event-detail time::before {
	content: "";
	display: inline-block;
	margin: 0 0.3rem 0 0;
	width: 1.2rem;
	height: 1.2rem;
	opacity: 0.6;
	background: url("../../files/theme/img/calendar.svg") no-repeat;
}

.event-detail .location::before {
	content: "";
	display: inline-block;
	margin: 0 0.1rem 0 0;
	position: relative;
	top: 1px;
	width: 1.1rem;
	height: 1.4rem;
	opacity: 0.6;
	background: url("../../files/theme/img/event-marker.svg") no-repeat;
}

.news-detail figure.image_container,
.event-detail figure.image_container {
	margin: 0 0 3rem;
}

.pagination {
	margin: -2rem 0 0;
	padding: 3rem 0 0;
	border-top: 1px dotted #ccc;
}

.pagination p {
  float: left;
  margin: 1.5rem 6rem 1rem 0;
  font-size: 1.6rem; 
}

.pagination ul {
  float: left; 
}

.pagination li {
  float: left;
  margin: 0 0.5rem 0.5rem 0;
  list-style: none; 
}

.pagination li a, 
.pagination li strong {
    display: inline-block;
    padding: 1.5rem 2.2rem;
    color: inherit;
    font-size: 1.6rem;
    background: #f1f1f1; 
}

.pagination li a:hover, 
.pagination li strong {
    color: #fff;
    background: #0E90EA; 
}

.enclosure {
	padding: 3rem 0;
}

.enclosure h4 {
	margin: 0 0 2rem;
}

.enclosure ul {
	margin: 0 0 2rem;
	border-top: 1px solid #ddd;
}

.enclosure li {
	border-bottom: 1px solid #ddd;
	list-style: none;
}

.enclosure li a {
	display: block;
	padding: 1.5rem;
	font-size: 1.5rem;
	color: inherit;
}

.enclosure li a:hover {
	background: #eee;
}




/* ************************************************ 
***************  ce_contactbox  *******************
************************************************ */

.ce_contactbox {
	position: relative;
	left: 50%;
	right: 50%;
	margin: 0 -50vw 5rem;
	width: 100vw;
	color: #595959;
	font-size: 1.6rem;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #e8f1f7;
}

.ce_contactbox .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	padding: 6rem 3rem;
	max-width: 124rem;
}

.ce_contactbox .left {
	width: 70%;
}

.ce_contactbox.w50 .left {
	width: 50%;
}

.ce_contactbox.w50 .left p {
	margin: 0;
	width: 100%;
}

.ce_contactbox h2 {
	margin: 0 0 1em;
	color: #000;
	font-weight: 500;
	font-size: 1.8rem;
}

.ce_contactbox p + h2,
.ce_contactbox .clear + h2 {
	margin-top: 4rem;
}

.ce_contactbox h2::after {
	content: "";
	display: block;
	margin: 0.7rem 0 0;
	width: 3rem;
	height: 1px;
	background: #F31F19;
}

.ce_contactbox a {
	color: #595959;
}

.ce_contactbox a:hover {
	color: #fff;
}

.ce_contactbox .space {
	width: 8rem;
}

.ce_contactbox .left p {
	float: left;
	margin: 0 2% 0 0;
	width: 32%;
}

.ce_contactbox .left p:nth-of-type(3) {
	margin: 0;
}

.ce_contactbox .right {
	padding: 0 0 0 5%;
	width: 30%;
	border-left: 1px dotted #595959;
}

.ce_contactbox.w50 .right {
	width: 50%;
}

@media only screen and (max-width: 60em) {
	
	.ce_contactbox .left {
		margin: 0 0 4rem;
		width: 100% !important;
	}
	
	.ce_contactbox .right {
		padding: 0;
		width: 100% !important;
		border: none;
	}
}

@media only screen and (max-width: 48em) {
	
	.ce_contactbox .left p {
		float: none;
		margin: 0 0 2.5rem;
		width: 100%;
	}
}





/* ************************************************ 
**********  lightbox / gallery module  ************
************************************************ */

.ce_image a.cboxElement,
.ce_image a[href$="pdf"] {
	position: relative;
	display: inline-block;
}

.ce_image a[href$="pdf"] img {
	display: block;
}

a.cboxElement {
	display: block;
}

.ce_image a.cboxElement img {
	display: block;
}

a.cboxElement::after,
.ce_image a[href$="pdf"]::after,
.ce_gallery a[href$="pdf"]::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: 0.35s all;-o-transition: 0.35s all;transition: 0.35s all;
	opacity: 0;
	background: #F31F19;
}

a.cboxElement::before {
	content: "";
	display: block;
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-100%);-ms-transform: translate(-50%,-100%);transform: translate(-50%,-100%);
	width: 4rem;
	height: 4rem;
	-webkit-transition: 0.35s all;-o-transition: 0.35s all;transition: 0.35s all;
	opacity: 0;
	background: url("../../files/theme/img/lightbox-zoom.svg") no-repeat;
}

a[href$="pdf"]::before,
.ce_image a[href$="pdf"]::before,
.ce_gallery a[href$="pdf"]::before {
	content: "";
	display: block;
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-100%);-ms-transform: translate(-50%,-100%);transform: translate(-50%,-100%);
	width: 4rem;
	height: 4.6rem;
	-webkit-transition: 0.35s all;-o-transition: 0.35s all;transition: 0.35s all;
	opacity: 0;
	background: url("../../files/theme/img/pdf.svg") no-repeat;
}

a.cboxElement:hover::after,
.ce_image a[href$="pdf"]:hover::after,
.ce_gallery a[href$="pdf"]:hover::after {
	opacity: 0.9;
}

a.cboxElement:hover::before,
.ce_image a[href$="pdf"]:hover::before,
.ce_gallery a[href$="pdf"]:hover::before {
	opacity: 1;
	-webkit-transform: translate(-50%,-50%);-ms-transform: translate(-50%,-50%);transform: translate(-50%,-50%);
}

.ce_gallery ul::after {
	content: "";
	display: table;
	clear: both;
}

.ce_gallery li {
	float: left;
	position: relative;
	margin: 0 2% 2% 0;
	width: 32%;
	height: 0;
	padding-bottom: 30%;
	list-style: none;
	overflow: hidden;
}

.ce_gallery li:nth-of-type(3n) {
	margin: 0;
}

.ce_gallery .cols_1 li {
	margin: 0 0 4% 0;
	width: 100%;
	padding-bottom: 100%;
}

.ce_gallery .cols_2 li {
	margin: 0 4% 4% 0;
	width: 48%;
	padding-bottom: 48%;
}

.ce_gallery .cols_2 li:nth-of-type(even) {
	margin-right: 0;	
}

.ce_gallery .cols_2 li:nth-of-type(2n + 1) {
	clear: left;
}

.ce_gallery .cols_4 li {
	width: 23.5%;
	padding-bottom: 23.5%;
}

.ce_gallery .cols_4 li:nth-of-type(3n) {
	margin-right: 2%;	
}

.ce_gallery .cols_4 li:nth-of-type(4n) {
	margin-right: 0;	
}

.ce_gallery .cols_4 li:nth-of-type(4n + 1) {
	clear: left;
}

.ce_gallery img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 180%;
	max-width: none;
}

.ce_gallery .hochkant img {
	width: 100%;
}

.ce_gallery figcaption {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	padding: 1rem 2rem;
	width: 100%;
	color: #fff;
	text-align: center;
	pointer-events: none;
	background: rgba(0,0,0,0.7);
}

@media only screen and (max-width: 48em) {
	
	a.cboxElement::before {
		width: 2.5rem;
		height: 2.5rem;
		background: url("../../files/theme/img/lightbox-zoom.svg") no-repeat;
	}
	
	.ce_gallery li {
		margin-right: 4% !important;
		margin-bottom: 4% !important;
		width: 48% !important;
		padding-bottom: 48% !important;
	}
	
	.ce_gallery li:nth-of-type(even) {
		margin-right: 0 !important;
	}
	
}

.sidebar .ce_address {
	padding: 0 2rem 2rem;
	line-height: 2.4rem;
	font-size: 1.5rem;
	color: #676972;
	background: #F3F3F3;
}

.sidebar .ce_address .headline {
	margin: 0 -2rem 2rem;
	padding: 1.5rem 2rem;
	border-bottom: 1px solid #fff;
}

.sidebar .ce_address .headline * {
	font-size: 2rem;
	color: #3E3F47;
	font-weight: 500;
	letter-spacing: 0.1rem;
}

.sidebar .ce_address a {
	color: #676972;
}

.sidebar .ce_address a:hover {
	color: #0071BF;
}



.sidebar .sidebar-nav {
	margin: 0 0 6rem;
}

.sidebar .sidebar-nav h5 {
	padding: 1.5rem 2rem;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 0.1rem;
	background: #0071BF;
}

.sidebar .sidebar-nav li a,
.sidebar .sidebar-nav li strong {
	display: block;
	padding: 1.1rem 2rem;
	border-bottom: 1px solid #DDD;
	font-size: 1.6rem;
	color: #565656;
}

.sidebar .sidebar-nav li strong.forward {
	font-weight: 700;
	background: none;
}

.sidebar .sidebar-nav li a:hover,
.sidebar .sidebar-nav li strong,
.sidebar .sidebar-nav li a.trail,
.sidebar .sidebar-nav li.forward a,
.sidebar .sidebar-nav li.forward strong {
	color: #222;
	background: #e8e8e8;
}

.sidebar .sidebar-nav ul ul {
	margin: 0;
}

.sidebar .sidebar-nav ul ul li a,
.sidebar .sidebar-nav ul ul li strong {
	padding-left: 5rem;
	font-size: 1.5rem;
}

.sidebar .sidebar-nav ul ul li a:hover,
.sidebar .sidebar-nav ul ul li strong,
.sidebar .sidebar-nav ul ul li a.trail {
	background: #f6f6f6;
}

.sidebar .sidebar-nav ul ul ul li a,
.sidebar .sidebar-nav ul ul ul li strong {
	padding-left: 8rem;
	font-size: 1.4rem;
}

.sidebar .sidebar-nav ul ul ul ul li a,
.sidebar .sidebar-nav ul ul ul ul li strong {
	padding-left: 11rem;
}
/***
TABLE OF CONTENTS

--- homeslider

***/

/* ************************************************
******************* homeslider ********************
************************************************ */

.carousel img {
	max-width: none;
	height: 80rem !important;
}

.homeslider {
	position: relative;
	left: 50%;
	right: 50%;
	margin: -10rem -50vw 10rem;
	width: 100vw;
}

.homeslider::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	pointer-events: none;
	background: rgba(0,0,0,0.2);
}

.homeslider .flickity-page-dots {
	display: none;
}

.homeslider .flickity-button {
	display: none;
	z-index: 1000;
	border-radius: 0;
	width: 6rem;
	height: 6rem;
	color: #fff;
	transition: 0.35s all;
	background: rgba(0,0,0,0.6);
}

.homeslider .flickity-button:hover {
	background: #000;
}

.homeslider .flickity-prev-next-button.previous {
	left: 8px;
}

.homeslider .flickity-prev-next-button.next {
	right: 8px;
}

.homeslider .flickity-prev-next-button .flickity-button-icon {
	top: 30%;
	left: 30%;
	width: 40%;
	height: 40%;
}

.homeslider .text-wrapper {
	position: absolute;
	top: 25rem;
	left: 50%;
	z-index: 1000;
	transform: translateX(-50%);
	width: 100%;
	max-width: 80%;
	text-align: center;
}

.homeslider h1 {
	margin: 0 0 0.3em;
	color: #fff;
	font-size: 7vw !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.7rem;
}

.homeslider h1::after {
	display: none;
}

.homeslider .ce_hyperlink {
	display: inline;
	margin: 0 1rem;
}

.homeslider .ce_hyperlink a {
	display: inline-block;
	padding: 1.8rem 4rem;
	border-radius: 3rem;
	color: #fff;
	font-size: 1.5rem;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

.homeslider h2 {
	float: left;
	margin: 0 5rem 0 0;
	width: 30rem;
	height: 12rem;
	line-height: 12rem;
	color: #fff;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	background: #0E90EA;
}

.homeslider .ce_bxslider {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100;
	padding: 0 2rem;
	width: 144rem;
}

.homeslider .bx-wrapper {
	float: left;
	border: 0;
	padding: 0;
	width: 100rem;
}

.homeslider .ce_bxslider figure a {
	position: absolute;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.homeslider .ce_bxslider figure {
	position: relative;
	height: 12rem;
	border-bottom: 6px solid #d8d8d8;
	border-right: 1px solid #e8e8e8;
	text-align: center;
}

.homeslider .ce_bxslider figure img {
	max-height: 5rem;
}

.homeslider .ce_bxslider figcaption {
	position: absolute;
	bottom: 1rem;
	left: 0;
	width: 100%;
	color: #444;
	font-size: 1.4rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	transition: 0.35s all;
}

.homeslider .ce_bxslider figure a:hover + figcaption {
	color: #F31F19;
}

.homeslider .ce_bxslider img {
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translate(-50%,-30%);
}

.homeslider .bx-wrapper .bx-controls-direction a {
	top: 0;
	margin: 0;
	width: 5rem;
	height: 12rem;
}

.homeslider .bx-wrapper .bx-controls-direction a:hover {
	background-color: #C7C7C7;
}

.homeslider .bx-wrapper .bx-prev {
	left: -5rem;
	background: url("../../files/theme/img/slider-prev.svg") center center no-repeat #d8d8d8;
}

.homeslider .bx-wrapper .bx-next {
	right: -5rem;
	background: url("../../files/theme/img/slider-next.svg") center center no-repeat #d8d8d8;
}

@media only screen and (max-width: 1450px) {
	
	.carousel img {
		max-width: none;
		height: 60rem !important;
	}
	
	.homeslider .ce_bxslider {
		position: static;
		transform: none;
		margin: 0;
		padding: 0;
		width: 100%;
	}
	
	.homeslider .bx-wrapper {
		margin: 0 0 10rem 5.7rem;
		width: calc(100% - 11.5rem);
	}
	
	.homeslider .text-wrapper {
		top: 40%;
		transform: translate(-50%, -40%);
	}
	
	.homeslider h2 {
		position: relative;
		z-index: 1000;
		float: none;
		margin: 0;
		padding: 3rem 2rem;
		width: auto;
		height: auto;
		line-height: normal;
	}
}

@media only screen and (max-width: 800px) {
	
	.carousel img {
		max-width: none;
		height: 50rem !important;
	}

	.homeslider .ce_hyperlink a {
		padding: 1.5rem 3rem;
		font-size: 1.4rem;
		letter-spacing: 0.1rem;
	}
}

@media only screen and (max-width: 500px) {
	
	.carousel img {
		max-width: none;
		height: 40rem !important;
	}
	
	.homeslider h2 {
		padding: 2rem;
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 70em) {
	
	.homeslider {
		margin-top: -8rem;
	}
}

@media only screen and (max-width: 50em) {
	
	.homeslider {
		margin-top: -6rem;
	}
	
	.homeslider h1 {
		margin: 0 0 0.8em;
	}
}

@media only screen and (max-width: 40em) {

	.homeslider .ce_hyperlink a {
		margin: 0 0 1.5rem;
		width: calc(100% - 10rem);
		font-size: 3vw;
	}
}
/*! Pushy - v1.3.0 - 2019-6-25
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
.pushy {
  position: fixed;
  width: 350px;
  height: 100%;
  top: 0;
  z-index: 9999;
  background: #191918;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* enables momentum scrolling in iOS overflow elements */
}
.pushy a {
  display: block;
  color: #b3b3b1;
  padding: 15px 30px;
  text-decoration: none;
}
.pushy a:hover {
  color: #FFF;
}
.pushy ul:first-child {
  margin-top: 10px;
}
.pushy.pushy-left {
  left: 0;
}
.pushy.pushy-right {
  right: 0;
}

.pushy-content {
  visibility: hidden;
}

/* Menu Movement */
.pushy-left {
  -webkit-transform: translate3d(-350px, 0, 0);
  -ms-transform: translate3d(-350px, 0, 0);
  transform: translate3d(-350px, 0, 0);
}

.pushy-open-left #container,
.pushy-open-left .push {
  -webkit-transform: translate3d(350px, 0, 0);
  -ms-transform: translate3d(350px, 0, 0);
  transform: translate3d(350px, 0, 0);
}

.pushy-right {
  -webkit-transform: translate3d(350px, 0, 0);
  -ms-transform: translate3d(350px, 0, 0);
  transform: translate3d(350px, 0, 0);
}

.pushy-open-right #container,
.pushy-open-right .push {
  -webkit-transform: translate3d(-350px, 0, 0);
  -ms-transform: translate3d(-350px, 0, 0);
  transform: translate3d(-350px, 0, 0);
}

.pushy-open-left .pushy,
.pushy-open-right .pushy {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.pushy-open-left .pushy-content,
.pushy-open-right .pushy-content {
  visibility: visible;
}

/* Menu Transitions */
#container,
.pushy,
.push {
  transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
}

.pushy-content {
  transition: visibility 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
}

/* Site Overlay */
.site-overlay {
  display: none;
}

.pushy-open-left .site-overlay,
.pushy-open-right .site-overlay {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9998;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-animation: fade 500ms;
  animation: fade 500ms;
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* Submenu Appearance */
.pushy-submenu {
  /* Submenu Buttons */
  /* Submenu Icon */
}
.pushy-submenu > ul {
  transition: max-height 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.pushy-submenu > ul .pushy-link {
  transition: opacity 0.2s ease-in-out;
}
.pushy-submenu button {
  width: 100%;
  color: #b3b3b1;
  padding: 15px 30px;
  text-align: left;
  background: transparent;
  border: 0;
}
.pushy-submenu button:hover {
  color: #FFF;
}
.pushy-submenu > a,
.pushy-submenu > button {
  position: relative;
}
.pushy-submenu > a::after,
.pushy-submenu > span::after,
.pushy-submenu > button::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	transition: transform 0.2s;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 4px 0 4px;
	border-color: #fff transparent transparent transparent;
}

/* Submenu Movement */
.pushy-submenu-closed > ul {
  max-height: 0;
  overflow: hidden;
  visibility: hidden;
}
.pushy-submenu-closed .pushy-link {
  opacity: 0;
}

.pushy-submenu-open {
  /* Submenu Icon */
}
.pushy-submenu-open > ul {
  max-height: 2000px;
  visibility: visible;
}
.pushy-submenu-open .pushy-link {
  opacity: 1;
}
.pushy-submenu-open > a::after,
.pushy-submenu-open > button::after {
  -webkit-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}

/*# sourceMappingURL=pushy.css.map */

/* 1. Auf dem Desktop (ab 992px) den Burger-Button komplett verstecken */
@media screen and (min-width: 992px) {
    .menu-burger, .menu-btn {
        display: none !important;
    }
}

/* 2. Auf dem Handy (bis 991px) das Desktop-Menü verstecken */
@media screen and (max-width: 991px) {
    .header-main .nav-main:not(.pushy) {
        display: none !important;
    }
    .menu-burger, .menu-btn {
        display: flex !important;
        align-items: center;
        width: 30px;
        height: 24px;
        cursor: pointer;
        z-index: 9999;
        margin-top: 5px;
    }
}

/* 3. Die drei Striche des Burgers sauber zeichnen */
.menu-burger-line {
    display: block;
    width: 100%;
    height: 3px;
    background-color: #333 !important;
    position: relative;
}
.menu-burger-line::before,
.menu-burger-line::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background-color: #333 !important;
    left: 0;
}
.menu-burger-line::before { top: -8px; }
.menu-burger-line::after { top: 8px; }

/* 4. Menüeinträge im Off-Canvas sichtbar schalten */
.pushy-open-left li,
.pushy-open-right li {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
}
