/*
 Theme Name: 	Identity
 Description:	Portfolio Child Theme Template for Divi
 Author: 		Divi Lover
 Author URI: 	https://divilover.com
 Template: 		Divi
 Version:		1.0
 License:		GNU General Public License v2 or later
 License URI:	http://www.gnu.org/licenses/gpl-2.0.html
*/


/* CSS Variables */

:root {
  --dlov_shadow: 0px 2.1px 1.7px rgba(0, 0, 0, 0.016),
    0px 5.3px 4.3px rgba(0, 0, 0, 0.022),
    0px 10.8px 8.9px rgba(0, 0, 0, 0.028),
    0px 22.3px 18.3px rgba(0, 0, 0, 0.034),
    0px 61px 50px rgba(0, 0, 0, 0.05);
  --dlov_shadow_big:
    0.5px 4.2px 4.1px rgba(0, 0, 0, 0.028),
    1.2px 10.5px 10.4px rgba(0, 0, 0, 0.04),
    2.5px 21.4px 21.3px rgba(0, 0, 0, 0.05),
    5.1px 44.2px 43.8px rgba(0, 0, 0, 0.062),
    14px 121px 120px rgba(0, 0, 0, 0.09);
}

/* Dark Color #1 (lighter shade) */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
.dlov-dark-color {
  color: var(--dlov_dark_color1);
}

.dlov-dark-bg,
.et-tb #et-boc .et-l .dlov-dark-bg {
  background-color: var(--dlov_dark_color1);
}

.dlov-dark-bg-alpha,
.et-fb #et-boc .et-l .dlov-dark-bg-alpha {
  background-color: var(--dlov_dark_color1_alpha);
}

/* Dark Color #2 (darker shade) */

.et_pb_module,
body a,
.dlov-dark-color2 {
  color: var(--dlov_dark_color2);
}

.dlov-dark-bg2,
.et-tb #et-boc .et-l .dlov-dark-bg2 {
  background-color: var(--dlov_dark_color2);
}

.et_pb_with_border,
.et-tb #et-boc .et-l .et_pb_with_border {
  border-color: var(--dlov_dark_color2_alpha);
}

.dlov-dark-bg2-alpha,
.et-fb #et-boc .et-l .dlov-dark-bg2-alpha {
  background-color: var(--dlov_dark_color2_alpha);
}

.dlov-tag {
  background: var(--dlov_dark_color1);
  width: fit-content;
}

/* Light Color #1 (lighter shade) */

.dlov-light-color {
  color: var(--dlov_light_color1);
}

.dlov-light-bg,
.et-tb #et-boc .et-l .dlov-light-bg {
  background-color: var(--dlov_light_color1);
}

.dlov-light-bg-alpha,
.et-fb #et-boc .et-l .dlov-light-bg-alpha {
  background-color: var(--dlov_light_color1_alpha);
}

/* Light Color #2 (darker shade) */

.dlov-light-color2 {
  color: var(--dlov_light_color2);
}

.dlov-light-bg2,
.et-tb #et-boc .et-l .dlov-light-bg2 {
  background-color: var(--dlov_light_color2);
}

.dlov-light-border,
.et-tb #et-boc .et-l .dlov-light-border {
  border-color: var(--dlov_light_color2_alpha);
}

.dlov-light-bg2-alpha,
.et-fb #et-boc .et-l .dlov-light-bg2-alpha {
  background-color: var(--dlov_light_color2_alpha);
}

/* Accent Color */

.dlov-accent-color,
.et-tb #et-boc .et-l .dlov-accent-color {
  color: var(--dlov_accent_color);
}

h4.dlov-accent-color,
.et-tb #et-boc .et-l h4.dlov-accent-color {
  color: var(--dlov_accent_color) !important;
}

.dlov-accent-border,
.et-tb #et-boc .et-l .dlov-accent-border {
  border-color: var(--dlov_accent_color);
}

.dlov-accent-bg,
.et-tb #et-boc .et-l .dlov-accent-bg {
  background-color: var(--dlov_accent_color);
}

/* Reset Body Font-Weight */

body,
.posted_in a,
.tagged_as a,
p.woocommerce-result-count {
  font-weight: 400;
}

/* Mobile Responsiveness Helper Classes */

@media (max-width: 479px) {
  .dlov-mobile-2col .et_pb_column {
    width: 47.25% !important;
  }

  .dlov-mobile-2col .et_pb_column:not(.et-last-child) {
    margin-right: 5%;
  }
}

@media (max-width:980px) {
  .dlov-reverse-col-mobile {
    display: flex;
    flex-direction: column-reverse;
  }

  .dlov-reverse-col-mobile .et_pb_column.et-last-child {
    margin-bottom: 30px;
  }

  .dlov-reverse-col-mobile .et_pb_column:first-of-type {
    margin-bottom: 0;
  }
}

/* Buttons */

.dlov-button {
  line-height: 1em !important;
  overflow: hidden;
  z-index: 2;
  background: var(--dlov_accent_color);
  display: inline-block;
}

.dlov-button:hover {
  background: var(--dlov_accent_color);
}

.dlov-button.dlov-light-color,
.dlov-button.dlov-light-color:hover {
  background: var(--dlov_light_color2);
  color: var(--dlov_dark_color);
}

