/*  
Theme Name:frank.focusin
Theme URL: https://frank-focusing.de
Version: 1.0
Author: Veronika Sattler
*/

/* --------------------------------------------------------------------------------------------nav
-----------------------------------------------------------------------------------------------

	INHALT:
	
	1. BASICS
	2. LAYOUT
	3. KOMPONENTEN
	4. MEDIA QUERIES
	5. PLUGINS

/* 1. BASICS
-----------------------------------------------------------------------------------------------
===============================================================================================*/
/* 1.1. Fonts
-----------------------------------------------------------------------------------------------*/

@font-face {
  font-family: "Existence-Light";
  src: url("../../files/layout/css/./fonts/Existence-Light.eot"); /* IE9 Compat Modes */
  src: url("../../files/layout/css/./fonts/Existence-Light.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
    url("../../files/layout/css/./fonts/Existence-Light.otf") format("opentype"), /* Open Type Font */
    url("../../files/layout/css/./fonts/Existence-Light.svg") format("svg"), /* Legacy iOS */
    url("../../files/layout/css/./fonts/Existence-Light.ttf") format("truetype"), /* Safari, Android, iOS */
    url("../../files/layout/css/./fonts/Existence-Light.woff") format("woff"), /* Modern Browsers */
    url("../../files/layout/css/./fonts/Existence-Light.woff2") format("woff2"); /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Existence-UnicaseLight";
  src: url("../../files/layout/css/./fonts/Existence-UnicaseLight.eot"); /* IE9 Compat Modes */
  src: url("../../files/layout/css/./fonts/Existence-UnicaseLight.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
    url("../../files/layout/css/./fonts/Existence-UnicaseLight.otf") format("opentype"), /* Open Type Font */
    url("../../files/layout/css/./fonts/Existence-UnicaseLight.svg") format("svg"), /* Legacy iOS */
    url("../../files/layout/css/./fonts/Existence-UnicaseLight.ttf") format("truetype"), /* Safari, Android, iOS */
    url("../../files/layout/css/./fonts/Existence-UnicaseLight.woff") format("woff"), /* Modern Browsers */
    url("../../files/layout/css/./fonts/Existence-UnicaseLight.woff2") format("woff2"); /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}


/* 1.2. HTML 5
-----------------------------------------------------------------------------------------------*/
article,aside, details, figcaption, figure, footer, header, hgroup, nav, section {
	display: block;
	}

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

/* 1.4. Allgemeines
-----------------------------------------------------------------------------------------------*/
html, body {
	font-family: 'Existence-Light', sans-serif;
	color:#000;
	font-size: 1rem;
	line-height: 1.7;
	text-size-adjust: none;
	-webkit-text-size-adjust: none; 
	min-height: 100%;
	height: auto;
	width: 100%;
	overflow-x:hidden;
	letter-spacing: 0.15em;
	}
.inside {
	display: block;
	width: 94%;
	max-width: 1400px;
	margin:auto;
	position: relative;
	}

.inside:after, .clear:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}
.inside.flex:after {
	display: none;
}
.invisible  {
	 position: absolute; 
	  overflow: hidden; 
	  clip: rect(0 0 0 0); 
	  height: 1px; width: 1px; 
	  margin: -1px; padding: 0; border: 0;
	  background: #b3a585;
	  color: #2c2c2b !important;
	  font-size: 140%;
	}

/* 1.4.1. Flex
-----------------------------------------------------------------------------------------------*/	
.flex {
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap; 
	}
.reverse {
	flex-direction: row-reverse;
}

/* 1.4.2. Abstände
-----------------------------------------------------------------------------------------------*/	

/* 1.5. Links
-----------------------------------------------------------------------------------------------*/
a {
	text-decoration:none; 
	transition: all 300ms ease-in-out;
	color:#000;
	}

#main a {
	border-bottom: 1px dotted #000;
}
#main a:hover, #main a:focus {
	border-style: solid;
}


.yellow #main a, .blue #main a, .green #main a, .red #main a, .purpur #main a, .startoise #main a {
	color: #fff;
	border-color:#fff;
}


/* 1.6. Listen
-----------------------------------------------------------------------------------------------*/
ul {
	list-style: none;
}

