/**
* Base Colors
*/
/**************************
  Media Queries
***************************/
/*************************
  Fonts
**************************/
/*************************
  Button colours
**************************/
/*************************
  Location page colours
**************************/
/*************************
  Form colours
**************************/
/*************************
  Sidebar variables
**************************/
/*************************
  404 button background
**************************/
/*************************
  Results Partial
**************************/
/*************************
  Swiper
**************************/
/*************************
  Footer Top
**************************/
/*************************
  Front Page variables
**************************/
/*************************
  Why Choose Us Section variables
**************************/
/* Additional Mixins */
.uppercase-title {
  font-family: var(--secondary-font), sans-serif;
  color: #2b2b2b;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 27px;
  letter-spacing: 0.15rem;
  text-align: center;
}

/**
 * Critical CSS
 * Stylesheet for Elements above the fold
 * Header | Navigation | Banner
 * If there are additional stylings that need to be added, 
 * kindly remove it from other scss file to avoid duplicate 
 */
.header {
  padding: 0;
  background-color: var(--header-bg-color);
}

.header .top-header-mobile {
  background: linear-gradient(0deg, #102028 0%, #1D3743 100%);
  border-bottom: 1px solid #AD9779;
  padding-top: 6.22px;
  padding-bottom: 12.22px;
}

@media screen and (min-width: 768px) {
  .header .top-header-mobile {
    padding-top: 10px;
    padding-bottom: 12px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .header .top-header-mobile .container {
    max-width: 96.5%;
  }
}
.header .top-header-desktop {
  position: relative;
}

.header .top-header-desktop:not(.home .top-header-desktop) {
  background-color: #1D3743;
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

@media screen and (min-width: 1200px) {
  .header .top-header-desktop:not(.home .top-header-desktop) {
    min-height: 127px;
  }
}
@media screen and (min-width: 1200px) {
  .home .header .top-header-desktop:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 175px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
  }
}
@media screen and (min-width: 1440px) {
  .header .top-header-desktop .container-xxxl {
    max-width: 1479px;
  }
}
@media (min-width: 1500px) {
  .header .top-header-desktop .container-xxxl {
    padding-left: 0;
    padding-right: 0;
  }
}
.header .top-header-desktop .site-logo {
  display: block;
  position: relative;
  width: 100%;
  max-width: 317px;
  max-height: 145px;
}

.header .top-header-desktop .site-logo img {
  filter: drop-shadow(0 4px 50px rgba(0, 0, 0, 0.25));
}

.header .top-header-desktop .site-logo img:not(.home .site-logo img) {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.header .top-header-desktop .nav-label-container {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 20px;
  margin-bottom: 16px;
}

.header .top-header-desktop .nav-label-container .label {
  font-family: var(--main-font), sans-serif;
  font-size: 15px;
  font-style: italic;
  font-weight: 500;
  color: #fff;
  line-height: 15px;
  letter-spacing: 2px;
  padding-right: 12px;
  position: relative;
  margin-right: 12px;
}

.header .top-header-desktop .nav-label-container .label:before {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  width: 1px;
  height: 22px;
  transform: translateY(-50%);
  background-color: #E8B36C;
}

.header .top-header-desktop .nav-label-container .label-2 {
  font-family: var(--main-font), sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  line-height: 18px;
  letter-spacing: 5px;
  text-transform: uppercase;
}

.header .top-header-desktop .desktop-menu {
  position: relative;
}

.hero {
  padding-top: 25px;
  position: relative;
}

.hero-interiors {
  padding-top: 0;
  height: 286px;
}

.hero-home {
  position: relative;
  background-image: url("../images/dmblegal-banner-mobile.jpg");
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .hero-home {
    background-image: url("../images/dmblegal-banner-tablet.jpg");
  }
}
@media screen and (min-width: 992px) {
  .hero-home {
    background-position: center;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home {
    background-image: unset;
    background-size: unset;
    background-position: unset;
    background-repeat: unset;
  }
}
@media (min-width: 800px) and (max-width: 991px) {
  .hero-home {
    background-position: center calc(100% + 6px);
  }
}
.hero-home:before {
  content: none;
}

@media screen and (min-width: 1200px) {
  .hero-home:before {
    position: absolute;
    z-index: -1;
    content: "";
    top: -147px;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    min-height: initial;
    background: linear-gradient(270deg, rgba(29, 55, 67, 0) 21.51%, rgba(29, 55, 67, 0.6) 40.99%, #1D3743 73.44%), url("../images/dmblegal-banner.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
  }
}
@media screen and (min-width: 1600px) {
  .hero-home .container {
    max-width: 1449px;
  }
}
.hero-home .nav-label-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 17px;
  margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .hero-home .nav-label-container {
    padding-top: 20px;
    margin-bottom: 20px;
  }
}
.hero-home .nav-label-container .label {
  font-family: var(--main-font), sans-serif;
  font-size: 15px;
  font-style: italic;
  font-weight: 500;
  color: #fff;
  line-height: 15px;
  letter-spacing: 2px;
  padding-bottom: 10px;
  position: relative;
  margin-bottom: 10px;
}

.hero-home .nav-label-container .label:before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: 0;
  width: 22px;
  height: 1px;
  transform: translateX(-50%);
  background-color: #E8B36C;
}

.hero-home .nav-label-container .label-2 {
  font-family: var(--main-font), sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  line-height: 18px;
  letter-spacing: 5px;
  text-transform: uppercase;
}

.hero-home .banner-content {
  position: relative;
  margin-top: 37.32px;
  margin-bottom: 425px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .hero-home .banner-content {
    margin-top: 26px;
    margin-bottom: 443px;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content {
    width: 100%;
    max-width: 750px;
    margin-top: 98px;
    margin-bottom: 153px;
    text-align: left;
  }
}
@media screen and (min-width: 1400px) {
  .hero-home .banner-content {
    max-width: 934px;
  }
}
@media screen and (min-width: 768px) {
  .hero-home .banner-content .banner-title {
    width: 100%;
    max-width: 503px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 13px;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content .banner-title {
    width: initial;
    max-width: initial;
    margin-left: 0;
    margin-bottom: 19px;
  }
}
.hero-home .banner-content .banner-subtitle {
  width: 100%;
  max-width: 333px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .hero-home .banner-content .banner-subtitle {
    max-width: initial;
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content .banner-subtitle {
    margin-bottom: 23px;
  }
}
@media screen and (min-width: 768px) {
  .hero-home .banner-content-txt {
    width: 100%;
    max-width: 618px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content-txt {
    max-width: 797px;
    margin-left: initial;
  }
}
.hero-home .banner-content-txt * {
  font-family: var(--main-font), sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: #fff;
  line-height: 30px;
}

.hero-home .banner-content-txt *:last-of-type {
  margin-bottom: 28px;
}

@media screen and (min-width: 768px) {
  .hero-home .banner-content-txt *:last-of-type {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content-txt *:last-of-type {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .hero-home .banner-content .btn-container .btn {
    min-width: 520px;
  }
}
#mobile-menu {
  display: none;
}

.close__mobileMenu {
  padding: 12px;
  border-radius: 0;
  background-color: #E8B36C;
  border: 1px solid #E8B36C;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99999999;
  height: 45px;
  width: 45px;
  display: none;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .close__mobileMenu {
    top: 0;
    transform: translateY(0);
    margin-top: 4px;
  }
}
.close__mobileMenu .x {
  display: block;
  background-color: #000;
  width: 18px;
  height: 2px;
  transition: all ease-in 0.5s;
}

.close__mobileMenu .x:first-child {
  transform: rotate(45deg);
}

.close__mobileMenu .x:last-child {
  transform: translate(0px, -2px) rotate(-45deg);
}

.mm-ocd-opened .mobile-button {
  visibility: hidden;
}

.mm-ocd-opened .close__mobileMenu {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.mobile-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  padding-bottom: 12px;
  background-color: #E8B36C;
  border: 1px solid #E8B36C;
  width: 100%;
  max-width: 104px;
}

@media screen and (min-width: 768px) {
  .mobile-button {
    margin-top: 4px;
  }
}
.mobile-button .mobile-button-txt {
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 700;
  font-style: normal;
  color: #000;
  line-height: 16.8px;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  margin-right: 12px;
}

.mobile-button .menu__bar {
  background-color: #000;
  height: 2px;
  width: 15px;
  display: block;
  margin-bottom: 3px;
}

.mobile-button .menu__bar:last-child {
  margin-bottom: 0;
}

#nav-mobile {
  padding-top: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  #nav-mobile {
    align-items: flex-start;
  }
}
#nav-mobile .site-logo {
  z-index: 99;
}

#nav-mobile .navbar-brand {
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  margin-right: 25.75px;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
  max-width: 180px;
  width: 100%;
}

@media screen and (min-width: 768px) {
  #nav-mobile .navbar-brand {
    max-width: 268.6px;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (max-width: 329px) {
  #nav-mobile .navbar-brand {
    margin-right: 15.75px;
  }
}
#nav-mobile .navbar-toggler {
  background: black;
}

#nav-mobile .navbar-toggler.collapsed .navbar-toggler-icon {
  display: inline-block;
  width: 33px;
  height: 23px;
  vertical-align: middle;
  content: "";
  background: url("../images/bgBurger.svg") no-repeat scroll center center #000;
  background-size: 33px 23px;
}

#nav-mobile .navbar-toggler .navbar-toggler-icon {
  display: inline-block;
  width: 33px;
  height: 23px;
  vertical-align: middle;
  content: "";
  background: url("../images/bgBurgerClose.svg") no-repeat scroll center center #000;
  background-size: 33px 23px;
}

@media (max-width: 991px) {
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0;
  }
}
/**
 Desktop menu styles
*/
#nav-desktop {
  padding: 0;
  align-items: center;
  justify-content: flex-end;
}

