/* 
 Theme Name:     Divi Seo
 Author:         Mark Hendriksen
 Author URI:     https://markhendriksen.com
 Template:       Divi
 Version:        1.0
 Description:    A Divi Child Theme 
*/ 

/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE --------------------------- */ 


/* ########################### */
/* ###### CHANGE COLORS ###### */
/* ########################### */

/* ### Dropdown menu ### */
.nav li li a { 
  	border-bottom: 1px solid rgb(255 255 255 / 19%); /* Dropdown border bottom */ 
  	font-weight: 600 !important; /* Dropdown font weight */ 
  	font-size: 16px !important; /* Dropdown font size */ 
}
  
.et-menu > .menu-item-has-children > .sub-menu:before {
  	border-bottom: 11px #61BB46 solid; /* Dropdown arrow color */
} 

/* #### 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 {
	color: #2a11a5; /* Icon color */
	background: #61BB46; /* Icon background color */
}

/* ### Background image color ### */
/* ###.image-floating-bg-right:before,
/* ###.image-floating-bg-left:before {
/* ###	background-color: #9CBE92;
/* ###}

/* ### Project blocks - home page ### */
.project-column:hover:before {
    background: linear-gradient(180deg,rgba(164,197,58,0.5),#61BB46 100%); /* overlay bg project */
}

.project-column:hover:after {
    background: linear-gradient(180deg,rgba(164,197,58,0.5),#61BB46 100%); /* overlay bg project logo */
}

/* ### Blog grid ### */

.custom-blog-grid .et_pb_post .post-meta a {
    background-color: #61BB46; /* bg categorie */
}

.custom-blog-grid.et_pb_blog_grid_wrapper .et_pb_post .post-meta a {
	color: #151515!important; /* text color categorie */
}

.custom-blog-grid a.more-link {
	color: #142C56!important; /* button text color */
    background-image: linear-gradient(90deg,#61BB46 0%,#61BB46 50%,#61BB46 100%); /* button color */
}

/* ### Job page list marker ### */
.job-list ul li::marker {
	color: #61BB46; /* Job list marker color */
}

/* ### Contact form checkbox ### */
.contact-page-form .et_pb_contact p input[type=checkbox]:checked+label i:before {
    color: #000000 !important; /* Check color */
}

/* ### Badge number menu ### */
.custom-menu ul li a .ds-badge {
	background-color: #61BB46; /* Background color */
	color: #2a11a5; /* Text color */
}

/* ###### END HANGE COLORS ###### */

/* ### Header V1 ### */

.header-v1-column-services {
	display: flex;
}

.header-v1-phone .et_pb_blurb_content {
    margin: 0 0 0 auto;
}

.header-v1-part-1-row,
.header-v1-part-2-row {
	display: flex;
    align-items: center;
}

.header-v1-button-column .et_pb_button_module_wrapper {
	display: flex;
    justify-content: flex-end;
}

.et_pb_menu.custom-menu .et-menu>li {
    padding-left: 25px;
    padding-right: 25px;
}

.et_pb_menu--with-logo.custom-menu .et_pb_menu__menu>nav>ul>li>a {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

.et_pb_menu.custom-menu .et_pb_menu__menu>nav>ul>li.current-menu-item,
.et_pb_menu.custom-menu .et_pb_menu__menu>nav>ul>li:hover {
	background-color: #0A275B;
}

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

.header-v2-column-button .et_pb_button_module_wrapper {
	display: flex;	
}}

@media screen and (max-width: 980px) {
.header-v2-button {
	width: 100%;
}}

@media screen and (min-width: 981px) and (max-width: 1250px){
.et_pb_menu.custom-menu-v2 .et-menu>li {
	padding-left: 15px;
    padding-right: 15px;
}}

/* ### Header V3 ### */
@media screen and (min-width: 480px) {
.header-v3-top {
	display: flex;
    align-items: center;
}

.header-v3-button-column .et_pb_button_module_wrapper  {
	display: flex !important;
    justify-content: flex-end;
}}

.header-v3-column-phone {
	margin-bottom: 0px !important;
}

@media screen and (max-width: 480px) {
.header-v3-phone-blurb .et_pb_blurb_content {
	display: flex;
    justify-content: center;
}

.header-v3-phone-blurb .et_pb_blurb_content .et_pb_main_blurb_image {
	margin-bottom: 0px !important;	
}

.header-v3-column-phone {
	padding-bottom: 15px;	
}}


/* ### Header hero ### */
.image-floating-bg-right:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	width: 100%;
	height: 100%;
	border-radius: 15px;
}

.image-floating-bg-left:before {
	content: "";
	position: absolute;
	top: 20px;
	right: 20px;
	width: 100%;
	height: 100%;
	border-radius: 15px;	
}

/* ### Brand logos - home page ### */
.brand-logo-row {
	display: flex;
    align-items: center;
}

/* ### Services blocks - home page ### */
.service-blurb .et_pb_blurb_description {
    transition: color 0ms ease 0ms,background-color 0ms ease 0ms,background-image 0ms ease 0ms !important;
}

.row-grid-1 .et_pb_column_1_6,
.row-grid-2 .et_pb_column_1_6,
.row-grid-3 .et_pb_column_1_6 {
	width: 31.21% !important;
    margin-right: 3% !important;
}

/* ### Project blocks - home page ### */
.project-column {
	display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.project-column:before {
    transition: all 0.5s ease-in-out;
    transition-delay: 0.025s;
    background-color: #fff;
    content: "";
    display: block;
    border-radius: 100%;
    opacity: 0;
    position: absolute;
    transform: scale3d(0,0,0) translate3d(50%,-50%,0);
    width: 100%;
    height: 100%;
    top: -50%;
    right: -50%;
    opacity: 0;
}

.project-column:hover:before {
    transform: scale3d(3,3,1);
    opacity: 1;
}

.project-column:after {
    transition: all 0.5s ease-in-out;
    transition-delay: 0.025s;
    background-color: #fff;
    content: "";
    display: block;
    border-radius: 100%;
    opacity: 0;
    position: absolute;
    transform: scale3d(0,0,0) translate3d(50%,-50%,0);
    width: 200px;
    height: 200px;
    top: -25%;
    right: -25%;
    opacity: 0;
}

.project-column:hover:after {
    transform: scale3d(1.6,1.3,1);
    opacity: 1;
} 

/* ### Custom button ### */
.et_pb_module a.custom-button,
.contact-custom-button .et_pb_contact_submit,
.custom-blog-grid a.more-link {
    transition: color 0.35s ease, background-position 0.3s ease-in-out, background-color 0.35s ease, box-shadow 0.3s ease-in-out;
	z-index: 1;
    overflow: hidden;
    background-size: 200% 100%;
    background-position: 0 0;
}

.et_pb_module a.custom-button:hover,
.contact-custom-button .et_pb_contact_submit:hover,
.custom-blog-grid a.more-link:hover {
	background-position: 100% 100%;
}

.home-quart-column-text {
	display: flex;
    align-items: center;
}

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

.custom-blog-grid .et_pb_post .post-meta {
	position: absolute;
    left: 10px;
    top: 10px;
}

.custom-blog-grid .et_pb_post .post-meta a {
	display: inline-block;
    padding: 0px 12px;
    border-radius: 5px;
    font-weight: 700;
}

.custom-blog-grid .et_pb_post .post-meta .author a {
	position: relative;
    left: 0px;
    top: 0px;
    background-color: unset;
    padding: 0;
    font-weight: unset;
}

.custom-blog-grid a.more-link {
    border-width: 0px!important;
    border-radius: 7px;
    font-size: 20px;
    font-weight: 700!important;
	padding: 10px 35px;
	width: 100%;
	display: block;
	text-align: center;
	text-transform: capitalize;
}

.custom-blog-grid .et_pb_image_container a {
	overflow: hidden;
}

.custom-blog-grid .et_pb_image_container a img {
	transition: all 0.5s ease-in-out;
}

.custom-blog-grid .et_pb_image_container a img:hover {
	transform: scale(1.2);
}

.custom-blog-grid h2.entry-title {
	padding-bottom: 25px !important;
}

/* ### Pricing ### */
.custom-pricing-dollar-sign {
	font-size: 14px; 
	margin-right: 5px; 
	vertical-align: text-top;
}

.custom-pricing-per-month {
	font-size: 14px; 
}

/* ### Website check form ### */
.website-check-form .et_contact_bottom_container,
.website-check-form .et_pb_contact_submit {
	width: 100%;
}

.website-check-form .et_contact_bottom_container {
	margin-top: -2px;
}

/* ### Footer ### */
.footer-list ul {
	padding-bottom: 0px !important;
}

/* ### Responsive styles ### */

/* ### General ### */
@media screen and (min-width: 981px) and (max-width: 1400px) {
.et_pb_row.custom-row-95,
.custom-row-special-95 .et_pb_row	{
	width: 95% !important;
}}

/* ### Header ### */
@media screen and (max-width: 980px) {
.header-v1-part-1-row {
	flex-direction: column;	
}

.header-v1-phone .et_pb_blurb_content {
	margin: 0 auto;	
}

.et_pb_gutters1.et_pb_row .et_pb_column.header-column-phone {
	margin-top: 10px !important;	
}}

@media screen and (max-width: 767px) {
.header-v1-part-2-row {
	flex-direction: column;		
}

.header-v1-button-column .et_pb_button_module_wrapper {
    justify-content: center;
}

.header-v1-button {
	width: 90%;		
}

.header-v1-column-services {
	margin-bottom: 15px;
	justify-content: center;
}}

@media screen and (min-width: 768px) and (max-width: 980px) {
.header-v1-column-services {
	margin-bottom: 0px;	
}

.header-v1-button-column .et_pb_button_module_wrapper {
	justify-content: center;		
}

.et_pb_gutters1.et_pb_row .et_pb_column.header-column-phone {
	margin-top: 10px !important;	
}}

/* ### Home page ### */
@media screen and (max-width: 980px) {
.row-grid-1 .et_pb_column_1_6,
.row-grid-2 .et_pb_column_1_6, 
.row-grid-3 .et_pb_column_1_6 {
	margin-bottom: 0px !important;
}

.project-column {
	height: 300px;
}

.home-quart-column-text {
	width: 100% !important;	
}}

.team-person-column {
	height: 500px;
}

/* ### Team members ### */
.team-person-column .team-person-blurb {
	transform: translate(0px,-100%);
	transition: all 0.4s ease-in-out;
	display: flex;
    align-items: center;
}

.team-person-column:hover .team-person-blurb {
	transform: translate(0px,0%);
}

/* ### Reverse column ### */
@media screen and (max-width: 980px) {
.ds-reverse-column {
	display: flex;
    flex-direction: column-reverse;
	padding-bottom: 0px !important;
}}

/* ### Job page ### */
.job-list ul li {
	padding-bottom: 20px;
}

.job-list ul li::marker {
	font-size: 22px;
}

/* ### Post page ### */
.post-searchbox {
	padding: 25px;
	border-radius: 8px;
}

ul.ds-post-categories li {
	margin-top: 15px !important;
	display: flex;
}

.ds-custom-optin .et_pb_newsletter_form {
	padding-top: 10px !important;
}

@media only screen and (min-width: 981px) {
.et-db #et-boc .et-l .ds-custom-optin p.et_pb_newsletter_field {
	flex:2 !important;
	padding-bottom: 0px;
}

.et-db #et-boc .et-l .ds-custom-optin .et_pb_newsletter_form p.et_pb_newsletter_field input {	
	border-radius: 25px 0px 0px 25px !important;
	padding-left: 6%!important;
}

.et-db #et-boc .et-l .ds-custom-optin p {
	flex:1 !important;	
}

.et-db #et-boc .et-l .ds-custom-optin .et_pb_newsletter_fields {
	align-items: center;	
}

