header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
/********************************************************************************/
/*
Description: CSS File for Layout
Theme Name: mo.mento
Theme URI: http://www.mo-mento.de/
Version: 2.0 [11.2020]
Author: V15* Thorsten Neuhaus
Author URI: http://www.v15.de/
*/
/********************************************************************************/
/*	Hauptfarben					*/
/*	Grün:			#9aac01		*/
/*	Main:			#e5ecf2		*/
/*	Grau:			#aaa		*/
/********************************************************************************/

:link,:visited { text-decoration:none }
ul, ol { list-style:none }
h1,h2,h3,h4,h5,h6 { font-size:1em; }
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input,hr, dt, dd { margin:0; padding:0 }
figure {margin:0;}
a img,:link img,:visited img { border:none }

/********************************************************************************/
/* Klasse .block overflow:hidden von Contao überschreiben  */
.block {overflow:visible;}
/* :focus {outline: 0;} */

/********************************************************************************/
/* Auswahltext-Farbe ändern */
::selection { background:#9aac01; color:#fff; /* Safari and Opera */ }
::-moz-selection { background:#9aac01; color:#fff; /* Firefox */ }

/* Highlight Searchword */
.highlight { background:#9aac01; color:#fff; padding:0 2px;}

/********************************************************************************/
/* Prevent Firefox Scrollbar Jump */
html { overflow-y:scroll; }

/*	Unsichtbare Bereiche	*/
.invisible{width:0;height:0;left:-1000px;top:-1000px;position:absolute;overflow:hidden;display:inline}

/* Blauen Rahmen bei Lightbox entfernen */
#cboxPrevious, #cboxNext {outline: none;}
/********************************************************************************/

body {
color					: #333;
margin					: 0 auto;
padding					: 0;
font-size				: 130%;
font-family				: 'Lucida Grande', 'Lucida Sans Unicode', Lucida, arial, sans-serif;
background				: #d9dfe5;
}

/********************************************************************************/

#wrapper {
width					: 100%;
margin					: 0 auto;
background				: linear-gradient(to bottom, rgba(230,235,241,1) 0%,rgba(230,235,241,1) 0%,rgba(177,182,186,1) 100%,rgba(177,182,186,1) 100%);
}

#header {
padding					: 7px 0 0 0;
background				: url('../../files/data/img/bg-oben.png') 0 0 repeat-x;
}

#header .inside {
z-index					: 999;
width					: 100%;
max-width				: 960px;
height					: 110px;
margin					: 0 auto;
border-top				: 18px solid #aaa;
background				: #e5ecf2;
}

#logo {
position				: absolute;
top						: 20px;
left					: 0;
}

#container {
/* width					: 100%; */
max-width				: 620px;
margin					: 0 auto;
background				: #e5ecf2;
}

#main {
background				: url('../../files/data/img/bg-linie.png') 0 90px repeat-x;
}

#main .inside {
/* width					: 540px; */
min-height				: 350px;
height					: auto !important;
height					: 350px;
padding					: 170px 40px 40px 40px;
}

#right {
background				: url('../../files/data/img/bg-linie.png') 0 90px repeat-x;
}

#right .inside {
padding					: 0 40px 0 0;
}

#footer {
text-align				: center;
margin					: 0 0 10px 0;
background				: #d9dfe5;
}

#footer .inside {
display					: inline-block;
text-align				: left;
color					: #e5ecf2;
width					: 100%;
max-width				: 960px;
min-height				: 20px;
margin					: 0 auto;
background				: #aaa;
}

/*****/

li.instagram {
	margin-right: 10px !important;
}

li.instagram img {
	width: 15px;
	vertical-align: text-bottom;
	padding-bottom: 2px;
}

/********************************************************************************/

h1 {
font-size				: 110%;
line-height				: 1.2em;
margin					: 0 0 20px 0;
}

h2 {
font-size				: 90%;
line-height				: 1.2em;
margin					: 40px 0 10px 0;
}

p {
font-size				: 80%;
line-height				: 1.4em;
margin					: 0 0 20px 0;
}

#right p {
color					: #fff;
margin					: 0;
}



a:link,
a:visited {
color					: #9aac01;
border-bottom			: 0px solid #9aac01;
}

#main .ce_text a:link,
#main .ce_text a:visited {
padding					: 0 0 0 15px;
background				: transparent url('../../files/data/img/link.png') 2px 5px no-repeat;
}

#main .ce_text a[href^="mailto:"] { 
padding					: 0;
background				: none;
}

