@charset "utf-8";
@font-face {
  font-family: 'fontello';
  src: url('fonts/fontello/fontello.eot?95275107');
  src: url('fonts/fontello/fontello.eot?95275107#iefix') format('embedded-opentype'),
       url('fonts/fontello/fontello.woff2?95275107') format('woff2'),
       url('fonts/fontello/fontello.woff?95275107') format('woff'),
       url('fonts/fontello/fontello.ttf?95275107') format('truetype'),
       url('fonts/fontello/fontello.svg?95275107#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/Material-Icons.woff2) format('woff2');
}

.iconG {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 140%;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -moz-font-feature-settings: 'liga';
  -moz-osx-font-smoothing: grayscale;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;
}

body { font-family:  myriad-pro, sans-serif; font-size:100%; color:var(--secondary); width: 100%; height: 100%; height: 100vh; background-color: var(--white); font-weight: 400; background: var(--white); padding-top: 100px; }
body.overflow_hidden { overflow-y:hidden; }

#dev { position: fixed; top: 0; left: 0; padding: 20px; background: var(--white); z-index: 999; }

.clearfloat { clear:both; height:0; font-size: 1px; line-height: 0px; }
.clearfix:before,.clearfix:after { content: " "; display: table; }  
.clearfix:after { clear: both; }  
.clearfix { *zoom: 1; }
h1, h2, h3, h4, a.title { display: block; font-family: myriad-pro-condensed, sans-serif; text-align: left; }
h1, h2:first-child { font-size: 350%; margin:10px 0 40px 0; text-align: center; font-weight: 300; text-transform: uppercase; }
h1 span, h2:first-child span { font-weight: 500; }
h1:first-child { margin-top:0; }
h2, a.title { font-size:180%; margin:20px 0 10px 0; color: var(--primary); }
h2 + p { margin-top: 0; }
h2:after { height: 2px; width: 100px; background: var(--secondary); margin-top: 10px; display: block; content: ''; }
h3 { font-size:160%; margin:20px 0 10px 0; }
h4 { font-size:140%; margin:15px 0 5px 0; }
p { margin:10px 0 0 0; }
a, .hash_click_link { color: var(--secondary); text-decoration:underline; cursor: pointer; }
.fakelink { text-decoration: underline; }
a.pdf { text-decoration:none; display:inline-block; margin: 10px 0; font-size: 120%; outline: none; }
.download a.pdf, a.pdf.decent { background: none; border: none; padding: 0; display: block; }
a.pdf:before { content: "\E805"; font-family: "fontello"; font-style: normal; font-weight: normal; font-size: 25px; margin-right: 10px; }
a img { border:none; display: block; width: 100%; }
.icon { font-family: 'fontello'; }
b, strong { font-weight: 700; }
.center { text-align: center; }
.mail { white-space: nowrap; }

.iconText { line-height: 35px; display: inline-flex; align-items: center; column-gap: 8px; }
.lText .iconText { display: flex; align-items: flex-start; margin:10px 0; }


.schwarz { color: var(--white); }
.schwarz h1, .schwarz h2, .schwarz h3, .schwarz h4 { color: var(--white); }
.schwarz h1 span, .schwarz h2 span { color: var(--primary); }
.gruen { color: var(--white); }
.gruen h1, .gruen h2, .gruen h3, .gruen h4 { color: var(--secondary); }
.gruen h1 span, .gruen h2 span { color: var(--white); }

.small_container { width: 100%; max-width: 700px; margin: 0 auto; text-align: center; }
.small_container table { text-align: left; width: 100%; max-width: 300px; margin: 0 auto; }
.small_container table tr td:last-child { text-align: right; }
.small_container table tr td:first-child { text-align: left; }

.leistung_wrapper { margin: 0 -1%; }
.leistung_wrapper .leistung_el { float: left; width: 31.33%; margin: 1%; }
.leistung_wrapper .leistung_el img { display: block; width: 100%; }
.leistung_wrapper .leistung_el div { display: block; width: 100%; font-weight: 700; font-size: 170%; background: var(--secondary); color: var(--primary); padding: 15px 20px; font-family: myriad-pro-condensed, sans-serif; }

.button { color: var(--primary); background: var(--secondary); padding: 5px 20px; text-transform: uppercase; display: inline-block; text-decoration: none; font-size: 110%; margin: 20px auto 0 auto; text-align: center; width: auto; font-weight: 700; font-family: myriad-pro-condensed, sans-serif;  }
.button:hover { color: var(--secondary); background: var(--primary); }

.font_ninety { font-size: 90%; }
.container { width:100%; max-width:1200px; margin:0 auto; position:relative; z-index: 1; text-align: justify; }
.highlight_link, .btn { color: var(--primary); background: var(--secondary); border-left: 5px solid var(--primary); padding: 5px 10px; display: inline-block; text-decoration: none; float: right; margin-top: 10px; }
.highlight_link { float: none; }
.todo { text-decoration: blink; font-size: 100%; color: #f00; border: 1px solid var(--secondary); padding: 2px; }
.todo:before { content: 'TODO: '; text-decoration: underline; }
.embed-container { position: relative; padding-bottom: 57.5%; overflow: hidden; width: 100%; height: auto; margin-top: 20px; }
.embed-container iframe, .embed-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; }

/* headlines with lines */
.decorated { overflow: hidden; text-align: center; }
.decorated > span { position: relative; display: inline-block; text-transform:uppercase; }
.decorated > span:before, .decorated > span:after { content: ''; position: absolute; top: 50%; border-bottom: 1px solid var(--secondary); width: 591px; margin: 0 10px; }
.decorated > span:before { right: 100%; }
.decorated > span:after { left: 100%; }

.zweispaltig { width: 100%; -moz-column-count: 2; -moz-column-gap: 40px; -webkit-column-count: 2; -webkit-column-gap: 40px; text-align: left; }
.zweispaltig p:first-child, .zweispaltig h2:first-child { margin-top: 0; }

.fltlft { display: block; float: left; margin: 0 4% 4% 0; }
.fltrt { display: block; float: right; margin: 0 0 4% 4%; }
.fltlft img, .fltrt img { display: block; width: 100%; }

.icon_wrapper { margin: 10px 0; }
.icon_el { display: block; line-height: 25px; text-decoration: none; }
.icon_el:before { font-family: "fontello"; font-style: normal; font-weight: normal; font-size: 20px; margin-right: 5px; color: var(--secondary); text-align: center; width: 20px; display: inline-block; }
.icon_el.tel:before { content: "\E802"; }
.icon_el.mail:before { content: "\E801"; }
.icon_el.fax:before { content: "\E808"; font-size: 18px; }
.icon_el.web:before { content: "\E815"; }
.icon_el.mobil:before { content: "\E816"; }
.icon_el.www:before { content: "\E817"; }
.icon_el.maps:before { content: "\E803"; }

.header_tel_link { font-family: myriad-pro-condensed, sans-serif; display: block; float: right; font-weight: 700; font-size: 180%; color: var(--primary); background: var(--secondary); text-decoration: none; padding: 15px 25px; }
.header_tel_link div { float: left; line-height: 50px; }
.header_tel_link:before { float: left; font-family: "fontello"; font-style: normal; font-weight: normal; font-size: 40px; margin-right: 15px; color: var(--primary); text-align: center; width: 50px; display: block; content: "\E810"; }

.fullpic { display: block; width: 100%; }

header { z-index:500; width:100%; top: 0px; left:0px; position: fixed; background: var(--white); box-shadow:0px 0px 10px 1px rgba(0,0,0, 0.15); -moz-box-shadow:0px 0px 10px 1px rgba(0,0,0, 0.15); -webkit-box-shadow:0px 0px 10px 1px rgba(0,0,0, 0.15); padding: 0; z-index: 501; }

.logo { display: block; float: left; width: auto; height: 70px; outline: none; margin: 15px 0; }
.logo img { display: block; width: auto; height: 100%; }

main .content { position: relative; overflow: hidden; margin-bottom: -1px; }
main .content .container { padding: 7% 0 3.5% 0; }
body.impressum main .content .container, body.datenschutz main .content .container, body.fehler main .content .container { padding-top: 3%; }

main .content#leistungen .container { padding-bottom: 7%; }
main .content.weiss { background: var(--white); }
main .content.grau { background: var(--lightgrey); }

.aktuelles_sidebar { margin-bottom: 15px; }
.aktuelles_sidebar .text { font-size: 110%; }

.trenner { width: 100px; height: 100px; margin: 0 auto; background: var(--primary); padding: 0 0; border-radius: 100px; }
.trenner:before { font-family: "fontello"; font-style: normal; font-weight: normal; font-size: 40px; height: 100px; width: 100px; color: var(--white); text-align: right; display: flex; content: "\E811"; justify-content: center; align-items: center; }
#home .trenner { display: none; }

.impressum h1, .datenschutz h1 { text-align: left; }
.impressum .trenner, .datenschutz .trenner { margin: 0; }

/* menu > */
.headerPhone { float: right; line-height: 40px; margin: 30px 0 0 10px; font-size: 140%; font-family: myriad-pro-condensed, sans-serif; font-weight: 400; background: var(--primary); padding: 0 15px; color: var(--white); }
.headerPhone.icon_el:before { color: var(--white); font-size: 90%; }
.menu_wrapper { float: right; margin: 0; }
.menu_wrapper .container { margin: 25px 0; }
.menu { list-style:none; padding:0; margin:0; position:relative; display:block; width:auto!important; right:0px; text-indent: 0; }
.menu li { float:left; width: auto; padding: 0; }
.footer_menu ul li:before, .menu li:before { content: ''; margin: 0; padding: 0; }
.menu li:nth-child(2) { border-left:none; }
.menu li a { font-family: myriad-pro-condensed, sans-serif; text-transform: uppercase; font-weight: 400; color:var(--secondary); font-size: 140%; display:block; text-decoration:none; text-align: center; padding: 0 20px; line-height: 50px; }
.menu li:nth-child(2) a { margin-left: 0; }
.menu li a.subaktiv { font-weight: 700; }
.menu li a:hover, .menu li a:focus, .menu li a.aktiv { outline:none; color: var(--primary); }
.menu .sub { background: var(--primary); min-width:25%; list-style:none; margin:0; padding:0; position:absolute; top: 46px; z-index:50; display:none; text-indent: 0; width: auto; }
.menu .sub li { float: none; width:auto; margin: 0; padding: 0; border-bottom: 2px solid var(--white); background: none; }
.menu .sub li:last-child { border: none; }
.menu .sub li a { background: none; color:var(--secondary); font-size:110%; text-align:left; margin: 0; width: 100%; padding: 0; line-height: 40px; border: none; }
.menu .sub li a span { padding: 0px 20px; line-height: 40px; display: inline-block; }
.menu .sub li a.aktiv span, .menu .sub li a:focus span { background: var(--secondary); color: var(--white); border: none; }
.menu .sub li a:hover, .menu .sub li a:focus, .menu .sub li a.aktiv { border: none; }
nav div.menu_mobile { display: none; font-size:250%; cursor:pointer; color:var(--white); }
body.overflow_hidden nav div.menu_mobile { color: var(--secondary); }
.menu .sub.zweite_ebene { padding: 10px; }
.menu .sub.dritte_ebene { display: block; position: static; margin-top: 0px; }
.menu .sub.dritte_ebene li { float: left; padding: 0; border: none; }
.menu .sub.dritte_ebene li a { font-size: 80%; line-height: 30px; }
.menu .sub.drei { left: 0; width: 100%; }
.menu .sub.zwei { padding: 0; }
.menu .sub.zwei li { border: none; }
.menu .sub.zwei li a span { display: block; width: 100%; }
/* < menu */

/* sitemap_menu > */
ul.sitemap_menu, ul.sitemap_menu li ul { list-style:none; font-size:120%; text-transform:uppercase; }
ul.sitemap_menu a { text-decoration:none; }
ul.sitemap_menu li { margin:5px 0; }
ul.sitemap_menu li ul { font-size:80%; text-transform:none; }
ul.sitemap_menu .sub { display:block; }
div.sitemap_org a { display:block; }
/* < sitemap_menu */

/* swiper > */
.slider_container {  width: 100%; height: auto; display: block; }
.swiper-slide { overflow: hidden; }
.swiper-slide img { width:100%; height:auto; display: block; }
.swiper-slide .caption { display: inline-block; top: 30%; right: -1000px; width: auto; position: absolute; z-index: 25; transition: all 0.5s ease-in-out 0s; font-family: myriad-pro-condensed, sans-serif; line-height: 1; margin: 0; font-weight: 300; text-align: right; color: var(--primary); font-size: 450%; max-width: 1000px; text-shadow: 0px 0px 5px var(--white50); }
.swiper-slide .caption span { font-weight: 700; }
.swiper-slide .caption div { padding: 0 30px; }
.swiper-slide .caption.show { right: 0; }
.swiper-slide .caption h1 { margin: 0 0 10px 0; padding: 0 30px 10px 30px; border-bottom: 2px solid var(--primary); font-weight: 300; text-transform: uppercase; font-size: 150%; line-height: 1; text-align: right; }
.swiper-pagination-bullet { border-radius: 100%; background: var(--white); opacity: 0.8; width: 8px; height: 8px; }
.swiper-pagination-bullet-active { background: var(--secondary); }
.schatten { display: block; width: 100%; }
.swiper-button-next, .swiper-button-prev { height: 30px; width: 30px; display: none; }
.galerySlider .swiper-button-next, .galerySlider .swiper-button-prev { display: block; height: 100%; top: 0; margin: 0; background-color: var(--white70); background-size: 20px 40px; width: 40px; }
.galerySlider .swiper-button-next:hover, .galerySlider .swiper-button-prev:hover { background-color: var(--primary70); background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }
.galerySlider .swiper-button-next { right: 0; }
.galerySlider .swiper-button-prev { left: 0; }

.galerySlider .swiper-button-prev:hover { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }
.swiper-pagination { display: none; }

.welle { width: 101%; display: block; position: absolute; bottom: -41px; left: -1px; z-index: 3; }

.praxis_slider .swiper-pagination { display: block; }
.praxis_slider .swiper-pagination-bullet { width: 15px; height: 15px; }
.praxis_slider .swiper-pagination-bullet-active { background: var(--primary); }
/* < slider */

/* color pfeile, dreieck, etc. */
.callbacks_nav:before { color:var(--secondary); }
[class*='lightcase-icon-']:before { color:var(--white); }

.map, iframe { display: block; width: 100%!important; height: 500px; border: none; }
iframe.big_map { height: 600px; }
.map { height: 450px; }

input, textarea, select { border: none; border-bottom: 1px solid var(--secondary); background: none; border-radius: 0px; box-shadow: none; color: var(--secondary); display: block; font-size: 120%; padding: 5px; transition: all .5s linear 0s; width: 100%; margin-bottom: 20px; font-family: myriad-pro-condensed, sans-serif; outline: none; }
input[type="checkbox"], input[type="radio"] { border: none; box-shadow: none; display: inline-block; padding: 0px; width: auto; height: auto; margin: 0; margin-bottom: 10px; }
textarea { height: 145px; }
label { display: block; width: 100%; text-align: left; margin: 0; margin-bottom: 3px; }
#submit { width: auto; background: var(--primary); color: var(--white); line-height: 40px; padding: 0 15px; font-size: 120%; border: none; cursor: pointer; }
#submit:hover { text-decoration: underline; }
#ds_container { margin: 0px 0 20px 0; border-bottom: 1px solid var(--lightgrey); transition: all .5s linear 0s; }
#ds_container label { width: 95%; float: left; margin-left: 0.5%; margin-top: 0; }
#ds_container input[type="checkbox"] { margin-top: 3px; width: auto; float: left; }
.warning { border-color: var(--warning)!important; color: var(--warning)!important; }
.warning a { color: var(--warning)!important; }

#responseKontakt { display: none; color: var(--white); background: var(--secondary); padding: 10px 20px; line-height: 1; }

.fifty_wrapper { margin: 0 -1%; }
.fifty_wrapper .fifty { display: block; float: left; width: 48%; margin: 1%; }

.bild_text img { display: block; width: 100%; }
.bild_text .text { margin-top: 5px; }

.bild_rechts { float: right; margin: 0 0 20px 20px; }
.bild_links { float: left; margin: 0 20px 20px 0; }
.bild_rechts img, .bild_links img { display: block; width: 100%; }
.bild_rechts, .bild_links { display: block; max-width: 250px; width: 100%; }
.bild_rechts.small, .bild_links.small { max-width: 150px; }
.bild_rechts.big, .bild_links.big { max-width: 350px; }
.bild_rechts.mega, .bild_links.mega { max-width: 450px; }

.iconbox { text-decoration: none; margin: 10px 0; }
.iconbox:before { font-family: "fontello"; font-style: normal; color: var(--secondary); font-weight: normal; font-size: 25px; margin-right: 5px; display: block; width: 30px; text-align: center; float: left; margin-top: -5px; line-height: 25px; }
.iconbox.position:before { content: "\F061"; }
.iconbox.beruf:before { content: "\F19D"; }
.iconbox.aufgabe:before { content: "\E800"; }

.fifty_wrapper .embed-container { padding-bottom: 27%; }
.embed-container { position: relative; padding-bottom: 57.5%; padding-bottom: 56%; height: 0; overflow: hidden; width: 100%; height: auto; }
.embed-container iframe, .embed-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.embed-container-small { position: relative; padding-bottom: 72.75%; height: 0; overflow: hidden; width: 100%; height: auto; }
.embed-container-small iframe, .embed-container-small video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.embed-container-flash { position: relative; padding-bottom: 57.5%; height: 0; overflow: hidden; width: 100%; height: auto; z-index: 0; }
.embed-container-flash embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; }

