:root {
    --main-light-blue: #2176a8;
    --main-dark-blue: #002a44;
    --main-bg-gradient: linear-gradient(80deg, #b6e026 0, #3eae5b 100%);
    --light-green: #b6e026;
    --dark-green: #3eae5b;
    --blue-bg-gradient: linear-gradient(80deg, #2176a8 0, #002a44 100%);
}

/* ##### ##### ##### START GLOBALS #### #### #### */

body {
    font-family: 'Montserrat', sans-serif;
}

#fm-stoerer .image_container {
    position: absolute !important;
    right: 30px !important;
    top: -50px !important;
    z-index: 100 !important;
    width: 598px !important;
    height: 450px !important;
}

.logo a {
background-image: url(../img/layout/logo-neu.png) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.ce_revolutionslider_text.bold,
.font_headline {
    font-family: 'Montserrat', sans-serif;
    hyphens: none;
}

#contentwrapper {
    background: #fff;
}

.ce_bgimage.bg-nocolor {
    background: unset !important;
}

.bg-fixed {
    background-attachment: fixed;
}
.ce_list.list-style3 li, .ce_list.list-style3 li.fa, .ce_list.style3 li, .ce_list.style3 li.fa {
font-size: 1rem;
}
.ce_headline_extended h1 {
    text-transform: uppercase;
}

.mod_article h2 {
    -webkit-transition: background-size .6s ease-out;
    transition: background-size .6s ease-out;
    background: linear-gradient(135deg, #b6e026 0, #3eae5b 100%) no-repeat left 87%/0 0.3em;
    background: linear-gradient(135deg, #b6e026 0, #3eae5b 100%) no-repeat left 87%/0 0.3em;
    max-width: max-content;
}

.image_container img {
    clip-path: ellipse(67% 80% at 50% 52%);
    transition: 600ms;
}
.newslist-v6 {
height: auto !important;
}
#start img:hover {
    clip-path: ellipse(58% 80% at 39% 54%);
}

.bg-white .ce_text ol,
.bg-white .ce_list ol {
    color: #555 !important;
}

p a {
    color: #002a44;
    font-weight: 900;
    letter-spacing: 1px;
}
.ce_hyperlink-extended a {
    border-radius: 4px;
}

.mod_article .ce_bgimage .ce_bgimage .ce_bgimage-outer:hover h2,
.mod_article.side-cut-right:hover h2 {
    background-size: 100% 0.3em !important;
}

.ce_hyperlink-extended i {
    transition: cubic-bezier(0.215, 0.610, 0.355, 1) 600ms
}

.mod_article .ce_bgimage .ce_bgimage .ce_bgimage-outer:hover .ce_hyperlink-extended i,
.mod_article.side-cut-right:hover .ce_hyperlink-extended i,
#start:hover .ce_hyperlink-extended i {
    margin-right: 20px;
}

.ce_headline_extended span.color-accent {
    display: block;
    font-size: 0.75em;
    font-weight: 500;
    text-transform: none;
    hyphens: none;
}

h3,
.h3,
.h3 p {
    text-transform: uppercase;
    hyphens: none;
}

.ce_headline_extended h3 span.color-accent {
    font-size: 0.9em;
    hyphens: none;
    font-weight: 600;
}

.side-cut-right {
    clip-path: circle(80% at 33% 11%);
    transition: 800ms ease-in-out;
}
.txt-uppercase {
    text-transform: uppercase;
}
#slider .txt-uppercase{
    text-shadow: 0px 0px 40px rgba(0,0,0,0.7), 0px 0px 10px rgba(0,0,0,0.2)
}
.side-cut-right:hover {
    clip-path: circle(80% at 37% 11%);
}

.side-cut-left {
    clip-path: circle(91.4% at 80% 11%);
    transition: 800ms ease-in-out;
}

.side-cut-left:hover {
    clip-path: circle(98.4% at 80% 11%);
}

.ce_text ol,
.ce_list ol {
    padding-left: 35px;
    color: white;
}

.ce_list li.fa::after {
    left: -20px;
}

.bg-nocolor .ce_list ol li{
    color: #555 !important
}

