/*
Theme Name: Desolation Sound Land Corp
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Boleyn Media
Author URI: https://boleynmedia.com
Description: Base Theme for Boleyn's Elementor-powered sites
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 1.1.1
Updated: 2025-09-02

*/
body {
  margin: 0;
  padding: 0;
  overscroll-behavior: none;
}
body.mobile-menu-open {
  overflow: hidden;
  touch-action: none;
}

html {
  scroll-behavior: smooth;
}

html,
body {
  touch-action: pan-y;
  overflow-x: hidden;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
}

::-moz-selection {
  background-color: #798291;
  color: #FFFFFF;
}

::selection {
  background-color: #798291;
  color: #FFFFFF;
}

:focus {
  outline: none !important;
  box-shadow: none !important;
}

p {
  max-width: 800px;
}

p:first-child {
  margin-block-start: 0;
  margin-block-end: 1em;
}

p:last-child {
  margin-block-start: 0;
  margin-block-end: 0;
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .elementor-button {
    width: 100%;
  }
}
#gform_wrapper_1,
#gform_wrapper_3,
#gform_wrapper_4 {
  margin-bottom: 0 !important;
}

#gform_1 .gform_ajax_spinner,
#gform_1 .gform_spinner,
#gform_3 .gform_ajax_spinner,
#gform_3 .gform_spinner,
#gform_4 .gform_ajax_spinner,
#gform_4 .gform_spinner {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
#gform_1 .gform-body,
#gform_3 .gform-body,
#gform_4 .gform-body {
  margin-bottom: 0px !important;
}
#gform_1 .gform-body .gform_fields,
#gform_3 .gform-body .gform_fields,
#gform_4 .gform-body .gform_fields {
  row-gap: 12px !important;
  -moz-column-gap: 8px !important;
       column-gap: 8px !important;
}
#gform_1 .gform-body .gfield,
#gform_3 .gform-body .gfield,
#gform_4 .gform-body .gfield {
  margin-bottom: 0 !important;
}
#gform_1 .gform-body .gfield input,
#gform_1 .gform-body .gfield textarea,
#gform_3 .gform-body .gfield input,
#gform_3 .gform-body .gfield textarea,
#gform_4 .gform-body .gfield input,
#gform_4 .gform-body .gfield textarea {
  background-color: white !important;
  width: 100% !important;
  border: none !important;
  font-family: "Nunito Sans" !important;
  font-size: 14px !important;
  color: #626262 !important;
}
#gform_1 .gform-body .gfield input::-moz-placeholder, #gform_1 .gform-body .gfield textarea::-moz-placeholder, #gform_3 .gform-body .gfield input::-moz-placeholder, #gform_3 .gform-body .gfield textarea::-moz-placeholder, #gform_4 .gform-body .gfield input::-moz-placeholder, #gform_4 .gform-body .gfield textarea::-moz-placeholder {
  color: #7F7F7F !important;
}
#gform_1 .gform-body .gfield input::placeholder,
#gform_1 .gform-body .gfield textarea::placeholder,
#gform_3 .gform-body .gfield input::placeholder,
#gform_3 .gform-body .gfield textarea::placeholder,
#gform_4 .gform-body .gfield input::placeholder,
#gform_4 .gform-body .gfield textarea::placeholder {
  color: #7F7F7F !important;
}
#gform_1 .gform-body .gfield select,
#gform_3 .gform-body .gfield select,
#gform_4 .gform-body .gfield select {
  background-color: white !important;
  width: 100% !important;
  border: none !important;
  font-family: "Nunito Sans" !important;
  font-size: 14px !important;
  color: #7F7F7F !important;
}
#gform_1 .gform-footer.gform_footer,
#gform_3 .gform-footer.gform_footer,
#gform_4 .gform-footer.gform_footer {
  margin-top: 16px !important;
  margin-bottom: 0px !important;
}
#gform_1 .gform-footer.gform_footer input[type=submit],
#gform_3 .gform-footer.gform_footer input[type=submit],
#gform_4 .gform-footer.gform_footer input[type=submit] {
  text-transform: uppercase !important;
  font-size: 16px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  width: 100% !important;
  background-color: #F9B318 !important;
  color: #0D0D0D !important;
  font-weight: 700 !important;
  font-family: "Nunito Sans" !important;
}
#gform_1 .gform-footer.gform_footer input[type=submit]:hover,
#gform_3 .gform-footer.gform_footer input[type=submit]:hover,
#gform_4 .gform-footer.gform_footer input[type=submit]:hover {
  background-color: #E7A105 !important;
}
#gform_1 .gform-footer.gform_footer input[type=submit]:focus, #gform_1 .gform-footer.gform_footer input[type=submit]:active,
#gform_3 .gform-footer.gform_footer input[type=submit]:focus,
#gform_3 .gform-footer.gform_footer input[type=submit]:active,
#gform_4 .gform-footer.gform_footer input[type=submit]:focus,
#gform_4 .gform-footer.gform_footer input[type=submit]:active {
  outline: none !important;
}
#gform_1 .gfield_required,
#gform_3 .gfield_required,
#gform_4 .gfield_required {
  display: none !important;
}
#gform_1 .gform_submission_error,
#gform_1 .gfield_validation_message,
#gform_1 .validation_message,
#gform_1 .gfield_description.validation_message,
#gform_3 .gform_submission_error,
#gform_3 .gfield_validation_message,
#gform_3 .validation_message,
#gform_3 .gfield_description.validation_message,
#gform_4 .gform_submission_error,
#gform_4 .gfield_validation_message,
#gform_4 .validation_message,
#gform_4 .gfield_description.validation_message {
  color: white !important;
}

