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%}
/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('../../files/sprachkultur/fonts/montserrat-v31-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/sprachkultur/fonts/montserrat-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/sprachkultur/fonts/montserrat-v31-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* CSS */

*{ margin: 0; padding: 0; border: 0;}
html, body {width: 100%; height: auto;}
body {font-size: 100%; font-family: 'Montserrat', Arial, Helvetica, sans-serif; font-weight: 400; font-style: normal; color: #4F4F4F; vertical-align:baseline; background-color: #fff;}
#clear, .clear {clear: both!important; width: auto; height: 0px; font-size: 0.1px;}
img {margin: 0; padding: 0; display: block;}

#container, #footer, #header {width: 100%; height: auto;}
.contentHold  {width: 100%; height: auto; padding: 25px 2% 25px 2%; margin: 0px auto; box-sizing: border-box; position: relative; max-width: 1500px;}

#container {min-height: 550px;}
#header .inside, #footer > .inside {width: 100%; max-width: 1500px; padding: 0 2%; box-sizing: border-box; margin: 0px auto; position: relative; }
#header { width: 100%; height: auto; background-color:#fff; transition: all 0.25s ease;}


/* Smooth Scroll */
	html {scroll-behavior: smooth;}

	@media screen and (prefers-reduced-motion: reduce) {
		html {
			scroll-behavior: auto;
		}
	}




.greenBgr {background-color: #20bd67;}
.greenBgr p {color: #fff;}


/* Basic */

.noMobile, .noMobil {display: block!important;}
.yesMobile, .hRightMobil {display: none!important;}
.overflowHidden {overflow: hidden; position: relative;}


.x1, .x2, .x3, .x32, .x4, .x43, .x30, .x5 {padding: 0% 2%; margin-bottom: 1.25rem; box-sizing: border-box;}
.x1 {width: 98%; display: block;}
.x2 {width: 48%; float: left;}
.x2:nth-child(2n+2) {clear: both;}
.x1, .x2, .x3, .x32, .x4, .x5, .x43 {margin-left: 1%; margin-right: 1%;}

.x30 {width: 30%; float: left;}
.x3 {width: 31%; float: left;}
.x32 {width: 64%; float: left;}
.x4 {width: 23%; float: left;}
.x43 {width: 65%; float: left;}
.x5 {width: 18%; float: left;}
.maxWidth70 {max-width: 70%; padding: 0% 2%; box-sizing: border-box; margin: 0px auto; clear: both; float: none;}
.c2 .contentHold .textContent {width: 50%; float: left;}

object, svg, img {max-width: 100%; height: auto;}
.floatRight {float: right;}
.textCenter {text-align: center;}
.center {margin: 0px auto; text-align: center;}
.centerBlock {margin-left: auto!important; margin-right: auto!important; float: none!important;}
.imgCenter .image_container, .imgCenter img {margin-left: auto; margin-right: auto;}
.marginBottom50 {margin-bottom: 50px; }
.marginBottom100 {margin-bottom: 100px;}
.marginTop25 {margin-top: 25px;}
.marginBottom25 {margin-bottom: 25px;}
.marginTop50 {margin-top: 50px;}
.marginTop100 {margin-top: 100px;}
.paddingTop50, .textContentpaddingTop50 .textContent {padding-top: 50px;}
.paddingTop100, .textContentpaddingTop100 .textContent {padding-top: 100px;}
.paddingTop150, .textContentpaddingTop150 .textContent {padding-top: 150px;}
.paddingBottom100, .textContentpaddingBottom100 .textContent {padding-bottom: 100px;}
.paddingBottom50, .textContentpaddingBottom50 .textContent {padding-bottom: 50px;}

.noMarginBottom {margin-bottom: 0!important;}
.noMargin {margin: 0!important;}
.noPadding {padding: 0;}
.flexBoxHold {display: flex;display: -webkit-flex;display: -ms-flexbox;}
.flexBoxHold .image_container, .flexBoxHold .image_container img {width: auto; height: auto;}

.borderTopSmall {border-top:1px solid #ccc;  padding-top: 50px;}
.borderLeft {border-left: 1px solid #85b411;}
.borderRight {border-right: 1px solid #85b411;}
.borderAfter {display: block;border-bottom: 1px solid #ccc; margin-bottom: 50px; margin-top: 35px;}
.textRight {text-align: right;}
.borderTop::before {content:''; display: block; clear: both; max-width: 70%; margin: 50px auto; border-top: 1px solid #85b411;}
.borderBottom::after {content:''; display: block; clear: both; margin: 50px auto; border-bottom: 1px solid #85b411;}
span.tab {width: 70px; display: block; float: left; margin-right: 10px;}

.textRight {text-align: right;}
.noAfter::after {display: none!important;}
.fullWidth img {width: 100%; height: auto; min-width: 100%;}

.overflowVisible {overflow: visible;}
.contentCenter {display: flex;   justify-content: center;   align-items: center;}
.flyingText {position: absolute; top: 350px; width: 100%; height: auto;}


.scrollMarginTop {scroll-margin-top: 200px;}


/* Typografie */

p, td, #main ul li, #main ol li, input, select, textarea, .ce_text a, #footer a, #footer p {font-size: 1.125rem; line-height: 1.65rem; margin-bottom: 1.65rem; word-wrap:break-word;}
h1, h2, h3, h4, h5, h6, p, td, #main ul li, #main ol li, input, select, textarea, .ce_text a, #footer a, #footer p {hyphens: auto; -moz-hyphens: auto; -o-hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto; font-weight: normal;}

a {text-decoration: none;}

h1, h2, h3, h4, h5, h6 {word-wrap:break-word; hyphens: manual;}
h1 {font-size: 2.5rem; line-height: 2.875rem; color:#20bd67; margin-bottom: 20px;}
h2 {font-size: 2rem; line-height: 2.5rem; color: #636664; margin-bottom: 20px;}
h3 {font-size: 1.875rem; line-height: 2rem; color: #20bd67; margin-bottom: 1.35rem;}
h3::before {content:''; width: 25px; height: 25px; background: url(../../files/sprachkultur/img/circle.svg) center no-repeat; background-size: cover; display: inline-block; margin-right: 20px;}
h3::after {content:''; width: 150px; height: 2px; background-color: #acacac; display: block; margin: 25px 0 10px}
h4 {font-size: 1.65rem; line-height: 2rem; margin-bottom: 25px;}
.greenBgr h4 {color: #fff;}
h5 {}
h6 {}


/* Header */
.logo {width: 420px; max-width: 80%; height: auto; overflow: hidden; transition: all .25s ease; float: left; padding-top: 25px;} 
.logo a span {text-indent: -9999px;display: block;position: absolute;}
.logo a {display: block; height: 100%; overflow: hidden; transition: all 0.25s ease; margin-top: 35px; margin-bottom: 10px;}
.logo a img, .logo a svg {height: auto; width: 100%; transition: all 0.25s ease;}
#header.scroll .logo {width: 350px; height: auto; margin-bottom: 0; transition: all .25s ease;}

.hRight {float: right; padding-top: 50px;}
.hRight p {font-size: 1.0125rem; line-height: 1.25rem; color:#636364; margin-bottom: 10px; position: relative; padding-left: 35px;}
.hRight p a {color:#20bd67; text-decoration: none;}

p.mail::before {content:''; width: 15px; height: 15px; position: absolute; left: 0; top: 2px; background: url(../../files/sprachkultur/img/mail.svg) center no-repeat; background-size: contain;}
p.phone::before {content:''; width: 15px; height: 15px;  position: absolute; left: 0; top: 2px; background: url(../../files/sprachkultur/img/phone.svg) center no-repeat; background-size: contain;}
p.contact::before {content:''; width: 15px; height: 15px;  position: absolute; left: 0; top: 2px; background: url(../../files/sprachkultur/img/home.svg) center no-repeat; background-size: contain;}

.sprachenliste {font-size: 2rem; line-height: 3rem; padding: 5px 25px; hyphens: manual; }


.hintWork {padding: 80px 50px 50px 30px;}
.hintWork p {text-align: center; font-size: 1.25rem; line-height: 1.875rem; color: #fff; max-width: 70%; margin: 0px auto; hyphens: manual;}

.short .x2 {margin-bottom: 50px;}

#footer {background-color: #636664; padding-top: 25px; padding-bottom: 10px;}
#footer p {color: #f2f2f2;}
#footer ul {list-style: none; float: right;}
#footer ul li {float: left;}
#footer ul li a, #footer ul li strong {color: #f2f2f2; padding: 5px 10px; text-decoration: none; font-size: 1.125rem; line-height: 1.65rem; font-weight: normal;}
#footer ul li strong, #footer ul li a:hover {color:#20bd67;}

/* Cookiebar Oveleon*/

.cc-inner {background:radial-gradient(circle at center right, #39383d 0, #29282d 60%, #1f1e23 100%); max-width: 500px; top: 15%!important; position: fixed;}
.cc-cookies {background-color: #424242;}
.cc-head p, .cc-group label {color: #f2f2f2;}
.cc-head p a {color:#a0c72e; text-decoration: none;}
button.cc-btn.success {background-color: #a0c72e; color: #465f0a; transition: all 0.25s ease;}
button.cc-btn.success:hover {background-color:#465f0a; color: #fff; transition: all 0.25s ease;}

.mod_cookiebar_opener a {text-align: right; float: right; color: #fff;}
.cookieLink {float: right; color: #f2f2f2; text-decoration: none; padding-right: 5px; box-sizing: border-box;}

@media screen and (max-width: 1000px)
{
    .x32, .x3, .x2 {width: 98%;}
    #header .logo, #header .hRight {float: none; display: block; margin-left: auto; margin-right: auto; max-width: 80%;}

    .marginTop100 {margin-top: 50px;}

    h1 {font-size: 1.875rem; line-height: 2.25rem; margin-bottom: 25px;}
    h2 {font-size: 1.675rem; line-height: 2rem;}
    h3 {font-size: 1.475rem; line-height: 1.875rem;}

    .hintWork {padding: 40px 35px 20px 35px;}
    .short h3::before {height: 30px; width: 30px; top: 5px; position: relative;}
    .cookieLink {float: none; padding: 5px;}
}
