/*
Theme Name: ROTH RÜEDISBACH
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/
.elementor-posts .elementor-post__excerpt{
	margin-bottom: 0;
}
#sidemenu .sub-menu .current-post-ancestor a{
	color: #E30513!important;
}
a{
	color: var( --e-global-color-text );
}
p {
	margin-top: 0;
	margin-bottom: 25px;
}
.elementor-text-editor p:last-child{
  margin-bottom: 0;
}
main.site-main{
    max-width: 1920px;
    margin: 0 auto;
    position: relative;
    z-index: 30;
    min-height: 400px;
}
.caldera-grid .col-sm-4 {
	width: 33.33333333%;
}
.caldera-grid .row {
	/* margin-left: -7.5px;
	margin-right: -7.5px; */
	max-width: 100%;
  display: flex;
}


.caldera-grid .col-lg-1, .caldera-grid .col-lg-10, .caldera-grid .col-lg-11, .caldera-grid .col-lg-12, .caldera-grid .col-lg-2, .caldera-grid .col-lg-3, .caldera-grid .col-lg-4, .caldera-grid .col-lg-5, .caldera-grid .col-lg-6, .caldera-grid .col-lg-7, .caldera-grid .col-lg-8, .caldera-grid .col-lg-9, .caldera-grid .col-md-1, .caldera-grid .col-md-10, .caldera-grid .col-md-11, .caldera-grid .col-md-12, .caldera-grid .col-md-2, .caldera-grid .col-md-3, .caldera-grid .col-md-4, .caldera-grid .col-md-5, .caldera-grid .col-md-6, .caldera-grid .col-md-7, .caldera-grid .col-md-8, .caldera-grid .col-md-9, .caldera-grid .col-sm-1, .caldera-grid .col-sm-10, .caldera-grid .col-sm-11, .caldera-grid .col-sm-12, .caldera-grid .col-sm-2, .caldera-grid .col-sm-3, .caldera-grid .col-sm-4, .caldera-grid .col-sm-5, .caldera-grid .col-sm-6, .caldera-grid .col-sm-7, .caldera-grid .col-sm-8, .caldera-grid .col-sm-9, .caldera-grid .col-xs-1, .caldera-grid .col-xs-10, .caldera-grid .col-xs-11, .caldera-grid .col-xs-12, .caldera-grid .col-xs-2, .caldera-grid .col-xs-3, .caldera-grid .col-xs-4, .caldera-grid .col-xs-5, .caldera-grid .col-xs-6, .caldera-grid .col-xs-7, .caldera-grid .col-xs-8, .caldera-grid .col-xs-9 {
	position: relative;
	padding-left: 7.5px;
	padding-right: 7.5px;
}
.caldera-grid *, .caldera-grid ::after, .caldera-grid ::before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.caldera-grid .form-group label {
	display: block;
	position: absolute;
	left: 15px;
	font-weight: 500;
	top: 14px;
	color: #4e4a67;
	font-size: 20px;
	-webkit-transition: .2s;
	transition: .2s;
  z-index: 10;
}
.form-group{
  position: relative;
}
.placeholder{
  font-size: 14px!important;
  top: 2px!important;
  opacity: 0!important;
}
input.wpcf7-form-control{
  border-radius: 0;
}
.form-group{
  margin-bottom: 24px;
}
.form-group input, .form-group textarea{
  border-radius: 0;
  border: 1px solid #939393;
  /* height: 55px; */
	height: auto;
}
#footerform .form-group input, .form-group textarea {
 height: 55px;
}
#footerform .wpcf7-form-control.wpcf7-textarea{
  height: 134px;
}
#footerform .row.last_row {
	justify-content: flex-end;
}
#contactform .wpcf7-form-control.wpcf7-textarea{
  height: 200px;
}
#contactform .form-submit {
	text-align: right;
	position: absolute;
	bottom: 2px;
	left: 100%;
}
#contactform .form-submit  > div{
	padding-left:51px;
}
#contactform .form-submit  > div .wpcf7-spinner{
	position: absolute;
}
@media(max-width:768px){
	#contactform .form-submit {
		position:relative;
		left:0;
	}
	#contactform .form-submit  > div{
		padding-left:0px;
	}
}
#footerform {
  margin-bottom: 160px;
}
.form-submit{
  text-align: right;
}
div.wpcf7 .ajax-loader{
  position: absolute;
}
.hentry, .elementor-location-archive {
	position: relative;
	z-index: 20;
}
.single-post #mainheader, .category #mainheader,.single-aktuell-type  #mainheader{
 	background-image: url("img/ref1.jpg");

}
.single-post  #mainfooter, .category #mainfooter{
	background-image: url("img/post.jpg");
}
#sidemenu  li{
  position: static;
}
#sidemenu .current-menu-parent .sub-menu,
.single-post #sidemenu .elementor-nav-menu--main .elementor-nav-menu .menu-item-1654 .sub-menu{
	display: block!important;

}
#sidemenu .elementor-nav-menu--main .elementor-nav-menu li ul li a.elementor-sub-item {

	padding: 0px !important;
	line-height: 1.6em;
}
#sidemenu  .elementor-nav-menu--main .elementor-nav-menu ul{
  background: #404040;
  position: absolute!important;
  left: 170px!important;
  top: -10px!important;
  margin-left: 0!important;
  margin-top: 0!important;
  text-transform: none!important;
  width: 220px!important;
  padding: 10px 0;
}
#sidemenu  .elementor-nav-menu--main .elementor-nav-menu li ul{
  z-index: 10;
  /* height: 110px; */
  height: auto;
}
#sidemenu  .elementor-nav-menu--main .elementor-nav-menu li:hover ul{
  z-index: 100;
}
#sidemenu  .elementor-nav-menu--main .hidemenuon .sub-menu{
	display: none!important;
}
#sidemenu  .elementor-nav-menu--main .elementor-nav-menu ul li a{
  color: #fff;
  text-transform: capitalize!important;
  text-decoration: none!important;
  /* font-weight: 800; */
	padding: 5px 20px!important;
}
#sidemenu  .elementor-nav-menu--main .elementor-nav-menu ul .elementor-sub-item:hover{

	background-color: transparent;
	color: #e30613;
}
.single-post #sidemenu .menu-item.menu-item-ref::before {
	content: "";
