/*
 Theme Name:     DWS Child Theme
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */

/****** MAIN NAVIGATION ******/

/* This aligns the menu items vertically centered */
.et_pb_menu .et_pb_menu__menu>nav, .et_pb_menu .et_pb_menu__menu>nav>ul>li{
	align-items: center;
}

/* This adds spacing between the menu items */
.et_pb_menu .et_pb_menu__menu>nav>ul>li:not(:last-child) {
    padding-right: 20px;
}

/* This reduces the top spacing for the dropdown menu */
.sub-menu {
    margin-top: -10px;
}

/* This aligns the mobile menu icon to the logo */
.et_pb_menu__wrap .mobile_menu_bar {
    transform: translateY(23%);
}

/*adjust Divi Menu module breakpoints*/
@media only screen and (max-width: 1250px) and (min-width: 981px) {
    #site-header .et_pb_menu__logo-wrap {
        max-width: 190px;
    }
	
	#site-header .et_pb_menu .et_pb_menu__menu>nav>ul>li:not(:last-child){
		padding-right: 8px;
	}
}

/*Hide "Book A Call" nav item on desktop*/
@media (min-width: 981px) {
#site-header .et_pb_menu .et_pb_menu__menu>nav>ul>li.cta a
  {
  display: none !important;
}
}


/****** GENERAL ******/

/* This makes all body text and bullet points to 400 font weight */
.et_pb_text_inner p, li, .et_pb_blurb_description  {
	font-weight: 400 !important;
}

/* Styling of bullet points */
.et_pb_text_inner li::marker {
	margin-left: 2px;
}

.et_pb_text_inner li:not(:last-child) {
	padding-bottom: 10px;
}


.et-l--post li:not(:last-child) {
	padding-bottom: 10px;
}


/****** FOOTER ******/

/* Hide default Divi footer */
#main-footer {
  height: 0 !important;
  overflow: hidden;
}

/* Email Opt-In */

@media (min-width: 821px) {
	/*set the width of the button*/
	.email-optin .et_pb_newsletter_fields .et_pb_newsletter_button_wrap {
		flex-basis: 110px !important;
	}
	/*set the width of the input fields minus the width of the button*/
	.email-optin .et_pb_newsletter_form .et_pb_newsletter_field {
		flex-basis: calc((100% - 110px) / 2) !important;
	}
}

/* Spacing social media icons */
.et_pb_social_network_link {
    padding-right: 5px;
}

/****** HOME ******/

/* Styling of testimonials slider */
.testimonials .et-pb-controllers a {
  width: 15px;
  height: 15px;
}


.et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image .et_pb_image_wrap {
	height: 100%;
}

.et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image .et_pb_image_wrap img {
	height: 100%;
	object-fit: cover;
}


/*** blog roll - reduce column gaps between each post ***/
@media (min-width: 981px) {
.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3, .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 {
    width: 30.9%;
    margin-right: 3.5%;
}
}


/****** ABOUT ******/

/* Services blurbs - make images contained */

.exploring-blurbs .et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image .et_pb_image_wrap {
	height: 100%;
}

.exploring-blurbs .et_pb_blurb .et_pb_blurb_content .et_pb_main_blurb_image .et_pb_image_wrap img {
	height: 100%;
	max-height: 240px;
	object-fit: cover;
}

.exploring-blurbs {
	height: 100%;
}

.exploring-blurbs .et_pb_blurb_content {
    display: flex;
    flex-direction: column;
}

.exploring-blurbs .et_pb_blurb_content .et_pb_blurb_container {
	  display: flex;
    align-items: flex-start;
    justify-content: center;
}


/****** SERVICES ******/

/*Equalize toggles for each 1, 2 and 3 lines of text*/