.gform_confirmation_message {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  color: white !important;
  min-height: 100px !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

#gform_4 h2 {
  color: white !important;
  font-size: 16px;
  font-family: "Nunito Sans" !important;
  margin-top: 8px;
  margin-bottom: 0;
}
#gform_4 .gfield_description.instruction {
  display: none !important;
}
#gform_4 .ginput_complex.gform-grid-row {
  display: flex !important;
  -moz-column-gap: 8px !important;
       column-gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
#gform_4 .ginput_complex.gform-grid-row .gfield_date_dropdown_year,
#gform_4 .ginput_complex.gform-grid-row .gfield_date_dropdown_month,
#gform_4 .ginput_complex.gform-grid-row .gfield_date_dropdown_day {
  flex: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

#map,
#mapMobile {
  min-height: 800px;
  width: 100%;
}
@media (max-width: 767px) {
  #map,
  #mapMobile {
    min-height: 375px;
  }
}

footer {
  font-family: Nunito-sans;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4em;
}
footer .copyright a {
  text-decoration: underline !important;
  color: inherit;
}
footer .copyright a.c-link:hover {
  color: white;
}
footer .contact-info {
  color: #B9B9B9;
}
footer .contact-info .contact-phone,
footer .contact-info .contact-email,
footer .contact-info .contact-facebook-icon {
  color: #B9B9B9;
}
footer .contact-info .contact-phone:hover,
footer .contact-info .contact-email:hover,
footer .contact-info .contact-facebook-icon:hover {
  color: white;
}
footer .contact-info .contact-separator {
  margin: 0 24px;
  color: #F9B318;
  font-size: 20px;
  display: inline-block;
}
footer .contact-info .contact-facebook-icon {
  vertical-align: middle;
}
@media (max-width: 1023px) {
  footer .contact-info {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  footer .contact-info .contact-separator {
    display: none;
  }
}

#hide-header {
  width: 100% !important;
  transition: all 0.4s ease !important;
}
@media (max-width: 1023px) {
  #hide-header .elementor-nav-menu--dropdown {
    min-height: calc(100dvh - 80px) !important;
  }
}
@media (max-width: 1023px) and (max-width: 1023px) {
  #hide-header ul {
    flex-grow: 1;
    align-content: flex-start;
    left: 0;
    padding-top: 10px;
  }
}
#hide-header .e-n-menu-toggle:focus, #hide-header .e-n-menu-toggle:hover {
  background-color: transparent;
}
/*------YELLOW UNDERLINE ON HOVER FOR DESKTOP NAV MENU ITEMS------*/
.elementor-nav-menu--main .elementor-item {
  position: relative;
  display: inline-block;
}
.elementor-nav-menu--main .elementor-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  background-color: #F9B318;
}
.elementor-nav-menu--main .elementor-item::after {
  width: 0;
  transition: width 0.3s ease;
}
.elementor-nav-menu--main .elementor-item:hover::after {
  left: 20px;
  width: calc(100% - 40px);
}
.elementor-nav-menu--main .elementor-item.elementor-item-active::after {
  transition: none;
  left: 20px;
  width: calc(100% - 40px);
}

/*----- HIDES CONTACT INFO IN NAV MENU ON DESKTOP -----*/
.elementor-nav-menu--main .menu-item-978 {
  display: none !important;
}

.elementor-nav-menu .menu-item .contact-info {
  display: none;
}