width: 0;
height: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-left: 10px solid #fff;
display: block;
position: absolute;
left: -15px;
margin-top: 2px;
}
.single-post #sidemenu .elementor-nav-menu--main .elementor-nav-menu li ul.sub-menu{
	display: block!important;
}

.single-post .category-landmaschinen #sidemenu .elementor-nav-menu--main .elementor-nav-menu .menu-item-ref li:nth-child(1) .elementor-sub-item,
.single-post .category-sanitare-installationen #sidemenu .elementor-nav-menu--main .elementor-nav-menu .menu-item-ref li:nth-child(2) .elementor-sub-item,
.single-post .category-kleingerate #sidemenu .elementor-nav-menu--main .elementor-nav-menu .menu-item-ref li:nth-child(3) .elementor-sub-item,
 #sidemenu  .elementor-nav-menu--main .elementor-nav-menu ul li.current-menu-item a{
   background: transparent;
   color: #e30613;
 }
@media (min-width:1701px)  {
	#sitelogor {
	padding-right: 70px;
}
}
.single-post #sidemenu .elementor-nav-menu--main .elementor-nav-menu .menu-item-1654::before,
 #sidemenu  .elementor-nav-menu--main .elementor-nav-menu .current-menu-ancestor::before,
 #sidemenu  .elementor-nav-menu--main .elementor-nav-menu > .current-menu-item::before,
 #sidemenu  .elementor-nav-menu--main > .elementor-nav-menu > .menu-item:hover:before  {
   	content: "";
   	width: 0;
   	height: 0;
   	border-top: 10px solid transparent;
   	border-bottom: 10px solid transparent;
   	border-left: 10px solid #fff;
   	display: block;
   	position: absolute;
   	left: -15px;
   	margin-top: 2px;

 }