.et_pb_button.dlov-light-color .dlov-cursor {
  mix-blend-mode: screen;
}

/* Follow-the-mouse Button Hover Effect */

.et_pb_button .dlov-cursor {
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, .4);
  mix-blend-mode: soft-light;
  z-index: -1;
  border-radius: 100px;
  position: absolute;
  pointer-events: none;
  transition: width 0.4s linear, height 0.4s linear;
  transform: translate(-50%, -40%);
}

.et_pb_button.et_pb_bg_layout_light .dlov-cursor {
  background-color: rgba(255, 255, 255, .4);
}

.et_pb_button:hover .dlov-cursor {
  width: 120px;
  height: 120px;
}

.et_pb_button:active .dlov-cursor {
  width: 300px;
  height: 300px;
}

/* Back to Top Button */

.et_pb_scroll_top.et-pb-icon {
  background: rgba(255, 255, 255, 0.25);
  color: var(--dlov_dark_color1);
  box-shadow: var(--dlov_shadow);
  border-radius: 50%;
  right: 10px;
  padding: 10px;
  backdrop-filter: blur(10px);
  transition: all .3s ease-in-out;
}

.et_pb_scroll_top.et-pb-icon:hover {
  box-shadow: var(--dlov_shadow_big);
  transform: translateY(-5px);
  color: var(--dlov_accent_color);
  background: rgba(255, 255, 255, 0.8);
}

/* Preloader */

.dlov-preloader-wrapper {
  position: fixed;
  z-index: 999999;
  background: #fff;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.admin-bar .dlov-preloader-wrapper {
  top: 32px;
}

@media (max-width:782px) {
  .admin-bar .dlov-preloader-wrapper {
    top: 46px;
  }
}

.dlov-preloader {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Main Menu */

.dlov-main-menu.et_pb_menu .et-menu>li {
  padding-left: 1em;
  padding-right: 1em;
  margin-left: 10px;
  margin-right: 10px;
  z-index: 3;
}

.dlov-main-menu.et_pb_menu .et-menu {
  position: relative;
  flex-wrap: nowrap;
}

.dlov-main-menu.et_pb_menu .et-menu li:hover a {
  opacity: 1;
}

.dlov-main-menu.et_pb_menu .et-menu li a {
  z-index: 2;
}

.dlov-main-menu .et-menu a {
  color: var(--dlov_dark_color1);
}

.dlov-main-menu.et_pb_menu .et-menu>li::before {
  transition: all .3s linear;
  content: '';
  background: rgba(255, 255, 255, 0.5);
  height: 40px;
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  border-radius: 30px;
  opacity: 0;
  top: 50%;
  transform: translateY(-50%);
}

.dlov-main-menu.et_pb_menu .et-menu>li:hover::before {
  opacity: 1;
}

#dlov-menu-active {
  position: absolute;
  transition: all .3s linear;
  top: 50%;
  margin-top: -20px;
  height: 40px;
  z-index: 2;
  background: #fff;
  box-shadow: var(--dlov_shadow);
  border-radius: 30px;
}

/* Fixed Elements */

body:not(.et-fb) .dlov-fixed-header {
  position: absolute;
  width: 100%;
  z-index: 10;
}

.dlov-blurry-bg {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.dlov-transparent-dark-bg {
  background: transparent;
}

.dlov-transparent-dark-bg.et_pb_sticky,
.et-fb .dlov-transparent-dark-bg {
  background-color: var(--dlov_dark_color2_alpha);
}

/* Submenu styling */

.dlov-main-menu .nav li>ul {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.dlov-main-menu .nav li:hover>ul,
.dlov-main-menu .nav li.et-touch-hover>ul {
  animation-name: dlov-fade-in-up;
}

@keyframes dlov-fade-in-up {
  from {
    transform: translate3d(0, 10px, 0)
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.dlov-main-menu .nav li li ul,
.et-db #et-boc .et-l .dlov-main-menu .nav li li ul {
  top: 0;
}

.dlov-main-menu li li.menu-item-has-children>a:first-child:after,
.et-db #et-boc .et-l .dlov-main-menu li li.menu-item-has-children>a:first-child:after {
  right: 6px;
  transform: rotate(-90deg);
}

@media (min-width:981px) {

  .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu {
    box-shadow: var(--dlov_shadow);
    border-top: 0;
    padding: 0;
  }

  .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li {
    padding: 0;
    width: 100%;
  }

  .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li a,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li a {
    text-transform: none;
    letter-spacing: 0;
    padding: 6px 12px;
    width: 100%;
    transition: all .3s ease-in-out;
    font-weight: 400;
  }

  .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li a:hover,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li:not(.mega-menu) ul.sub-menu li a:hover {
    padding-left: 18px;
    background: var(--dlov_light_color1);
  }
}

/* Default Mega-Menu */

.dlov-main-menu .et-menu-nav li.mega-menu>ul,
.et-db #et-boc .et-l .dlov-main-menu .et-menu-nav li.mega-menu>ul {
  width: 90vw;
  max-width: 1200px;
}

@media (min-width:981px) {

  .dlov-main-menu.et_pb_menu li.mega-menu>ul.sub-menu,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li.mega-menu>ul.sub-menu {
    box-shadow: var(--dlov_shadow);
    border-top: 0;
    padding: 20px;
  }

  .dlov-main-menu.et_pb_menu li.mega-menu ul.sub-menu li a,
  .et-db #et-boc .et-l .dlov-main-menu.et_pb_menu li.mega-menu ul.sub-menu li a {
    width: 100% !important;
  }
}

