
/* latin */
@font-face {
  font-family: 'Courier Prime';
  font-style: normal;
  font-weight: 400;
	src: local('Courier Prime'), local('Courier Prime Regular'), local('CourierPrime-Regular'), url(../Font/CourierPrime.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Courier Prime';
  font-style: normal;
  font-weight: 700;
	src: local('Courier Prime'), local('Courier Prime Bold'), local('CourierPrime-Bold'), url(../Font/CourierPrimeBold.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'League Spartan';
  font-style: normal;
	src: url(../Font/LeagueSpartan.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Farben:
	Schwarz: 	#282828;
	Orange:		#ea6031;
	Beige:		#f4f1ec;
	Blau:			#2981b7;
	Rosé:			#faceb3;
	Rosé f. Links:	#f28364;
*/
/* Breakpoints:
	Small 								sm 		≥ 576px		36em
	Medium 								md 		≥ 768px		48em
	Large 								lg 		≥ 992px		62em
	Extra large 					xl 		≥ 1200px	75em
	Extra extra large 		xxl 	≥ 1400px	87.5em
												xxxl	≥ 1900px	118.75em
												xxxxl	≥ 2080px	130em
*/

body {
	font-family: 'League Spartan', sans-serif;
	font-weight: 400;
	font-size:130%;
	line-height:1.5;
	background-color:#f4f1ec;
}
h1, h2 {
	font-family: 'League Spartan', sans-serif;
	font-weight: 800;
	line-height:1.5;
}
.display-1 h1 {
	text-transform:uppercase;
	color:#2981b7;
	font-weight: 800 !important;
	font-size: calc(1.625rem + 4.5vw);
}
h2 {
	color:#282828;
	font-size: calc(1.375rem + 1.5vw);
}
h3, h4 {
	font-family: 'League Spartan', sans-serif;
	font-weight: 600;
	line-height:1.5;
	color:#ea6031;
	margin-bottom: 1rem;
}
h5, h6 {
	font-family: 'League Spartan', sans-serif;
	font-weight: 600;
	font-size:1.5rem;
	line-height:1.5;
	margin-bottom: 1rem;
}

#content b, #content strong {
	font-family: 'League Spartan', sans-serif;
	font-weight: 600;
}

#personen {
	color:#fff;
	background-color:#282828;
	padding-left:0;
	padding-bottom:2em;
}
#personen .row{
	color:#fff;
	background-color:#282828;
	padding-left:4vw;
}
#personen h2 {
	padding-top:2em;
	padding-left:4vw;
	color:#fff;
	background-color:#282828;
	text-align:center;
}

#personen::before {
  display:block;
	width: 100%;
  height: 0.75rem;
  background-image: linear-gradient(to bottom right, #f4f1ec 49%, #282828 53%);
	content:' ';
}

#header{
  overflow: hidden;
  margin-top: -11rem;
}
#header-bild {
	height: 100vh;
  width: 100vw;
  overflow: hidden;
}
#header-bild img {
	max-height: 100vh;
  width: auto;
  overflow: hidden;
}

#header .teaser {
	position:absolute;
	top:200px;
	background-color:#f4f1ec;
	rotate: -2deg;
}
#header .teaser-content {
	rotate: 2deg;
	padding-top:1rem;
}
#header .teaser-content img {
	max-width:90vw;
}
#header .teaser-content p {
	padding-left:.85rem;
}
#header .teaser-content .btn {
	margin-left:.85rem;
}


#content .row {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
#aktuelles .row {
	background-color:#fff;
	padding-top: 4rem;
	padding-bottom: 4rem;
}
#content img {
	max-width: 100%;
	height: auto;
}