@media only screen and (min-width: 1150px){
  .et_pb_module.et_pb_toggle.toggle-one-line.et_pb_toggle_item.et_pb_toggle_close {
    padding-top: 4vh !important;
  padding-bottom: 4vh !important;
  min-height: 85px;
}

.et_pb_module.et_pb_toggle.toggle-one-line.et_pb_toggle_item.et_pb_toggle_open {
padding-top: 4vh !important;
  padding-bottom: 4vh !important;  
	min-height: 85px;

}

.et_pb_module.et_pb_toggle.toggle-two-line.et_pb_toggle_item.et_pb_toggle_close {
    padding-top: 2.25vh !important;
  padding-bottom: 2.25vh !important;
  min-height: 85px;
}

.et_pb_module.et_pb_toggle.toggle-two-line.et_pb_toggle_item.et_pb_toggle_open {
padding-top: 2.25vh !important;
  padding-bottom: 2.25vh !important;  
	min-height: 85px;

}

.et_pb_module.et_pb_toggle.toggle-three-line.et_pb_toggle_item.et_pb_toggle_close {
    padding-top: .75vh !important;
  padding-bottom: .75vh !important;
  min-height: 85px;
}

.et_pb_module.et_pb_toggle.toggle-three-line.et_pb_toggle_item.et_pb_toggle_open {
padding-top: .75vh !important;
  padding-bottom: .75vh !important;  
	min-height: 85px;

}
}

/****** BLOG ******/

/*Equalize blog grid on desktop and tablet so it is not masonry*/
@media only screen and (min-width: 415px) and (max-width: 2560px) {
.et_pb_post {
min-height: 425px !important;
}	
}	

@media (min-width: 981px){
.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post, .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post {
    margin-bottom: 5%;
}
}

@media (max-width: 980px){
.et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post {
    margin-bottom: 0% !important;
}
}

/****** BLOG - SINGLE POST TEMPLATE ******/

/*Adjust height for blog grid*/
#sidebar-blog .et_pb_post {
  margin-bottom: 5% !important;
  min-height: 0px !important;
}

/*Styling changes to the search bar*/

.ds-icon-search input.et_pb_s,
.widget_search input#s {
    padding-right: 55px !important;
}

.ds-icon-search .et_pb_searchform:before,
.widget_search::before {
    content: '\55';
    position: absolute;
    font-family: 'ETModules';
    z-index: 1;
    right: 0;
    font-size: 20px;
    padding: 20px;
}

.category-module p:not(:last-child) {
	border-bottom: 1px solid #D9D9D9; 
	padding-bottom: 10px; 
}

.category-module p:not(:first-child){
		padding-top: 15px;
}

/* Styling of category sub menu*/

#category-sidebar li.cat-item:not(:last-child) {
    border-bottom: 1px solid #D9D9D9;
  padding-top: 5px;  
  padding-bottom: 12px;
}

#category-sidebar li.cat-item:last-child {
  padding-top: 5px;  
}

#category-sidebar  .et_pb_widget {
  margin-bottom: 0px !important;
}

.et_pb_column .et_pb_widget {
    width: 100% !important;
}


/****** CONTACT ******/

/* Make social media handles full width across all devices */
.et_pb_blurb_content {
    max-width: 100%;
}


/** Landing Page **/

/* Make images span the whole container */

.object-cover img {
	object-fit: cover;
	object-position: top center;
}


/* Mobile Menu */

/*This code makes the menu items with submenus collapse by default and adds a toggle thats expands them when clicked */

/*change hamburger icon to x when mobile menu is open*/

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}


/*adjust the new toggle element which is added via jQuery*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}


/*some code to keep everyting positioned properly*/

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;
}


/*remove default background color from menu items that have children*/

.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;
}


/*hide the submenu by default*/

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;
}


/*show the submenu when toggled open*/

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;
}


/*adjust the toggle icon position and transparency*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: center;
	opacity: 1;
}


/*submenu toggle icon when closed*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: #262d32;
	background: #f0f3f6;
	border-radius: 50%;
	padding: 3px;
}


/*submenu toggle icon when open*/

ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32';
}


/*add point on top of the menu submenu dropdown*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
	position: absolute;
	right: 5%;
	margin-left: -20px;
	top: -14px;
	width: 0;
	height: 0;
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #ffffff;
}


/*adjust the position of the hamburger menu*/

.mobile_menu_bar {
	position: relative;
	display: block;
	bottom: 10px;
	line-height: 0;
}


/*force the background color and add a rounded border*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
	background-color: #ffffff!important;
	border-radius: 10px;
}  