#nav-desktop .menu-container {
  padding-left: 0;
  padding-right: 0;
}

@media screen and (min-width: 1200px) {
  #nav-desktop .menu-container {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container {
    margin-left: 0;
  }
}
#nav-desktop .menu-container ul.header-menu {
  display: inline-flex;
}

#nav-desktop .menu-container .nav-item {
  margin-bottom: 0;
}

#nav-desktop .menu-container .nav-item.active .nav-link:before {
  position: absolute;
  content: "";
  left: 8px;
  bottom: 10px;
  width: 26px;
  height: 3px;
  background-color: #CAA16E;
  pointer-events: none;
}

@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container .nav-item.active .nav-link:before {
    left: 10px;
  }
}
#nav-desktop .menu-container .nav-item.active .nav-link:before {
  transform: skewX(-30deg);
  transform-origin: 0 0;
  box-sizing: border-box;
}

#nav-desktop .menu-container .nav-item.active .nav-link[title~=Home]:before {
  left: -3px;
  bottom: -14.4px;
}

#nav-desktop .menu-container .nav-item .nav-link {
  position: relative;
  font-family: var(--main-font), sans-serif;
  font-style: normal;
  font-size: 14px;
  font-weight: 500;
  color: var(--header-main-m-color);
  text-transform: var(--header-main-m-format);
  padding: 0 8px 23px;
}