a:hover,
a:active,
a:focus {
color					: #333;
border-bottom			: 0px solid #9aac01;
}



#right a:link,
#right a:visited {
color					: #fff;
font-weight				: bold;
}

#right a:hover,
#right a:active,
#right a:focus {
color					: #333;
font-weight				: bold;
}



#footer a:link,
#footer a:visited {
color					: #e5ecf2;
}

#footer a:hover,
#footer a:active,
#footer a:focus {
color					: #333;
}

/********************************************************************************/

#right .ce_text {
margin					: 10px 0 0 0;
padding					: 15px;
background				: #9aac01;
}

.sprachtraining {
position				: absolute;
top						: 103px;
right					: 40px;
margin					: 2px 0;
padding					: 0;
}

.impressionen {
position				: absolute;
top						: -10px;
right					: 15px;
}

iframe {
width: 100%;
border					: 1px solid #aaa;
}

/********************************************************************************/

.ce_text ul {
list-style-type			: square;
font-size				: 80%;
line-height				: 1.4em;
margin					: 0 0 20px 0;
}

p + ul {
margin-top				: -20px !important;
}

.ce_text ul li {
margin					: 0 0 0 15px;
padding					: 0 0 0 5px;
}



#footer ul {
list-style-type			: none;
font-size				: 70%;
line-height				: 1.7em;
margin					: 0 0 0 40px;
}

#footer ul li {
display					: inline-block;
margin					: 0 25px 0 0;
padding					: 0;
}

@media only screen and (max-width : 767px) {
	#footer ul {
	text-align: center;
	margin: 0 10px;
	}
}

/********************************************************************************/
/*	Nicht vergessen die Klasse "tabellenlos" bei der Galerie einzutragen!	*/

#main .ce_gallery {
float					: left;
width					: 100%;
margin					: 20px 0;
padding					: 0;
}

#main .ce_gallery ul {
margin					: 0;
padding					: 0;
list-style-type			: none;
}

#main .ce_gallery li {
float					:none !important;
display					: inline-block;
margin					: 0 15px 10px 0;
padding					: 0;
}

#main .ce_gallery li:before {
content					: none;
}

#main .ce_gallery li img {
margin					: 0;
padding					: 0;
/*border					: 1px solid #fff;*/
}

#main .ce_gallery li a:hover {
border					: 0px solid #fff;
}

#main .ce_gallery .caption
{
/*
width					: 100px;
margin					: 2px 0 10px 0;
*/
}

/********************************************************************************/
/*	Formular	*/

#main form br {
display					: none;
}

#main label {
display					: inline-block;
font-size				: 80%;
/* line-height				: 1.4em; */
line-height				: 1em;
width					: 50px;
width					: 100%;
margin					: 0 0 5px 0;
}

#main .widget-text {
/*display					: inline-block;*/
display					: inline;	
}

#main label[for="ctrl_2"],
#main label[for="ctrl_3"] {
/* margin					: 0 0 5px 11px; */
}

#main label[for="ctrl_7"] {
width					: 500px;
width					: 100%;
}

#main input {
font-size				: 80%;
line-height				: 1.4em;
/*width					: 199px;*/
/* width					: 196px; */
width					: 100%;
height					: 20px;
padding					: 4px;
margin					: 0 0 10px 0;
border					: 1px solid #9aac01;
box-shadow				: inset 1px 1px 1px rgba(0,0,0,0.1);
-moz-box-shadow			: inset 1px 1px 1px rgba(0,0,0,0.1);
-webkit-box-shadow		: inset 1px 1px 1px rgba(0,0,0,0.1);
background				: #f9f9f9;
}

#main button {
font-size				: 80%;
line-height				: 1.4em;
}

/*
ctrl_1
*/

input[type=checkbox] {
display					: none;
}

input[type=checkbox] + label {
padding-left			: 21px;
height					: 16px; 
display					: inline-block;
line-height				: 16px;
background-repeat		: no-repeat;
background-position		: 0 0;
font-size				: 16px;
vertical-align			: middle;
cursor					: pointer;
}

input[type=checkbox]:checked + label {
background-position		: 0 -16px;
}

#main .checkbox_container label {
background-image		: url('../../files/data/img/checkbox.png');
-webkit-touch-callout	: none;
-webkit-user-select		: none;
-khtml-user-select		: none;
-moz-user-select		: none;
-ms-user-select			: none;
user-select				: none;
}

