/*
 Theme Name:  DemontageFix
 Author: Olga Litvinova / Kreativer Blick Design Studio
 Author URI: http://kreativerblick-webdesign.de
 Template: Divi
 Version: 1.0.0
*/
.dsm_contact_form_7 .wpcf7-form-control.wpcf7-file {
  width: 100%;
  background-color: #fff;
  padding: 20px;
}
.wpcf7-form.init p {
  color: #000!important;
	 font-size: 16px!important;
}
.dsm-content {
  padding: 25px!important;
}
.dsm-title, .dsm-subtitle {
  padding-bottom: 0px!important;
	font-size:26px!important;
}
.dsm_flipbox_child .et_pb_module_inner{
  padding-top: 30px!important;
}

.dsm_card_carousel_child_description{
	font-size:21px!important;
	 line-height: 1.3!important;
}
strong {
  font-weight: 550;
}
.st_kontaktform .checkbox_datenschutz {
    appearance: none!important;
    -webkit-appearance: none!important;
    width: 20px!important;
    height: 20px!important;
    border-radius: 50px!important;
    background-color: #59b2ba;
    cursor: pointer!important;
    vertical-align: middle!important;
}
.checkbox_datenschutz:checked::after  {

    content: '✔';
    position: absolute;
  top: 50%;
  left: 15px;
    transform: translate(-50%, -50%);
    font-size: 14px;
    color: #333;

}
.st_kontaktform .wpcf7-list-item {

  margin: 0!important;
}

.st_kontaktform .checkbox_datenschutz:checked {
    background-color: #fff!important;
color:#000!important;
    }




  #float_menu {
    position: fixed!important;
    bottom: 200px!important;
    right: 0px!important;
    z-index: 999999999!important;
	  
  }
#float_menu{
 margin-right:-200px!important;
	
}
.icon_wa{
 padding:10px!important;
	
}
.icon_wa:hover{
 padding:0px 30px 0px 0px !important;
	background-color: #25D36694;
}

#float_menu:hover{
 margin-right:0!important;
	transition: right .4s ease .1s!important;
	
}

.st_whatsapp.et_pb_button_one.et_pb_button::after {
  color: #FFFFFF;
  line-height: inherit;
  font-size: inherit !important;
  opacity: 1;
  margin-left: .3em;
  left: auto;
  display: block !important;
  font-family: FontAwesome !important;
  font-weight: 400 !important;
  background: #25D366!important;
  padding: 15px 10px 15px 20px!important;
  width: 30px!important;
  height: 30px!important;
  border-radius: 50px!important;
}

.st_block_text{
z-index: 9999999999 !important;
  position: absolute !important;
  top: -104px;
  bottom: auto;
  left: 10%;
  right: auto;
}

	.st_referenzen .dsm_card_title{
  font-size: 26px !important;
font-weight: 500;
}
  


.dsm-icon-push {
  display: block!important;
}
  #float_menu_mail {
    position: fixed!important;
    bottom: 550px!important;
    right: 0px!important;
    z-index: 999999999!important;
	  
  }
#float_menu_mail{
 margin-right:-180px!important;
	
}

.icon_mail:hover{
 padding:0px 30px 0px 0px !important;
	background-color: #08abbb8a;
}

#float_menu_mail:hover{
 margin-right:0!important;
	transition: right .4s ease .1s!important;
	
}

.icon_wa .et_pb_image_wrap .et-pb-icon:before {
  content:"";
  display:block;
  position:absolute;
  z-index:-1;
  -webkit-transform:scale(1);
  transform:scale(1);
  top:0;
  left:0!important;
  bottom:0;
  left:auto;
  border-radius:50%;
  pointer-events:none;
  -webkit-animation:pulse-grow 1.5s ease-in-out;
  animation:pulse-grow 1.5s ease-in-out;
  -webkit-animation-iteration-count:infinite;
  animation-iteration-count:infinite;
  opacity:0;
  border-style:solid;
  border-width:0;
	background-color: #25D36694;
	width:50px!important;
	height:50px!important;
	
}
@-webkit-keyframes pulse-grow {
  0% {
    -webkit-transform:scale(.1);
    transform:scale(.1);
    opacity:0
  }
  50% {
    opacity:1
  }
  to {
    -webkit-transform:scale(1.5);
    transform:scale(1.5);
    opacity:0
  }
}
@keyframes pulse-grow {
  0% {
    -webkit-transform:scale(.1);
    transform:scale(.1);
    opacity:0
  }
  50% {
    opacity:1
  }
  to {
    -webkit-transform:scale(1.5);
    transform:scale(1.5);
    opacity:0
  }
}