.content_box { padding: 2%; background: #eee; margin: 2% 0; }
.content_box h1:first-child, .content_box h2:first-child, .content_box h3:first-child, .content_box h4:first-child { margin-top: 0; }

table.decent tr td:first-child { padding-left: 0; }
table.decent tr:nth-child(2n) td { background: none; }

table.first_td_bold tr td:first-child { font-weight: 700; }

footer { margin: 0; }
body.impressum footer, body.datenschutz footer, body.fehler footer { background: var(--lightgrey); }
footer .trenner { background: none; }
footer .container { padding: 2% 0; }
footer .icon_wrapper { margin-bottom: 0; }
.footer_anschrift { float: left; }
.footer_menu { float: right; }
.footer_menu ul { margin: 0; padding: 0; list-style: none; }
.footer_menu ul li { display: block; margin: 0px; text-align: right; }
.footer_menu ul li a { text-decoration: none; }
.footer_menu ul li a:hover { text-decoration: underline; }
.footer_anschrift { float: left; }

.scroll_wrapper { margin-top: -100px; padding-top: 100px; }

.eighty_twenty_wrapper div { float: left; }
.eighty_twenty_wrapper div:first-child { margin-right: 2%; }
.eighty_twenty_wrapper .eighty { width: 69%; }
.eighty_twenty_wrapper .twenty { width: 29%; }

.teamWrapper { margin: -0.5%; overflow: hidden; display: flex; flex-wrap: wrap; justify-content: flex-start; }
.teamWrapper .teamEl { display: block; width: 19%; margin: 0.5%; position: relative; }
.teamWrapper .teamEl .image, .teamWrapper .teamEl .image img { width: 100%; display: block; /*transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out;
-moz-filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.1111 0.1111 0.1111 0 0 0.1111 0.1111 0.1111 0 0 0.1111 0.1111 0.1111 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
-o-filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.1111 0.1111 0.1111 0 0 0.1111 0.1111 0.1111 0 0 0.1111 0.1111 0.1111 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
-webkit-filter: grayscale(100%);*/ }
/*.teamWrapper .teamEl:hover .image, .teamWrapper .teamEl:hover .image img { -moz-filter: none; -o-filter: none; -webkit-filter: none; filter: none; }*/

.teamWrapper .teamEl .text { display: block; position: absolute; bottom: 0; left: 0; width: 100%; background: var(--white80); padding: 20px 30px; }
.teamWrapper .teamEl .text .name { font-size: 180%; margin-bottom: 0px; font-family: myriad-pro-condensed, sans-serif; font-weight: 300; text-transform: uppercase; color: var(--primary); }
.teamWrapper .teamEl .text .bezeichnung { margin-bottom: 10px; }
.teamWrapper .teamEl .text .mail { margin-bottom: 5px; }
.teamWrapper .teamEl .text a:hover, .teamWrapper .teamEl .text a:hover:before { color: var(--primary); }

#ueber_uns { margin-bottom:40px; }

.konzeptbau_container { display: flex; }
.konzeptbautext_container {width: 50%;}
.konzeptbauimg_container {display: flex; justify-content: flex-end; }
.konzeptbauimg_container img { width: 80%; }
.konzeptbaubtn_container {display: flex; justify-content: flex-start; margin: 20px 0; padding: 10px 5px; background-color: var(--primary); width: fit-content;}
.konzeptbaubtn_container a {text-decoration: none; color: var(--white);}

.objektWrapper { display: flex; flex-wrap: wrap; column-gap:2%; row-gap:40px; }
.objektWrapper a { display: block; width:32%; background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; aspect-ratio:3/2; }
.objektWrapper a.verkauft { cursor:none; pointer-events: none; }
.objektWrapper a.verkauft div.verkauftLayer, .objektWrapper a.vermietet div.verkauftLayer, .objektWrapper a.reserviert div.reserviertLayer { display: flex; }
.objektWrapper a div.objektTitel { position: absolute; left:0; bottom:0; text-align: center; color:#ffffff; font-size: 140%; padding:0 2% 5% 2%; width:100%; pointer-events: none; }
.objektTitel div { display:none; font-size: 71.4%; pointer-events: none; }
.objektWrapper a div.verkauftLayer, .objektWrapper a div.reserviertLayer { position: absolute; left:0; top:0; width:100%; height:100%; display: none; justify-content: center; align-items: center; background: rgba(255,255,255,0.7); color:var(--primary); font-size: 160%; font-weight: 600; }
.objektWrapper a div.reserviertLayer { background: rgba(255,255,255,0.3); }
.objektWrapper a img { width:100%; height:auto; }
.uebersichtButton { margin:40px 0 0 0; width:32%; display: flex; justify-content: center; color:var(--dark); border:1px solid #ccc; line-height: 60px; font-size: 140%; }
.rZusatz { display: flex; justify-content: center; align-items: center; color:var(--primary); font-size: 60%; font-weight: 600; }
h1.iObjekt { display: flex; justify-content: space-between; flex-wrap: wrap; }

.tab { overflow: hidden; border-bottom: 1px solid #ccc; }
.tab button { background-color: inherit; float: left; border: 0px solid #ccc; border-bottom:none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; font-size: 17px; color:var(--dark); }
.tab button:hover { background-color: #ddd; }
.tab button.active { background-color: var(--primary); color:#fff; border-color:var(primary); }
.tabcontent { /*display: none; padding: 6px 12px;*/ }

iframe { border:none; width:100%; height:100%; }
.tabcontent iframe.gm { height:40vh; min-height:400px; }
.tabcontent .mitarbeiter { display: flex; align-items: center; column-gap:30px; margin:30px 0; width:48%; }
.tabcontent img { max-width:200px; }
.cards { display: flex; flex-wrap: wrap; column-gap:4%; row-gap:40px; }
.card .iconText { display: flex; }
.card div { font-size: 130%; }
.bilderWrapper { margin:0 0 60px 0; display: grid; grid-template-columns:50% 23% 23%; column-gap:2%; grid-template-rows: auto; grid-template-areas: "big small1 small3" "big small2 small4"; }
.bilderWrapper.count2 { grid-template-columns:49% 49%; column-gap:2%; }
.bilderWrapper.count3 { grid-template-columns:65% 33%; column-gap:2%; grid-template-rows: auto; grid-template-areas: "big small1" "big small2"; }
.bilderWrapper.count4 { grid-template-columns:65% 33%; column-gap:2%; grid-template-rows: auto; grid-template-areas: "big small1" "big small2" "big small3"; }
.bilderWrapper.count5, .bilderWrapper.count6, .bilderWrapper.count7, .bilderWrapper.count8, .bilderWrapper.count9 { grid-template-columns:50% 23% 23%; column-gap:2%; grid-template-rows: auto; grid-template-areas: "big small1 small3" "big small2 small4"; }
.bilderWrapper a { display: block; background-size: cover; background-repeat: no-repeat; background-position: center center; background-color: #aaa; width:100%; }
.bilderWrapper a:nth-of-type(1) { aspect-ratio:4/3; grid-area:big; }
.bilderWrapper a:nth-of-type(2) { aspect-ratio:1/0.78; grid-area:small1; align-self: start; }
.bilderWrapper a:nth-of-type(3) { aspect-ratio:1/0.78; grid-area:small2; align-self: end; }
.bilderWrapper a:nth-of-type(4) { aspect-ratio:1/0.78; grid-area:small3; align-self: start; }
.bilderWrapper a:nth-of-type(5) { aspect-ratio:1/0.78; grid-area:small4; align-self: end; }
.count1 a { aspect-ratio:5/2; }
.count2 a { aspect-ratio:3/2; }
.count3 a:nth-of-type(1) { aspect-ratio:2/1; grid-area:big; }
.count3 a:nth-of-type(2) { aspect-ratio:20/9.5; grid-area:small1; align-self: start; }
.count3 a:nth-of-type(3) { aspect-ratio:20/9.5; grid-area:small2; align-self: end; }
.count4 a:nth-of-type(1) { aspect-ratio:2/1.3; grid-area:big; }
.count4 a:nth-of-type(2) { aspect-ratio:20/8; grid-area:small1; align-self: start; }
.count4 a:nth-of-type(3) { aspect-ratio:20/8; grid-area:small2; align-self: center; }
.count4 a:nth-of-type(4) { aspect-ratio:20/8; grid-area:small3; align-self: end; }
/*
.count5 a:nth-of-type(1), .count6 a:nth-of-type(1), .count7 a:nth-of-type(1), .count8 a:nth-of-type(1), .count9 a:nth-of-type(1) { aspect-ratio:4/3; grid-area:big; }
.count5 a:nth-of-type(2), .count6 a:nth-of-type(2), .count7 a:nth-of-type(2), .count8 a:nth-of-type(2), .count9 a:nth-of-type(2) { aspect-ratio:1/0.78; grid-area:small1; align-self: start; }
.count5 a:nth-of-type(3), .count6 a:nth-of-type(3), .count7 a:nth-of-type(3), .count8 a:nth-of-type(3), .count9 a:nth-of-type(3) { aspect-ratio:1/0.78; grid-area:small2; align-self: end; }
.count5 a:nth-of-type(4), .count6 a:nth-of-type(4), .count7 a:nth-of-type(4), .count8 a:nth-of-type(4), .count9 a:nth-of-type(4) { aspect-ratio:1/0.78; grid-area:small3; align-self: start; }
.count5 a:nth-of-type(5), .count6 a:nth-of-type(5), .count7 a:nth-of-type(5), .count8 a:nth-of-type(5), .count9 a:nth-of-type(5) { aspect-ratio:1/0.78; grid-area:small4; align-self: end; }
*/

.orderWrapper { display: flex; justify-content: space-between; margin:0 0 60px 0; }
.orderWrapper a { color:var(--dark); opacity: 0.2; pointer-events: none; cursor:none; text-decoration: none; }
.orderWrapper a.aktiv { opacity: 1; pointer-events:all; cursor:pointer; }

#lightcase-info #lightcase-title { color:inherit; }

.kontaktInfo { color:var(--dark); align-items: center;}
.kontaktInfo a { line-height: 35px; display: inline-flex; color:var(--dark);}
.kontaktInfo .line { line-height: 35px; display: inline-flex; color:var(--dark); align-items: center;}
.kontaktInfo .icon  { margin-right: 5px;}
a.iconText { text-decoration: none; }
.eigentumswohnungen main .container { padding-top:3.5%; }

.finanzhaus_container { display: flex; }
.finanzhaustext_container {width: 50%;}
.finanzhausimg_container {display: flex; justify-content: flex-end; }
.finanzhausimg_container img { width: 80%; }
.finanzhausbtn_container {display: flex; justify-content: flex-start; margin: 20px 0; padding: 10px 5px; background-color: var(--primary); width: fit-content;}
.finanzhausbtn_container a {text-decoration: none; color: var(--white);}


@media screen and (max-width:1700px) {
	.welle { bottom: -20px; }
}

@media screen and (max-width:1400px) {
	.swiper-slide .caption { font-size: 350%; }
	.teamWrapper .teamEl .text { padding: 10px 20px; }
}

@media screen and (max-width:1300px) {
	.teamWrapper .teamEl .text { font-size: 80%; }
	.teamWrapper .teamEl .text .name { margin-bottom: 5px; }
	.teamWrapper .teamEl .text .mail { margin-bottom: 0; }
}

@media screen and (max-width:1220px) {
	.swiper-slide .caption { font-size: 250%; }
	.container { padding: 0 1.5%; }
	main .content .container { padding: 5% 1.5% 3% 1.5%; }
	footer .container { padding: 20px 1.5%; }
	.menu_wrapper { width: 515px; }
	.trenner { width: 80px; height: 80px; padding: 0px; }
	.trenner:before { font-size: 34px; line-height: 55px; height: 80px; width: 80px; }
}

@media screen and (max-width:1000px) {
	body { padding-top: 80px; }
	.swiper-slide .caption { font-size: 200%; }
	.menu_wrapper { width: auto; }
	.menu_wrapper .container { margin: 0; }
	.logo { height: 50px; }	
	.menu li:nth-child(2), .menu li:nth-child(3), .menu li:nth-child(4), .menu li:nth-child(5), .menu li:nth-child(6) { background: #eee; }
	.menu_wrapper { width: auto; float: right; margin: 0; }
	nav { margin:0px; position:relative; }
	nav div.menu_mobile { display: block; position:relative; z-index:2000; line-height: 80px; color: var(--white); font-size: 30px; color: var(--secondary); }
	.menu { position:fixed; padding-top: 65px; top:0px; right:-100%; width:auto; max-width:100%; height:100%; overflow-y:scroll; background-color:#eee; box-shadow:0 0 10px #aaa; z-index:500; transition: all .4s ease-in-out; -moz-transition: all .4s ease-in-out; -webkit-transition: all .4s ease-in-out; }
	.menu.open { right:0%; }
	.menu li { float:none; width:100%; margin: 0; }
	.menu li a { padding:0 20px; font-size:140%; color: var(--secondary); text-align: left; margin: 0; border: none; line-height: 50px; }
	.menu li a:hover, .menu li a:focus, .menu li a.aktiv { color: var(--white); background: var(--primary); border: none; }
	.menu .sub { position:relative; top:0px; display:none; background: none; }
	.menu .sub li { border-bottom: 1px solid var(--white); }
	.menu .sub li a span { line-height: 30px; }
	.menu .sub li a, .menu .sub li a:hover, .menu .sub li a.aktiv { background-color:transparent; color:var(--secondary); line-height:initial; padding: 0 8px; }
	.menu .sub li a.aktiv span, .menu .sub li a:focus span { background: none; color: var(--secondary); text-decoration: underline; }
	.menu .sub li a.aktiv { font-weight: 700; }
	.menu .sub.zweite_ebene { padding: 0; }
	.teamWrapper .teamEl  { width: 24%; }
	.headerPhone { float: left; margin: 20px 0 0 25px; }
	.konzeptbau_container { flex-wrap: wrap; }
	.konzeptbauimg_container img { width: 100%; }
	.konzeptbautext_container {width: 100%;}
}

@media screen and (max-width: 900px) {
	.objektWrapper a { width:49%; }
}

@media screen and (max-width: 800px) {
	.welle { bottom: -2px; }
	h1, h2:first-child { font-size: 250%; margin-top: 0; }
	.teamWrapper .teamEl  { width: 32.33%; }
	.icon_el::before { font-size: 15px; width: auto; line-height: 1; }
	.fifty_wrapper .fifty { width: 98%; }
}


@media screen and (max-width:630px) {
	#lightcase-nav a[class*="lightcase-icon-"] { width: 4em; line-height: 2em; }
}

@media screen and (max-width:600px) {
	body { font-size: 90%; }
	.swiper-slide .caption { font-size: 100%; }
	.teamWrapper .teamEl  { width: 49%; }
	.teamWrapper .teamEl .text { font-size: 70%; padding: 5px 10px; }
	main .content .container { padding: 60px 2.5% 50px 2.5%; }
	main .content#leistungen .container { padding-bottom: 50px; }
	.headerPhone { font-size: 120%; padding: 0 10px; line-height: 35px; margin-top: 25px; }
	.objektWrapper a { width:100%; }
}

@media screen and (max-width: 400px) {
	.headerPhone { background: none; padding: 0; line-height: 80px; margin-top: 0; }
	.headerPhone.icon_el::before { font-size: 15px; width: 30px; height: 30px; line-height: 30px; background: var(--primary); border-radius: 100%; }
	.headerPhone span { display: none; }
}