/* Mobile Menu */

.dlov-main-menu .et_mobile_menu,
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu {
  border-top: 0;
  overflow: scroll;
  padding: 0;
  box-shadow: var(--dlov_shadow_big);
}

.dlov-main-menu .et_mobile_menu li a,
.archive #et-boc .dlov-main-menu.et_pb_menu .et_mobile_menu li a,
.dlov-main-menu .mobile_menu_bar:before {
  color: var(--dlov_dark_color1);
}

.dlov-main-menu .et_mobile_menu a:not(.dlov-sub-menu-toggle):hover,
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu a:not(.dlov-sub-menu-toggle):hover {
  background: var(--dlov_light_color1);
  opacity: 1;
  border-radius: 2px;
}

.dlov-main-menu .et_mobile_menu a:not(.dlov-sub-menu-toggle),
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu a:not(.dlov-sub-menu-toggle) {
  border-bottom-color: var(--dlov_light_color2);
}

.dlov-main-menu .et_mobile_menu ul.sub-menu li a:not(.dlov-sub-menu-toggle),
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu ul.sub-menu li a:not(.dlov-sub-menu-toggle) {
  text-transform: none;
  letter-spacing: 0;
  width: 100%;
  transition: none;
}

.dlov-main-menu .et_mobile_menu .sub-menu a,
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu .sub-menu a{
  font-weight: inherit;
}

.dlov-main-menu .et_mobile_menu .sub-menu li,
.et-db #et-boc .et-l .dlov-main-menu .et_mobile_menu .sub-menu li {
  padding: 0;
  margin: 0;
}

@media (max-width:980px) {

  .dlov-main-menu .et_pb_menu_inner_container,
  .et-db #et-boc .et-l .dlov-main-menu .et_pb_menu_inner_container {
    padding: 20px 0
  }

  .dlov-main-menu .et_pb_menu__logo,
  .et-db #et-boc .et-l .dlov-main-menu .et_pb_menu__logo {
    margin-right: 0;
  }
}

.dlov-main-menu .et_pb_menu__wrap .mobile_nav.opened .mobile_menu_bar:before,
.archive #et-boc .dlov-main-menu .mobile_nav.opened .mobile_menu_bar:before {
  content: 'M';
}

.dlov-main-menu .et_mobile_menu>li:last-child a {
  border-bottom: none;
}

/* Nested Mobile Menu */

.dlov-main-menu .et_mobile_menu .menu-item-has-children {
  position: relative;
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle {
  position: absolute;
  color: var(--dlov_dark_color2_alpha) !important;
  z-index: 1;
  width: 50px;
  height: 64px;
  line-height: 64px;
  top: 0;
  overflow: hidden;
  right: 0;
  cursor: pointer;
  text-align: center;
  background: none !important;
  border: none;
  padding: 0 !important;
}

.dlov-main-menu .et_mobile_menu li li .dlov-sub-menu-toggle {
  height: 45px;
  line-height: 45px;
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle.toggled {
  color: var(--dlov_accent_color) !important;
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle::before {
  font-weight: normal;
  font-size: 24px;
  text-transform: none;
  speak: none;
  content: '＋';
  transition: all .3s ease-in-out;
  display: block;
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle.toggled::before {
  transform: rotate(-135deg) translateX(1px);
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle~ul.sub-menu,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle~ul.sub-menu {
  display: none !important;
  padding-left: 0;
}

.et-fb .dlov-main-menu .et_mobile_menu li ul.sub-menu {
  padding-left: 0;
}

.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle.toggled~ul.sub-menu,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu .dlov-sub-menu-toggle.toggled~ul.sub-menu {
  display: block !important;
}

.dlov-main-menu .et_mobile_menu li li,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu li li {
  padding-left: 0;
}

.dlov-main-menu .et_mobile_menu li a,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu li a {
  padding: 20px 0 20px 20px;
}

.dlov-main-menu .et_mobile_menu ul.sub-menu li {
  background: var(--dlov_light_color1);
}

.dlov-main-menu .et_mobile_menu li li a,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu li li a {
  padding: 10px 20px 10px 30px;
}

.dlov-main-menu .et_mobile_menu li li li a,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu li li li a {
  padding: 10px 20px 10px 50px
}

.dlov-main-menu .et_mobile_menu .menu-item-has-children .dlov-sub-menu-toggle+a,
.et-fb .dlov-main-menu .et_mobile_menu .menu-item-has-children>a {
  padding-right: 50px;
  background: transparent;
  font-weight: inherit;
}

.dlov-main-menu .et_mobile_menu .menu-item-has-children>a:hover,
.archive #et-boc .et_pb_menu.dlov-main-menu .et_mobile_menu .menu-item-has-children>a:hover {
  opacity: 1;
}

/* Dark Menu Version */

.dlov-main-menu-dark.et_pb_menu .et-menu>li::before {
  background: rgba(255, 255, 255, 0.14)
}

.dlov-main-menu-dark.et_pb_menu .et-menu>li.active::before {
  background: transparent;
}

.dlov-main-menu-dark #dlov-menu-active {
  background: var(--dlov_accent_color);
}

.et_pb_bg_layout_dark.dlov-main-menu-dark ul.sub-menu a,
.et_pb_bg_layout_dark.dlov-main-menu-dark ul.sub-menu a:hover,
.et_pb_bg_layout_dark.dlov-main-menu-dark .et_mobile_menu a {
  color: var(--dlov_dark_color1);
}


/* Typing Effect */

.typing-wrapper::after {
  content: "|";
  animation: dlov-blink 1s step-end infinite;
  filter: opacity(.3);
}

.dlov-typing span:not(.typing-wrapper) {
  display: none;
}

@keyframes dlov-blink {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }
}

/* Comments Module */

.dlov-comments span.fn,
.dlov-comments span.fn a {
  font-size: inherit;
}

.dlov-comments .comment_postinfo {
  padding-top: 10px;
}

.dlov-comments .comment-body {
  padding-left: 110px;
}

@media (max-width:479px) {
  .dlov-comments .comment-body {
    padding-left: 60px;
  }
}

#page-container #et-boc .dlov-comments .comment_area .comment-reply-link {
  background: var(--dlov_light_color2);
  padding: .75em 1.5em !important;
  font-size: .8em;
  color: var(--dlov_dark_color1);
}

#page-container #et-boc .dlov-comments .comment_area .comment-reply-link:hover,
#page-container .dlov-comments .et_pb_button {
  color: #fff;
  background: var(--dlov_accent_color);
}