.ce_text ul {
	padding-bottom: 15px;
	padding-left: 40px;
}
.ce_text li {
	text-indent:-20px;
	padding-bottom: 5px;
}
.ce_text li:before {
	content: url('../../files/layout/images/bullet_white.svg');
	display: inline-block;
	margin-right: 10px;
}



/* 1.7. Typographie
-----------------------------------------------------------------------------------------------*/
h1 {
	font-size: 220%;
	margin-bottom: 30px;
	line-height: 1.3;
}
h2 {
	font-size: 145%;
	line-height: 1.3;
	margin-bottom: 20px;
	line-height: 1.4;
	margin-top:20px;
}
.start h1, .start h2, .start h3 {
	text-align: center;
	}
.start h3 {
	font-size: 145%;
	line-height: 1.3;
	margin-bottom: 70px;
	line-height: 1.4;
	text-align: center;
	margin-top: 0px;
}
p {
	padding-bottom: 20px;
}
.ce_text strong {
	font-family: "Existence-UnicaseLight";
	text-transform:uppercase;
}

blockquote {
	padding: 60px;
}

/*1.8. Media
-----------------------------------------------------------------------------------------------*/

/*1.8.1. Iframes
-----------------------------------------------------------------------------------------------*/
object, embed, video, iframe {
max-width:100%;
}

	
/*1.8.2. Bilder
-----------------------------------------------------------------------------------------------*/
img {
	display: block;
	max-width: 100%;
	width: 100%;
	height: auto;
	}
figcaption {
}


/* 2. LAYOUT
-----------------------------------------------------------------------------------------------
===============================================================================================*/
/*2.1. Header*/
#header {
	position: fixed;
	top:0px;
	background:#fff;
	z-index: 12;
	height: 100%;
	width: 240px;
	right:0px;
	}

/*2.2. Logo*/
#logo {
	position: relative;
	width: 100px;
	top:50%;
	transform:  translateY(-50%);
	margin:auto;
	}
.start #logo {
	opacity:0;
	transition: all 600ms linear;
}
.start.show #logo {
	opacity:1;
}


/*2.3. Wortmarke*/
#wortmarke {
	position: absolute;
	left: 50%;
	bottom: 60px;
	width: 50px;
	transform: translate(-50%, 0px);
}
.start #wortmarke {
	opacity:0;
	transition: all 600ms linear;
}
.start.show #wortmarke {
	opacity:1;
}
#wortmarke img {
	width: auto;
}

/*2.2.4. Navigation
-----------------------------------------------------------------------------------------------*/
#navi_main {
	display: none;
	box-sizing: border-box;
	position: absolute;
	z-index:9999;
	top:60px;
	padding: 60px 30px 170px 30px;
	padding-bottom:200px;
	right: 240px;
	width: calc(100vw - 400px);
	height: calc(100vh - 120px);
	background:#fff;
	text-align: right;
	overflow:hidden;
}
#navi_main li.mobile {
	display: none;
}
#navi_main.show {
	display: block;
} 
#navi_main .navi_container {
	box-sizing: border-box;
	display: inline-block;
	width: 728px;
	max-width: 100%;
	height: calc(100vh - 220px);
	overflow-y: scroll;
	padding-right: 30px;
}
#navi_main .level_1 {
	display: flex;
	flex-wrap: wrap;
}
#navi_main .level_1 li {
	position: relative;
	width: 50%;
	padding-left: 10%;
	padding-bottom: 45px;
	
}
#navi_main .level_2 li {
	width: 100%;
	padding-bottom:6px;
}
#navi_main h3 {
	font-size: 170%;
	margin-bottom: 6px;
	outline: none;
	margin-top:6px;
	text-align: right;
}
#navi_main strong {
	border-bottom: 1px solid #000;
	display: inline-block;
}
.yellow #navi_main a:hover, .yellow #navi_main a:focus, .yellow #navi_main h3.trail {
	color:rgba(193,121,17,1);
}
.blue #navi_main a:hover, .blue #navi_main a:focus, .blue #navi_main h3.trail {
	color:rgba(2,74,141,1);
}
.green #navi_main a:hover, .green #navi_main a:focus, .green #navi_main h3.trail { 
	color:rgba(0,120,55,1);
}
.red #navi_main a:hover, .red #navi_main a:focus, .red #navi_main h3.trail {
	color:rgba(185,46,65,1);
}
.purpur #navi_main a:hover, .purpur #navi_main a:focus, .purpur #navi_main h3.trail {
	color:rgba(165,31,94,1);
}
.turquoise #navi_main a:hover, .turquoise #navi_main a:focus, .turquoise #navi_main h3.trail {
	color:rgba(0,120,175,1);
}

 .yellow .nicescroll-cursors {
    background-color:rgba(193,121,17,1)!important;
  }