#aktuellposts a{
	cursor: default;
}
.swal2-popup .swal2-title span{
	color:#3F3F3F!important;
}
.swal2-popup {
	background: #fff !important;
border-radius: 0px !important;
}
.swal2-popup .swal2-styled.swal2-confirm {
	border-radius: 0 !important;
	border: 1px solid #939393 !important;
	height: 55px !important;
	background: #3F3F3F !important;
	font-size: 24px !important;
	font-weight: bold;
}
.swal2-popup .swal2-styled.swal2-confirm:hover{
	background: #E30513 !important;
}
.wpcf7 form.sent .wpcf7-response-output{

}
.wpcf7 form.sent .wpcf7-response-output {
	background-color: #ffb900!important;
	color: #fff;
	border: none;
	text-align: center;
	margin: 0px;
}

 @media (max-width:1900px) {
 	#sidemenu, #mainmenu{
		font-size: 22px;
	}
	.elementor  header#mainheader::before {
		content: "";
		border: 5.4em solid transparent;
		border-left: 5.4em solid #3f3f3f;
		top: auto;
		font-size: 22px;
		bottom: -5.4em;
	}
	#secondheader .redside::after {

	}

	#menuicon.elementor-element{
		left: 10px;
	}


			.headertext{


			}
			.headertext .elementor-text-editor{
				font-size: 20px!important;
			}
			.headertext .elementor-column-wrap{

			}
			.headertext  .elementor-heading-title{
				font-size: 20px!important;
			}
			#secondheader
 }
 @media (max-width:1800px) {
	 .elementor  #sidemenu > .elementor-widget-container {
		 padding: 0px 0px 0px 130px;
	 }
	 #sidemenu .elementor-nav-menu--main > ul > li > a.elementor-item {
		 			font-size: 22px;
				 }
				 #sidemenu .elementor-nav-menu--main .elementor-nav-menu .current-menu-ancestor::before, #sidemenu .elementor-nav-menu--main .elementor-nav-menu > .current-menu-item::before, #sidemenu .elementor-nav-menu--main > .elementor-nav-menu > .menu-item:hover::before{
					 border-top: 9px solid transparent;
			border-bottom: 9px solid transparent;
			border-left: 9px solid #fff;
			margin-top: 2px;
				 }
 }
 @media (max-width:1700px) {
	 .elementor #sidemenu > .elementor-widget-container {
	padding: 0px 0px 0px 75px;
}
	 #sidemenu .elementor-nav-menu--main > ul > li > a.elementor-item {
					font-size: 20px;
				 }
	 .headertext:before {
   	right: 12%!important;
    width: 285px!important;
		}
	 .headertext:after {
   	right: -100px!important;
		}
		.sideleft,.sideright{

		}
		#headerrigthcol {
			height: 190px;
			min-width: 340px!important;
		}
		#headerrigthcol::before {

			right: 120px!important;

			width: 275px!important;
			height: 400px!important;

			top: -160px!important;
		}
		#mainheader .elementor-container{
			min-height: 190px!important;
			 height: 190px!important;
		}
			#mainheader::before {
				border: 90px solid transparent!important;
				border-left: 90px solid #3f3f3f!important;
			}
			#headerrigthcol::after {
				border: 90px solid transparent!important;
				border-right: 90px solid #3f3f3f!important;
				border-bottom: 90px solid #3f3f3f!important;
			}
			#secondheader .redside::after {
				left: -70px !important;
				width: 222px !important;
				top: -100px !important;
			}
 }
 @media (max-width:1300px){
	 #sidemenu .elementor-nav-menu--main .elementor-nav-menu .current-menu-ancestor::before, #sidemenu .elementor-nav-menu--main .elementor-nav-menu > .current-menu-item::before, #sidemenu .elementor-nav-menu--main > .elementor-nav-menu > .menu-item:hover::before{
		 border-top: 6px solid transparent;
		border-bottom: 6px solid transparent;
		border-left: 6px solid #fff;
		left: -12px;
		height: 6px;
		margin-top: 3px;
	 }
	 #secondheader .redside::after {
			 left: -35px;
		}
		#sidemenu, #mainmenu {
			font-size: 16px;
		}
		#sidemenu .elementor-nav-menu--main > ul > li > a.elementor-item {
 					font-size: 16px;
 				 }
				 #secondheader .redside::after {
				width: 175px !important;
				top: -85px !important;
			}
			#secondheader .redside::after {
				left: -94px !important;
			}
			#headerrigthcol .elementor-heading-title,#headerrigthcol .elementor-text-editor{
				font-size: 20px!important;
			}
			#headerrigthcol {
				height: 190px;
				min-width: 280px!important;
			}
			#headerrigthcol::before {
				right: 90px !important;
				width: 225px !important;
				height: 400px !important;
				top: -160px !important;
			}
			#headerrigthcol::after {
				border: 80px solid transparent !important;
				border-right: 80px solid #3f3f3f !important;
				border-bottom: 80px solid #3f3f3f !important;
			}
			#sidemenu .elementor-nav-menu--main .elementor-nav-menu ul{
				left: 120px !important;
			}
 }
 @media(max-width:1024px){
	 #secondheader{
		 display: none!important;
	 }
	 #sidemenu .elementor-nav-menu--dropdown {
			background-color: #3F3F3F;
			font-size: 13px;
			color: #fff;
		}
			 #sidemenu .elementor-nav-menu--dropdown a {
				 color: #fff;
				 text-transform: uppercase;
				 text-decoration: none;
			 }
	 #mainheader > .elementor-container > .elementor-row{
		 justify-content: flex-end;
	 }
	 #mainheader > .elementor-container > .elementor-row .elementor-col-50{
		 display: none;
	 }
	 .sideleft{
		 position: absolute;
	 }
	 .elementor #sidemenu > .elementor-widget-container {
			padding: 0;
		}
		#menuicon.elementor-element,#secondheader .redside::after{
			display: none;
		}
		#sidemenu {
		font-size: 16px;
		top: -50px;
		left: 0;
		z-index: 100;
		position: absolute;
		width: 70%;
	}
		.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {

		background: #3f3f3f;
		padding-top: 20px;
		position: absolute;
		top: 40px;
	}
		.home .elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
 		width: 100%;
	}
	.elementor-161 .elementor-element.elementor-global-139 div.elementor-menu-toggle{
		z-index: 20;
	}
	 #sidemenu  a.elementor-item {
		 color: #fff;
		 font-size: 20px;
	 }