/* Comments Module Form */

.dlov-comments #commentform p input,
.dlov-comments #commentform p textarea {
  background: var(--dlov_light_color1);
  transition: all .3s;
  color: var(--dlov_dark_color2);
  border-color: var(--dlov_light_color2);
}

.dlov-comments #commentform p input:focus,
.dlov-comments #commentform p textarea:focus {
  background: #fff;
  border-color: var(--dlov_dark_color2);
}

@media(min-width:768px) {
  body:not(.logged-in) .dlov-comments p.comment-form-comment {
    width: 50%;
    margin-right: 3%;
    float: left;
  }

  body:not(.logged-in) .dlov-comments p.comment-form-comment textarea {
    height: calc(4.8em + 96px)
  }

  body:not(.logged-in) .dlov-comments p.comment-form-url::after {
    clear: both;
    content: '';
    display: block;
    margin-bottom: -10px;
  }
}

/* Comments Form Dark */

.dlov-comments-dark a {
  color: #fff;
}

.dlov-comments-dark #commentform p input,
.dlov-comments-dark #commentform p textarea {
  background: var(--dlov_dark_color2);
  color: var(--dlov_light_color1);
  border-color: var(--dlov_dark_color2);
}

.dlov-comments-dark #commentform p input:focus,
.dlov-comments-dark #commentform p textarea:focus {
  border-color: var(--dlov_light_color2);
  color: var(--dlov_light_color1);
  background: var(--dlov_dark_color2);
}

.dlov-comments.dlov-comments-dark .comment_postinfo,
.dlov-comments.dlov-comments-dark .comment_postinfo span,
.dlov-comments.dlov-comments-dark .comment_postinfo span a {
  color: var(--dlov_light_color2);
}

/* Post Content Module */

.dlov-post-content blockquote {
  background: #fff;
  padding: 1em 1.5em;
  border-radius: 2px;
  position: relative;
  margin-bottom: 1em;
}

.dlov-post-content.dlov-post-content-dark blockquote {
  background: var(--dlov_dark_color2);
}

.dlov-post-content blockquote:before {
  content: '“';
  font-style: normal;
  font-size: 70px;
  font-family: var(--dlov_heading_font), serif;
  position: absolute;
  left: -10px;
  top: 5px;
  color: var(--dlov_accent_color);
  font-style: normal;
}

.dlov-post-content blockquote:last-child {
  margin-bottom: 0;
}

.dlov-post-content h2:not(:first-child),
.dlov-post-content h3:not(:first-child),
.dlov-post-content h4:not(:first-child),
.dlov-post-content h5:not(:first-child) {
  padding-top: 1.5em;
}


/* Animated Logos */

.dlov-logo-row {
  overflow: hidden;
}

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

body.et-fb .dlov-logo-row .et_pb_column {
  flex-wrap: wrap;
}

body:not(.et-fb) .dlov-logo-row .et_pb_column {
  animation: dl-logo-scroll 20s linear infinite;
  width: max-content !important;
  min-width: 100%;
  -webkit-backface-visibility: hidden;
}

body:not(.et-fb) .dlov-logo-row .et_pb_module {
  -webkit-transform: translate3d(0, 0, 0);
}

body:not(.et-fb) .dlov-logo-row .et_pb_column:hover {
  animation-play-state: paused;
}

@keyframes dl-logo-scroll {
  0% {
    transform: translateX(0)
  }
  100% {
    transform: translateX(-50%)
  }
}

/* Blurb Module */

.dlov-blurb .et-pb-icon,
.et-tb #et-boc .et-l .dlov-blurb .et-pb-icon {
  color: var(--dlov_accent_color);
  aspect-ratio: 1/1;
  width: 1.2em;
  box-sizing: content-box;
  text-align: center;
  line-height: 1.2;
}