body.et-db #et-boc .et-l .ds-custom-optin .et_pb_button {
	border-radius: 0px 25px 25px 0px !important;
	height: 47px;
    display: flex;
	justify-content: center;
}

body.et-db #et-boc .et-l .ds-custom-optin .et_pb_button .et_pb_newsletter_button_text{
	align-self: center;	
}}

@media only screen and (min-width: 981px) and (max-width: 1450px) {	
body.et-db #et-boc .et-l .ds-custom-optin a.et_pb_button   {
	justify-content: center;
	font-size: 9px !important;
}}

@media only screen and (max-width: 767px) {
.single .header-v1-part-2 .header-v1-part-2-row {
	padding-bottom: 15px !important;
}}

/* ### Contact page ### */
.contact-page-form {
	border-radius: 12px;	
}

@media only screen and (min-width: 981px) {
.contact-page-form .et_pb_contact_field_options_list  {
	display: flex !important;
    flex-wrap: wrap;
}

.contact-page-form .et_pb_contact_field_checkbox {
	flex: 0 0 33.333333%;	
}

.contact-page-form .et_pb_contact_field_checkbox label {
	display: flex !important;
    align-items: center;	
}}

.contact-page-form .et_pb_contact_field_options_title {
	color: rgba(255,255,255,0.7) !important;
	font-size: 20px !important;
}

/* ### Badge number ### */
@media screen and (min-width: 981px) {
.custom-menu ul li.ds-badge-number a .ds-badge {
    position: absolute;
	display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    top: 19px;
    right: -15px;
    width: 17px;
	height:17px;
    border-radius: 25px;
}}

@media screen and (max-width: 980px) {
.custom-menu ul li.ds-badge-number a .ds-badge {
    position: absolute;
	display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    top: 8px;
    right: -9px;
    width: 17px;
	height:17px;
    border-radius: 25px;
}

.custom-menu ul li.ds-badge-number a {
	position: relative;	
	display: inline-block;
}}

/* #### 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: -2px !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;
}

ul.et_mobile_menu li.menu-item-has-children.mobile-toggle-open>.mobile-toggle-icon::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.mobile-toggle-open>.mobile-toggle-icon::after {
	content: '\32';
}

.et_mobile_menu .menu-item-has-children>a {
    font-weight: 600 !important; 
}

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;
}