@charset "utf-8";
/**
 * @author  ( AG NICKIER by Schnacko  )
 * Farben Orange:#ff3300 Dunkelblau:#03031b Blau:#2345a6  Hellblau:#4f6cff 
**/

/* Fonts */
@font-face {
	font-family: 'Conv_ruachn';
	src: url('../fonts/ruachn.eot');
	src: local('☺'), url('../fonts/ruachn.woff') format('woff'), url('../fonts/ruachn.ttf') format('truetype'), url('../fonts/ruachn.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Conv_BankGthd';
	src: url('../fonts/BankGthd.eot');
	src: local('☺'), url('../fonts/BankGthd.woff') format('woff'), url('../fonts/BankGthd.ttf') format('truetype'), url('../fonts/BankGthd.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Conv_Play-Regular';
	src: url('../fonts/Play-Regular.eot');
	src: local('☺'), url('../fonts/Play-Regular.woff') format('woff'), url('../fonts/Play-Regular.ttf') format('truetype'), url('../fonts/Play-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Conv_Play-Bold';
	src: url('../fonts/Play-Bold.eot');
	src: local('☺'), url('../fonts/Play-Bold.woff') format('woff'), url('../fonts/Play-Bold.ttf') format('truetype'), url('../fonts/Play-Bold.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Conv_Genericons-Neue';
	src: url('../fonts/Genericons-Neue.eot');
	src: local('☺'), url('../fonts/Genericons-Neue.woff') format('woff'), url('../fonts/Genericons-Neue.ttf') format('truetype'), url('../fonts/Genericons-Neue.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
/*-------*/

/*-- Resets --*/ 
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	font:inherit;
	vertical-align:baseline;
}

/* HTML5 display-role reset for older browsers */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article, aside, details, figcaption, figure, 
footer, header, hgroup, main, menu, nav, section, summary {
	display:block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10. 1
 */

a {
  background-color: transparent; /* 1 */
  text-decoration:none
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */

a, a:active,
a:hover {
  outline: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

body {
	line-height:1;
}

ol, ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}


table {
	border-collapse:collapse;
	border-spacing:0;
}

/*--------------------------------------------------*/
/*@media screen and (min-width: 56rem) and (max-width: 75rem) {}*/

* {
	cursor:default;
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
}

a {
    cursor:pointer;
	color:#fff;
}

a.aktiv {

}

p {
    -webkit-flex: 1 100%;
	flex: 1 100%;
	text-align:justify;
    text-align-last:center;	
	margin:.5rem 0;
}

html {
	font-size:16px;
	-webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
    user-select: none;          /* Likely future */
	background-color:#fff;
}

body, header, nav,  main, section, footer, address {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-flex: 1 100%;
	flex: 1 100%;
}

body, nav {
	justify-content:center;
	-webkit-justify-content:center;
}

header, section, footer, address {
	justify-content:space-around;
	-webkit-justify-content:space-around;
	align-items: start;
	-webkit-align-items: start;
}

header {
	justify-content:space-between;
	-webkit-justify-content:space-between;
	align-items: end;
	-webkit-align-items: end;
}
body {
	font-family: 'Conv_Play-Regular';
	font-size:1.3rem;
	letter-spacing:.05rem;
	line-height:120%;
	max-width:81rem;
	margin:0 auto;
	color:#2345a6;
	min-height: 100%;
}

h1 {
	font-family: 'Conv_ruachn';
	font-size:3rem;
	line-height:110%;
	letter-spacing:.15rem;
    width:100%;
	text-align:center;
	color:#fff;
	padding:.8rem .5rem;
	background-color:#2345a6;
	/*border-top:.2rem solid #ff3300;
	border-bottom:.2rem solid #ff3300;*/
}

h1 {
	font-family: 'Conv_Play-Bold';
	font-size:1.6rem;
	min-width:100%;
	max-width:100%;
	text-align:center;
	color:#fff;
	line-height:110%;
	padding:.5rem 0;
	background-color:#2345a6;
	margin:0;
}

h2 {
    font-family: 'Conv_Play-Bold';
	font-size:1.4rem;
	color:#ff3300;
	text-align:center;	
}

h3 {
    font-family: 'Conv_Play-Bold';
	font-size:1.6rem;
	color:#ff3300;
	line-height:140%;
}

h3 span {
    font-family: 'Conv_Play-Bold';
	font-size:1.6rem;
	color:#2345a6;
}

h4 {

}

header {
    margin:0rem 1rem;

}

header picture {
	width:75%;
	margin:0;
}

header picture img {
	width:100%;
	cursor:pointer;
}


.browserupgrade {
	position:relative;
	width:100%;
	background-color:#e5eded;
	font-size:2rem;
	color:red;
	text-align:center;
	padding:1rem;
	border:.2rem solid red;
}

.browserupgrade a {
	color:red;
	text-decoration:underline;
}

section.intro {
    align-items: center;
	-webkit-align-items: center;
}

section.intro figure {
	width:35%;
}

section.intro figure img {
	width:100%;
}

main {
    padding:1.2rem 1rem;
	margin:0 1rem;
	background-color:#2345a6;
}

nav {
	font-family: 'Conv_BankGthd';
	font-size:2.4rem;
	line-height:140%;
	background-color:#2345a6;
	padding:0 0 1rem 0;
}

nav a {
	padding:0 .8rem;
}

nav.subnav {
	background-color:#fff;
	color:#2345a6;
	border:0;
}

nav.subnav a {
	color:#2345a6;
}

nav a:hover {

}

nav.subnav a:hover {
	color:#ff3300;
}

nav.subnav a:first-of-type {
	padding:0 12rem;
}

.undersub {

}

section.navi figure {
	width:30%;
	border:0rem solid #ff3300;
	margin: 1rem 0;
}

section.navi figure img {
	width:100%;
}

.navi figure figcaption {
	font-family: 'Conv_ruachn';
	font-size:2.5rem;
	color:#fff;
	text-align:center;
	padding:1rem 0;
	background-color:#ff3300;
	margin:-.5rem 0 0 0;
	letter-spacing:0rem;
}

article {
	padding:0;
	margin:0 1rem;
	text-align:justify;
	text-align-last:center;
	width:60%;

	/*-moz-border-radius: 1rem/8rem;
    border-radius: 1rem/8rem;*/
}

/* Footer */

footer {
	color:#fff;
	margin:1rem;
}

footer address {
	padding:1rem 0;
	background-color:#2345a6;
    font-size:1.3rem;	
}

ul.anschrift, ul.kontakt {
    list-style-type: none;
	text-align:left;
	margin:0;
}

ul.offen {
    list-style-type: none;
	text-align:center;
	margin:0;
}

ul.anschrift li:first-of-type:before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.7rem;
    content: '\f417';
	padding:0 .2rem 0 0;
}

ul.offen li:first-of-type:before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.7rem;
    content: '\f303';
	padding:0 .2rem 0 0;
}

ul.kontakt li:first-of-type:before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.7rem;
    content: '\f455';
	padding:0 .2rem 0 0;
}

ul.anschrift li:first-of-type, ul.offen li:first-of-type, ul.kontakt li:first-of-type {
	font-size:1.6rem;
	padding:0 0 .4rem;
}

ul.kontakt li:nth-of-type(2):before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.4rem;
    content: '\f409';
}

ul.kontakt li:nth-of-type(3):before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.4rem;
    content: '\f437';
}

ul.kontakt li:nth-of-type(4):before {
    font-family:'Conv_Genericons-Neue';
	font-size:1.4rem;
    content: '\f410';
}

footer nav {
	font-family: 'Conv_BankGthd';
	line-height:140%;
	background-color:transparent;
	border-top:0;
	padding:0 0 .5rem 0;
}

footer nav a {
	color:#ff3300;
	font-size:1.75rem;
	padding:0 .6rem;
}

footer nav a:hover {
	color:#2345a6;
}

footer figure {
	margin:0;
	width:30%;
	padding:1.5rem 0 0 0;
	border-top:.15rem solid #2345a6; 
}

footer figure img {
	width:100%;
}

footer figure figcaption {
	font-size:1.3rem;
	text-align:center;
	width:100%;
    color:#2345a6;
    margin:-.6rem 0 0 0;
    padding:0;	
}

/* Hamburger */
#nav_head {
	font-family: 'Conv_Play-Bold';
	font-size:1.8rem;
	color:#ff3300;
	width:100%;
	max-width:81rem;
	cursor:pointer;
	text-align:right;
	padding:1rem .5rem 0 0;
	z-index:1;
	position:absolute;
	display:none;
}

#nav_head:after {
    font-family:'Conv_Genericons-Neue';
	font-size:3.0rem;
    content: '\f505';
}