.dlov-blurb .et_pb_main_blurb_image,
.et-tb #et-boc .et-l .dlov-blurb .et_pb_main_blurb_image {
  margin-bottom: 10px;
  box-shadow: var(--dlov_shadow);
  border-radius: 100px;
  transition: all .3s linear;
  display: inline-block;
  width: fit-content;
}

.dlov-blurb:hover .et_pb_main_blurb_image {
  transform: scale(1.2) rotateZ(5deg) translateY(-5px);
  box-shadow: var(--dlov_shadow_big);
}

@media (min-width:768px) and (max-width:980px) {

  .dlov-blurb .et_pb_blurb_content {
    display: flex;
    align-items: flex-start;
  }

  .dlov-blurb .et_pb_main_blurb_image {
    margin-right: 20px;
  }

}

@media (max-width:479px) {

  .dlov-blurb .et_pb_blurb_content {
    display: flex;
    align-items: flex-start;
  }

  .dlov-blurb .et_pb_main_blurb_image {
    margin-right: 15px;
  }

}

.dlov-blurb.et_pb_blurb_position_left .et_pb_blurb_container {
  display: inline-block;
  transform: translateY(-0.4em);
}

.dlov-blurb.et_pb_blurb .et_pb_blurb_container p a,
#page-container #et-boc .dlov-blurb .et_pb_blurb_container p a {
  text-decoration-color: var(--dlov_dark_color1_alpha);
  text-underline-offset: .2em;
  transition: all .3s ease-in-out;
}

.dlov-blurb.et_pb_blurb .et_pb_blurb_container p a:hover,
#page-container #et-boc .dlov-blurb .et_pb_blurb_container p a:hover {
  text-underline-offset: .3em;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--dlov_accent_color);
}

/* Dark Blurb Module */

.dlov-blurb-dark .et-pb-icon {
  background: var(--dlov_dark_color2);
  box-shadow: inset 0 4px 4px rgba(0, 0, 0, 0.25)
}

.dlov-blurb-dark .et_pb_main_blurb_image,
.dlov-blurb-dark:hover .et_pb_main_blurb_image {
  box-shadow: 0 1px 2px rgba(255, 255, 255, 0.05)
}

.dlov-blurb-dark a {
  color: var(--dlov_light_color);
}

.dlov-blurb-dark.et_pb_blurb .et_pb_blurb_container p a,
#page-container #et-boc .dlov-blurb-dark .et_pb_blurb_container p a {
  text-decoration-color: var(--dlov_light_color2_alpha);
}

/* Intro Text Row */

@media (max-width:980px) {
  .dlov-text-connect {
    display: flex;
  }

  .dlov-text-connect .et_pb_column:not(.et-last-child) {
    flex-basis: 20%;
  }

}

/* Services Row Section */

@media (max-width:980px) {
  .dlov-services .et_pb_column {
    margin-bottom: 0;
  }
}

@media (min-width:480px) and (max-width:980px) {

  .dlov-services .et_pb_column {
    display: flex;
    justify-content: space-between;
  }

  .dlov-services .et_pb_module {
    flex-basis: 45%;
  }

}

@media (min-width:981px) {
  .dlov-services .et_pb_column {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}


/* Number Counter Module */

.dlov-counter .percent {
  height: auto;
  color: var(--dlov_dark_color1);
}

.dlov-counter .percent p {
  line-height: initial;
}

.dlov-counter .title {
  color: var(--dlov_dark_color2);
  font-weight: 400;
}

.dlov-counter {
  border-color: var(--dlov_accent_color);
}

.dlov-counter.et_pb_with_title .percent {
  margin-bottom: 0;

}


/* Image Module */

.dlov-image .et_pb_image_wrap {
  transition: all .3s linear;
  box-shadow: var(--dlov_shadow);
}

.dlov-image:hover .et_pb_image_wrap {
  box-shadow: var(--dlov_shadow_big);
}


/* Quote Columns */

.dlov-quote {
  display: flex;
  flex-direction: column;

  justify-content: flex-end;
}

.dlov-quote .et_pb_text:first-child {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  z-index: 2;
}

.dlov-quote-dark {
  border-color: var(--dlov_light_color);
}


/* Text Modules */

.dlov-text.et_pb_text a,
.dlov-text.dlov-post-content a {
  text-decoration-color: var(--dlov_dark_color1_alpha);
  text-underline-offset: .2em;
  transition: all .3s ease-in-out;
}

.dlov-text a:hover {
  text-underline-offset: .3em;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--dlov_accent_color);
}

.dlov-text ul li:not(:last-child),
.dlov-text ol li:not(:last-child) {
  padding-bottom: .5em;
}

.dlov-text p:not(.has-background):last-of-type {
  padding-bottom: 1em;
}

.dlov-text.et_pb_text p:last-child {
  padding-bottom: 0;
}

.dlov-text.et_pb_bg_layout_dark a,
.dlov-text.dlov-post-content-dark a {
  text-decoration-color: var(--dlov_light_color2_alpha);
  color: var(--dlov_light_color2);
}

.dlov-text.et_pb_bg_layout_dark a:hover,
.dlov-text.dlov-post-content-dark a:hover {
  text-decoration-color: var(--dlov_accent_color);
}


/* Single Project & Blog Navigation */

