/* 
 Theme Name:     EMC
 Author:         EMC
 Author URI:     https://emcwehrheim.de
 Template:       Divi
 Version:        1.0
 Description:    A Divi Child Theme 
*/ 

/* 

### --- PLACE YOUR CUSTOM CSS CODE IN DIVI > THEME OPTIONS > CSS 
### --- CUSTOM CSS CODE THAT WILL BE PLACED HERE WILL BE OVERWRITTEN IN A CHILD THEME UPDATE

*/ 

/* ### General ### */

body {
	font-weight: 400 !important;
}

@media screen and (min-width: 1151px) and (max-width: 1450px){
.custom-row-width-981.et_pb_row,
.custom-row-special-width-981 .et_pb_row	{
	width: 90% !important;
	max-width: 90% !important;
}}

@media screen and (min-width: 981px) and (max-width: 1150px){
.custom-row-width-981.et_pb_row,
.custom-row-special-width-981 .et_pb_row	{
	width: 98% !important;
	max-width: 98% !important;
}}

#page-container {
	overflow-x: hidden;
}

/* ###### Header with overlay ###### */ 
.maven-header {
  display: flex;
  align-items: center;
}  
  
.header-second-column {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

@media screen and (min-width: 981px) {  
.maven-overlay-menu-column-1 {
    width: 43% !important;
}
  
.maven-overlay-menu-column-2 {
    width: 26% !important;
}
  
.maven-overlay-menu-column-3  {
    width: 26% !important;
}
  
.maven-overlay-menu-column-4  {
    width: 5% !important;
}} 
  
@media screen and (min-width: 480px) and (max-width: 980px) {  
.maven-overlay-menu-column-1 {
    width: 100% !important;
}} 

.maven-menu .et-menu>.menu-item-has-children>.sub-menu:before {
	display: none;
}

.maven-menu .nav li li a { 
  border-bottom: 0px solid rgb(255 255 255 / 12%); 
}

.maven-menu .nav li ul li ul.sub-menu {
	padding-left: 35px !important;	
}

.maven-menu .et-menu li li a {
    width: 100%;
}
 
/* Right column */ 
@media screen and (min-width: 981px) {    
.maven-overlay-menu-column-4 {
    display: flex;
    justify-content: center;
} 
  
.maven-overlay-social {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%; /* Ensure the container takes full width */
}
  
.maven-overlay-social.et_pb_social_media_follow li {
    margin-bottom: 0px;
    height: 100px;
    display: flex;
    align-items: center;
  	justify-content: center;
    border-bottom: 1px solid #fff;
    width: 100%; /* Set the list items to take full width of the parent */
}
  
.maven-overlay-social.et_pb_social_media_follow li:first-child {
    border-top: 1px solid #fff;    
}} 
  
/* Animation overlay menu */  
.maven-row-overlay-menu {
	overflow: auto;
  transform: translateY(-100%);
  transition: all .3s ease;
	opacity:0;
}

.maven-row-overlay-menu.active-overlay-menu {
  overflow: auto;
  transform: translateY(0%);
  transition: all .3s ease;
	opacity:1;
} 

/* Overlay menu dropdown icon */      
.maven-menu .et-menu .menu-item-has-children > a:after {
  display: block !important;
  font-family: inherit;
	font-size: 50px;
	font-weight: bold;
	position: absolute;
	right: 10px;
	top: 8px;
} 
  
.maven-menu .et-menu .menu-item-has-children > a.maven-overlay-menu-switched-icon:after {
	font-size: 74px;
  right: 12px;
  top: 0px;
	font-weight: normal;
}

@media screen and (max-width: 480px) {
.maven-menu .et-menu .menu-item-has-children > a:after {
	font-size: 30px;
  top: 0px;
}
  
.maven-menu .et-menu .menu-item-has-children > a.maven-overlay-menu-switched-icon:after {
	font-size: 44px !important;
  top: 0px;
}} 
  
@media screen and (min-width: 481px) and (max-width: 980px) {
.maven-menu .et-menu .menu-item-has-children > a:after {
	font-size: 50px;
  top: 0px;
  right: 5px;
}
  
.maven-menu .et-menu .menu-item-has-children > a.maven-overlay-menu-switched-icon:after {
	font-size: 74px !important;
  top: 0px;
  right:0px;
}}
  
/* Overlay menu */     
.maven-menu .et-menu .menu-item-has-children > a {
  position: relative;
}

.maven-menu .et-menu .menu-item-has-children .sub-menu li {
  display: none !important;
}

.maven-menu .et-menu .menu-item-has-children .sub-menu .maven-overlay-show-menu-items {
  display: block !important;
}

.maven-menu .et_pb_menu__menu {
  display: block !important;
  width: 100%;
}
  
.maven-menu .et_mobile_nav_menu {
  display: none !important;
}
  
.maven-menu .et-menu-nav .et-menu {
  flex-direction: column;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
  
.maven-menu .et-menu > li {
  display: flex;
  flex-direction: column;
}
  
.maven-menu ul.sub-menu {
  border-top: 0 !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  left: 0 !important;
  opacity: 1 !important;
  padding: 0 0 0 0 !important;
  position: relative !important;
  top: 4px !important;
  visibility: visible !important;
  width: auto !important;
}

.maven-menu ul.sub-menu li:last-child {
	padding-bottom: 10px !important;    
} 
  
.maven-menu .et_pb_menu__wrap {
  justify-content: flex-start !important;
}

.maven-menu .et-menu li li a:hover {
  background-color: transparent;
}
  
.maven-row-overlay-menu { 
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

/* menu overflow */
.maven-overlay-menu-column-1 {
	overflow-y: auto;
	overflow-x:hidden;	
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* ###  Style scroll bar ### */
#style-scrollbar::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  border-radius: 0px;
}

#style-scrollbar::-webkit-scrollbar {
  width: 10px;
}

#style-scrollbar::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
}

.header-second-column .maven-hamburger-icon,
.header-second-column .maven-hamburger-icon a {
	display: flex;
    align-self: stretch;
}

.header-second-column .maven-hamburger-icon {
  	margin-top : 0px !important;
}

.header-second-column .et_pb_icon_wrap {
	display: flex !important;
}

.header-second-column .et-pb-icon {
	display: flex;
    align-self: center;
}

/* ### Header ### */

@media screen and (min-width: 981px) {
.maven-menu-row {
	display: flex;	
	align-items: center;
}
	
.maven-logo-column {
    display: flex;
    align-items: center;		
}	
	
.maven-menu-column {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.maven-menu-column .et_pb_menu__logo-wrap {
	display: none;	
}}

/* ### Header V2 ### */

.maven-header-row {
	display: flex;
    align-items: center;
}

/* ### Header V2 ### */
@media screen and (min-width: 981px) {
.header-v2-menu-column {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}}

.header-v2-row {
display: flex;
    align-content: center;
    align-items: center;
}

/* ### Header with skide-in ### */

.hws-v6-header-column {
	display:flex;
  justify-content: end;
}  

.hws-v6-header-slide-in-icon .et_pb_icon_wrap  {
	height: 100%;
	display: flex;
    align-items: center;
}  
  
.hws-v6-slide-in-section {
	z-index:99999;    
}  
  
  
/* ###  Style scroll bar ### */

#style-scrollbar::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  border-radius: 0px;
}

#style-scrollbar::-webkit-scrollbar {
  width: 10px;
}