.bg-second .ce_list ol li {
color: #fff !important;
}

.ce_list.list-style3 li.fa::before,
.ce_list.style3 li.fa::before {
    left: -30px;
}

.ce_list.list-style3 li,
.ce_list.list-style3 li.fa,
.ce_list.style3 li,
.ce_list.style3 li.fa {
    margin-bottom: 13px;
}

.ce_text ul,
.ce_list ul,
.ce_text ol,
.ce_list ol {
    margin-top: 15px;
}


.gradient-bg.ce_hyperlink a {
    border: unset;
    background: var(--main-bg-gradient);
}

.gradient-bg.ce_revolutionslider_hyperlink {
    border: unset;
    background: var(--main-bg-gradient);
}

.gradient-bg-blue.ce_hyperlink a {
    border: unset;
    background: var(--blue-bg-gradient);
}

span.color-accent,
#footer li::before,
footer h4,
.gradient-text,
.ce_text_extented.font-style-quote p:first-child::after,
.ce_iconbox.version3.xsmall i::before,
#top strong, 
.ce_teambox .name{
    background: #b6e026;
    background: var(--main-bg-gradient);
    ;
    background: var(--main-bg-gradient);
    ;
    background-clip: border-box;
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-box-decoration-break: clone;
}
.ce_teambox *{
	hyphens: none;
}
.full-width-block .ce_bgimage-inside {
    max-width: unset !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.full-width-block .autogrid_grid {
    max-width: 1240px !important;
    margin-left: auto;
    margin-right: auto;
}

.grau-verlauf .offset_layer {
    background: rgb(247, 247, 247);
    background: linear-gradient(180deg, rgba(247, 247, 247, 0) 0%, rgb(232, 240, 246) 40%) !important;
}
.ce_text_extented ul {
list-style: none;
list-style: disc;
padding-left: 25px;
margin-bottom: 1em;
}

/* ##### ##### ##### END GLOBALS #### #### #### */
/* ##### ##### ##### START TOP TEXT #### #### #### */

.ce_image .image_container img {
    height: 100%;
    object-fit: cover;
}

.image_container {
    height: 100%;
    object-fit: cover;
}

.ce_image.block {
    height: 100%;
    object-fit: cover;
}

/*
#main .img-cover {
  height: 100%;
}
#main .img-cover *{
  height: 100% !important; 
  object-fit: cover !important;
}
*/

/* ##### ##### ##### END TOP TEXT #### #### #### */
/* ##### ##### ##### START NAVIGATION #### #### #### */
#fix-wrapper {
    position: fixed;
}

.header {
    padding-top: 0px;
    padding-bottom: 0px;
}

.header.original .mainmenu ul li {
    line-height: unset;
}

.a-level_1.regular.active span {
    color: white;
    font-weight: 700;
}

.header .mainmenu ul li a.trail,
.header .mainmenu ul li a.active {
    background: var(--main-bg-gradient);
}

.header .mod_socials {
    margin-top: 0px;
}

.header.original .logo {
    margin-top: 0px;    
    width: 150px !important;
}

.a-level_1.regular.active span {
    line-height: 120px;
}
.mainmenu ul ul li a:hover:not(.menuheader):not(.megamenu), .mainmenu ul ul li a.active, .mainmenu ul ul li a.trail:not(.megamenu) {
background: #e8f0f6 !important;
}
.mainmenu ul ul li a:hover:not(.menuheader):not(.megamenu), .mainmenu ul ul li a.active, .mainmenu ul ul li a.trail:not(.megamenu) {
background: #e8f0f6 !important;
}
/* ##### ##### ##### END NAVIGATION #### #### #### */
/* ##### ##### ##### START SPEZIAL HOVEREFFEKT #### #### #### */
.header .mainmenu ul.vlist.level_2 {
    border-top: none;
}

.header .mainmenu ul.vlist.level_2 li.mlist a {
    overflow: hidden;
}

.header .mainmenu ul.vlist.level_2 li.mlist>a:before, .header .mainmenu ul.vlist.level_2 li.mlist a:before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    top: 5px;
    left: 5px;
    background-color: #696969;
    transform: scale(0);
    transition: transform 0.3s ease-out;
}