.st_link a {
  color:#fff!important;
}

  .st_hmenu .et_pb_menu__logo-wrap {
    margin-top: 10px!important;
  }

.st_leistungen .dsm_card_carousel_child_description {
  min-height: 70px;
}
.et_pb_scroll_top.et-pb-icon {

  background: #08abbb!important;
}
	.et_pb_row.st_zeile {
  width: 80% !important;
  max-width: 1920px !important;
}
.et_pb_row.st_vbzeile {
  width: 100% !important;
  max-width: 1920px !important;
}
.projekt_cl1{
 padding:5% 30px 5% 10%  !important;
}
 .projekt_cl2{
 padding:5% 10% 5% 30px  !important;
}
.et_pb_row.st_hzeile {
  width: 80% !important;
  max-width: 1920px !important;
}
.st_tlt h1 {
  font-size: 62px !important;
  line-height: 1em !important;
		font-weight:600!important;

}
.st_referenzen .dsm_card_subtitle {
  font-size: 21px !important;

}

.st_text, .st_text, .et_pb_blurb_content h4 {
font-family: 'Roboto Condensed',Helvetica,Arial,Lucida,sans-serif;
  font-size: 21px;
  line-height: 1.6em;
color: #161d2d !important;
}
.st_tlt .et_pb_main_blurb_image {
  padding-top: 2px;
}

.st_tlt h2 {
  font-size: 64px !important;
  line-height: 1em !important;
	font-weight:600!important;
}
.st_tlt h3 {
  font-size: 22px !important;
  line-height: 1.3em !important;
	font-weight:500!important;
}



.st_tlt_header p {
  font-size: 21px !important;
  line-height: 1.3em !important;
}

.et_pb_row.st_zeile_header{
  width: 80% !important;
  max-width: 1920px !important;
			margin-top:60px!important;

}
.st_hmenu.et_pb_menu ul li a {

  font-size: 18px!important;

		font-weight:500!important;
	}
.st_hmenu .et-menu > li {
  padding-left: 20px!important;
  padding-right: 20px!important;
}

.st_header_section{
 min-height:855px!important;
padding-top: 120px!important;
}
.st_referenzen .dsm_card_wrapper{
   padding: 300px 20px 20px 20px!important;
  }
	.st_referenzen {
  min-height:550px!important;
  }



.st_text_z{
 padding: 100px 0!important;
	}
.st_section_ab{
 padding: 100px 0!important;
	}
 .et_pb_menu__logo-wrap {
    width: 400px!important;
  }

.st_cl_kl{
 padding:50px 10% !important;
	
	}


.st_cl_bild.et_pb_column.et_pb_column_empty{
 min-height:550px!important;
	
	}


.st_map .dsm_image_hotspots_child {
  left: 14vw!important;
  top: 26vw!important;
}
.st_map {
	 width: 24vw !important;

}


@media (max-width: 1620px) { 
	
	  .st_map .dsm_image_hotspots_child {
    left: 19vw !important;
    top: 35vw !important;
  }
  
.st_map {
	 width: 32vw !important;
  
}
	
	
	
	.st_referenzen .dsm_card_title{
  font-size: 20px !important;

}
	.st_referenzen .dsm_card_wrapper {
  padding: 250px 20px 20px 20px !important;
}
	  .st_hmenu .et_pb_menu__logo {
    max-width: 350px;
    z-index: 99999999 !important;
  }
	 .et_pb_row.st_zeile {
    width: 90% !important;
  }
.et_pb_row.st_zeile_header {
  width: 90% !important;
  max-width: 1920px !important;
  margin-top: 60px !important;
}
	.et_pb_row.st_hzeile {
  width: 90% !important;
  max-width: 1920px !important;
}
	 .st_cl_kl   {
  padding: 50px 5%!important;
}



	.st_tlt h1 {
  font-size: 56px !important;
  line-height: 1em !important;
		font-weight:600!important;

}
 .st_tlt h2 {
  font-size: 46px !important;
  line-height: 1em !important;
	font-weight:600!important;
}
}