.et_pb_posts_nav.dlov-post-nav.et_pb_module span a,
.et_pb_posts_nav.dlov-post-nav.et_pb_module .meta-nav {
  text-decoration: none;
  color: var(--dlov_dark_color2);
}

.et_pb_posts_nav.dlov-post-nav.et_pb_module span.nav-label {
  text-decoration-color: var(--dlov_dark_color1_alpha);
  text-underline-offset: .2em;
  transition: all .3s ease-in-out;
}

.et_pb_posts_nav.dlov-post-nav.et_pb_module a:hover span.nav-label {
  text-underline-offset: .3em;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--dlov_accent_color);
}


/* Checklist */

.dlov-checklist ul li {
  list-style: none;
}

.dlov-checklist ul li::before {
  display: inline-block;
  position: absolute;
  content: '';
  transform: rotate(42deg);
  height: .8em;
  width: .35em;
  border-bottom: .2em solid var(--dlov_accent_color);
  border-right: .2em solid var(--dlov_accent_color);
  left: -1.2em;
  top: .05em;
}

.dlov-checklist ul li {
  position: relative;
  margin-left: .45em;
}

.dlov-checklist ul li::after {
  content: '';
  width: 1.15em;
  height: 1.15em;
  background: #fff;
  display: inline-block;
  border-radius: 100%;
  position: absolute;
  top: .25em;
  left: -1.65em;
  z-index: -1;
  box-shadow: -1px -1px 1px var(--dlov_light_color2);
}

.dlov-checklist.et_pb_bg_layout_dark ul li::after {
  background: var(--dlov_dark_color2);
  box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.3), 1px 1px 1px rgba(255, 255, 255, 0.1);
}


/* Row with Button modules pulled to the bottom */

@media (min-width:980px) {
  .dlov-button-bottom .et_pb_column {
    display: flex;
    flex-direction: column;
  }

  .dlov-button-bottom .et_pb_button_module_wrapper {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
  }
}


/* Timeline Row */

@media (max-width:980px) {
  .dlov-timeline {
    display: flex;
  }

  .dlov-timeline .et_pb_column:not(.et-last-child) {
    flex-basis: 25%;
    min-width: 100px;

  }
}

.dlov-timeline .et_pb_column {
  border-color: var(--dlov_accent_color);
}


/* Toggle Module */

.dlov-toggle h5.et_pb_toggle_title {
  color: var(--dlov_color_dark);
}

.et_pb_toggle_title:before {
  color: var(--dlov_accent_color);
}

.dlov-toggle.et_pb_toggle_open {
  border-color: var(--dlov_accent_color);
}

.dlov-toggle-dark h5.et_pb_toggle_title {
  color: var(--dlov_light_color1);
}

.dlov-toggle-dark {
  border-color: var(--dlov_dark_color2);
  color: var(--dlov_light_color1);
}


/* Filterable Portfolio */

@keyframes dlov-fade-in {
  0% {
    opacity: 0;
    transform-origin: 50% 50%;
    transform: scale(.7, .7)
  }

  100% {
    opacity: 1;
    transform-origin: 50% 50%;
    transform: scale(1)
  }
}

.dlov-portfolio-grid .et_pb_portfolio_filters li a,
.dlov-portfolio-grid .et_pb_portfolio_item .post-meta,
.dlov-portfolio-grid .et_pb_portfolio_item .post-meta a,
.dlov-portfolio-grid .et_pb_portofolio_pagination ul li a {
  color: var(--dlov_dark_color2);
}

.dlov-portfolio-grid .et_pb_portfolio_filters li a.active,
.dlov-portfolio-grid .et_pb_portfolio_filters li a:hover,
.dlov-portfolio-grid .et_pb_module_header a,
.dlov-portfolio-grid .et_pb_portofolio_pagination ul li a.active {
  color: var(--dlov_dark_color1);
}

.dlov-portfolio-grid .et_pb_portfolio_items,
.dlov-portfolio-grid .et_pb_portfolio_grid_items,
.dlov-portfolio-grid .et_pb_ajax_pagination_container {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr 1fr 1fr;
}

.dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(1),
.dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(2),
.dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(1),
.dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(2),
.dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(1),
.dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(2) {
  grid-column: 1 / 2;
}

.dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(3),
.dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(3),
.dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(3) {
  grid-column: 2 / 4;
  grid-row: 1/3;
}

.dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(4),
.dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(4),
.dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(4) {
  grid-column: 1 / 3;
  grid-row: 3 / 5;
}

@media (max-width:980px) {

  .dlov-portfolio-grid .et_pb_portfolio_items,
  .dlov-portfolio-grid .et_pb_portfolio_grid_items,
  .dlov-portfolio-grid .et_pb_ajax_pagination_container {
    grid-template-columns: 1fr 1fr;
  }

  .dlov-portfolio-grid .et_pb_portfolio_items>div.et_pb_portfolio_item,
  .dlov-portfolio-grid .et_pb_portfolio_grid_items>div.et_pb_portfolio_item,
  .dlov-portfolio-grid .et_pb_ajax_pagination_container>div.et_pb_portfolio_item {
    grid-column: auto;
    grid-row: auto;
  }

  .dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(3),
  .dlov-portfolio-grid .et_pb_portfolio_items>div:nth-child(6),
  .dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(3),
  .dlov-portfolio-grid .et_pb_portfolio_grid_items>div:nth-child(6),
  .dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(3),
  .dlov-portfolio-grid .et_pb_ajax_pagination_container>div:nth-child(6) {
    grid-column: 1 / 3;
  }
}