#style-scrollbar::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
}

.hws-v6-custom-menu-v1-row {
	overflow: hidden;
  	transform: translateX(100%);
  	transition: all .3s ease;
	opacity:1;
}

.hws-v6-custom-menu-v1-row.hws-v6-active-menu-v1 {
  	overflow: hidden;
  	transform: translateX(0%);
  	transition: all .3s ease;
	opacity:1;
}
  
@media (max-width: 980px) {
.hws-v6-menu-v1-desktop-column {
   	height: 100vh; 
}}   

/* ### Home ### */

@media screen and (min-width: 981px) and (max-width: 1150px){
.hero-header-home-title h1 {
	font-size: 80px !important;	

}}

@media screen and (min-width: 1151px) and (max-width: 1450px){
.hero-header-home-title h1 {
	font-size: 92px !important;	
}}

@media screen and (min-width: 1451px) and (max-width: 1800px){
.hero-header-home-title h1 {
	font-size: 106px !important;	
}}

@media screen and (min-width: 981px) and (max-width: 1700px){
.maven-home-middle .et_pb_row {
	height: 60vh !important;
}

.maven-home-middle h2 {
	font-size: 100px !important;	
}

.maven-art-text {
	width: 75% !important;	
}}

.maven-opt-in p.et_pb_newsletter_field {
	flex: 2!important;
	padding-bottom: 0px !important;
}