#main textarea {
clear					: both;
font-size				: 80%;
line-height				: 1.4em;
/* width					: 534px; */
width					: 100%;
margin					: 0 0 10px 0;
padding					: 2px 0 2px 4px;
display					: inline;
border					: 1px solid #9aac01;
box-shadow				: inset 1px 1px 1px rgba(0,0,0,0.1);
-moz-box-shadow			: inset 1px 1px 1px rgba(0,0,0,0.1);
-webkit-box-shadow		: inset 1px 1px 1px rgba(0,0,0,0.1);
background				: #f9f9f9;
}

fieldset#ctrl_9 legend {
font-size				: 80%;
line-height				: 1.4em;
margin					: 10px 0;
}

fieldset#ctrl_9 {
margin					: 0 0 10px 0;
}

fieldset#ctrl_9 input {
clear					: both;
float					: left;
width					: 30px;
margin					: 3px 0 0 0;
}

fieldset.checkbox_container label {
float					: left;
/* width					: 500px !important; */
width					: 100% !important;
}

fieldset label#lbl_11_0 {
margin-bottom			: 30px;
}

#main .widget-submit {
margin-top: 20px;
/* float					: right; */
/*background				: #ff0000;*/
}

#main input[type="submit"],
button.submit {
cursor					: pointer;
color					: #fff;
width					: 209px;
height					: 30px;
margin					: 0;
padding					: 1px 10px 3px 10px;
border					: 1px solid #9aac01;
background				: #9aac01;
}

#main input[type="submit"]:hover,
button.submit:hover {
color					: #9aac01;
border					: 1px solid #9aac01;
background				: #fff;
}

.captcha_text {
clear					: both;
display					: block;
text-align				: right;
width					: 625px;
font-size				: 90%;
line-height				: 1.3em;
}

/*	Error Handling	*/

form p.error {
display					: none;
}

label.error {
color					: #ff0000;
font-weight				: bold;
}

/********************************************************************************/

.mod_login {
position				: absolute;
top						: 0;
right					: 0;
width					: 130px;
margin					: 10px 0 0 0;
/*background				: #f5f5f5;*/
}

.mod_login label {
display					: none;
}

.mod_login input,
.mod_login button {
float					: right;
color					: #fff;
font-size				: 80%;
/* line-height				: 20px; */
/* height					: 20px; */
margin					: 0 0 5px 0;
padding					: 2px 4px;
border					: none;
background				: #aaa;
}

.mod_login input.error {
border					: 1px solid #ff0000;
}

.mod_login input[type="text"],
.mod_login input[type="password"] {
width					: 122px;
}

.mod_login button {
cursor					: pointer;
width					: 130px;
height					: 20px;
padding					: 0;
}

.mod_login button img {
width					: 16px;
height					: 16px;
}

.mod_login button:hover {
border					: 0;
}

.mod_login p.error {
font-size				: 70%;
text-align				: right;
color					: #ff0000;
margin					: -5px 2px 5px 0;
}

.login_info {
font-size				: 70%;
text-align				: right;
margin					: 10px 2px 10px 0;
}

#tl_logout .login_info,
.mod_login #tl_logout input {
margin-right			: 15px;
}

::-webkit-input-placeholder {
color					: #ccc;
}

:-moz-placeholder { /* Firefox 18- */
color					: #ccc;
}

::-moz-placeholder {  /* Firefox 19+ */
color					: #fff;
}

:-ms-input-placeholder {  
color					: #ccc;
}

/********************************************************************************/
/*	Mobile Navigation	*/

/*	Fehler mit mobile-menu & position:fixed umgehen	*/
body .mobile_menu_wrapper #wrapper {
	transform: none !important;
	will-change: content !important;
}

.offcanvas {
	z-index: 20;
	position: absolute;
	top: 10px;
	left: 20px;
	width: 40px;
	height: 32px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
}

.offcanvas span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #9aac01;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

.offcanvas span:nth-child(1) {
	top: 0px;
}

.offcanvas span:nth-child(2),
.offcanvas span:nth-child(3) {
	top: 14px;
}

.offcanvas span:nth-child(4) {
	top: 28px;
}

.offcanvas.open span:nth-child(1) {
	top: 18px;
	width: 0%;
	left: 50%;
}

.offcanvas.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.offcanvas.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.offcanvas.open span:nth-child(4) {
	top: 18px;
	width: 0%;
	left: 50%;
}

/********************************************************************************/
/*	Mobile Anpassungen	*/

@media only screen and (max-width : 1200px) {
/* 	html {font-size: 14px;} */
}