.nicescroll-cursors {
    background-color:rgba(0,0,0,1)!important;
  }
.green .nicescroll-cursors {
    background-color:rgba(0,120,55,1)!important;
  }
.red .nicescroll-cursors {
    background-color:rgba(185,46,65,1)!important;
  }
.purpur .nicescroll-cursors {
    background-color:rgba(165,31,94,1)!important;
  }
.turquoise .nicescroll-cursors {
    background-color:rgba(0,120,175,1)!important;
  }


/*2.2.2.1. Servicenavigation
-----------------------------------------------------------------------------------------------*/
#navi_main .level_1_spez {
	position: absolute;
	width: 100%;
	bottom: 0px;
	padding: 30px 90px 30px 30px;
	background:#fff;
	font-family: "Existence-UnicaseLight";
	display: flex;
	flex-wrap:wrap;
	justify-content: flex-end;
	text-transform:uppercase;
}
#navi_main .level_1_spez li {
	margin-left: 25px;
	padding-bottom:10px;
} 
.social_contact {
	padding:0px !important;
}
.social_contact li {
	display: inline-block;
	text-indent: 0px;
	margin-right: 10px;
}
.social_contact li:before {
	display: none;
}

#navi_main .level_1_spez .social, .social_contact .social {
	display: block;
	width: 28px;
	height: 28px;
	overflow: hidden;
	border-bottom:none !important;
}
#navi_main .level_1_spez .social:before, .social_contact .social:before {
	content:'';
	display: block;
	width: 28px;
	height: 28px;
}
#navi_main .level_1_spez .instagram:before { 
	content: url('../../files/layout/images/instagram.svg');
	}
#navi_main .level_1_spez .facebook:before { 
	content: url('../../files/layout/images/facebook.svg');
	}
#navi_main .level_1_spez .linkedin:before { 
	content: url('../../files/layout/images/linkedIn.svg');
	}
#navi_main .level_1_spez .xing:before { 
	content: url('../../files/layout/images/xing.svg');
	}
.social_contact .instagram:before { 
	content: url('../../files/layout/images/instagram_white.svg') !important;
	}
.social_contact .facebook:before { 
	content: url('../../files/layout/images/facebook_white.svg') !important;
	}
.social_contact .linkedin:before { 
	content: url('../../files/layout/images/linkedIn_white.svg') !important;
	}
.social_contact .xing:before { 
	content: url('../../files/layout/images/xing_white.svg') !important;
	}


/*2.2.2.2. Menue-Button
-----------------------------------------------------------------------------------------------*/
.menu {
	position: absolute;
	top: 100px;
	left: 50%;
	transform: translate(-50%, -50%);
	cursor: pointer;
	-webkit-transition-property: opacity, -webkit-filter;
	transition-property: opacity, -webkit-filter;
	-o-transition-property: opacity, filter;
	transition-property: opacity, filter;
	transition-property: opacity, filter, -webkit-filter;
	-webkit-transition-duration: 0.15s;
	     -o-transition-duration: 0.15s;
	        transition-duration: 0.15s;
	-webkit-transition-timing-function: linear;
	     -o-transition-timing-function: linear;
	        transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible;
	z-index:2000;
	padding:0px;
	background: none;
	}
.menu:hover {
	opacity: 0.7; 
	}
.menu-box {
	width: 50px;
	height: 50px;
	display: inline-block;
	position: relative; 
	}