.maven-opt-in p.et_pb_newsletter_button_wrap {
	flex: 1!important;
	display: flex;
    align-items: stretch;
}

.maven-opt-in p.et_pb_newsletter_button_wrap a {
	align-items: center;
    display: flex;
    justify-content: center;
}

.maven-opt-in-column-1 {
	display: flex;
    flex-direction: column !important;
}

.maven-art-section-column {
	display: flex;
    align-items: center;
}

.home-logo-row {
	display: flex;
    align-items: center;
}

.testimonial-row-home-column-2 {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}

@media screen and (min-width: 481px) and (max-width: 980px) {
.title-row-plus-link {	
	display: flex;
    align-items: center;	
}
	
.title-row-plus-link .title-row-plus-link-column-1 {
	width: 70% !important;
	margin-bottom: 0px !important;
}
	
.title-row-plus-link .title-row-plus-link-column-1 h2 {
	padding-bottom: 0px !important;
}	

.title-row-plus-link .title-row-plus-link-column-2 {
	width: 30% !important;
}}

@media screen and (max-width: 480px) {
.title-row-plus-link .title-row-plus-link-column-1 h2 {
	text-align: left;
}
	
.title-row-plus-link .title-row-plus-link-column-2 .et_pb_button_module_wrapper {
	text-align: left !important;
}
	
.title-row-plus-link .title-row-plus-link-column-2 .et_pb_button_module_wrapper a{
	padding-left: 4px !important;
}

.title-row-plus-link .title-row-plus-link-column-1 {
	margin-bottom: 0px !important;
}

.maven-art-text {
	width: 100% !important;		
}}

@media screen and (max-width: 980px) {
.hover-image.show {
	position: relative;
}}

@media screen and (min-width: 981px) and (max-width: 1150px){
.hero-header-home-column-1 {
	padding: 50px 25px !important;	
}

.text-double-column-images-home h2 {
	font-size: 36px !important;
}

.double-column-images-home-column-1 {
	padding: 35px !important;	
}}

@media screen and (min-width: 1151px) and (max-width: 1450px){
.hero-header-home-column-1 {
	padding: 50px 50px 50px 50px !important;	
}}

@media screen and (min-width: 1151px) and (max-width: 1450px){
.text-double-column-images-home h2 {
	font-size: 52px !important;
}

.double-column-images-home-column-1 {
	padding: 25px 0px !important;	
}}

@media screen and (min-width: 1451px) and (max-width: 1800px){
.text-double-column-images-home h2 {
	font-size: 64px !important;
}}

@media screen and (min-width: 1451px) and (max-width: 1800px){
.double-column-images-home-column-1 {
	padding: 25px !important;	
}}

.service-blurb-v1 {
	display: flex;
    align-items: center;
}

.service-blurb-v1 h4{
	position: relative;
	width: fit-content;
	margin: 0 auto 20px auto;
}