.video-embed video {
	max-width:100%;
	height:auto;
	aspect-ratio: 16 / 9;
}
#aktuelles .ce-gallery img {
	display: block;
	max-width: 100%;
	height: auto;
}
#aktuelles a,
#content a {
	color:#282828 !important;
	background-image: linear-gradient(to right,transparent 4%,#faceb3 4%,#faceb3 100%,transparent 100%);
	background-size: 100% .5em;
	background-position: left bottom;
	padding-bottom: .125em;
	background-repeat: no-repeat;
	text-decoration:none;
}
#aktuelles a:focus,
#aktuelles a:hover,
#aktuelles a:active,
#content a:focus,
#content a:hover,
#content a:active {
	color:#000 !important;
	background-image: linear-gradient(to right,transparent 4%,#f28364 4%,#f28364 100%,transparent 100%);
}
.btn-mor {
	color: #282828;
	background-color: #faceb3;
	border:none;
	border-radius:0;
	font-family: 'Courier Prime', monospace;
	font-weight: 700;
	font-size:1.25rem;
	padding:1rem 2rem;
}
.btn-mor:focus,
.btn-mor:hover,
.btn-mor:active {
	color: #282828 !important;
	background-color: #fff !important;
}
.btn-mor a {
	text-decoration:none;
	color: #282828 !important;
}
.btn-mor a:focus,
.btn-mor a:hover,
.btn-mor a:active {
	color:#000 !important;
}

#content a.btn-mor {
	color: #282828;
	background-color: #faceb3;
	background-image: none;

	border:none;
	border-radius:0;
	font-family: 'Courier Prime', monospace;
	font-weight: 700;
	font-size:1.25rem;
	padding:1rem 2rem;
}
#content a.btn-mor:focus,
#content a.btn-mor:hover,
#content a.btn-mor:active {
	color: #282828 !important;
	background-color: #fff !important;
	background-image: none;
}

.ce-gallery figcaption {
	font-family: 'Courier Prime', monospace;
	font-size:1.125rem;
	font-weight: 400;
	margin-bottom:30px;
}
.ce-gallery.ce-border .ce-column {
	max-width:45%;
}
.frame-space-before-extra-large {
	margin-top: 0;
}

.header .heading {
	margin-top: 2rem;
}
.header .heading h2 {
	margin-bottom: 5rem;
}
#sponsoring {
	color:#fff;
	background-color: #ea6031;
}
#sponsoring .row {
	padding:2rem 1rem 0 1.375rem;
}
#sponsoring .btn {
	margin-bottom:3.5rem;
}
#sponsoring h2, #sponsoring h3, #sponsoring h4 {
	color:#fff;
}
#sponsoring h2 {
	margin-top:-.4em;
}
#sponsoring h3, #sponsoring h4 {
	margin-top:-.2em;
}
#sponsoring h3, #sponsoring h4 {
	font-family: 'League Spartan', sans-serif;
	font-weight: 800;
	font-size: 1.75rem;
}
#footer {
	color:#fff;
	background-color:#282828;
	padding-left: 0;
}
#footer::before {
  display:block;
	width: 100%;
  height: 0.75rem;
  background-image: linear-gradient(to bottom right, #ea6031 49%, #282828 53%);
	content:' ';
}
#footer .row {
	padding:3rem 0 2rem 2.125rem;
}
#footer .logo img {
	width:110px;
}
#footer ul.sitemap {
	padding-left:0;
	list-style:none;
}
#footer ul.sitemap li {
	padding-bottom: .75em;
}

#footer ul.sitemap li .nav-link {
	font-size:1.125rem;
}
#footer h3,
#footer h4 {
	font-size:1.75rem;
	margin:4rem 0 2rem 0;
}
#footer p {
	font-family: 'Courier Prime', monospace;
	font-size:1.125rem;
	font-weight: 400;
}

#footer p b, #footer p strong {
	font-family: 'Courier Prime', monospace;
	font-weight: 700;
}
#footer a {
	color:#fff;
}
#footer .sitemap-container a {
	background-size: 100% .5em;
	background-position: left bottom;
	padding-bottom: .125em;
	background-repeat: no-repeat;
	text-decoration:none;
}