@media (max-width:467px) {

  .dlov-portfolio-grid .et_pb_portfolio_items,
  .dlov-portfolio-grid .et_pb_portfolio_grid_items,
  .dlov-portfolio-grid .et_pb_ajax_pagination_container {
    display: block;
  }
}

.dlov-portfolio-grid:not(.dlov-masonry) .et_portfolio_image img,
.dlov-portfolio-grid:not(.dlov-masonry) .et_portfolio_image {
  height: 100%;
  object-fit: cover;
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_item {
  overflow: hidden;
  box-shadow: var(--dlov_shadow);
  transform: scale(1);
  transition: all .3s ease-in-out;
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_item:hover {
  z-index: 9;
  box-shadow: var(--dlov_shadow_big);
  transform: rotate(2deg);
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_item:hover .et_pb_module_header,
#page-container .dlov-portfolio-grid .et_pb_portfolio_item:hover .post-meta {
  transform: rotate(-2deg);
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_item:hover .et_pb_module_header a::after {
  transform: rotate(2deg) translateX(-1.25%);
}

.dlov-portfolio-grid .et_pb_module_header,
.dlov-portfolio-grid .post-meta {
  position: absolute;
  opacity: 0;
  left: 0;
  right: 0;
  height: 50%;
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  flex-direction: column;
  transition: all .3s ease-in-out;
  z-index: 3;
  margin: 0;
  transform-origin: top center;
}

.dlov-portfolio-grid .et_pb_module_header {
  top: -10px;
  transform-origin: bottom center;
}

.dlov-portfolio-grid .et_pb_portfolio_item:hover .et_pb_module_header {
  top: 0;
  opacity: 1;
}

.dlov-portfolio-grid .post-meta {
  height: fit-content;
  bottom: calc(50% - 30px);
  display: block;
}

.dlov-portfolio-grid .post-meta a:hover {
  text-decoration: underline;
}

.dlov-portfolio-grid .et_pb_portfolio_item:hover .post-meta {
  bottom: calc(50% - 20px);
  opacity: 1;
}

.dlov-portfolio-grid .et_pb_portfolio_item .et_pb_module_header a:after {
  content: '';
  background: var(--dlov_light_color1);
  position: absolute;
  top: -10%;
  right: -10%;
  bottom: -210%;
  left: -10%;
  transition: all .5s ease-in-out;
  opacity: 0;
  z-index: -1;
}

.dlov-portfolio-grid.et_pb_module .et_pb_portfolio_item>a {
  z-index: 2;
}

.dlov-portfolio-grid.et_pb_module .et_pb_portfolio_item:hover .et_pb_module_header a:after {
  opacity: .7;
}

.dlov-portfolio-grid .et_pb_portfolio_item img {
  transition: all .5s ease-in-out;
}

.dlov-portfolio-grid .et_pb_portfolio_item:hover img {
  filter: blur(5px);
}

.dlov-portfolio-grid.et_pb_module .et_pb_portfolio_item.active {
  animation: dlov-fade-in 0.5s cubic-bezier(.46, .92, .71, 1.2);
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_filters ul li {
  width: auto;
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_filters ul li a {
  border-radius: 0;
  border: none;
  margin: 0 10px;
  background: none;
  padding: 0 0 5px;
  border-bottom: 2px transparent solid;
}

#page-container .dlov-portfolio-grid .et_pb_portfolio_filters ul li a.active {
  border-bottom-color: var(--dlov_accent_color);
}


/* Filterable Portfolio Dark */

.dlov-portfolio-dark .et_pb_portfolio_item .et_pb_module_header a:after {
  background: var(--dlov_dark_color2);
}

.dlov-portfolio-dark .et_pb_module_header a,
.dlov-portfolio-dark .et_pb_portfolio_item .post-meta,
.dlov-portfolio-dark .et_pb_portfolio_item .post-meta a,
.dlov-portfolio-dark .et_pb_portofolio_pagination ul li a {
  color: var(--dlov_ligh_color);
}


/* Blog  Module */

.dlov-blog.et_pb_posts a.entry-featured-image-url {
  max-width: 280px;
  transition: all .3s ease-in-out;
  box-shadow: var(--dlov_shadow);
}

.dlov-blog.et_pb_posts a.entry-featured-image-url:hover {
  transform: scale(1.03) rotate(-2deg);
  box-shadow: var(--dlov_shadow_big);
}

@media (min-width:468px) {
  .dlov-blog.et_pb_posts a.entry-featured-image-url {
    width: 30%;
    max-width: unset;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: 0;
  }

  .dlov-blog.et_pb_posts a.entry-featured-image-url img {
    height: 100%;
    object-fit: cover;
  }

  .dlov-blog.et_pb_posts article.et_pb_post {
    padding: 30px 0 30px 35%;
    position: relative;
  }

  .dlov-blog article.et_pb_post {
    margin-bottom: 5%;
  }
}

.dlov-blog.et_pb_posts .post-content {
  padding-top: 1em;
}

.dlov-blog span.et_overlay {
  border: none;
}

.dlov-blog .entry-title {
  padding-bottom: .5em;
}

#page-container .dlov-blog .et_pb_blog_grid article.et_pb_post {
  margin-bottom: 10px;
}

.dlov-blog .et_pb_blog_grid .entry-featured-image-url {
  margin: 0;
}

.dlov-blog .et_pb_blog_grid .et_pb_image_container {
  margin-bottom: 20px;
}

.dlov-blog div.pagination a {
  text-decoration-color: var(--dlov_dark_color1_alpha);
  text-underline-offset: .2em;
  transition: all .3s ease-in-out;
}

.dlov-blog div.pagination a:hover {
  text-underline-offset: .3em;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--dlov_accent_color);
}

.dlov-blog .et_pb_post p.post-meta,
.dlov-blog .et_pb_post p.post-meta a {
  color: var(--dlov_dark_color2_alpha);
}

.dlov-blog .et_pb_post p {
  color: var(--dlov_dark_color2);
}


/* Blog Module Dark */

.dlov-blog-dark div.pagination a {
  text-decoration-color: var(--dlov_light_color1_alpha);
}

.dlov-blog-dark .et_pb_post p.post-meta,
.dlov-blog-dark .et_pb_post p.post-meta a {
  color: var(--dlov_light_color2_alpha);
}

.dlov-blog .et_pb_post p {
  color: var(--dlov_light_color);
}

.dlov-blog-dark a {
  color: var(--dlov_light_color2);
}


/* Social Media Follow Module */

ul.dlov-social-follow a.icon {
  background: var(--dlov_dark_color1);
}

ul.dlov-social-follow li.et_pb_social_icon a {
  transition: all .4s cubic-bezier(0.455, 0.030, 0.515, 0.955);
}

ul.dlov-social-follow li.et_pb_social_icon:hover a {
  transform: rotateY(-180deg);
  background: var(--dlov_accent_color);
}

li.et_pb_social_icon a::before {
  transition: all .4s !important
}

li.et_pb_social_icon:hover a::before {
  transform: rotateY(-180deg);
}

.dlov-social-follow-dark li a.icon::before,
.et-tb #et-boc .et-l .dlov-social-follow-dark li a.icon::before {
  color: var(--dlov_dark_color2);
}

ul.dlov-social-follow-dark a.icon,
.et-tb #et-boc .et-l ul.dlov-social-follow-dark a.icon {
  background: var(--dlov_light_color2);
}