@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container .nav-item .nav-link {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 0 10px 23px;
  }
}
#nav-desktop .menu-container .nav-item .nav-link:is(:hover, :focus) {
  color: var(--header-main-m-hover-color);
}

#nav-desktop .menu-container .nav-item .nav-link:active {
  color: var(--header-main-m-active-color);
}

#nav-desktop .menu-container .nav-item .nav-link[title~=Home] {
  position: relative;
  background-image: url("../images/icons/icon-house.svg");
  background-position: center;
  background-size: 17px 19px;
  background-repeat: no-repeat;
  font-size: 1px;
  color: rgba(255, 0, 0, 0);
  text-indent: -999px;
  width: 17px;
  height: 19px;
  margin-right: 8px;
}

@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container .nav-item .nav-link[title~=Home] {
    margin-right: 10px;
  }
}
#nav-desktop .menu-container .nav-item.dropdown .dropdown-toggle:after {
  background-image: url("../images/icons/icon-header-dropdown.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 14px;
  height: 10px;
  border: unset;
  vertical-align: unset;
  margin-left: 0;
  margin-bottom: 0;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 8px;
  z-index: 1000;
  float: left;
  min-width: 261px;
  padding: 0;
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  color: #000;
  text-align: left;
  list-style: none;
  background: var(--header-sub-m-bg);
  background-clip: padding-box;
  border: none;
  border-radius: 0;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15);
}