.menu-inner {
	display: block;
	top: 50%;
	margin-top: -2px; 
	-webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	-o-transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; 
	transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; 
	transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
.menu-inner, .menu-inner::before, .menu-inner::after {
	width: 50px;
	height: 4px;
	background-color: #000;
	position: absolute;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-duration: 0.15s;
	     -o-transition-duration: 0.15s;
	        transition-duration: 0.15s;
	-webkit-transition-timing-function: ease;
	     -o-transition-timing-function: ease;
	        transition-timing-function: ease; 
	}
.menu-inner::before, .menu-inner::after {
	content: "";
	display: block; 
	}
.menu-inner::before {
	top: -14px; 
	-webkit-transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	-o-transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
.menu-inner::after {
  bottom: -14px; 
  -webkit-transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
  transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
  -o-transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }	
.menu.active .menu-inner {
	-webkit-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	        transform: rotate(90deg);
	background-color: transparent !important;
	-webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
	-o-transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
	transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
	transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
.menu.active .menu-inner:before {
	top: 0;
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	-o-transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
.menu.active .menu-inner:after {
	bottom: 0;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	-o-transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); 
	}	


.start .menu {
	opacity:0;
	transition: all 600ms linear;
}
.start.show .menu {
	opacity:1;
}


/* 3. Komponenten 
-----------------------------------------------------------------------------------------------
===============================================================================================*/
/*3.1. Hintergrundbild*/
.custom {
	position:fixed;
	width: 100%;
	height: 100%;
}
.bgimage {
	width: calc(100% - 240px);
	height: 100vh;
	background-size: cover;
	background-position: center;
}

/*3.2. Startscreen*/
.startscreen  {
	position: relative;
	height: calc(100vh + 160px);
	transform: translate(0%, -300px);
}
.startscreen:before  {
	position: absolute;
	display: block;
	content:'';
	left:-1000px;
	right:-1000px;
	background:#fff;
	height: 100%;
}
.startscreen figure {
	width: auto;
	max-width: 70%;
	position: absolute;
	left: 50%;
	top:50%;
	margin-left: 70px;
	transform: translate(-50%, -50%);
}
#scrollink {
	position: absolute;
	z-index: 200;
	bottom:70px;
	left: 50%;
	margin-left: 70px;
	transform: translate(-50%, 0%);
	width: 40px;
	height: 24px;
	overflow: hidden;
	cursor: pointer;
}
@keyframes bounce {
  0% {
    transform: translateY(0);
  }
  5.55556% {
    transform: translateY(0);
  }
  11.11111% {
    transform: translateY(0);
  }
  22.22222% {
    transform: translateY(-3px);
  }
  27.77778% {
    transform: translateY(0);
  }
  33.33333% {
    transform: translateY(-3px);
  }
  44.44444% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
#scrollink:before {
  content: url('../../files/layout/images/scroll.svg');
  position: absolute;
  display: block;
  animation-iteration-count: infinite;
  animation-duration: 1.5s;
  animation: bounce 3.6s ease infinite;
  transform-origin: 50% 50%;
}
.start #main {
	margin-bottom: 60px;
}
.welcome {
	position: relative;
	min-height: calc(100vh - 60px);
	padding-top: 140px;
	margin-top:-300px;
}

/*3.2. Farbwrapper*/
#main {
	box-sizing: border-box;
	position: relative;
	margin-left: 60px;
	min-height:calc(100vh - 60px);
	padding-right: 240px;
	padding-left: 40px;
	padding-top: 140px;
	padding-bottom: 50px;
	}
.long #main {
	margin-top:60px;
}
#main .inside {
	max-width: 1000px;
	margin:auto;
}
.yellow #main {
	background:rgba(193,121,17,0.87);
	color:#fff;
}
.blue #main {
	background:rgba(2,74,141,0.87);
	color:#fff;
}
.green #main {
	background:rgba(0,120,55,0.87);
	color:#fff;
}
.red #main {
	background:rgba(185,46,65,0.87);
	color:#fff;
}
.purpur #main {
	background:rgba(165,31,94,0.87);
	color:#fff;
}
.turquoise #main  {
	background:rgba(0,120,175,0.87);
	color:#fff;
}
.color #main {
	background:rgba(250,250,250,0.87);
}
.float_right {
	width: 35%;
	float: right;
	margin-left: 5%;
	margin-bottom: 2rem;
}
figcaption {
	display: block;
	background:#fff;
	padding: 7px 20px;
	font-size: 90%;
}
.yellow figcaption {
	color:rgba(193,121,17)!important;
}