@media (max-width: 1340px) { 
	.st_text p, .st_text, .st_tlt .et_pb_blurb_content h4 {
 font-size: 21px !important;
			  
  
  }
	 

	
}
@media (max-width: 1180px) { 
	.dsm-title,.dsm-subtitle {
  font-size: 21px!important;
}
	.dsm-content{
  font-size: 21px!important;
}
		  .st_map .dsm_image_hotspots_child {
 left: 20vw !important;
    top: 36vw !important;
			  
  
  }
.st_map {
	 width: 34vw !important;
 margin-left: 0!important;
  position: relative !important;
  top: 0!important;
}
	
	
	
	 .et_pb_row.st_zeile {
    width: 90% !important;
  }
.st_block_text{

  left: 5%!important;

}
		.st_tlt h1 {
  font-size: 48px !important;
  line-height: 1em !important;
		font-weight:600!important;

}
.st_hmenu .et-menu > li {
  padding-left: 15px !important;
  padding-right: 15px !important;
}
	.st_hmenu.et_pb_menu ul li a {
  font-size: 16px !important;
  font-weight: 500 !important;
}
}
@media (min-width: 980px) { 
	
.st_bild_effekt img {
    transition: transform 0.4s ease-in-out;
}
.st_bild_effekt:hover img {
   transform: scale(1.3); 
}
	.st_bild_effekt {
  overflow: hidden;
}
}

@media (max-width: 980px) {
	
	
	
	
.icon_wa:hover {
  background-color: transparent!important;
}
		  .st_map .dsm_image_hotspots_child {
left: 32vw !important;
    top: 58vw !important;
  
  }
.st_map {
	 width: 60vw !important;


}
	.icon_wa:hover{
 padding:10px!important;
	
}
	.st_referenzen .dsm_card_title {
  font-size: 24px !important;
		line-height:1.3!important;
}
	.st_referenzen .dsm_card_subtitle {
  font-size: 20px !important;

}
	.st_referenzen .dsm_card_wrapper {
  padding: 300px 20px 20px 20px !important;
}
	
.st_block_text{
position: static !important;
    top: 0px;
    right: auto;
    bottom: auto;
    left: 0px;
    transform: translateX(0px) translateY(0px);
}
	
	.st_cl_bild.et_pb_column.et_pb_column_empty{
 min-height:350px!important;
		display:block!important;
	
	}
	
	
	.st_cl_kl{
 padding:50px 5% !important;
	
	}
	
		.st_header_section{
 min-height:750px!important;
padding-top: 70px!important;	
}
	
	 #float_menu {
  
    bottom: 50px!important;
  
	  
  }



	
		#float_menu:hover{
 margin-right:-200px!important;
}
	 .st_cl_kl {
    padding: 5% !important;
    width: 100% !important;
  }
		  .reihenfolge_column {
    display: flex !important;
    flex-wrap: wrap !important;
  }
	
	 .st_column1 {
    order: 1 !important;
  }
 .st_column2 {
    order: 2 !important;
  }
	
  
.st_text_z .st_column2 {
    padding-top: 40px !important;
  }
	
	
	
	.projekt_cl1, .projekt_cl2 {
  padding: 50px 5% !important;
}
	.st_hmenu.et_pb_menu ul li a {
  font-size: 20px !important;
  font-weight: 500 !important;
}
		 .st_rechtliches .et_pb_menu__menu {
    display: block !important;
		 margin: auto;
  }
	 .st_rechtliches .et_mobile_nav_menu {
    display:none!important
  }
	
	 .st_text p, .st_text, .st_tlt .et_pb_blurb_content h4 {
    font-size: 21px !important;
  
}
	.st_tlt h1 {
  font-size: 32px !important;
  line-height: 1.2em !important;
}
		.st_tlt h2 {
  font-size: 36px !important;
  line-height: 1.1em !important;
}
.st_tlt_header p {
  font-size: 21px !important;
  line-height: 1.3em !important;
}
	.et_pb_row.st_zeile {
  width: 90% !important;
}

	.et_pb_row.st_zeile_header{
  width: 90% !important;
  max-width: 1280px !important;
		margin-top:60px!important;
}
	
	
	 .et_pb_row.st_hzeile {
    width: 100% !important;
    max-width: 980px !important;
  }
  .st_hmenu .mobile_menu_bar {
    margin-right:10px;
	  margin-top: 10px;
  }
 .st_hmenu .et_pb_menu__wrap {
    -webkit-box-pack: end!important;
    -ms-flex-pack:end!important;
    justify-content: end!important;
  }

 	.st_hmenu .et_mobile_menu {
min-width: 100vw;
}
	
 .st_hmenu.et_pb_menu .et_mobile_menu {
   top: 0 !important;
	transition: max-height .3s,transform .3s;
	 height:100vh;
	 padding:150px 0;
	}
	
	
	.st_hmenu .et_mobile_menu {
  border-top: 0!important;
		background-color:  #2B7F67 !important;
		 
  
}
	.st_hmenu .et_pb_menu__logo {
		max-width: 300px;
  z-index: 99999999!important;
}
	 .st_hmenu .et_pb_menu__logo-wrap {
    margin-left: 5% !important;
  }
	 .st_hmenu .mobile_menu_bar {
    z-index: 99999999999 !important;
  
}
/* change Divi hamburger menu to X */
.mobile_nav.opened .mobile_menu_bar:before {
content: "\4d";
}