@media only screen and (max-width : 991px) {
	#header #nav_main {
	display: none !important;
	}
}

@media only screen and (max-width : 767px) {
/* 	html {font-size: 12px;} */
	
	body:not(.impressionen) #nav_left {
	display: none !important;
	}
	
	#header .impressionen,
	#header .mod_login {
	display: none;
	}

	#header .inside {
	height: 0;
	}
	
	.offcanvas {
/* 	top: 10px; */
	left: inherit;
	right: 20px;
	}
	
	#main .inside {
	padding: 170px 20px 40px 20px;
	}

	#right {
	background: none;
	}
	
	#right .inside {
	padding: 0;
	}

	#right .ce_image {
	text-align: center;
	}
	
	#right .ce_text {
	width: 270px;
	margin: 10px auto;
	}
	
	#main .ce_gallery ul {
/* 	text-align: center; */
	}
}

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

}

@media only screen
and (min-device-width : 375px)
and (max-device-width : 667px)
and (orientation : landscape) {
    body {-webkit-text-size-adjust: 100%;}
}

/********************************************************************************/

/********************************************************************************/
/*
Description: CSS File for Navigation
Theme Name: mo.mento
Theme URI: http://www.mo-mento.de/
Version: 2.0 [11.2020]
Author: V15* Thorsten Neuhaus
Author URI: http://www.v15.de/
*/
/********************************************************************************/

#nav_main {

}

#nav_main ul {

}

#nav_main li {
font-size				: 100%;
margin					: 16px 0 0 0;
float					: left;
}

#nav_main a:link,
#nav_main a:visited,
#nav_main .active a:link,
#nav_main .active a:visited {
color					: #333;
padding					: 15px 25px;
}

#nav_main a:hover,
#nav_main a:active,
#nav_main a:focus {
color					: #fff;
padding					: 15px 25px;
background				: #9aac01;
}

#nav_main span.active,
#nav_main span.trail,
#nav_main strong.active,
#nav_main strong.trail {
font-weight: normal;
color					: #fff;
padding					: 15px 25px;
background				: #9aac01;
}

#nav_main li.trail span,
#nav_main li.trail a {
font-weight: normal;
color					: #fff;
background				: #9aac01;
}

/********************************************************************************/

#nav_left {
display					: inline-block;
margin					: 0 0 30px -40px;
}

#nav_left ul {

}

#nav_left li {
font-size				: 80%;
margin					: 0 0 2px 0;
}

#nav_left a:link,
#nav_left a:visited,
#nav_left .active a:link,
#nav_left .active a:visited {
display					: block;
color					: #9aac01;
margin					: 3px 0 0 0px;
padding					: 3px 15px 2px 55px;
background				: transparent url('../../files/data/img/link.png') 40px 7px no-repeat;
}

#nav_left a:hover,
#nav_left a:active,
#nav_left a:focus {
display					: block;
color					: #fff;
margin					: 3px 0 0 0;
padding					: 3px 15px 2px 55px;
background				: #aaa url('../../files/data/img/link_over.png') 40px 7px no-repeat;
}

#nav_left span.active,
#nav_left strong.active {
font-weight: normal;
display					: block;
color					: #fff;
margin					: 3px 0 0 0;
padding					: 3px 15px 2px 55px;
background				: #aaa;
}

#nav_left li.trail span,
#nav_left li.trail a {
color					: #fff;
background				: #aaa;
}

/********************************************************************************/
/*	Mobile Navigation	*/

.mobile_menu .inner {
	background: #e5ecf2;
}

.mobile_menu .nav_main {
	text-align: center;
	padding: 160px 20px 20px 20px;
	transition: 0.3s;
}

.scrolled .mobile_menu .nav_main {
	padding-top: 90px;
}

.mobile_menu .nav_main li {
	font-size: 2.000rem;
	line-height: 3.000rem;
}

.mobile_menu .nav_main .level_1 a:link,
.mobile_menu .nav_main .level_1 a:visited {
	color: #333;
	border-bottom: none;
}

.mobile_menu .nav_main .level_1 a:hover,
.mobile_menu .nav_main .level_1 a:active,
.mobile_menu .nav_main .level_1 a:focus,
.mobile_menu .nav_main .level_1 strong {
	font-weight: normal;
	color: #9aac01;
	border-bottom: none;
}

.mobile_menu .nav_main .level_2 li {
	font-size: 70%;
	line-height: 1.6em;
/* 	padding-left: 20px; */
}

/********************************************************************************/