/*3.3. Kosten*/
.kosten .flex {
	padding: 40px 0px;
}
.kosten .flex h3 {
	width: 45%;
}
.kosten .flex p {
	width: 45%;
	padding-bottom:15px;
}

.flex-space {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex-space h1, .flex-space h2 {
	width: 100%;
}
.minicalendar {
	background: #f6f6f6;
	color: #000;
	padding: 30px;
	padding-top:0;
	position: relative;
}
.minicalendar:before {
	content:'';
	z-index: 1;
	display: block;
	position: absolute;
	width: 100%;
	height: 75px;
	background: #fff;
	top: 0;
	left:0;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
}
.minicalendar table {
	position: relative;
	z-index: 10;
	width: 100%;
	border-collapse: collapse;
	font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.minicalendar .head {
	font-weight: bold;
	padding: 20px 5px;
	line-height: 1;
}
.minicalendar .head strong {
	display: block;
	text-transform: uppercase;
	padding-bottom: 6px;
}
.minicalendar .head small {
	font-size: 70%;
}
.minicalendar .head.previous {
	border-top-left-radius: 15px;
}
.minicalendar .label {
	padding: 10px 5px;
	color: #1b5e95;
}
.minicalendar td {
	border-right: 1px solid #ddd;
	border-top: 1px solid #ddd;
	padding: 5px;
	}
.minicalendar .days {
	background:#fff;
	text-align: center;
	}
.minicalendar .days.empty {
	background:none;
	}
.minicalendar .days.today {
	background:#91adc4;
	font-weight: bold;
	text-decoration: underline;
	}
.minicalendar .days.active {
	background:#fff000;
	}
.minicalendar td.col_first {
	border-left: 1px solid #ddd;
	}
.minicalendar .last td {
	border-bottom: 1px solid #ddd;
	}
#main .minicalendar .days.active a {
	color: #000;
	border: none;
}

.minicalendar .space {
	margin: 20px;
}	
#main .head.previous a {
	display: block;
	position: absolute;
	left: 20px;
	top: 30px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 14px 10px 0;
	border-color: transparent #1b5e95 transparent transparent;
}
#main .head.next a {
	display: block;
	position: absolute;
	right: 20px;
	top: 30px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 14px;
	border-color: transparent transparent transparent #1b5e95;
}
.minicalendar .head.next {
	border-top-right-radius: 15px;
}
.minicalendar a {
	color: #000;
}
.kal_left {
	width: 50%;
}
.kal_right {
	width: 45%;
	position: relative;
}

#main .eventlink a {
	position: fixed;
	font-size: 135%;
	line-height: 1;
	width: 280px;
	height: 85px;
	display: block;
	color:#000;
	border-bottom: none;
	text-transform: uppercase;
	padding: 20px;
	top: 59px;
	right: 188px;
	z-index: 9900;
	background-image:url("../../files/layout/images/frank.focusing_stoerer-rechts-web.svg");
	background-size: contain;
	background-repeat: no-repeat;
	
}

.start #main .eventlink a, #main .eventlink.hide a  {
	opacity: 0;
}
.start.show #main .eventlink a {
	opacity: 1;
}
.event_spez {
	margin-bottom: 30px;
}
.event_spez .bold {
	font-weight: bold;
}


/* 4. Media Queries
-----------------------------------------------------------------------------------------------
===============================================================================================*/
@media screen and (max-width: 1279px) {
	#header {
		width: 180px;
		}
	#main .eventlink a {
		right: 132px;
		width: 260px;
		height: 75px;
		font-size: 130%;
	}
	.startscreen figure {
		margin-left: 70px;
		}
	#logo {
		width:80px;
		}
	.menu-inner, .menu-inner::before, .menu-inner::after {
		width: 50px;
		height: 4px;
		}
	#main {
		padding-top: 120px;
		margin-top:60px;
		}
	.start #main {
		margin-bottom: 0px;
		}
	.bgimage {
		width: calc(100% - 140px);
		}
	#navi_main {
		width: calc(100vw - 200px);
		right: 140px;
		}
	#wortmarke {
		width: 50px;
		}
}
@media screen and (max-height: 800px) {
	#navi_main .navi_container {
		height: 300px;
	}
	#navi_main .level_1 li {
		padding-bottom: 20px;
		}
	#navi_main .level_2 li {
		padding-bottom: 4px;
		}
	#logo {
		margin-top:-100px;
	}
	}