.header .mainmenu ul.vlist.level_2 li.mlist:hover>a:before, .header .mainmenu ul.vlist.level_2 li.mlist a {
    transform: scale(1);
}

.header .mainmenu ul.vlist.level_2 li:hover>a {
    background: transparent !important;
}

.header .mainmenu ul.vlist.level_2 li a:hover {
    background: transparent !important;
}

.header .mainmenu ul ul li a:hover:not(.menuheader):not(.megamenu),
.header .mainmenu ul ul li a.active,
.header .mainmenu ul ul li a.trail:not(.megamenu) {
    color: #696969 !important;

}

.header .mainmenu ul.vlist.level_1 ul {
    z-index: 0;
    display: block;
    border-bottom-right-radius: 50%;
    max-width: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, max-width 0.3s ease-out, border-radius 0.3s ease-out;
    animation: none;
    box-shadow: 1px 13px 15px rgb(0 0 0 / 20%);
}

.header .mainmenu ul.vlist.level_1 li:hover>ul {
    z-index: 10;
    border-bottom-right-radius: 0;
    max-width: 500px;
    max-height: 500px;
    transition: max-height 0.3s ease-out, max-width 0.3s ease-out, border-radius 0.3s ease-out;
}

.header .mainmenu ul.vlist.level_1 li:hover>ul:hover {
    overflow: visible;
}

.mainmenu ul ul li a {
    line-height: 42px !important;
    transition: none !important;
}

/* ##### ##### ##### START SPEZIAL HOVEREFFEKT #### #### #### */
/* ##### ##### ##### START SLIDER #### #### #### */
.ce_revolutionslider_text {
    text-shadow: 0px 0px 38px rgba(10, 10, 10, 0.6);
    overflow: visible;
}
.font-size-xxxxxl, .font-size-xxxxxl p {
font-size: 3.9vw !important;
hyphens: none;
overflow: visible;
line-height: 0.9;
}
#slider {
    clip-path: circle(91.4% at 80% 11%);
    transition: 800ms ease-in-out;
padding-top: 100px;
}
.content_page #slider .ce_bgimage{
	height: calc(100vh - 120px);
}
#slider:hover {
    clip-path: circle(98.4% at 80% 11%);
}
.content_page #slider .ce_bgimage-outer{
	height: 100%;
}
.content_page #slider .ce_bgimage-outer .ce_bgimage-inside{
	height: 100%;
	display: flex;
	align-content: center;
	justify-content: center;
}
.content_page #slider .ce_bgimage-outer .ce_text_extented{
	align-self: center;
}
/* ##### ##### ##### END SLIDER #### #### #### */
/* ##### ##### ##### START STARTSEITE #### #### #### */

.teaserboxes .ton2 .ce_iconbox_v2.style2 {
    background: rgba(33, 118, 168, 0.04);
}

.teaserboxes .ton3 {
    background: rgba(33, 118, 168, 0.06);
}

.teaserboxes .ton4 {
    background: rgba(33, 118, 168, 0.08);
}

.teaserboxes .ton5 {
    background: rgba(33, 118, 168, 0.10);
}

.teaserboxes .ton6 {
    background: rgba(33, 118, 168, 0.12);
}

.teaserboxes .ton7 {
    background: rgba(33, 118, 168, 0.14);
}

.teaserboxes .container {
    margin-right: 50px !important;
    margin-left: 25px !important;
}

.teaserboxes .autogrid_grid .column {
    padding-left: 0px;
    padding-right: 0px;
}

.teaserboxes .ce_iconbox_v2.style2 {
    height: 100%;
    overflow: visible;
}

.teaserboxes .ce_iconbox_v2.style2 {
    border-left: 1px solid rgb(225, 225, 225);
    border-radius: 10px;
    margin-left: 20px;
}

.teaserboxes .ce_iconbox_v2.style2 .headline {
    color: #555;
    transition: 600ms;
}

.ce_iconbox_v2:hover {
    scale: 1.025;
}

.ce_iconbox_v2.style2 {
    transition: 300ms;
}