.overlay {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color:#fff;
  overflow-x: hidden;
  transition: 0.5s;
  opacity: 0.9;
}

figure.nav_head {
	width:25%;
	margin:-1rem auto 0 auto;
	padding:0;
}

figure.nav_head img {
	width:100%;
}

.overlay-content {
  position: relative;
  top: 1.5rem;
  width: 100%;
  text-align: center;
  margin-top: 1rem;
  padding:0 1rem;
}

.overlay-content a {
  font-family: 'Conv_Play-Bold';
  padding:0 .6rem;
  text-decoration: none;
  font-size: 1.8rem;
  color: #ff3300;
  display: inline-block;
  transition: 0.3s;
  letter-spacing:.1rem;
}

.overlay a:hover, .overlay a:focus {
  text-decoration:underline .15rem #2345a6; 
}

.overlay-content a.aktiv {
	text-decoration:underline .15rem #2345a6;
}

.overlay .closebtn {
  position: absolute;
  top: .3rem;
  right: .5rem;
  font-size: 3.0rem;
  z-index:999;
  color:#2345a6;
}

hr {
	border:solid #2345a6 .15rem;
	width:75%;
	margin:0 auto;
}

/* ScrollTop Button */
.back-to-top {
   color:#fff;
   position: fixed;
   bottom:1.5rem;
   right:1.5rem;
   text-align:center;
   vertical-align:middle;
   font-size:3rem;
   line-height:120%;
   width:4rem;
   height:4rem;
   -moz-border-radius: 4rem;
   -webkit-border-radius:4rem;
   border-radius:4rem;
   padding:0 .5rem .5rem .5rem;
   border:.1rem solid #ff3300;
   background-color:#fff;
   color:#ff3300;
   filter:alpha(opacity=70); /* IE */
   opacity:0.8; /* allgemein */
   -moz-opacity:0.8; /* Mozilla */
   -khtml-opacity:0.8; /* KTHML */
    -opera-opacity:0.8; /* Opera */
}