@media screen and (max-width: 1023px) {
	body {
		font-size: 0.87rem;
	}
	.flex-space {
	flex-direction: column-reverse;
	}
	.kal_left {
		width: 100%;
	}
	.kal_right {
		width: 100%;
		position: relative;
		margin-bottom: 30px;
	}
	#main .eventlink a {
		right: auto;
		top: 25px;
		left:19px;
		background-image:url("../../files/layout/images/frank.focusing_stoerer-links-mobile.svg");
		width: 220px;
		height: 70px;
		text-indent: 5px;
	}
	
	.startscreen figure {
		margin-left: 0px;
		width: 96%;
	}
	#header {
		width: calc(100% - 40px);
		height:110px;
		top:0px;
		margin-left:40px;
		}
	.welcome {
		padding-top: 200px;
	}
	#logo {
		margin: 10px 4% 10px 40px;
		top:0px;
		width: 70px;
		position: absolute;
		right: 0;
		transform: translateY(0);
		}
	#wortmarke {
		display: none;
		}
	.menu {
		top: 20px;
		left: 50%;
		transform: translateX(-50%);
		}
	
	.menu-box {
		width: 40px;
		}
	.menu-inner::before {
		top: -12px; 
		}
	.menu-inner::after {	
		bottom: -12px; 
		}
	.menu-inner, .menu-inner::before, .menu-inner::after {
		width: 40px;
		height: 4px;
		}
	.bgimage {
		width: 100%;
		}
	#main {
		margin-left: 40px;
		padding-right: 40px;
		padding-left: 40px;
		padding-top: 100px;
		padding-bottom: 50px;
		}
	.long #main, #main {
		margin-top:40px;
		}
	#navi_main {
		box-sizing: border-box;
		width: calc(100% - 40px);
		height: calc(100vh - 140px);
		right: auto;
		left: 40px;
		top: 80px;
		}
	#scrollink {
		margin-left: 0px;
		bottom: 100px;
		}
}
@media screen and (max-width: 779px) {
	h1 {
		font-size: 180%;
	}
	#main {
		margin-left:25px;
	}
	#header {
		width: calc(100% - 25px);
		height:100px;
		top:0px;
		margin-left:25px;
		}
	#main .eventlink a {
		left:4px;
		top: 20px;
	}
	#navi_main {
		padding: 30px;
		width: 100%;
		left:0px;
		margin-top:0px;
	}
	#navi_main .level_1 li{
		padding-left:0;
		width: 100% !important;
		padding-bottom: 6px;
		}
	#navi_main .level_1 li:hover .level_2 li {
		display: block;
		}
	#navi_main .level_1 h3 {
		font-size: 130%;
	}
	#navi_main .level_2 li{
		display: none;
		}
	#wortmarke {
		display: none;
	}
	.kosten .flex h3 {
		width: 100%;
		font-size: 110%;
		text-transform: uppercase;
	}
	.kosten .flex p {
		width: 100%;
		padding-bottom:20px;
		}
	}
@media screen and (max-width: 600px) {
	.float_right {
		width: 100%;
		margin: 0px 0px 2rem 0px;
	}
	.menu {
		transform: translateX(0);
		left: 220px;
	}
	}
@media screen and (max-height: 500px) and (max-width: 800px) {
	#logo {
		z-index: 1000;
	}
	
	#navi_main {
		top:30px;
    	height: calc(100vh - 100px);
		width: 100%;
	}
	#navi_main .level_1_spez {
		padding: 10px 90px 10px 30px;
}
	#navi_main .navi_container {
		height: 150px;
	}
	#navi_main .level_1 li {
		width: 45% !important;
		padding-left: 5%;
		padding-bottom: 4px !important;
	}
	#navi_main h3 {
		margin-bottom: 4px;
		font-size: 140%;
	}
	#navi_main .level_2 li {
		width: 100% !important;
		padding-left: 0%;
		padding-bottom: 4px;
	}
	.startscreen figure {
		margin-top:80px;
		max-width: 40%;
		}
	}