/*
.teaserboxes .ce_iconbox_v2.style2:hover .headline {
  color: var(--main-light-blue);
}
*/
.ce_iconbox_v2.style2 .link {
    -webkit-transition: background-size .6s ease-out;
    transition: background-size .6s ease-out;
    background: var(--main-bg-gradient) no-repeat left 87%/0 30%;
    background: var(--main-bg-gradient) no-repeat left 87%/0 30%;
    background-size: 0px 0.3em;
    max-width: max-content;
}

.ce_iconbox_v2.style2:hover .link {
    background-size: 88% 30% !important;
}

.ce_iconbox_v2.style2 .link::after {
    content: "\f061";
}

.ce_iconbox_v2.style2 .link::after {
    transition-delay: 600ms;
}

.ce_iconbox_v2.style2:hover .link::after {
    color: var(--dark-green)
}

.ce_iconbox_cwrapper {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
}

.ce_iconbox_inside {
    display: flex;
    height: 100%;
}

.ce_iconbox_v2.style2 .ce_iconbox_outside {
    height: 100%;
}

.ce_iconbox_v2.style2 .link {
    align-content: flex-end;
    align-self: end;
}

/* ##### ##### ##### END STARTSEITE #### #### #### */
/* ##### ##### ##### START CTA #### #### #### */
/*#cta .ce_bgimage-image{
	background-image: url("/files/cto_layout/img/mze-wohnbuch/_MG_5069_CMYK-52.jpg") !important;
}
*/
.ce_text_extented.font-style-quote p:first-child:before {
    top: 33%;
    opacity: 1;
    color: #2176a8 !important;
}

.ce_text_extented.font-style-quote p {
    border-left: unset !important;
    padding-left: 80px;
}

#cta .ce_hyperlink a,
a.btn {
    border: unset;
}

#cta .ce_hyperlink-extended a.link-white.outline:hover {
    background: var(--main-bg-gradient);
    opacity: 0.8
}

/* ##### ##### ##### END CTA #### #### #### */
/* ##### ##### ##### START TEAMBOXES #### #### #### */

.teambox-wrapper .autogrid_grid {
max-width: 1440px !important;
}
.teambox-wrapper .ce_teambox.hover_image .team-content-hover {
padding: 25px;
}
/* ##### ##### ##### END TEAMBOXES #### #### #### */
/* ##### ##### ##### START KONTAKT #### #### #### */
.kontaktseite form.style2 {
background: #fff;
padding: unset;
}
.kontaktseite input, .kontaktseite textarea, .kontaktseite select {
background-color: rgb(249, 249, 249);
}
.kontaktseite input::placeholder, .kontaktseite select::placeholder, .kontaktseite textarea::placeholder{
	color: #444;
	opacity: 0.5;
}
/* ##### ##### ##### END KONTAKT #### #### #### */
/* ##### ##### ##### START FOOTER #### #### #### */

#footer a:hover,
#bottom .inside a:hover {
    color: white;
    opacity: 0.8;
    letter-spacing: 1.25px;
}

/* ##### ##### ##### END FOOTER #### #### #### */


/* ##### ##### ##### START MEDIA QUERIES #### #### #### */

@media only screen and (min-width: 768px) {
    .header.original .logo {
        width: 170px;
    }
   
}@media only screen and (min-width: 1921px) {
.font-size-xxxxxl, .font-size-xxxxxl p {
font-size: 2.9vw !important;
}}

#stoerer .image_container {
    position: absolute !important;
    right: 60px !important;
    top: 25px !important;
    z-index: 100 !important;
    width: 350px !important;
    height: 350px !important;
}

@media (max-width: 800px) {
    #stoerer .image_container img {
        width: 250px !important;
        height: 250px !important;
    }
}

/* GALERIE */
.ce_gallery .image_container i.fa.fa-plus-circle:before {
	background: none;
}
.ce_gallery .image_container i.fa.fa-plus-circle:after {
	background: none;
}
	
.ce_gallery .content {
	    background: none;
    opacity: 0.8;	}

    

    .fm-cover-problem .ce_bgimage-image{
        background-size: cover !important;
    }