/* Ticker */
#ticker {
	text-align:center;
	min-width:8rem;
	margin:.5rem .4rem .4rem 0;
}

#ticker span {
	color:#ff3300;
	display:block;
	font-family: 'Conv_Play-Bold';
	font-size:1.1rem;
}

svg { 
  --bgcolor: #fff;
  --primarycolor: #2345a6;
  --accent1color: #dfac20;
  --accent2color: #ff3300;  
  --start-hours: 0;
  --start-minutes: 0;
  --start-seconds: 0;  
  height: 6rem;
}
#clockface {
  fill: var(--bgcolor);
  stroke: var(--primarycolor);
  stroke-width: 8;
}

#indizes > use,
.hand {
  stroke: var(--primarycolor);
  stroke-width: 6;
    
}  

#indizes > use:nth-child(3n+3) {
  stroke-width: 10;
  stroke-linecap: square;
}

#hours {
  stroke: var(--primarycolor);	
  stroke-width: 8;
  transform: rotate(calc(var(--start-hours) * 30deg));
  animation: rotateHourHand calc(12 * 60 * 60s) linear infinite;
  animation-delay: calc(calc(var(--start-minutes) * -60 * 1s) + calc(var(--start-seconds) * -1 * 1s));
}
@keyframes rotateHourHand {
  from {
    transform: rotate(calc(var(--start-hours) * 30deg));
  }
  to {
    transform: rotate(calc(var(--start-hours) * 30deg + 360deg));
  }
}

#minutes {
  stroke-width: 8;
  transform: rotate(calc(var(--start-minutes) * 6deg));
  animation: rotateMinuteHand 3600s steps(60) infinite;
  animation-delay: calc(var(--start-seconds) * -1 * 1s);
}

@keyframes rotateMinuteHand {
  from {
    transform: rotate(calc(var(--start-minutes) * 6deg));
  }
  to {
    transform: rotate(calc(var(--start-minutes) * 6deg + 360deg));
  }
}

#seconds {
  stroke: var(--accent2color);
  stroke-width: 4;
  transform: rotate(calc(var(--start-seconds) * 6deg));
  animation: rotateSecondsHand 60s steps(60) infinite;
}

#origin {
	fill: var(--accent2color);
}

@keyframes rotateSecondsHand {
  from {
    transform: rotate(calc(var(--start-seconds) * 6deg));
  }
  to {
    transform: rotate(calc(var(--start-seconds) * 6deg + 360deg));
  }
}