/* Show contact info in navigation menu only on mobile */
@media (max-width: 1023px) {
  .elementor-nav-menu--dropdown .menu-item-978 {
    display: block;
  }
  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
  }
  .elementor-nav-menu--dropdown .elementor-nav-menu {
    display: flex;
    flex-direction: column;
    flex: 1;
  }
  .elementor-nav-menu .menu-item .contact-info {
    display: block;
    font-size: 16px;
    margin-bottom: 32px;
  }
  .elementor-nav-menu .menu-item .contact-info .contact-separator {
    display: none;
  }
  .elementor-nav-menu .menu-item .contact-info .contact-phone {
    display: block;
    margin-bottom: 0px;
  }
  .elementor-nav-menu .menu-item .contact-info .contact-email {
    display: block;
    margin-bottom: 32px;
  }
  .elementor-nav-menu--dropdown .menu-item-978 {
    margin-top: auto;
  }
}
.elementor-image-carousel .swiper-slide-image {
  width: 100%;
  min-height: 500px;
  aspect-ratio: 6/7;
  /* enforces this ratio */
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1023px) {
  .elementor-image-carousel .swiper-slide-image {
    height: 60vh;
  }
}

.swiper-pagination {
  padding-bottom: 16px;
}

.dialog-lightbox-close-button .e-font-icon-svg {
  right: 105px;
  top: 40px !important;
  color: gray;
}

a.dialog-close-button.dialog-lightbox-close-button {
  right: 55px !important;
  top: 40px !important;
  color: gray;
}

.elementor-slideshow__header .e-eicon-zoom-in-bold,
.elementor-slideshow__header .e-eicon-zoom-out-bold {
  margin-right: 50px !important;
  margin-top: -2px;
  margin-top: 40px !important;
}

.project-card {
  width: 100% !important;
  max-width: 380px !important;
  overflow: hidden !important;
}
.project-card .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  padding-bottom: 0 !important;
}
.project-card .elementor-image-carousel-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  border-radius: 4px;
}
.project-card .swiper,
.project-card .swiper-container {
  width: 100% !important;
  max-width: 100% !important;
}
.project-card .swiper-wrapper {
  width: 100% !important;
  max-width: 100% !important;
}
.project-card .swiper-slide {
  height: 340px !important;
  width: 100% !important;
  flex-shrink: 0 !important;
}
.project-card .swiper-slide img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0px !important;
  max-height: 340px !important;
}

.e-loop-nothing-found-message {
  font-family: "Nunito Sans";
  font-size: 18px;
}
.e-loop-nothing-found-message .elementor-posts-nothing-found {
  font-family: inherit;
}
.e-loop-nothing-found-message .elementor-posts-nothing-found p {
  font-family: inherit;
}

.ghost .elementor-button {
  background-color: white !important;
}
.ghost .elementor-button:hover {
  background-color: #D5D5D5 !important;
}

@media (max-width: 767px) {
  .elementor-button-wrapper {
    display: inline-block;
    width: 100% !important;
  }
}

@media (max-width: 767px) {
  .elementor-button {
    display: inline-block;
  }
}

.back-btn::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 28px;
  height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='28' height='28' rx='14' fill='%230D0D0D'/%3E%3Cpath d='M20 14H8M8 14L13.1429 19M8 14L13.1429 9' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
  margin-right: 12px;
  transition: all 0.3s ease;
  vertical-align: middle;
}

.back-btn:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='28' height='28' rx='14' fill='%23FFD700'/%3E%3Cpath d='M20 14H8M8 14L13.1429 19M8 14L13.1429 9' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.back-btn {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle;
  line-height: 28px;
}

.contact-links:hover h2 {
  color: #0D0D0D !important;
}

.property-details {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.project-details {
  display: flex;
  justify-content: space-around;
  width: 100%;
  align-items: center;
}

.card-button .elementor-button {
  width: 100% !important;
  display: block !important;
  text-align: center !important;
}

.sold {
  position: relative;
}
.sold .elementor-widget-container:has(img) {
  position: relative;
}
.sold .elementor-widget-container:has(img)::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("https://dslc.boleyn.dev/wp-content/uploads/2025/10/DSLC-Sold-Banner-1.webp");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 12;
  pointer-events: none;
}
.sold .elementor-button-wrapper {
  position: relative;
  z-index: 11;
}
.sold .elementor-button-wrapper .elementor-button,
.sold .elementor-button-wrapper a.elementor-button {
  background-color: #464646 !important;
  color: white !important;
  pointer-events: none;
  cursor: not-allowed;
}
.sold::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  pointer-events: none;
  z-index: 10;
}

#h100.elementor-widget {
  height: 100% !important;
}
#h100.elementor-widget .elementor-widget-container {
  height: 100% !important;
  min-height: inherit !important;
  position: relative !important;
}
#h100.elementor-widget img {
  height: 100% !important;
  width: 100% !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.hero-buttons {
  display: none;
}

body.home .hero-buttons {
  display: flex;
}/*# sourceMappingURL=style.css.map */