/* 
 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: 12px #9b395e 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: 
#9b395e; /* Icon background color */
}

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

/* ### Project blocks - home page ### */
.project-column:hover:before {
 background: linear-gradient(180deg,rgba(155,57,94,0.5),#9b395e 100%); /* overlay bg project */
}

.project-column:hover:after {
    background: linear-gradient(180deg,rgba(155,57,94,0.5),#9b395e 100%); /* overlay bg project logo */
}

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

.custom-blog-grid .et_pb_post .post-meta a {
    background-color: #f1f3f4; /* 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: #fff!important; /* button text color */
    background-color: #9b395e; /* button color */
}

/* ### Job page list marker ### */
.job-list ul li::marker {
  color: #9b395e; /* 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: #9b395e; /* Background color */
  color: #fff; /* 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: #260b5e;
}

/* ### 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;
  margin-bottom:5px;
}

.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: 100px;
    padding: 8px 35px;
  display: block;
  text-align: center;
      position: absolute;
    bottom: 20px;
    box-sizing: border-box;
    width: calc(100% - 38px);
      transition-duration: 1s !important;
    -moz-transition-duration: 1s !important;
    -o-transition-duration: 1s !important;
    -webkit-transition-duration: 1s !important;
  
}

.custom-blog-grid a.more-link:hover {
 background-color:#3a2897;
color:#fff !important;
      transition-duration: 1s !important;
    -moz-transition-duration: 1s !important;
    -o-transition-duration: 1s !important;
    -webkit-transition-duration: 1s !important;
}

.custom-blog-grid .et_pb_image_container a {
  overflow: hidden;
  padding-top:62.4%;
  position:relative;
}

.custom-blog-grid .et_pb_image_container a img {
  transition: all 0.5s ease-in-out;
position:absolute;
top:0;
object-fit:cover;
}

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