@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container .nav-item.dropdown .dropdown-menu {
    font-size: 16px;
    letter-spacing: 1px;
    left: 10px;
  }
}
#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu:after {
  position: relative;
  display: block;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 17px;
  background: linear-gradient(270deg, #C69965 -1.92%, #FBD6AA 46.63%, #C69965 95.19%);
  z-index: -1;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li {
  position: relative;
  padding: 0 31px;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:before {
  position: absolute;
  content: "";
  left: 50%;
  right: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: calc(100% - 62px);
  height: 1px;
  background-color: #C5C5C5;
  z-index: -1;
  pointer-events: none;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:first-of-type {
  padding-top: 20px;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:last-of-type {
  padding-bottom: 21px;
  border-bottom: none;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:last-of-type:before {
  content: none;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:is(:hover, :focus) a {
  color: var(--header-sub-link-hover) !important;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li:is(:hover, :focus) a:before {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  bottom: 5px;
  width: 100%;
  height: calc(100% - 10px);
  background-color: #DFDBD4;
  z-index: -1;
  pointer-events: none;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li a {
  position: relative;
  z-index: 1;
  color: var(--header-sub-link);
  padding: 0;
  padding: 14px 11px;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li a:before {
  content: none;
}

#nav-desktop .menu-container .nav-item.dropdown .dropdown-menu li.current-menu-item a {
  color: var(--header-sub-link-active);
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu {
  columns: 2;
  column-gap: 26px;
  width: 100%;
  min-width: 532px;
  padding: 20px 31px 38px;
  padding-right: 41px;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu:after {
  position: absolute;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li {
  padding: 0;
  box-sizing: border-box;
  white-space: nowrap;
  break-inside: avoid;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li:before {
  width: 100%;
  top: 0;
  bottom: initial;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li:nth-of-type(1):before, #nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li:nth-of-type(10):before {
  content: none;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li:last-of-type:before {
  content: "";
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li a {
  overflow: hidden;
  padding: 8px 11px 10px;
}

#nav-desktop .menu-container .nav-item.dropdown.dropdown-two-column .dropdown-menu li a:before {
  overflow: hidden;
}

#nav-desktop .menu-container .nav-item:is(:hover, :focus) .dropdown-menu {
  display: block;
}

#nav-desktop .menu-container .nav-item:is(:hover, :focus) .nav-link:before {
  position: absolute;
  content: "";
  left: 8px;
  bottom: 10px;
  width: 26px;
  height: 3px;
  background-color: #CAA16E;
  pointer-events: none;
}

@media screen and (min-width: 1400px) {
  #nav-desktop .menu-container .nav-item:is(:hover, :focus) .nav-link:before {
    left: 10px;
  }
}
#nav-desktop .menu-container .nav-item:is(:hover, :focus) .nav-link:before {
  transform: skewX(-30deg);
  transform-origin: 0 0;
  box-sizing: border-box;
}

#nav-desktop .menu-container .nav-item:is(:hover, :focus) .nav-link[title~=Home]:before {
  left: -3px;
  bottom: -14.4px;
}

#nav-desktop .phone-number-link {
  font-family: "Libre Bodoni", serif;
  font-size: 30px;
  font-weight: 600;
  color: var(--header-main-m-color);
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
  line-height: normal;
  margin-left: 10px;
  padding-bottom: 23px;
}

@media (min-width: 1500px) {
  #nav-desktop .phone-number-link {
    font-size: 38px;
    font-weight: 700;
    line-height: 45px;
  }
}
#nav-desktop .phone-number-link span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
}

.mm-ocd {
  z-index: 99999 !important;
}

.mm-spn.mm-spn--navbar:before {
  opacity: 1 !important;
  color: #000;
  border-color: #C5C5C5 !important;
}

.mm-spn.mm-spn--navbar:after {
  font-family: var(--main-font), sans-serif;
  font-weight: 500;
  color: #000;
  opacity: 1 !important;
  text-transform: capitalize;
  letter-spacing: 1px;
}

.mm-spn.mm-spn--navbar ul:before {
  border-top: 1px solid #C5C5C5 !important;
  opacity: 1 !important;
}

.mm-spn.mm-spn--navbar ul li:before {
  border-color: #C5C5C5;
  opacity: 1 !important;
}

.mm-spn.mm-spn--navbar ul li:after {
  border-top: 1px solid #C5C5C5;
  opacity: 1 !important;
}

.mm-spn.mm-spn--navbar ul li.current-menu-item a {
  font-weight: 600;
}

.mm-spn.mm-spn--navbar ul li a {
  font-family: var(--main-font), sans-serif;
  font-weight: 400;
  font-size: 16px;
  color: #000;
  line-height: 18px;
}

.mm-spn a:not(:last-child):after,
.mm-spn li:after {
  color: #000;
  margin-left: 0 !important;
}

.mm-ocd__content {
  border-top: 5px solid #CAA16E;
}

/*# sourceMappingURL=critical.css.map*/