.mobile_nav.closed .mobile_menu_bar:before {
content: "\61";
}
.mobile_menu_bar {
margin-right: 20px;
}
/* rotate the Divi Menu icon on click */

.mobile_menu_bar:before {
	font-size: 46px!important;
transition: all .4s ease;
transform: rotate(0deg);
display: block;
	color:  #b4b4b4 !important;
}

/* rotate the Divi Menu icon on click */

.mobile_nav.opened .mobile_menu_bar::before {
transition: all .4s ease;
transform: rotate(90deg);
display: block;
}
	
	
	
	.st_hmenu.et_pb_menu ul li a {
  font-weight: 500!important;
  font-size: 18px!important;
  color: #2B7F67 !important;
	text-align: left !important;
		font-weight:500!important;
	}

	.st_m_menu .et_pb_menu__wrap {
    -webkit-box-pack:start!important;
    -ms-flex-pack: start!important;
    justify-content: flex-start!important;
  }

.st_section_ab{
 padding: 50px 0!important;
	}
	.st_btn_service.dsm_button {
  margin-top: 80px !important;
}
	.st_text_z {
  padding: 50px 0 !important;
}
}

@media only screen and (max-width: 767px) {
	
	  .st_vorteile .et_pb_column {
    width: 100%!important;
    margin-right: 0!important;
  margin-bottom: 30px!important;
}
	
	
	
		.dsm-title,.dsm-subtitle {
  font-size: 24px!important;
}
	.dsm-content{
  font-size: 21px!important;
}
	
	  .st_map .dsm_image_hotspots_child {
left: 52vw !important;
    top: 94vw !important;
  }
.st_map {
	 width: 90vw !important;


}
	
	
	
		.st_referenzen .dsm_card_wrapper {
  padding: 250px 20px 20px 20px !important;
}
  .et_pb_menu__logo-wrap {
    width: 280px!important;
  }
		.st_tlt h1 {
  font-size: 32px !important;
  line-height: 1.2em !important;
}
		.st_tlt h2 {
  font-size: 38px !important;
  line-height: 1.1em !important;
}
}
@media (max-width: 360px) {
	.st_tlt_header p {
  font-size: 18px !important;
  line-height: 1.3em !important;
}
	.st_section_ab{
 padding: 50px 0!important;
	}
	.st_text_z{
 padding: 20px 0!important;
	}
	.st_referenzen .dsm_card_wrapper{
   padding: 150px 20px 20px 20px!important;
  }
	.st_referenzen {
  min-height:400px!important;
  }
	.st_referenzen .dsm_card_title{
  font-size: 21px !important;

}
	
	.st_btn_service.dsm_button {
  margin-top: 80px !important;
}
	.st_leistungen .swiper-pagination-bullets {
  bottom: -40px!important;
	}
	.st_header_section{
 min-height:700px!important;
padding-top: 70px!important;	
}
	.st_tlt h1 {
  font-size: 28px !important;
  line-height: 1.2em !important;
}
		.st_tlt h2 {
  font-size: 32px !important;
  line-height: 1.1em !important;
}
	 .et_pb_row.st_zeile_header {
    
    margin-top: 10px !important;
  }


}