.service-blurb-v1 h4:after {
	content: "";
	position: absolute;
	bottom:-2px;
	left:0;
	width: 100%;
	height:6px;
}

/* Project grid */
.project-grid {
   transition: all 600ms ease 0ms;
}

.project-grid::before {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-color: rgb(0 0 0 / 0%);
    position: absolute;
    top: 0;
    left: 0;
	z-index:9;
	transition: all 600ms ease 0ms;
}

.project-grid-not-active::before {
	 background-color: rgb(0 0 0 / 60%) !important;
}

.project-grid-not-active {
	border-color: #282828 !important;
}

.project-grid .button-project {
	z-index: 10 !important;
}

.project-grid-not-active .button-project {
	z-index: 1 !important;
}

/* Projects */

@media (min-width: 981px) {
.project-row.et_pb_gutters2 .et_pb_column_1_4, .project-row.et_pb_gutters2.et_pb_row .et_pb_column_1_4 {
    width: 24.625%;
}

.project-row.et_pb_gutters2 .et_pb_column, .project-row.et_pb_gutters2.et_pb_row .et_pb_column {
    margin-right: .5%;
}}

.single-project-grid {
   transition: all 600ms ease 0ms;
}

.single-project-grid::before {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background-color: rgb(0 0 0 / 0%);
    position: absolute;
    top: 0;
    left: 0;
	z-index:0;
	transition: all 600ms ease 0ms;
	cursor: pointer;
}

.project-grid-not-active::before {
	background-color: rgb(0 0 0 / 60%) !important;
	z-index:9;
}

.project-grid-not-active {
	border-color: #282828 !important;
}

.project-grid-not-active .button-project {
	z-index: 1 !important;
}

/* Project v2 column */
.project-v2-number-line::after {
	content: "";
	position: absolute;
	top: 47%;
	left: 30px;
	background-color: #000;
    width: 20px;
    height: 1px;
}

/* Case studies section */

.element {    
	background-color: rgb(0 0 0 / 0%);
	transition: all 500ms ease 0ms;
}

.active h3,
body #page-container .et_pb_section .active .et_pb_button_module_wrapper a.et_pb_button {
	color: #fff !important;
}

.project-grid-image-active.hover-image {
	display: block;
}

.hover-image {
	opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease; /* Smooth transition for both opacity and visibility */
	position: absolute;
    top: 0;
    left: 0;
}

.element.active:before {
	content: "";
	position: absolute;
	top:0;
	left:0;
    height: 10px;
	width: 100%;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px!important;
    margin-bottom: 0px!important;
}

/* When the image is shown, change opacity to 1 */
.hover-image.show {
    opacity: 1;
    visibility: visible;
}

.element .project-description-column1 {
	width: 25% !important;
	margin-right: 5% !important;
	border-right: 1px solid #422c16;
}

.element .project-description-column2 {
	width: 70% !important;
}

/* middle section with paralax*/
.middle-section-paralax {
	display: flex;
}

/* Testimonials */

.testimonial-blurb .et_pb_module_header {
	margin-top: 24px;
}

/* ### Blog grid ### */
.custom-blog-grid .et_pb_post {
	position: relative;
}

.custom-blog-grid .post-meta,
.blog-sidebar .post-meta	{
	position: absolute;
    top: 5px;
    left: 5px;
    padding: 2px 10px !important;
	z-index:9;
	border-radius: 5px;
}

@media (min-width: 981px) {
.custom-blog-grid .entry-title {
	min-height: 200px;
}}

@media (max-width: 980px) {
.custom-blog-grid .entry-title {
	min-height: 100px;
}}

/* ### Blog with sidebar ### */

.blog-sidebar article h2,
.blog-sidebar .post-content {
	padding-left: 25px;
	padding-right: 25px;
}

.blog-sidebar .post-content {
	padding-bottom: 25px;
}