.hentry, .elementor-location-archive {
    position: static;
}
 }
 @media (max-width:767px) {
	 #headerrigthcol {
 height: 190px;
 min-width: 280px !important;
 width: 200px;
 background: #E30513;
 padding: 20px;
}
#mainheader > .elementor-container > .elementor-row {
	justify-content: flex-end;
}
.caldera-grid .col-sm-4 {
	width: 100%;
	min-width: 100%;
	padding: 0;
}
.caldera-grid .row {
	flex-direction: column;
	display: flex;
}
 }
 #mainfooter:before{
     content: "";

     width: 0;
 	height: 0;
 	border-top: 740px solid #3f3f3f;
 	border-right: 720px solid transparent;
 	position: absolute;
 	top: 0;
 	left: 0;
 }
 #mainfooter:after{
      content: "";
      width: 0;
 	height: 0;
 	border-top: 117px solid transparent;
 	border-left: 115px solid #e30513;
 	border-bottom: 117px solid transparent;
 	position: absolute;
 	top: 0;
 }
 @media(max-width:1024px){
	 #mainfooter{
		 overflow: hidden;
	 }
	 #mainfooter:before{

		 border-top: 380px solid #3f3f3f;
		 border-right: 450px solid transparent;
		position: absolute;
		top: 0;
		left: 0;
	 }
	 #mainfooter:after{
				content: "";
				width: 0;
		height: 0;
		border-top: 50px solid transparent;
		border-left: 50px solid #e30513;
		border-bottom: 50px solid transparent;
		position: absolute;
		top: 0;
	 }
}
@media(max-width:768px){
	#mainfooter::before {
	border-top: 400px solid #3f3f3f;
	border-right: 350px solid transparent;
	position: absolute;
	top: 0;
	left: 0;
}
}