/*
    Style TOC
*/
/*!
    Theme Name:   TPJ Child Theme
    Theme URI:    https://www.thepropertyjungle.com/
    Description:  TPJ Child Theme
    Author:       The Property Jungle
    Author URI:   https://www.thepropertyjungle.com/
    Template:     hello-elementor
    Version:      1.2.9
    Text Domain:  tpj-child-theme
*/
/*
    Theme info is added here so that it is processed at line one
    of the generated style.css file. If included in style.scss,
    it is always dumped at the end of the processed SCSS and
    breaks the theme.
*/
@media (min-width: 1600px) {
  .container {
    max-width: 1448px;
  }
}

.single-post-wrapper {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-left: 2rem;
  padding-right: 2rem;
}
@media screen and (min-width: 768px) {
  .single-post-wrapper {
    padding-top: 4.8rem;
    padding-bottom: 4.8rem;
    padding-left: 2.4rem;
    padding-right: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .single-post-wrapper {
    padding-top: 8rem;
    padding-bottom: 8rem;
    padding-left: 6.4rem;
    padding-right: 6.4rem;
  }
}
@media screen and (min-width: 1366px) {
  .single-post-wrapper {
    padding-top: 8rem;
    padding-bottom: 8rem;
    padding-left: 0;
    padding-right: 0;
  }
}

.single-banner-content {
  width: 100%;
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-left: 2rem;
  padding-right: 2rem;
}
@media screen and (min-width: 768px) {
  .single-banner-content {
    padding-top: 4.8rem;
    padding-bottom: 4.8rem;
    padding-left: 2.4rem;
    padding-right: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .single-banner-content {
    max-width: 85%;
    padding: 0;
  }
}

.bg-light-grey {
  background-color: #F8F8F8;
}

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 5.6rem;
  padding: 1.3rem 4rem;
  border-radius: 0.2rem;
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  border: transparent 0.1rem solid;
  text-decoration: none;
  gap: 0.8rem;
  font-family: var(--e-global-typography-secondary-font-family);
}
.button svg {
  width: 1.4rem;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.button.button-primary {
  background: var(--e-global-color-primary);
  color: var(--e-global-color-9c4f063);
}
.button.button-primary:hover {
  background: var(--e-global-color-secondary);
  color: var(--e-global-color-9c4f063);
}
.button.button-wht {
  background: #fff;
  color: var(--e-global-color-text);
}
.button.button-wht svg {
  stroke: #000;
}
.button.button-wht:hover {
  background: var(--e-global-color-primary);
  color: #ffffff;
}
.button.button-wht:hover svg {
  stroke: #ffffff;
}
.button.button-fixed-width {
  width: 280px;
}
.button.button-ghost {
  border-color: var(--e-global-color-primary);
  color: var(--e-global-color-primary);
}
.button.button-ghost:hover {
  background: var(--e-global-color-primary);
  color: var(--e-global-color-9c4f063);
}
.button.button--map-back {
  position: absolute;
  top: 1rem;
  left: 1rem;
  background: #ffffff;
  color: var(--e-global-color-primary);
  border-color: var(--e-global-color-primary);
  z-index: 1;
}
.button.button--map-back:hover {
  background: var(--e-global-color-primary);
  color: var(--e-global-color-9c4f063);
}

.container-elementor-style {
  /*
      ATTENTION
      =========
      The max-width, and other declarations, make sure that the
      HTML sits in a replica of Elementor's container

      An Elementor section has a 10px margin added to it by default.
      to remove this, you will need to set the columns gap to 'No Gap'
  */
  max-width: 1140px;
  margin: 0 auto;
}

input, select {
  margin: 0px 0 1.5rem 0;
  padding: 1.2rem 1.4rem 1.2rem 1.2rem;
  border: 0.1rem solid #e6e6e6;
  border-radius: 0.2rem;
  -webkit-border-radius: 0.2rem;
  -moz-border-radius: 0.2rem;
  font-size: 1.6rem !important;
  color: #333;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  outline: none !important;
  background: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select {
  background: url(/wp-content/uploads/2025/02/dropdown-arrow.svg) no-repeat;
  background-position: center right 1rem;
  background-size: 1.2rem;
}

label {
  font-size: 1.6rem !important;
}

::-webkit-input-placeholder {
  color: var(--e-global-color-text) !important;
  font-size: 1.6rem;
  font-weight: 400;
}

::-moz-placeholder {
  color: var(--e-global-color-text) !important;
  font-size: 1.6rem;
  font-weight: 400;
}

:-ms-input-placeholder {
  color: var(--e-global-color-text) !important;
  font-size: 1.6rem;
  font-weight: 400;
}

input:-moz-placeholder {
  color: var(--e-global-color-text) !important;
  font-size: 1.6rem;
  font-weight: 400;
}

.sort-by {
  border-right: 1px solid #eee;
}
.sort-by select {
  background: url(/wp-content/uploads/2025/02/dropdown-arrow.svg) no-repeat;
  background-position: center right 0rem;
  padding: 0rem 3rem 0rem 0rem !important;
  border: none !important;
  cursor: pointer;
}

.link__map {
  color: var(--e-global-color-text) !important;
  font-size: 1.6rem !important;
}
.link__map svg {
  fill: none;
  stroke: var(--e-global-color-primary);
  width: 2.1rem;
  margin-left: 1rem;
}

/*
    Helpers TOC
*/
/*
    ATTENTION
    =========
    Your place for CSS helpers and fixes.
*/
.hero-btn-repeater {
  gap: 1.6rem;
}
.hero-btn-repeater .repeater-btn {
  background-color: var(--e-global-color-primary);
  fill: #fff;
  color: #fff;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: var(--e-global-color-primary);
  width: 100% !important;
}
.hero-btn-repeater .repeater-btn:hover {
  background-color: #fff;
  border-color: #fff;
  color: var(--e-global-color-primary);
}
.hero-btn-repeater .repeater-btn.repeater-btn--wht-outline {
  border-color: #fff;
  background-color: transparent;
}
.hero-btn-repeater .repeater-btn.repeater-btn--wht-outline:hover {
  background-color: #fff;
  border-color: #fff;
  color: var(--e-global-color-primary);
}
@media (min-width: 768px) {
  .hero-btn-repeater {
    gap: 2.4rem;
  }
  .hero-btn-repeater .repeater-btn {
    width: auto;
  }
}

/*
    ATTENTION
    =========
    Your place for CSS helpers and fixes.
*/
/*
    ATTENTION
    =========
    Overrides the parent themes default styles
    for all hrefs.
*/
a {
  text-decoration: none !important;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.lazy-load-html {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.lazy-load-html.loaded {
  opacity: 1;
}

.swiper.featured-property-swiper {
  padding-bottom: 5rem;
}

@media (min-width: 1200px) {
  .swiper.featured-property-swiper {
    padding-bottom: 0rem;
  }
}
/*
    Search Results TOC
*/
/*
    ATTENTION
    =========
    /blade-views/partials/related-properties.blade.php

    You can include file file into /blade-views/single-property.blade.php
    to show related properties to the one being viewed.
*/
.swiper__property-carousel .swiper-button-prev,
.swiper__property-carousel .swiper-button-next {
  top: 40%;
  height: 40px;
  width: 40px;
  padding: 10px;
  background: rgba(0, 0, 0, 0.65);
  border: 0;
}
.swiper__property-carousel .swiper-button-prev.swiper-button-disabled,
.swiper__property-carousel .swiper-button-next.swiper-button-disabled {
  opacity: 0.55;
}
.swiper__property-carousel .swiper-button-prev::after,
.swiper__property-carousel .swiper-button-next::after {
  font-size: 2rem;
  color: #ffffff;
}
.swiper__property-carousel .swiper-button-prev {
  left: 0px;
  right: auto;
}
.swiper__property-carousel .swiper-button-next {
  right: 0px;
  left: auto;
}

.development-thumbnail .development-thumbnail__image {
  aspect-ratio: 4/3;
  width: 100%;
  border-radius: 0.4rem;
  display: block;
}
.development-thumbnail .development-thumbnail__content {
  padding: 0rem;
  min-height: 100%;
}
@media (min-width: 1400px) {
  .development-thumbnail .development-thumbnail__content {
    padding: 0 0 0 3.2rem;
  }
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta {
  gap: 2rem;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta h4 {
  font-size: 2.8rem;
  margin: 0 0 0.8rem 0;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta h5 {
  font-size: 1.6rem;
  font-weight: 400;
  margin: 0 0 1.6rem 0;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.5em;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta p.development-thumbnail__meta-price {
  font-size: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1em;
  gap: 0.8rem;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta p.development-thumbnail__meta-price a {
  text-decoration: underline !important;
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta p.development-thumbnail__meta-price svg {
  stroke: var(--e-global-color-text);
  width: 1.8rem;
  margin-bottom: 1px;
}
@media (min-width: 1200px) {
  .development-thumbnail .development-thumbnail__content .development-thumbnail__meta h4 {
    font-size: 3.2rem;
    margin: 0 0 0.8rem 0;
  }
  .development-thumbnail .development-thumbnail__content .development-thumbnail__meta h5 {
    font-size: 1.8rem;
    font-weight: 400;
    margin: 0 0 1.6rem 0;
  }
  .development-thumbnail .development-thumbnail__content .development-thumbnail__meta p {
    font-size: 1.8rem;
  }
}
.development-thumbnail .development-thumbnail__content .development-thumbnail__meta .development-thumbnail__logo {
  max-width: 15rem;
}

/*
    ATTENTION
    =========
    /blade-views/partials/grid-property.blade.php

    This partial controls the display of property
    data within the grid search results.
*/
/*
    ATTENTION
    =========
    /blade-views/partials/grid-property.blade.php

    This partial controls the display of property
    data within the grid search results.
*/
.card__grid {
  gap: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.card__grid .card-img-top {
  aspect-ratio: 4/3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
@media (min-width: 768px) {
  .card__grid .card-img-top {
    aspect-ratio: 16/9;
  }
}
.card__grid .card-img-top .card__flash {
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  padding: 1.2rem;
  line-height: 1em;
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.card__grid .card__grid-meta h3, .card__grid .card__grid-meta h4, .card__grid .card__grid-meta h5 {
  color: var(--e-global-color-text);
  font-size: 1.8rem;
}
.card__grid .card__grid-meta h3 span, .card__grid .card__grid-meta h4 span, .card__grid .card__grid-meta h5 span {
  font-size: 0.8em;
}
.card__grid .card__grid-meta h4 {
  font-weight: 600;
}
.card__grid .card__grid-meta h5 {
  font-size: 1.6rem;
}

.grid-search {
  padding: 18rem 0 0 0;
}
@media (min-width: 768px) {
  .grid-search {
    padding: 15rem 0 0 0;
  }
}
.grid-search .property-grid .guide__price {
  display: none;
}
.grid-search .property-grid .property-grid__availability {
  position: absolute;
  top: 2rem;
  right: 2rem;
  padding: 1rem;
  color: #fff;
  background: var(--e-global-color-secondary);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  border-radius: 0.2rem;
}

h1.dynamic-title {
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: 2rem !important;
  font-weight: bold !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
h1.dynamic-title a {
  color: var(--e-global-color-text);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
h1.dynamic-title a span {
  width: 2rem;
  height: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-style: italic;
  font-family: Georgia, "Times New Roman", Times, serif;
  border: 1px solid var(--e-global-color-text);
  border-radius: 50%;
  font-size: 1.4rem;
  margin-left: 0.5rem;
}
h1.dynamic-title a:hover {
  color: #fff;
}
h1.dynamic-title a:hover span {
  background-color: var(--e-global-color-text);
}

.collapse-text p {
  line-height: 1.5em;
  font-size: 1.6rem;
}
.collapse-text a,
.collapse-text a:link {
  color: var(--e-global-color-text);
  text-decoration: underline !important;
}
.collapse-text a:hover,
.collapse-text a:link:hover {
  color: var(--e-global-color-primary) !important;
}

.property-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.6rem;
}
@media (min-width: 768px) {
  .property-grid {
    gap: 2.4rem;
  }
}
.property-grid .property-grid__image {
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.5rem;
  display: block;
  position: relative;
}
.property-grid .property-grid__image img {
  height: 100%;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.property-grid .property-grid__image:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.property-grid .property-grid__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8rem;
}
@media (min-width: 768px) {
  .property-grid .property-grid__meta {
    gap: 1.6rem;
  }
}
.property-grid .property-grid__meta .property-grid__meta-price-address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0rem;
}
@media (min-width: 768px) {
  .property-grid .property-grid__meta .property-grid__meta-price-address {
    gap: 0.4rem;
  }
}
.property-grid .property-grid__meta h4,
.property-grid .property-grid__meta h5,
.property-grid .property-grid__meta h6 {
  font-family: var(--e-global-typography-secondary-font-family);
  color: var(--e-global-color-text);
}
.property-grid .property-grid__meta h4 {
  font-weight: 600;
  font-size: 1.6rem;
  margin-bottom: 0rem;
}
.property-grid .property-grid__meta h4 span {
  font-size: 0.7em;
}
@media (min-width: 768px) {
  .property-grid .property-grid__meta h4 {
    font-size: 2rem;
  }
}
@media (min-width: 992px) {
  .property-grid .property-grid__meta h4 {
    font-size: 2.2rem;
  }
}
.property-grid .property-grid__meta h5 {
  font-weight: 600;
  font-size: 1.6rem;
  margin-bottom: 0rem;
}
.property-grid .property-grid__meta h6 {
  font-weight: 400;
  font-size: 1.4rem;
  margin-bottom: 0rem;
}
@media (min-width: 768px) {
  .property-grid .property-grid__meta h6 {
    font-size: 1.6rem;
  }
}

.tab-content__featured-properties .property-grid .property-grid__availability {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1rem;
  color: #fff;
  background: rgba(0, 0, 0, 0.2);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  width: 100%;
  -webkit-box-align: left;
      -ms-flex-align: left;
          align-items: left;
  font-size: 1.7rem;
}

.back-to-search-box {
  padding: 0px;
  margin-bottom: 4rem;
}

a.back-to-search {
  border-bottom: 1px solid transparent;
  color: var(--e-global-color-text);
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 140%;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.property__details {
  position: relative;
}
.property__details h1 {
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: 4rem;
  font-weight: 600;
  margin-bottom: 2rem;
  color: var(--e-global-color-primary);
}
.property__details h2 {
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 2rem;
  color: var(--e-global-color-primary);
}
.property__details h3 {
  font-family: var(--e-global-typography-secondary-font-family);
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 3rem;
  line-height: 1.3em;
  color: var(--e-global-color-primary);
}
.property__details p {
  line-height: 1.4;
  font-size: 1.6rem;
  color: var(--e-global-color-text);
}
.property__details ul.bullets--featured {
  margin: 0 0 4rem 0;
  padding: 0;
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
}
.property__details ul.bullets--featured li {
  display: block;
  margin-bottom: 2.4rem;
  font-size: 1.6rem;
  line-height: 1.4;
  color: var(--e-global-color-text);
}
.property__details hr.property-single-divider {
  border-top: 1px solid #EEEBE3;
  opacity: 1;
  margin-top: 4rem;
  margin-bottom: 4rem;
}
@media screen and (min-width: 768px) {
  .property__details hr.property-single-divider {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
}

.single-property__negotiator {
  gap: 1.6rem;
}
.single-property__negotiator h4 {
  font-size: 2rem;
  line-height: 1.6em;
}
.single-property__negotiator h4 span {
  font-size: 2.8rem;
}
.single-property__negotiator a {
  text-decoration: underline !important;
}
.single-property__negotiator .single-property__negotiator-image {
  aspect-ratio: 1/1;
  width: 9.6rem;
  border-radius: 50%;
}

.property-banner-image-wrapper {
  overflow: hidden;
  margin: 0;
}

.property-banner__image {
  height: 376px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .property-banner__image {
    height: 744px;
  }
}
@media screen and (min-width: 992px) {
  .property-banner__image {
    height: 680px;
  }
}
.property-banner__image:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.property-list-group {
  margin-top: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: absolute;
  bottom: 3.2rem;
  right: 3.2rem;
  z-index: 1;
  margin-top: 0;
}
.property-list-group .button {
  font-weight: 400;
  font-size: 1.6rem;
}
.property-list-group li.list-group-item {
  background: #ffffff;
  border: 0;
  border-radius: 2px;
  margin-right: 1rem;
  margin-bottom: 1rem;
  padding: 1.4rem 1.6rem;
  font-size: 1.4rem;
  color: var(--e-global-color-text);
}
@media screen and (min-width: 768px) {
  .property-list-group li.list-group-item {
    margin-bottom: 0;
  }
}
.property-list-group li.list-group-item:last-of-type {
  margin-right: 0;
}
.property-list-group li.list-group-item:first-child {
  border-radius: 0 !important;
}
.property-list-group li.list-group-item:not(:first-child) {
  border-radius: 0 !important;
}
.property-list-group li.list-group-item a {
  color: var(--e-global-color-text);
}

.nav-sticky-wrapper {
  height: 7rem;
  background: #ffffff;
  border-top: 1px solid #E6E6E6;
  -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.16);
  z-index: 1040;
  position: sticky;
}
@media screen and (min-width: 768px) {
  .nav-sticky-wrapper {
    height: 7.4rem;
  }
}

@media screen and (max-width: 599px) {
  .admin-bar .nav-sticky-wrapper.sticky-top {
    top: 0px;
  }
}
@media screen and (min-width: 600px) {
  .admin-bar .nav-sticky-wrapper.sticky-top {
    top: 46px;
  }
}
@media screen and (min-width: 783px) {
  .admin-bar .nav-sticky-wrapper.sticky-top {
    top: 32px;
  }
}

.property-nav-sticky-list {
  margin: 0;
  padding: 0 0 0 2rem;
}
.property-nav-sticky-list li {
  display: inline-block;
  margin-right: 3.2rem;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .property-nav-sticky-list li {
    margin-right: 4.8rem;
  }
}
.property-nav-sticky-list li:hover:after {
  content: "";
  position: absolute;
  bottom: 0px;
  display: block;
  width: 100%;
  height: 3px;
  background-color: var(--e-global-color-primary);
}
.property-nav-sticky-list li a {
  color: var(--e-global-color-text);
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 7.4rem;
}
@media screen and (min-width: 1200px) {
  .property-nav-sticky-list li a {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 991px) {
  .property-nav-sticky-list {
    display: block;
    margin-left: initial;
    margin-right: initial;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    -ms-flex-wrap: initial;
        flex-wrap: initial;
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}
@media screen and (min-width: 992px) {
  .property-nav-sticky-list {
    padding: 0;
  }
}

.sidebar--sticky {
  top: 13rem;
}

.sidebar-card {
  border-radius: 4px;
  border: 1px solid #E6E6E6;
  overflow: hidden;
}
.sidebar-card input {
  border: 1px solid #E6E6E6 !important;
}
.sidebar-card label {
  font-size: 1.4rem !important;
}
.sidebar-card p.terms {
  font-size: 1.4rem;
}
.sidebar-card p.terms a {
  text-decoration: underline !important;
}

.sidebar-card--branch {
  border: none;
  -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.16), 0px 2px 3px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.16), 0px 2px 3px 0px rgba(0, 0, 0, 0.08);
}

.stamp-duty-heading,
.mortgage-calculator-heading {
  color: var(--e-global-color-primary);
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 28.8px */
  margin-bottom: 2.4rem;
}

.stamp-duty-form,
.mortgage-calculator-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.mortgage-calculator-form,
#mortgage_calculator_success,
#mortgage_calculator_error {
  margin-bottom: 3.2rem;
}

.mortgage-calculator-input-wrapper {
  gap: 24px;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.mortgage-calculator-input-wrapper > div {
  position: relative;
}

span.input-unit {
  position: absolute;
  right: 1.6rem;
  bottom: 0.9rem;
  font-family: "Raleway", Sans-serif;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 160%;
}

.stamp-duty-form > div {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.sdc-checkboxes {
  margin-left: 0;
  margin-top: 2.4rem;
}
@media screen and (min-width: 768px) {
  .sdc-checkboxes {
    margin-left: 3.2rem;
    margin-top: 0;
  }
}
.sdc-checkboxes .form-check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
}
.sdc-checkboxes .form-check .form-check-input[type=checkbox] {
  width: 20px;
  padding: 0;
  float: none;
  border: 1px solid #BFBCB9;
  margin: 0 8px 0 0;
  height: 20px;
  clear: both;
  display: block;
}
.sdc-checkboxes .form-check label {
  margin-bottom: 0;
}

.mortgage-calculator-form .form__action,
.stamp-duty-form .form__action {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  margin-top: 2.4rem;
}

.mortgage-calculator-form label,
.stamp-duty-form label,
.stamp-duty-results__title,
.stamp-duty-results__amount,
.stamp-duty-results__rate {
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
}

.mortgage-calculator-form label,
.stamp-duty-form label {
  margin-bottom: 0.8rem;
}

/* Have to use :not to overrride Elementor's CSS specificity */
.stamp-duty-form input[type=number]:not([type=submit]),
.mortgage-calculator-form input.mortgage-calculator-input:not([type=submit]) {
  background-color: #ffffff;
  padding: 0.9rem 1.6rem;
  border-radius: 0;
  border: 1px solid;
  border-color: #BFBCB9;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.4px */
  margin: 0;
}

#stamp-duty .stamp-duty-form button,
#mortgage_calculator input[type=submit] {
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 140%; /* 19.6px */
  padding: 1.3rem 4rem;
  border-radius: 2px;
  border: none;
  background-color: var(--e-global-color-secondary);
  outline-color: var(--e-global-color-secondary);
  color: #ffffff;
}
#stamp-duty .stamp-duty-form button:hover,
#mortgage_calculator input[type=submit]:hover {
  background-color: var(--e-global-color-primary);
  outline-color: var(--e-global-color-primary);
}
@media screen and (max-width: 767px) {
  #stamp-duty .stamp-duty-form button,
  #mortgage_calculator input[type=submit] {
    width: 100%;
  }
}

.stamp-duty-results-container {
  margin-top: 2.4rem;
}

.stamp-duty-results__title {
  display: block;
  margin-bottom: 2.4rem;
}

.stamp-duty-results__amount,
.stamp-duty-results__rate {
  margin-bottom: 2.4rem;
}

#stamp-duty-table {
  margin-bottom: 0;
  display: block;
  max-width: -moz-fit-content;
  max-width: -webkit-fit-content;
  max-width: fit-content;
  margin: 0;
  overflow-x: auto;
  white-space: nowrap;
}

#stamp-duty-table td {
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
}

#stamp-duty-table th {
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
}

#mortgage_calculator_success {
  margin-top: 3.2rem;
}

.mortgage-calculator-value,
.stamp-duty-results__amount span {
  color: var(--e-global-color-primary);
  font-size: 2.2rem;
  font-weight: 600;
  margin-top: 0.8rem;
  margin-bottom: 2.4rem;
  display: block;
}

.property-lightbox {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(30, 30, 30, 0.75)), color-stop(1810%, #000));
  background: linear-gradient(rgba(30, 30, 30, 0.75), #000 1810%);
}
.property-lightbox .modal-dialog {
  margin: auto;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-items: center;
}
@media screen and (min-width: 576px) {
  .property-lightbox .modal-dialog {
    width: 75%;
    max-width: 900px;
  }
}
.property-lightbox .modal-dialog .modal-content {
  background: none;
  border: 0;
}
.property-lightbox .modal-dialog .modal-content .modal-header {
  border: 0;
}
.property-lightbox .modal-dialog .modal-content .modal-header .btn-close {
  background: none;
  height: 20px;
  width: 20px;
}
.property-lightbox .modal-dialog .modal-content .modal-body {
  padding: 0;
}
.property-lightbox .modal-dialog .modal-content .modal-body .swiper-button-next, .property-lightbox .modal-dialog .modal-content .modal-body .swiper-button-prev {
  height: 40px;
  width: 40px;
  padding: 10px;
  background: rgba(0, 0, 0, 0.65);
  border: 0;
  margin: 0px;
  border-radius: 0;
  left: auto;
  right: 0;
  top: 0;
  bottom: auto;
}
.property-lightbox .modal-dialog .modal-content .modal-body .swiper-button-next::after, .property-lightbox .modal-dialog .modal-content .modal-body .swiper-button-prev::after {
  color: #fff;
  font-size: 16px;
}
.property-lightbox .modal-dialog .modal-content .modal-body .swiper-button-prev {
  right: 41px;
}

.shortlist__btns .tpj_add_to_shortlist,
.shortlist__btns .tpj_remove_from_shortlist {
  cursor: pointer;
}
.shortlist__btns .tpj_add_to_shortlist svg,
.shortlist__btns .tpj_remove_from_shortlist svg {
  fill: blue;
  width: 30px;
  height: 30px;
}

.tpj-stations-list .tpj-station .type-icon img {
  width: 15px;
  height: 15px;
}
.property-search-home {
  background: #fff;
  padding: 12px;
}

.property-search-home select {
  background-color: #ffffff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M13 5.5L8 10.5L3 5.5' stroke='%23282729' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 12px;
  color: var(--e-global-color-text);
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 19.6px */
  padding: 0.8rem 1.2rem;
  margin: 0;
  width: 100%;
  height: 4.8rem;
  border-radius: 0px;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none !important;
}

.property-search-home option {
  background-color: #ffffff;
  color: var(--e-global-color-text);
}

.property-search-home input[type=text] {
  background-color: #ffffff;
  border: 1px solid var(--e-global-color-accent);
  color: var(--e-global-color-text);
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
  padding: 0.9rem 4rem;
  margin: 0px;
}

.property-search-home input[type=text].location {
  width: 100%;
  margin-bottom: 0rem;
  border: 1px solid #e6e6e6;
  width: 360px;
}

.property-search-home input[type=submit].property-search-home__btn {
  background-color: var(--e-global-color-primary);
  color: #ffffff;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 140%; /* 19.6px */
  padding: 1.3rem 4rem;
  border-radius: 2px;
  border: none;
  margin-left: 0rem;
  margin-bottom: 0;
}
.property-search-home input[type=submit].property-search-home__btn:hover {
  background-color: var(--e-global-color-accent);
  color: var(--e-global-color-primary) !important;
  border: none;
}

.search-divider--home {
  border-right: 1px solid #e6e6e6;
  height: 20px;
  /*margin-left: 4px;
  margin-right: 4px;*/
}

button.more-filters-btn--home {
  padding: 1.3rem 2.4rem;
  height: 48px;
  color: var(--e-global-color-primary);
  border: 0;
  font-size: 1.5rem;
  background: transparent;
}
button.more-filters-btn--home svg {
  margin-left: 1.2rem;
  stroke: var(--e-global-color-primary) !important;
}

.prediction_popup {
  position: absolute;
  width: 100%;
  left: 0;
  top: 40px;
  background: #ffffff;
  border-style: solid;
  border-width: 1px;
  border-color: #dddddd;
  z-index: 100;
  -webkit-box-shadow: 5px 12px 16px -14px #292b2c;
          box-shadow: 5px 12px 16px -14px #292b2c;
}
.prediction_popup .modal_content_developments {
  /* to be styled if needed */
}
.prediction_popup .modal_content_google_predictions {
  /* to be styled if needed */
}
.prediction_popup .modal_content_section_header {
  background: #f0ad4e;
  padding: 10px 10px;
  color: #292b2c;
  text-transform: uppercase;
  font-weight: bold;
}
.prediction_popup .development_entry_link {
  display: block;
  padding: 5px 10px;
  color: #0275d8;
  text-decoration: none;
}
.prediction_popup .development_entry_link:hover, .prediction_popup .development_entry_link:focus, .prediction_popup .development_entry_link:active {
  color: #5cb85c;
}
.prediction_popup .google_entry_link {
  display: block;
  padding: 5px 10px;
  color: #0275d8;
  text-decoration: none;
}
.prediction_popup .google_entry_link:hover, .prediction_popup .google_entry_link:focus, .prediction_popup .google_entry_link:active {
  color: #5cb85c;
}
.prediction_popup .selected_prediction_entry {
  /*
      Needs clarification, this class didn't seem to be applied, or
      exist with my specific WordPress website
  */
  background: #cccccc;
}
.prediction_popup .place-icon img {
  max-width: 30px;
}

.core-search-container {
  padding: 2rem 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  width: 100%;
  z-index: 500;
  background: var(--e-global-color-primary);
}
.core-search-container .core-search {
  position: relative;
}
.core-search-container .core-search .core-search__address-section {
  gap: 1.6rem;
  width: 100%;
}
@media (min-width: 992px) {
  .core-search-container .core-search .core-search__address-section {
    width: auto;
  }
}
.core-search-container .core-search .core-search__main-section {
  width: 100%;
}
@media (min-width: 992px) {
  .core-search-container .core-search .core-search__main-section {
    gap: 1.6rem;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}
@media (min-width: 992px) {
  .core-search-container .core-search .search__actions--md {
    display: none !important;
  }
}
.core-search-container .core-search input,
.core-search-container .core-search select {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  height: 4.8rem;
  font-size: 1.6rem;
  font-weight: 300;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.2rem;
  background: transparent;
}
.core-search-container .core-search input:focus,
.core-search-container .core-search select:focus {
  outline: none;
  border-radius: 0;
}
.core-search-container .core-search input option,
.core-search-container .core-search select option {
  color: var(--e-global-color-text);
  padding: 0.8rem !important;
}
.core-search-container .core-search select {
  background: url(/wp-content/uploads/2025/02/dropdown-arrow-wht.svg) no-repeat;
  background-position: center right 0rem;
}
.core-search-container .core-search .core-search__divide {
  width: 0.1rem;
  height: 1.6rem;
  background: rgba(255, 255, 255, 0.3);
}
.core-search-container .core-search .search__address {
  width: 100%;
}
.core-search-container .core-search .search__address input {
  color: var(--e-global-color-text) !important;
}
@media (min-width: 768px) {
  .core-search-container .core-search .search__address {
    width: 50%;
  }
  .core-search-container .core-search .search__address.search__address--map {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .core-search-container .core-search .search__address {
    min-width: 28rem;
  }
}
@media (min-width: 1200px) {
  .core-search-container .core-search .search__address {
    min-width: 40rem;
  }
}
@media (min-width: 1400px) {
  .core-search-container .core-search .search__address {
    min-width: 48rem;
  }
}
.core-search-container .core-search .tpj_location_search_input {
  background: #fff !important;
  padding: 0 1.6rem !important;
  border-radius: 0.2rem !important;
  margin-bottom: 0 !important;
  width: 100%;
  border: none !important;
}
.core-search-container .core-search input::-webkit-input-placeholder {
  color: #000;
}
.core-search-container .core-search input::-moz-placeholder {
  color: #000;
}
.core-search-container .core-search input:-ms-input-placeholder {
  color: #000;
}
.core-search-container .core-search input::-ms-input-placeholder {
  color: #000;
}
.core-search-container .core-search input::placeholder {
  color: #000;
}
.core-search-container .core-search .instruction-type {
  min-width: 6rem;
}
@media (max-width: 992px) {
  .core-search-container .core-search .collapse,
  .core-search-container .core-search .collapsing {
    padding-top: 1.6rem;
  }
  .core-search-container .core-search .collapse select,
  .core-search-container .core-search .collapsing select {
    background: url(/wp-content/uploads/2025/02/dropdown-arrow.svg) no-repeat #fff;
    background-position: center right 1.6rem;
    padding: 0 0 0 1.6rem !important;
    border-radius: 0.2rem !important;
    margin-bottom: 1.6rem !important;
    width: 100%;
    border: none !important;
    color: var(--e-global-color-text) !important;
  }
}
@media (min-width: 768px) {
  .core-search-container .core-search .collapse .collapse__body,
  .core-search-container .core-search .collapsing .collapse__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 992px) {
  .core-search-container .core-search .collapse,
  .core-search-container .core-search .collapsing {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 0 0 1.6rem;
  }
}
.core-search-container .core-search button {
  margin: 0;
  border: 0 !important;
  height: 4.8rem;
  padding: 0 2.4rem !important;
  width: 100%;
  font-weight: 600;
  background: var(--e-global-color-9c4f063) !important;
  color: var(--e-global-color-primary) !important;
}
.core-search-container .core-search button svg {
  fill: #000;
  width: 1.6rem;
  margin-right: 0.4rem;
  margin-top: -0.3rem;
}
.core-search-container .core-search button:hover {
  background: var(--e-global-color-a9b8f46) !important;
}
.core-search-container .core-search a.link__filter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
  padding: 0 2.4rem;
  text-align: center;
  color: #fff;
  margin: 0;
  border: 0.1rem solid #fff !important;
  border-radius: 0.2rem;
  height: 4.8rem;
  font-size: 1.4rem;
  line-height: 1;
  width: 100%;
  font-weight: 600;
  text-transform: uppercase;
}
.core-search-container .core-search a.link__filter svg {
  fill: #fff;
  width: 1.6rem;
}
.core-search-container .core-search a.link__filter:hover {
  color: #000;
  background: #fff !important;
  border: 1px solid #fff !important;
}
.core-search-container .core-search a.link__filter:hover svg {
  fill: #000;
}

#search-map-results {
  height: 700px;
}
#search-map-results .map-info {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1;
}
#search-map-results .btn {
  position: absolute;
  top: 10px;
  right: 60px;
}

.single-development__hero {
  width: 100%;
}
@media (min-width: 1024px) {
  .single-development__hero {
    height: calc(100vh - 14.1rem);
  }
}
.single-development__hero .single-development__inner {
  width: 100%;
  height: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.4);
  padding: 9.6rem 2.4rem 4.8rem 2.4rem;
}
.single-development__hero .single-development__inner .single-development__meta {
  gap: 2rem;
  color: #fff;
}
.single-development__hero .single-development__inner .single-development__meta h1 {
  font-size: 4rem;
  margin: 0 0 0.8rem 0;
}
.single-development__hero .single-development__inner .single-development__meta h2 {
  font-size: 1.8rem;
  font-weight: 400;
  margin: 0 0 1.6rem 0;
}
.single-development__hero .single-development__inner .single-development__meta p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.5em;
}
.single-development__hero .single-development__inner .single-development__meta p.single-development__meta-price {
  margin-bottom: 4.8rem;
  font-size: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1em;
  gap: 0.8rem;
}
.single-development__hero .single-development__inner .single-development__meta p.single-development__meta-price a {
  text-decoration: underline !important;
  color: #fff;
}
.single-development__hero .single-development__inner .single-development__meta p.single-development__meta-price svg {
  stroke: #fff;
  width: 1.8rem;
  margin-bottom: 1px;
}
@media (min-width: 1024px) {
  .single-development__hero .single-development__inner .single-development__meta h1 {
    font-size: 5.6rem;
    margin: 0 0 0.8rem 0;
  }
  .single-development__hero .single-development__inner .single-development__meta p {
    font-size: 1.8rem;
  }
}
.single-development__hero .single-development__inner .single-development__head-actions {
  gap: 1.6rem;
}
.single-development__hero .single-development__inner .single-development__head-actions .button {
  font-weight: 400;
  font-size: 1.6rem;
}

.table__drk-bg {
  background-color: var(--e-global-color-primary) !important;
  text-align: center !important;
}
.table__drk-bg a {
  color: #fff !important;
}

/*
    ATTENTION
    =========
    /blade-views/single-property.blade.php

    This is your property details page. Property
    details are made-up with partials and logic.
*/
/*
    Search Results TOC
*/
/*
    ATTENTION
    =========
    /blade-views/partials/search-results-corner-flash.blade.php

    A universal include file used across multiple
    templates.
*/
.property__corner-flash {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 1;
  border-radius: 3px;
  padding: 0.8rem 1.2rem 0.8rem 1.2rem;
  color: #ffffff;
  font-size: 1.6rem;
  background: var(--e-global-color-primary);
}
.property__corner-flash.property__corner-flash--red {
  background: var(--e-global-color-accent);
}

/*
    ATTENTION
    =========
    /blade-views/page-grid-search.blade.php

    Search results comprise of a series of partials.
    This file can be used to style all of your search
    results, or just the parent page.
*/
/*
    ATTENTION
    =========
    /blade-views/page-list-search.blade.php

    Search results comprise of a series of partials.
    This file can be used to style all of your search
    results, or just the parent page.
*/
/*
    ATTENTION
    =========
    /blade-views/components/map-leafletjs-search.blade.php

    This page is used for search results displayed on
    a LeafletJS Map. (https://leafletjs.com/)
*/
#leaflet-map-container {
  border: 1px solid #E6E6E6;
  border-radius: 3px;
}

/*
    ATTENTION
    =========
    /blade-views/components/map-properties-search.blade.php

    This page is used for search results displayed on
    a Google Map.

    Pay attention to the @include('components/map-properties-search').
    This is the component that displays your Google Map.
*/
.map_properties_no {
  font-weight: bold;
}

/*
    ATTENTION
    =========
    /blade-views/partials/pagination.blade.php

    Default pagination partial for your property
    search results.
*/
.page-item {
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 16.8px */
}
.page-item a.page-divnk {
  color: var(--e-global-color-primary);
  text-decoration: none;
}
.page-item a.page-divnk:hover {
  color: var(--e-global-color-accent);
  -webkit-box-shadow: 0 1px 0px var(--e-global-color-accent);
          box-shadow: 0 1px 0px var(--e-global-color-accent);
}

.page-item.active a.page-divnk {
  color: var(--e-global-color-accent);
  -webkit-box-shadow: 0 1px 0px var(--e-global-color-accent);
          box-shadow: 0 1px 0px var(--e-global-color-accent);
}