/* Contact Form Module */

.dlov-contact p input,
.dlov-contact p textarea {
  background: var(--dlov_light_color1);
  transition: all .3s;
  color: var(--dlov_dark_color2);
}

.dlov-contact p input:focus,
.dlov-contact p textarea:focus,
.et-tb #et-boc .et-l .dlov-contact p input:focus,
.et-tb #et-boc .et-l .dlov-contact p textarea:focus {
  background: #fff;
}

.dlov-contact .et_pb_contact p input,
.dlov-contact .et_pb_contact p textarea,
.et-tb #et-boc .et-l .dlov-contact .et_pb_contact p input,
.et-tb #et-boc .et-l .dlov-contact .et_pb_contact p textarea {
  border-color: var(--dlov_light_color2);
}

.dlov-contact .et_pb_contact p input:focus,
.dlov-contact .et_pb_contact p textarea:focus {
  border-color: var(--dlov_dark_color2);
}

.dlov-contact .et_pb_contact_submit,
.et-tb #et-boc .et-l .dlov-contact .et_pb_contact_submit {
  line-height: 1 !important;
  height: fit-content;
  background: var(--dlov_accent_color);
  color: #fff;
}

.dlov-contact .et_pb_contact p .et_contact_error {
  border-width: 2px !important;
  border-color: var(--dlov_accent_color) !important;
}


/* Contact Form Module Dark */

.dlov-contact-dark p input,
.dlov-contact-dark p textarea,
.et-tb #et-boc .et-l .dlov-contact-dark p input,
.et-tb #et-boc .et-l .dlov-contact-dark p textarea {
  background: var(--dlov_dark_color2);
  color: var(--dlov_light_color1);
}

.dlov-contact-dark .et_pb_contact p input,
.dlov-contact-dark .et_pb_contact p textarea,
.et-tb #et-boc .et-l .dlov-contact-dark .et_pb_contact p input,
.et-tb #et-boc .et-l .dlov-contact-dark .et_pb_contact p textarea {
  border-color: var(--dlov_dark_color2);
}

.dlov-contact-dark,
.et-tb #et-boc .et-l .dlov-contact-dark {
  color: var(--dlov_light_color1);
}

.dlov-contact-dark .et_pb_contact p input:focus,
.dlov-contact-dark .et_pb_contact p textarea:focus,
.et-tb #et-boc .et-l .dlov-contact-dark .et_pb_contact p input:focus,
.et-tb #et-boc .et-l .dlov-contact-dark .et_pb_contact p textarea:focus {
  border-color: var(--dlov_light_color2);
  color: var(--dlov_light_color1);
}

.dlov-contact-dark p input:focus,
.dlov-contact-dark p textarea:focus,
.et-tb #et-boc .et-l .dlov-contact-dark p input:focus,
.et-tb #et-boc .et-l .dlov-contact-dark p textarea:focus {
  background: var(--dlov_dark_color2);
}