.blog-sidebar article:before {
	content: "";
	position: absolute;
	bottom:0;
	left:0;
	height: 7px;
	width: 100%;
}

/* ### Sidebar blog ### */

.single-post-sidebar h2.wp-block-heading {
    padding: 20px 40px;
    margin-bottom: 30px;
    text-transform: uppercase;
}


.single-post-sidebar h2.wp-block-heading {
	margin-left: -35px;
	margin-right: -35px;
}
	
.single-post-sidebar .wp-block-group {
	padding: 0px 35px;	
}


@media (max-width: 980px) {
.et_pb_gutters1.et_pb_row .et_pb_column .single-post-sidebar .et_pb_widget {
	width:100%;
}}

.single-post-sidebar .et_pb_widget ul {
	padding-bottom: 15px!important;
	font-size: 16px !important;
	line-height: 1.5em!important;
}

.single-post-sidebar .widget_search {	
	padding-bottom: 25px!important;
}

.single-post-sidebar .et_pb_widget ul li {
    margin-bottom: 1em;
}

.single-post-sidebar.et_pb_widget_area ul li::before {
  	content: "\25FC";
	vertical-align: baseline;
}

.single-post-sidebar .et_pb_widget ul {
    padding-left: 13px!important;
}
.single-post-sidebar.et_pb_widget_area ul li::before {
	content: "\25a0";
    color: #a22d22;
    font-weight: bold;
    display: inline-block;
    width: 1.5em;
    margin-left: -1.5em;
    margin-top: -2px;
    float: left;
    font-size: 18px;
}

.single-post-sidebar .wp-block-search__inside-wrapper {
	display: flex;
}

.single-post-sidebar .wp-block-search__inside-wrapper .wp-element-button {
	padding-top: 5px;
	padding-bottom: 5px;
}

.single-post-sidebar .wp-block-search__button-outside {
	padding-bottom: 25px;
}

/* ### Post ### */

.post-title-featured-image img {
	border-radius: 15px;
	margin-top: 25px;
}

/* Footer */

@media screen and (min-width: 981px) and (max-width: 1550px){
.middle-text-above-footer h2 {
	font-size: 50px !important;	
}}


/* #### Dropdown Menu #### */  
  
.nav li li:last-child a {
  border-bottom: 0px solid #e5e5e5; 
}  
  
.nav li ul.sub-menu {
	padding: 0px !important;
  border-radius: 5px;
  box-shadow: 0 5px 17px 0px rgb(0 0 0 / 25%);
  -moz-box-shadow: 0 5px 17px 0px rgba(0,0,0,.25);
  -webkit-box-shadow: 0 5px 17px 0px rgb(0 0 0 / 25%);
}
  
.nav li li {
  padding: 0 0px !important;
  width: 100%;
}
  
.et-menu li li a {
  padding: 10px 20px;
  width: 100% !important;
}
  
.et-menu > .menu-item-has-children > .sub-menu:before {
	content: '';
  display: block;
  position: absolute;
  left: 20px;
  top: -20px;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
  z-index: 1;
}
  
.nav li ul {
    right: 0!important;
}
  
.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a {
    padding-bottom: 20px;
}  

.nav li li ul {
    top: -4px !important;
}
  
/* #### Collaping Mobile Menu #### */

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon::after {
	top: 10px;
    position: relative;
    font-family: "ETModules";
    content: '\33';
    border-radius: 50%;
    padding: 3px;
	font-size: 19px;
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle-icon,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle-icon {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}

ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative;
}

.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}

ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none !important;
	visibility: hidden !important;
}

ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block !important;
	visibility: visible !important;
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle-icon {
	text-align: center;
	opacity: 1;
}

/* hide overlay and white space in visual builder */
.et-fb .maven-row-overlay-menu {
	display: none;
}

.et-fb .et-fb-custom-css-output,
.et-fb .et_pb_row_2_tb_header,
.et-fb .et_pb_row_1_tb_header.maven-header{
	display: none;
}