#footer .sitemap-container a:focus,
#footer .sitemap-container a:hover,
#footer .sitemap-container a:active,
#footer .sitemap-container a.active {
	background-image: linear-gradient(to right,transparent 9%,#f28364 9%,#f28364 100%,transparent 100%);
	background-size: 100% .75em;
	background-position: left bottom;
	padding-bottom: .125em;
	background-repeat: no-repeat;
}
#footer .sitemap-container .sitemap a.nav-link:focus,
#footer .sitemap-container .sitemap a.nav-link:hover,
#footer .sitemap-container .sitemap a.nav-link:active,
#footer .sitemap-container .sitemap a.nav-link.active {
	background-image: linear-gradient(to right,transparent 4%,#f28364 4%,#f28364 90%,transparent 90%);
}

#footer .social-icons a,
#footer .social-icons a:focus,
#footer .social-icons a:hover,
#footer .social-icons a:active,
#footer .sitemap-container a.home-link,
#footer .sitemap-container a.home-link:focus,
#footer .sitemap-container a.home-link:hover,
#footer .sitemap-container a.home-link:active {
	background-image:none;
}

#footer .social-icons {
	margin-top:4rem;
	text-align:right;
}
#footer .social-icons figure {
	float:right;
	margin-right:2rem;
}
#footer .social-icons a {
	opacity:70%;
}
#footer .social-icons a:focus,
#footer .social-icons a:hover,
#footer .social-icons a:active {
	opacity:100%;
}

#meta-info .col {
	border-bottom:1px solid #fff;
}
#footer #copy-info p {
	font-size:.9375rem;
}
#footer #copy-info p a {
	text-decoration:none;
}
#footer #copy-info p a:focus,
#footer #copy-info p a:hover,
#footer #copy-info p a:active {
	text-decoration:underline;
}

.offcanvas  {
	color:#fff;
	background-color:#282828;
}
.offcanvas-backdrop.show {
	opacity: 0.1;
}
.offcanvas-header,
.offcanvas-body {
	padding-left:2em;
}
.navbar {
	z-index:9;
}
.navbar-brand img {
	width:150px;
}
.navbar-toggler {
	border:none;
}
.navbar-toggler:focus,
.btn-close:focus {
	box-shadow: none;
}
#offcanvasNavbarLabel {
	font-family:  'League Spartan', sans-serif;
	font-weight:800;
	font-size:4rem;
}
ul.navbar-nav > li {
	font-family:  'League Spartan', sans-serif;
	font-weight:800;
	font-size:2rem;
}
ul.navbar-nav li p.sub-menu,
ul.navbar-nav li ul {
	list-style:none;
	font-family:  'Courier Prime', monospace;
	font-weight:400;
	font-size:1.25rem;
	padding-left: 0;
}
ul.navbar-nav li ul li {
	float: left;
}
ul.navbar-nav li p.sub-menu a.nav-link,
ul.navbar-nav li ul li a.nav-link {
	display:inline;
}
ul.navbar-nav li p.sub-menu a::after,
ul.navbar-nav li ul li a::after {
	content:'/ ';
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.nav-link {
	color:#fff !important;
	background-size: 100% .5em;
	background-position: left bottom;
	padding-bottom: .125em;
	background-repeat: no-repeat;
}
.nav-link:focus,
.nav-link:hover,
.nav-link:active,
.nav-link.active {
	background-image: linear-gradient(to right,transparent 1%,#f28364 1%,#f28364 30%,transparent 30%);
	background-size: 100% .75em;
	background-position: left bottom;
	padding-bottom: .125em;
	background-repeat: no-repeat;
}
ul.navbar-nav li p.sub-menu a.nav-link:focus,
ul.navbar-nav li p.sub-menu a.nav-link:hover,
ul.navbar-nav li p.sub-menu a.nav-link:active,
ul.navbar-nav li p.sub-menu a.nav-link.active {
	background-image: linear-gradient(to right,transparent 4%,#f28364 4%,#f28364 90%,transparent 90%);
	background-size: 100% .75em;
}

@media screen and (max-width: 35.9375em) {
	.video {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
}
/*   sm 		≥ 576px		36em */
@media screen and (min-width: 36em) {
	.btn-mor {
		padding:1rem 3rem;
	}
	.navbar-brand {
		padding: 2rem 1.25rem 1.1rem;
	}
	.display-1 h1 {
		writing-mode: vertical-lr;
		white-space:nowrap;
		line-height: 1.4;
		margin-left:0;
	}
	.header .heading {
		margin-top: -8.1rem;
	}
	#header {
		margin-top: -13.75rem;
	}
	#header .teaser-content {
		padding-left: 1rem;
	}
}
/* 	Tablet hochkant 								md 		≥ 768px		48em */
@media screen and (min-width: 48em) {
	#header .teaser {
		position: absolute;
		top: 260px;
	}
	#header .teaser-content img {
		width: 450px;
	}
	#header .teaser-content p {
		padding-left: 1.25rem;
	}
	
	#header .teaser-content .btn {
		margin-left:1.25rem;
	}
	#aktuelles .row {
		padding: 5em;
	}
	
	#personen::before {
		background-image: linear-gradient(to bottom right, #f4f1ec 49%, #282828 53%);
		height: 1.75rem;
	}
	#footer::before {
		background-image: linear-gradient(to bottom right, #ea6031 49%, #282828 53%);
		height: 1.75rem;
	}

	.navbar-brand {
		padding-left: 1.4rem;
		padding-bottom: 1.1rem;
	}
	.display-1 h1 {
		line-height: 1.3;
	}
	ul.navbar-nav > li {
		padding-top:2em;
	}
	
	#footer ul.sitemap li .nav-link {
		font-size:1.0625rem;
	}
}

/* 	Tablet quer 								lg 		≥ 992px		62em */
@media screen and (min-width: 62em) {
	.offcanvas  {
		width:61% !important;
	}
	
	.display-1 h1 {
		line-height: 1.2;
	}
	#header .teaser-content img {
		width: 410px;
	}
	#personen::before {
		background-image: linear-gradient(to bottom right, #f4f1ec 46%, #282828 50%);
		height: 1.75rem;
	}
	#footer::before {
		background-image: linear-gradient(to bottom right, #ea6031 46%, #282828 50%);
		height: 1.75rem;
	}
}

/* 	xl 		≥ 1200px	75em */
@media screen and (min-width: 75em) {
	
	.display-1 h1 {
		font-size: 5rem;
	}
	h2 {
		font-size: 2.5rem;
	}
	h3, h4 {
		font-size: 1.5rem;
	}
	#header-bild img {
		width: 100%;
		max-height:unset;
		height: auto;
	}

}
/* 	xxl 	≥ 1400px	87.5em */
@media screen and (min-width: 87.5em) {
	.frame-space-before-extra-large {
		margin-top: 7em;
	}

}

/*  xxxl	≥ 1900px	118.75em */
@media screen and (min-width: 118.75em) {
	.offcanvas  {
		width:32% !important;
	}
	.col-xxxl-1 {
		flex: 0 0 auto;
		width: 10%;
	}
	.col-xxxl-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.col-xxxl-3 {
		flex: 0 0 auto;
		width: 25%;
	}
	.offset-xxxl-1 {
		margin-left: 10%;
	}
}

/*  xxxxl	≥ 2080px	130em */
@media screen and (min-width: 130em) {
	.offcanvas  {
		width:32% !important;
	}
	.col-xxxxl-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}
	.col-xxxxl-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.offset-xxxxl-1 {
		margin-left: 8.33333333%;
	}
}

