:root {
    font-family: 'Montserrat', sans-serif;
    --grey: rgb(109,107,108);
    --lightGrey: rgb(174, 167, 170);
    --aubergine: rgb(69,61,67);
    --lilac: rgb(138,124,138);
    --litepicker-button-prev-month-color-hover: var(--lilac) !important;
    --litepicker-button-next-month-color-hover: var(--lilac) !important;
    --litepicker-footer-box-shadow-color: var(--lightGrey) !important;
    --litepicker-day-color-hover: rgb(160, 81, 181) !important;
    --litepicker-is-today-color: rgb(100, 100, 220) !important;
    --litepicker-is-in-range-color:var(--lilac) !important;
    --litepicker-is-start-color-bg: var(--aubergine) !important;
    --litepicker-is-end-color-bg:var(--aubergine) !important;
}
::-webkit-scrollbar {
    width: 5px;
  }
::-webkit-scrollbar-track {
    box-shadow: inset 0 0 5px var(--grey);
}
::-webkit-scrollbar-thumb {
    background: var(--grey);
}
::selection {
    color: #ffffff;
    background-color: var(--lilac,rgb(138, 124, 138));
}
* {
	box-sizing: border-box;
}
body {
    margin: 0;
    padding: 0;
}
.ardluck.ardfun,
.ardole {
    display: none;
}
.warn {
    color: #000000;
    background-color: #e200ff1f;
    padding: 1em;
    border-radius: 7px;
    border: 2px solid #e200ff;
    text-align: center;
}
[id] { scroll-margin-top: 7em; }
input[type="checkbox"] {
    accent-color: var(--aubergine);
    align-self: center;
    cursor: pointer;
}
ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}
hr { width: 100%; }
.container {
    width: 100%;
    margin: auto;
    padding-left: 5rem;
    padding-right: 5rem;
}
.contMax {
    max-width: 100rem;
    margin: auto;
}
.ctr-marg {
    max-width: 90rem;
    margin: 0 auto;
    padding-left: 5rem;
    padding-right: 5rem;
}
.padtop {
    padding-top: 3rem;
}
.padbot {
    padding-bottom: 3rem;
}
.smpadtop {
    padding-top: 1.5rem;
}
.smpadbot {
    padding-bottom: 1.5rem;
}
.fdr {
    display: flex;
}
.grid { display: grid; }
.mob-show-900 {
    display: none;
}
.bgWhite { background-color: #ffffff; }
.bgLilac { background-color: var(--lilac,rgb(138, 124, 138));}
/* calendar home pg */
.cal-ctr {
    display: inline-block;
}
#dd-title-CAL input {
    border: none;
    outline: none;
    color: var(--aubergine);
    font-family: 'Montserrat', sans-serif;
    transform: scale(1.2);
    padding-left: 1em;
    background-color: transparent;
    cursor: pointer;
    width: 100%;
    z-index: 2;
    position: relative;
}
.srcRslt #dd-title-CAL input {
    padding: 0;
    text-align: center;
}
#dd-title-CAL input::placeholder {
    font-family: 'Montserrat', sans-serif;
    color: var(--aubergine);
}
.calendar header {
    display: flex;
    justify-content: center;
    align-items: center;
}
.calendar .header-display {
    display: flex;
    align-items: center;
}
.calendar .header-display p {
    color: var(--aubergine);
    margin: 5px;
    font-size: 1.2rem;
    word-spacing: .5rem;
    text-wrap: nowrap;
}
pre {
    padding: 10px;
    margin: 0;
    cursor: pointer;
    font-size: 1.2rem;
    color: var(--aubergine);
}
pre:hover {
    transform: scale(1.2);
}
.days,
.week {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    margin: auto;
    justify-content: space-between;
}
.days div:hover {
    color: white;
    background-color: rgb(138, 124, 138);
    background-color: var(--lilac);
    cursor: pointer;
}
.week { 
    color: rgb(138, 124, 138);
    color: var(--lilac);
    cursor: auto; }
.week div,
.days div {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 1.5rem;
    width: 1.5rem;
    border-radius: 100%;
}
.current-date {
    color: white;
    background-color: var(--aubergine);
}
.calGRP {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 1em;
}
.calGRP h3 { text-align: center; }
.calGRP table {
    table-layout: fixed;
}
/* feat homes */
.feat-homes .ctr-marg {
    position: relative;
}
.fh-item a { text-align: center; }
.fh-item h3 { 
    margin-bottom: 0;
    transition: .5s;
 }
.fh-item h4 { 
    margin: 0;
    color: rgb(138, 124, 138);
    color: var(--lilac);
    transition: .5s;
 }
 .fh-item > a:first-child:hover h3,
 .fh-item h4:hover {
    transform: scale(1.2);
    transition: .5s;
 }
.menu {
    background-color: rgb(109,107,108,.9);
    justify-content: space-between;
    align-items: center;
    width: 100vw;
    padding: 0 2em;
    position: fixed;
    top: 0;
    z-index: 3;
    transition: .2s;
    height: 7em;
    border-bottom: 2px solid rgb(138, 124, 138);
    border-bottom: 2px solid var(--lilac);
}
.menu-bars {
    display: none;
}
.bar1, .bar2, .bar3 {
    width: 35px;
    height: 4px;
    background-color: white;
    margin: 6px 0;
    transition: .4s;
}
.menu.on {
    background-color: rgb(145,144,144);
    height: 4rem;
    transition: 2s;
}
.logo {
    height: 70px;
    width: 300px;
    transition: 1s;
    display: flex;
    align-items: center;
}
.logo.on {
    height: 60px;
    width: 200px;
    transition: 1s;
}
.logo img {
    width: 100%;
    height: auto;
}
.navR {
    align-items: center;
}
.navR li { transition: 1s;}
.navR li:hover {
    transform-origin: center;
    transform: scale(1.2);
    -webkit-transform: (1.2);
    transition: 1s;
}
.menu li {
    list-style-type: none;
    display: inline-block;
    padding: 0 .8em;
    font-size: 1.3em;
    font-weight: 300;
}
a {
    text-decoration: none;
    color: white;
}
a.lilacLink {
    color: var(--lilac,rgb(138, 124, 138));
}
/* search icon */
.search-icon {
    display: block;
    padding-top: .5em;
    transition: 1s;
}
.search-icon.on {
    width: 30px;
    height: 30px;
    transition: 1s;
}
.search-1 { fill-rule: evenodd;}
.search-1, .search-2, .search-3 { stroke-width: 0px;}
.search-1, .search-3 { fill: white;}
.search-2, .search-4 { fill: white;}
.search-5 { clip-path: url(#clippath);}
.search-4 {
    stroke: white;
    stroke-miterlimit: 10;
}
.fire-icon, 
.woodburner-icon, 
.dog-icon, 
.car-icon {
    width: 30px;
    height: 30px;
}
.search-icon, .bed2-icon, .bath2-icon, .fire2-icon, .person-icon, .person2-icon, .cam-icon {
    width: 25px;
    height: 25px;
}
.multPrsn-icon,
.dog2-icon {
    width: 30px;
    height: 25px;
}
.bed3-icon, 
.dog3-icon,
.bath-icon,
.fire3-icon,
.car3-icon {
    width: 30px;
    height: 30px;
}
/* bath icon */
.bath0 { fill: var(--aubergine); }
.bath2-0 { fill: var(--lilac); }
.bath3-0 { fill: var(--lilac); } /* featured homes */
/* fire icon */
.fire-1 { fill: white;}
.fire-1, .fire-2 { stroke-width: 0px;}
.fire-3 { clip-path: url(#fire-clippath);}
.fire-2 { fill: white;}

.fire2-1 { fill: var(--aubergine);}
.fire2-1, .fire2-2 { stroke-width: 0px;}
.fire2-3 { clip-path: url(#fire-clippath);}
.fire2-2 { fill: var(--aubergine);}
/* woodburner icon */
.woodB-1 { fill: white; }
.woodB2-1 { fill: var(--aubergine); }
/* dog icon */
.dog-1,
.dog2-1,
.dog3-1 {
    fill-rule: evenodd;
    stroke-width: 0px;
}
.dog-1 { fill: white; }
.dog2-1 { fill: var(--lilac); }
.dog3-1 { fill: var(--aubergine); }
/* car charger icon */
  .carC-1,
  .carC3-1 {
      stroke-miterlimit: 10;
      stroke-width: 5.73px;
  }
  .carC-1,
  .carC-2 {
      fill: white;
      stroke: white;
  }
  .carC3-1,
  .carC3-2 {
      fill: var(--aubergine);
      stroke: var(--aubergine);
  }
/* bed icon */
.bed-1,
.bed2-1,
.bed3-1 {
    fill-rule: evenodd;
    stroke-width: 0px;
}
.bed-1 { fill: var(--lilac); } /* feat homes bar */
.bed2-1 { fill: var(--lilac); }
.bed3-1 { fill: var(--aubergine); }
/* person icon */
.person-1 { fill: var(--lilac); }
.person2-1 { fill: var(--aubergine); }
.person3-1 {  fill: var(--lilac); } /* feat homes bar */
/* multi person icon */
  /* Multi Person Filter Pg */
  .multiPerson-1,
  .multiPerson-2,
  .multiPerson-3 {
      fill: var(--lilac);
  }
  /* Multi Person Property Pg */
  .multiPerson2-1,
  .multiPerson2-2,
  .multiPerson2-3 {
      fill: var(--aubergine);
  }
  /* Multi Person Location Pg */
  .multiPerson3-1,
  .multiPerson3-2,
  .multiPerson3-3 {
      fill: var(--lilac);
      stroke: var(--aubergine);
      stroke-miterlimit: 10;
  }
  .multiPerson-1,
  .multiPerson2-1,
  .multiPerson3-1 { stroke-width: 9.22px; }
  .multiPerson-1,
  .multiPerson-2,
  .multiPerson-3,
  .multiPerson2-1,
  .multiPerson2-2,
  .multiPerson2-3 {
      stroke: white;
      stroke-miterlimit: 10;
  }
  .multiPerson-2,
  .multiPerson2-2,
  .multiPerson3-2 { stroke-width: 9.4px; }
  .multiPerson-3,
  .multiPerson2-3,
  .multiPerson3-3 { stroke-width: 9.84px; }
  /* arrow icon */
  .arrow-1 {
    fill: var(--aubergine);
    stroke-width: 0px;
  }
  /* camera icon */
  .cam0 {
      fill-rule: evenodd;
      clip-rule: evenodd;
      fill: var(--aubergine);
  }
  .cam1 { fill: var(--aubergine); }
/* pencil icon */
.pncl-icon { 
    width: 35px;
    height: 35px;
}
.btn {
    color: white;
    padding: .5em 1.25em;
    border-radius: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
}
.btn.aubergine {
    background-color: var(--aubergine);
}
.btn:hover {
    background-color: var(--grey);
}
.btn.lilac {
    background-color: var(--lilac);
}
.btn.hovLilac:hover,
.btn.white.hovLilac:hover {
    background-color: var(--lilac);
    border-color: white;
}
.btn.white {
    color: var(--aubergine);
    background-color: white;
    border: 2px solid var(--aubergine);
}
.btn.white:hover {
    color: white;
    background-color: var(--aubergine);
}
.btn.srch {
    width: fit-content;
    margin-left: auto;
    border: none;
    height: auto;
}
.book.block {
    cursor: not-allowed;
}
.banner {
    position: relative;
}
.banner.pages #topphoto {
    height: 70vh;
}
.banner.pages #topphoto .filter {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgb(214 183 206 / 34%);
    z-index: 1;
}
.banner.pages .header {
    position: absolute;
    top: 14rem;
}
.banner.pages .header h1 {
    color: #ffffff;
    width: 60%;
}
img {
    vertical-align: middle;
}
.banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: 100vh;  
}
#topphoto {
    height: 80vh;
    overflow: hidden;
    position: relative;
}
#topphoto > amp-img,
#topphoto > img {
    position: absolute;
}
#topphoto amp-carousel amp-img,
#topphoto img {
    height: calc(100% + 32px);
}
@-webkit-keyframes b {
    0% { opacity: 0 }
    to { opacity: 1 }
}
@keyframes b {
    0% { opacity: 0 }
    to { opacity: 1 }
}
@-webkit-keyframes g {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(3vmax, 1vmax, 0) scale(1.2);
        transform: translate3d(3vmax, 1vmax, 0) scale(1.2)
    }
    5%  { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translate3d(0, -1vmax, 0) scale(1.1);
        transform: translate3d(0, -1vmax, 0) scale(1.1)
    }
}
@keyframes g {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(3vmax, 1vmax, 0) scale(1.2);
        transform: translate3d(3vmax, 1vmax, 0) scale(1.2)
    }
    5% { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translate3d(0, -1vmax, 0) scale(1.1);
        transform: translate3d(0, -1vmax, 0) scale(1.1)
    }
}
@-webkit-keyframes h {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-2vmax, 0, 0) scale(1.2);
        transform: translate3d(-2vmax, 0, 0) scale(1.2)
    }
    5% { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translate3d(1vmax, -1vmax, 0) scale(1.1);
        transform: translate3d(1vmax, -1vmax, 0) scale(1.1)
    }
}
@keyframes h {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-2vmax, 0, 0) scale(1.2);
        transform: translate3d(-2vmax, 0, 0) scale(1.2)
    }
    5%  { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translate3d(1vmax, -1vmax, 0) scale(1.1);
        transform: translate3d(1vmax, -1vmax, 0) scale(1.1)
    }
}
@-webkit-keyframes i {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2vmax, 0) scale(1.2);
        transform: translate3d(0, 2vmax, 0) scale(1.2)
    }
    5%  { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translateY(-2vmax) scale(1.1);
        transform: translateY(-2vmax) scale(1.1)
    }
}
@keyframes i {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2vmax, 0) scale(1.2);
        transform: translate3d(0, 2vmax, 0) scale(1.2)
    }
    5% { opacity: 1 }
    33% { opacity: 1 }
    38% {
        opacity: 0;
        -webkit-transform: translateY(-2vmax) scale(1.1);
        transform: translateY(-2vmax) scale(1.1)
    }
}
.background-image {
    -webkit-animation: b .8s ease-out both;
    animation: b .8s ease-out both;
    position: absolute;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    z-index: -1;
}
.background-image img {
    opacity: 0;
    position: absolute;
    top: -1vmax;
    right: -1vmax;
    bottom: -1vmax;
    left: -1vmax;
}
.background-image img:first-child {
    -webkit-animation: 18s g linear infinite;
    animation: 18s g linear infinite;
}
.background-image img:nth-child(2) {
    -webkit-animation: 18s h linear 6s infinite;
    animation: 18s h linear 6s infinite;
}
.background-image img:nth-child(3) {
    -webkit-animation: 18s i linear 12s infinite;
    animation: 18s i linear 12s infinite;
}
.background-image img {
    object-fit: cover;
}
.ban-hdr {
    position: absolute;
    bottom: 1em;
}
.ban-hdr h5 {
    color: #ffffff;
    font-size: 2em;
    margin: 0;
}
.ban-title {
    font-size: 3em;
    color: white;
    font-weight: 600;
    margin-bottom: .25em;
}
.ban-subtitle {
    font-size: 2em;
    color:white;
    margin-top: 0;
}
.ban-filt-ctr {
    background-color: rgb(174, 167, 170, .75);
    border-radius: 10px;
    width: fit-content;   
    position: absolute;
    bottom: 1.5em;
    left: 50%;
    transform: translate(-50%);
    z-index: 2;
    padding: .7em;
}
.ban-filt-ctr .btn.close {
    display: none;
}
.dd-ctr {
    grid-template-columns: repeat(4, 1fr);
    gap: 1em;
}
.tBx-ctr {
    grid-template-columns: 1fr auto;
    gap: 1em;
}
.home .tBx-ctr > div:first-child {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.dd-title,
.dd-title-cal {
    background-color: white;
    padding: .75em 1em;
    border-radius: 10px;
    text-wrap: nowrap;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* .dd-title.long {
    font-size: .9em;
} */
.ban-filt-ctr .dd-title::after,
.ban-filt-ctr .dd-title #litepicker::after {
    background-image: url(../img/arrow.svg);
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
    position: absolute;
    right: .8em;
    transition: .3s ease-in-out;
}
.dd-items, 
.pa-dd-items {
    display: none;
}
.pa-dd-items {
    color: var(--lilac);
}
.dd-items input[type="checkbox"] {
    align-self: self-start;
    margin-top: 5px;
    flex-shrink: 0;
}
.dd-items .select, .pa-dd-items div {
    line-height: 1.5em;
    cursor: pointer;
}
.dd-items .select { 
    display: flex;
    column-gap: .25em;
    align-items: center;
}
.dd-items .select:hover { 
    color: var(--lilac); 
}
.pa-dd-items div:hover {
    color: var(--aubergine);
}
.dd-title.ddOPN,
.pa-dd-title.on, 
.pa-dd-bx.on 
{
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}
#dd-title-CAL.dd-title.ddOPN
 {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
.dd-title.ddOPN::after,
.pa-dd-title.on::after  {
    transform: rotate(180deg);
    transition: .3s ease-in-out;
}
/* #dd-title-CAL.dd-title.ddOPN::after
{
    transform: unset;
} */
.dd-items.ddOPN,
.pa-dd-items.on {
    display: block;
    position: absolute;
    background-color: white;
    width: 100%;
    padding: 1em;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
.dd-items.cal-ctr {
    border-top: 1px dotted var(--lilac);
}
.dd-bx {
    position: relative;
    width: 100%; 
    min-width: 145px;
    color: var(--aubergine,rgb(69, 61, 67));
}
.tBx-ctr {
    color: white;
    margin-top: .35em;
}
  .tBx-ctr label {
    align-items: center;
    font-size: 1.1em;
    gap: 0;
    cursor: pointer;
  }
.tBx-ctr label > div:last-child {
    text-wrap: nowrap;
}
  .tBx-ctr input, .filt-item input {
    width: 20px;
    height: 20px;
    accent-color: var(--aubergine);
  }
  .filt-panel .filt-item input {
    width: 15px;
    height: 15px;
  }
  .filt-item input {
    flex-basis: 10%;
  }
.feat-homes {
    background-color: var(--lightGrey);
    color: white;
    border-top: 5px solid var(--aubergine);
}
.feat-homes h2 {
    text-align: center;
    font-weight: 400;
}
.prop-item { 
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 500px;
}
.reviews .prop-item {
    padding: 1em;
    justify-content: flex-start;
    border-radius: 10px;
    color: #ffffff;
    box-shadow: rgb(38, 57, 77) 0px 20px 30px -10px;
}
.fh-item > a,
.location-pg .prop-item {
    width: 20em;
    display: block;
}
.newtag {
    color: white;
    background-color: var(--aubergine);
    z-index: 1;
    position: absolute;
    top: .5em;
    right: .5em;
    padding: .25em .5em;
    border-radius: 25px;
    
}
.fh-item img {
    border-radius: 10px;
    width: 100%;
    height: auto;
    object-fit: contain;
}
.fh-grp,
.prop-grp {
    justify-content: space-evenly;
    overflow-x: scroll;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scroll-snap-align: center;
    gap: .75em;
}
.categories {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1em;
}
.categories.towns {
    flex-wrap: nowrap;
    /* overflow: auto; */
    scrollbar-width: none;
}
.cat-item {
    flex-basis: 30%;
    position: relative;
    transform: scale(.85);
}
.towns .cat-item {
    display: flex;
    flex-basis: 19%;
    transform: unset;
    min-width: 200px;
}
.categories div:last-child {
    margin-bottom: 4em;
}
.cat-item h3 {
    color: white;
    background-color: rgb(138 124 138 / 80%);
    text-align: center;
    position: absolute;
    width: 100%;
    padding: 1em 0;
    margin-top: 0;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    font-weight: 500;
}
.towns .cat-item h3 {
    font-size: 2em;
    top: 0;
    bottom: 0;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    background-color: rgb(138 124 138 / 50%);
    transition: .3s ease-in-out;
    text-wrap: wrap;
    line-height: 1;
}
.towns .cat-item h3:hover {
    background-color: unset;
    transition: .3s ease-in-out;
}
.cat-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 10px;
    aspect-ratio: 1 / 1;
}
.portfolio {
    color: var(--aubergine);
    text-align: center;
    border-top: 2px solid var(--aubergine);
}
.portfolio h3 {
    font-weight: 400;
}
.pfl-grp {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.pfl-item {
    flex-basis: calc(32% - 20px);
    position: relative;
    padding: 5px;
    border: 4px solid var(--lilac);
    border-radius: 15px;
    width: fit-content;
    transform: scale(.85);
    max-width: 400px;
}
.pfl-item .case {
    contain: content;
}
.pfl-item h3 {
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    color: white;
    font-weight: 300;
    width: 100%;
    background-color: rgb(138,124,138,.8);
    margin: 0;
    padding: 1em .5em;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.pfl-item img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    object-fit: cover;
}
.gst-rvws {
    background-color: var(--aubergine);
    color: white;
    text-align: center;
}
.gst-rvws .ctr-marg {
    position: relative;
}
.gst-rvws h2 {
    margin-top: 0;
}
.gst-rvws .arrow {
    display: none;
}
.rvw-grp {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.rvw-item {
    flex-basis: 33%;
    display: grid;
    grid-template-rows: auto 10%;
}
.rvw-grp > div:first-child, .rvw-grp > div:nth-child(2) {
    border-right: 2px solid var(--lilac);
    padding-right: 1em;
}
.rvw-grp > div:nth-child(2), .rvw-grp > div:nth-child(3) {
    padding-left: 1em;
}
.rvw-item > div:first-child {
    padding: 1em;
    display: flex;
    align-items: center;
}
footer {
    background-color: var(--lilac);
    color: white;
    padding: 2em 0;
    display: flex;
    font-weight: 500;
}
footer .content {
    word-wrap: break-word;
    justify-content: center;
}
.footR {
    padding-left: 2em;
}
.footR-grp {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;
    max-width: 1500px;
}
.footList {
    line-height: 1.5;
}
.footList a:hover, .terms a:hover {
    color: var(--aubergine);
}
.footL {
    border-right: 2px solid white;
    padding-right: 2em;
    min-width: 18em;
}
.terms {
    display: flex;
    justify-content: end;
    padding: 4em 2em 0 2em;
}
.terms div:first-child {
    padding-right: 2em;
}
#footer-bar {
    color: white;
    background-color: var(--aubergine);
    padding-top: 1em;
    padding-bottom: 1em;
}
#footer-bar p {
    margin: 0;
}
/* filter page */
.banner.lhh {
    height: 60vh;
    overflow: hidden;
}
.filt-panel {
    background-color: var(--lightGrey);
    color: white;
    width: 100%;
	min-width: fit-content;
    padding-top: 3rem;
}
.filt-cntr {
    position: sticky;
    top: 64px;
    overflow-y: scroll;
    padding: 2em 2em 6em;
    scrollbar-width: none;
    height: 100vh;
}
.filt-arw {
    display: none;
}
.filt-cntr .select {
    padding-bottom: 1em;
    border-bottom: 2px solid white;
}
.filt-cntr .select.town,
.filt-cntr .select.allTowns {
    padding-bottom: 0;
}
.filt-panel .select b {
    font-size: 1.5em;
}
.filt-item {
    max-width: 350px;
}
.flt-bx h4 {
    margin-bottom: .25em;
}
.filt-cntr .btn { 
    margin-top: 1em; 
    border: none;
    width: 100%;
}
.filt-item label {
    line-height: 2em;
    display: flex;
    align-items: center;
    font-size: 1.1em;
    cursor: pointer;
}
.town div,
.allTowns div {
    line-height: 1.1;
}
.filt-panel .town div,
.filt-panel .allTowns div {
    font-size: .9em;
}
/* filter slider */
.slide-cntr { max-width: 350px;}
.slide-cntr,
.slide-cntr .slider {
    width: 100%;
}
.slide-cntr > div {
    margin: 1em 0 .25em;
}
.slide-cntr span {
    color: var(--aubergine);
    font-weight: 600;
}
/*********** Baseline, reset styles ***********/
input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    cursor: pointer;
    width: 25rem;
}

/* Removes default focus */
input[type="range"]:focus {
    outline: none;
}
/******** Chrome, Safari, Opera and Edge Chromium styles ********/
/* slider track */
input[type="range"]::-webkit-slider-runnable-track {
    background-color: #ffffff;
    border-radius: 0.5rem;
    height: 0.5rem;
}
/* slider thumb */
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    /* Override default look */
    appearance: none;
    margin-top: -4px;
    /* Centers thumb on the track */
    background-color: var(--aubergine);
    border-radius: 0.5rem;
    height: 1rem;
    width: 1rem;
}
input[type="range"]:focus::-webkit-slider-thumb {
    outline: 3px solid var(--aubergine);
    outline-offset: 0.125rem;
}
/*********** Firefox styles ***********/
/* slider track */
input[type="range"]::-moz-range-track {
    background-color: #ffffff;
    border-radius: 0.5rem;
    height: 0.5rem;
}
/* slider thumb */
input[type="range"]::-moz-range-thumb {
    background-color: var(--aubergine);
    border: none;
    /*Removes extra border that FF applies*/
    border-radius: 0.5rem;
    height: 1rem;
    width: 1rem;
}
input[type="range"]:focus::-moz-range-thumb {
    outline: 3px solid var(--aubergine);
    outline-offset: 0.125rem;
}
/* filter dropdown */
.filt-item select {
    width: 100%;
    padding: .75em 1em;
    font-size: 1em;
    border-radius: 10px;
    color: var(--lilac);
    border: none;
    cursor: pointer;
}
.filt-item select:focus {
    outline: none;
}
.filt-item select option {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
.filt-item #litepicker {
    color: var(--lilac,rgb(138, 124, 138));
    background-color: #fff;
    padding: .75em 1em;
    border-radius: 10px;
    width: 100%;
    height: 100%;
    border: none;
    font-family: 'Montserrat',sans-serif;
    font-size: 1em;
}
.properties {
    flex-wrap: wrap;
    column-gap: 1em;
    row-gap: 3.5em;
    /* justify-content: space-evenly; */
    width: 100%;
}
.properties.prop-grp{
    flex-wrap: nowrap;
    gap: 3em;
}
.location-pg .ctr-marg {
    position: relative;
    /* margin: 0 2em; */
}
.prop-item {
    width: calc(95% / 4);
}
.srchPg .prop-item {
    width: calc(95% / 4);
}
.prop-item > div:last-child {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.icon-info > div {
    display: flex;
    flex-direction: row;
    justify-content: end;
}
.icon-info > div div:first-child {
    align-self: end;
	margin-right: 1em;
}
.prop-item img {
    border-radius: 10px;
    height: auto;
    width: 100%;
    scroll-snap-align: start;
}
.icon-info .icon {
    margin-left: .3em;
}
.icon-info .icon.person-icon {
    margin-left: -.5em;
} 
.icon-info {
    color: var(--lilac);
    font-size: .9em;
    min-height: 100px;
}
.prop-item .price {
    align-self: end;
    color: var(--aubergine);
    font-size: 1.1em;
    font-weight: 600;
}

.prop-title {
    font-size: 1.5em;
    font-weight: 600;
    color: var(--aubergine);
    margin: 0;
    text-wrap: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.prop-subtitle {
    font-size: 1.1em;
    color: var(--aubergine);
    text-wrap: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
/* property listing */
.propertyListing {
    justify-content: center;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 3em;
    /* max-width: 1400px; */
}
.banner.propListing {
    height: 60vh;
}
.propertyListing .left .crsl {
    border: 4px solid var(--lilac);
    border-radius: 15px;
    padding: 3px;
    position: relative;
    max-width: 50rem;
}
.propertyListing .left .crsl img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    object-fit: cover;
    flex-shrink: 0;
    aspect-ratio: 3/2;
}
.kf-icon-info {
    margin: 1.5em 0;
}
.kf-icon-info > div {
    color: var(--aubergine);
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: 2em;
    align-items: center;
}
.kf-icon-info > div > div {
    display: flex;
    flex-direction: row;
}
.config { 
	display: grid;
	grid-auto-flow: column;
	overflow-x: auto;
    max-width: 800px;
    /* width: 80vw; */
    width: 100%;
    padding-bottom: .5em;
    margin: 0 auto;
    scrollbar-color: var(--lilac,rgb(138, 124, 138)) transparent;
    scrollbar-width: thin;
    /* smooth scrolling on iOS */
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x; 
    background-color: rgb(174 167 170 / 20%);
    padding: .5em .25em;
    border-radius: 5px;
}
.config > div { 
	flex-direction: column;
	align-items: center;
    justify-content: center;
	border-right: 2px solid rgb(138, 124, 138);
	border-right: 2px solid var(--lilac);
	padding: 0 1em;
}	
.config > div:last-child { border-right: none; }
.config img { width: 4em; }
.config p { 
	margin: 0; 
	font-size: .9em;
	text-align: center;
    line-height: 1;
    text-wrap: nowrap;
}
.propertyListing .details > h3:first-child {
    color: var(--lilac);
    font-size: 1.3em;
    font-weight: 600;
    margin: 1em 0;
}
.propertyListing .details > div:nth-child(2) {
    column-count: 2;
    column-gap: 1em;
}
.propertyListing .details>div:nth-child(2) > p {
    margin: 0 0 1em;
}
.propertyListing .summary {
    color: var(--aubergine);
}
.propertyListing .availCntr {
    position: sticky;
    top: 70px;
    margin-bottom: 2.5em;
}
.propertyListing .price {
    flex-direction: column;
    gap: .5em;
}
.propertyListing .avail {
    background-color: var(--lilac);
    border-radius: 10px;
    color: white;
    padding: 1.5em; 
    flex-direction: column;
    gap: 1em;
    border: 5px solid white;
}
.propertyListing .avail h3 {
    text-align: center;
    font-weight: 400;
    font-size: 1.4em;
    margin: 0;
}
.avail .price > div:last-child { justify-content: end; }
.avail .price .pwp { 
    align-items: baseline; 
    flex-wrap: wrap;
}
.avail .price .pwp > div:first-child {
    font-size: 2em;
    font-weight: 600;
}
.feat-home .btn-grp {
    margin-top: .75em;
    justify-content: space-between;
    column-gap: .5em;
}
.lEPC {
    font-size: .8em;
    font-style: italic;
}
.pa-dd-ctr {
    justify-content: space-between;
    gap: 1em;
}
.pa-dd-bx {
    position: relative;
    background-color: white;
    border-radius: 10px;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    cursor: pointer;
}
.pa-dd-bx.dates > div:first-child {
    border-right: 1px dotted var(--lilac);
}
.pa-dd-title {
    color: var(--lilac);
    background-color: white;
    padding: .5em 1em;
    border-radius: 10px;
    width: 9em;
}
.pa-dd-bx.dates::after {
    background-image: url(../img/arrow.svg);
    content: '';
    background-repeat: no-repeat;
    background-size: contain;
    width: 15px;
    height: 14px;
    position: absolute;
    right: .8em;
    transition: .3s ease-in-out;
}
.key-feat {
    color: var(--aubergine);
    border-left: 3px solid var(--lilac);
    padding: 0 1.5em;
}
.key-feat > div:last-child {
    line-height: 1.8em;
    font-size: .8em;
}
.loc h4 {
    color: var(--lilac);
    font-size: 1.5em;
}
#rmText p:first-child {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    transition: .3s;
}
#rmText :not(:first-child) { 
    display: none;
}
#rmText.expnd p:first-child,
#rmText.expnd p:not(:first-child) { 
    display: block;
}
#rmToggle { 
    color: var(--lilac);
    font-style: italic;
}
/* location pg */
.town.banner {
    padding: 9rem 2rem 3rem;
    justify-content: center;
    align-items: center;
}
@keyframes slideL {
    0% { 
        transform: translateX(-30vw);  
        animation-timing-function: ease-in-out;
    }
	100% { transform: scale(1) translateX(0);}
}
@keyframes slideR {
    0% { 
        transform: translateX(30vw);  
        animation-timing-function: ease-in-out;
    }
	100% { transform: scale(1) translateX(0);}
}
.town .feat-home {
    color: var(--aubergine);
    background-color: white;
    border-radius: 10px;
    padding: 1em 2.5em;
    margin: -7em;
    z-index: 1;
    filter: drop-shadow(2px 4px 6px var(--aubergine));
    animation: slideL 1.2s;
    max-width: 450px;
}
.feat-home h1 {
    margin: 0;
    text-wrap: wrap;
}
.feat-home span {
    font-weight: 300;
    font-size: .8em;
    line-height: .7;
}
.feat-home .img-cntr {
    overflow: hidden;
    height: 15em;
}
.town .ban-img {
    height: 30em;
    animation: slideR 1.2s;
}
.town .ban-img.stretch {
    width: 100%;
}
.town .feat-home img,
.town .ban-img img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.loc .fdr {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1em;
}
.loc .btn.lilac {
    font-size: 1.2em;
    line-height: 1;
    padding: .7em 1em;
}
.location-pg h2 {
    margin: 0;
}
.loc-img h5,
.loc-img p {
    color: var(--aubergine);
}
.loc-img div {
    position: relative;
    z-index: -1;
}
.loc-img img {
    border-radius: 10px;
    width: 100%;
}
.loc-img h5 {
    position: absolute;
    bottom: 1em;
    left: 1em;
    color: white;
    font-size: 2em;
    margin: 0;
}
.location-pg {
    background-color: var(--aubergine);
    border-radius: 10px;
    /* margin: 0 1em; */
    max-width: 95vw;
    margin-top: 2rem;
}
.location-pg h2 {
    color: white;
    font-size: 2em;
}
.location-pg .prop-title {
    color: white;
}
.location-pg .price {
    color: white;
}
.location-pg .properties {
    margin: 0;
}
.location-pg .prop-item {
    min-width: 250px;
}
.about-loc,
.about-loc a {
    color: var(--aubergine);
}
.about-loc .left {
    flex-basis: 25%;
    padding-right: 3em;
    border-right: 3px solid var(--lilac);
}
.about-loc .right {
    /* flex-basis: 70%; */
    padding-left: 3em;
}
.loc-btn {
    position: relative;
    width: 10em;
    padding-left: 2.5em;
    margin: 1em 0 1.5em 0;
    font-weight: 600;
}
.loc-btn::before {
    background-image: url(../img/location.svg);
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    width: 25px;
    height: 25px;
    position: absolute;
    left: .8em;
}
.about-loc .title {
    font-size: 2.5em;
    font-weight: 600;
}
.about-loc .subtitle {
    font-size: 1.1em;
    /* line-height: 2.5; */
    padding: 1em 0;
}
.ttd-loc {
    color: var(--aubergine,rgb(69, 61, 67));
    margin-bottom: 3em;
    gap: 2rem 4rem;
}
.ttd-loc a {
    color: var(--aubergine,rgb(69, 61, 67));
}
.ttd-loc .left {
    flex-basis: 30%;
}
.ttd-loc.swap .left {
    order: 2;
}
.ttd-loc .right {
    flex-basis: 65%;
}
.ttd-loc img {
    width: 100%;
}
.ttd-loc .title {
    font-size: 2em;
    font-weight: 400;
    margin: 0 0 .5em;
}
/* prices popup */
#pop-Price,
#pop-Cal {
    display: none;
}
#pop-Price.show,
#pop-Cal.show {
    display: block;
    border-radius: 10px;
    scrollbar-width: none;
}
.lightbox-inner {
    color: var(--aubergine);
    background-color: white;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: 100vh;
    width: 100vw;
    max-height: 680px;
    max-width: 1000px;
    padding: 20px;
    overflow-y: auto;
    z-index: 3;
}
.li-close.u-pull-right {
    width: 24px;
    height: 24px;
    cursor: pointer;
    float: right;
    position: sticky;
    top: 0;
    background-color: white;
    border-radius: 50%;
    z-index: 4;
}
body.fade::after{
    content:"";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
    bottom: 0;
	width: 100%;
    height: 100%;
	min-height: 100%;
	background-color: rgba(69, 61, 67, 0.8);
    z-index: 1;
}
.mobile-tip {
    display: none;
}
.sidescroll {
    overflow-x: auto;
}
.lightbox-inner table {
    width: 100%;
}
th,
td {
    padding: 12px 15px;
    text-align: left;
   border-bottom: 1px solid #E1E1E1; 
}
#pop-Price .lightbox-inner tr td:first-of-type {
    min-width: 140px;
}
.lightbox-inner tr td {
    min-width: 80px;
}
.box {
    font-weight: bold;
}
.lightbox-inner a {
    color: var(--lilac);
}
/* popup cal */
.weekend4 {
    background-color: var(--lilac);
    font-weight: bold;
}
.calHDR {
    position: sticky;
    top: -21px;
    background-color: white;
    padding: .75em 0;
}
.calHDR span { 
    display: flex;
    align-items: center;
}
.calHDR h3 { margin-bottom: 0; }
.calHDR h4 { 
    display: flex;
    font-size: 2em;
    margin: 0;
 }
.calHDR p {
    padding-left: .5em;
    font-size: 1.1em;
 }
#pop-Cal .date div {
    color: white;
    cursor: pointer;
}
/* #pop-Cal .date div:hover {
    transform: scale(2);
    color: rgb(213, 151, 225);
} */
 #pop-Cal .apply {
    background-color: white;
    position: sticky;
    bottom: -20px;
    padding: .75em 0;
 }
 #pop-Cal .apply .btn {
    width: fit-content;
    margin-left: auto;
 }
.bkd {
    background-color: #eae9e8;
    font-weight: 100;
    text-decoration: line-through;
}
/* don't miss/featured activities */
.feat-act {
    margin-bottom: 3em;
}
.feat-act > div:first-child,
.feat-ac > .wideblock {
    /* background-color: var(--lightGrey); */
    color: var(--aubergine);
    /* border-radius: 10px; */
    /* padding: 2.5rem; */
}
.feat-act .bgCont {
    background-color: var(--lightGrey);
    border-radius: 10px;
    padding: 2.5rem;
}
.feat-act .title {
    font-size: 2em;
    /* margin: 0 0 1em 3em; */
    margin-bottom: .5em;
}
.feat-act-grp {
    justify-content: space-evenly;
}
.feat-act-item {
    color: var(--aubergine,rgb(69, 61, 67));
    background-color: white;
    border-radius: 10px;
    flex-basis: 25%;
    padding: 1.5em;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.fa-title {
    font-size: 1.3em;
    /* padding: 0 0 1em 0; */
    font-weight: 500;
    margin-top: 0;
}
.feat-act-item img {
    width: 100%;
    border-radius: 10px;
}
/* carousel */
.crsl {
    position: relative;
}
.crsl-vp {
    display: flex;
    overflow-x: scroll;
    overflow-y: hidden;
    position: relative;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    border-radius: 10px;
}
.slide {
    display: none;
}
.slide.active {
    display: flex;
}
.arrow {
    width: 30px;
    height: 30px;
    background-color: rgb(225, 225, 225);
    opacity: .8;
    border-radius: 50%;
    padding: .5em;
    top: 50%;
    left: 50%;
    transform: translate(-50%);
    line-height: 1.5;
    position: absolute;
    z-index: 1;
    cursor: pointer;
}
.arrow:hover {
    opacity: 1;
}
.prev {
    transform: rotate(90deg);
    position: absolute;
    z-index: 1;
    left: 4em;
}
.next {
    transform: rotate(-90deg);
    left: unset;
    right: 4em;
}
.crsl ul {
    width:100%;
    position: absolute;
    text-align: center;
    bottom: 1em;
    margin: 0;
    padding: 0;
}
.crsl .dots li {
    background: white;
    border: 2px solid white;
    border-radius: 50%;
    display: inline-block;
    width:20px;
    height:20px;
    cursor: pointer;
    display: inline-block;
}
.crsl .dots li.on {
    background: var(--aubergine);
    border: 2px solid white;
} 
.dots {
    opacity: .7;
}
.dots:hover {
    opacity: 1;
}
.pic-count {
    position: absolute;
    bottom: 1em;
    right: 1em;
    color: var(--aubergine);
    background-color: white;
    padding: .5em;
    border-radius: 10px;
    align-items: center;
    cursor: pointer;
    gap: .5em;
    border: none;
}
/* search results pg */
section.srcRslt { 
    position: sticky;
    top: 64px;
    z-index: 2;
    background-color: rgb(255 255 255 / .9);
    backdrop-filter: blur(5px);
    padding: 0;
    background-color: var(--lightGrey, rgb(174, 167, 170));
}
section.srcRslt h1 {
    font-size: 3em;
    color: var(--lightGrey);
}
.sr-filt-ctr {
    width: 100%;
}
.sr-filt-ctr .fdr { 
    justify-content: center;
    align-items: center; 
    gap: 1em;
    background-color: var(--lightGrey, rgb(174, 167, 170));
}
.sr-filt-ctr .dd-title {
    color: rgb(69, 61, 67);
    color: var(--aubergine);
    background-color: rgb(174, 167, 170);
    background-color: var(--lightGrey);
    text-align: center;
}
.srcRslt .tBx-ctr { 
    color: var(--aubergine,rgb(69, 61, 67)); 
    align-items: center;
    padding: .5rem 0;
    margin: 0 auto;
}
.srcRslt .dd-items.ddOPN {
    color: var(--aubergine,rgb(69, 61, 67));
    background-color: #fff;
    border: 1px solid var(--lightGrey,rgb(174, 167, 170));
    border-top: none;
    z-index: 1;
}
.moreTopics {
    position: sticky;
    top: 6rem;
}
.moreTopics .toggleTopics {
    color: var(--aubergine,rgb(69, 61, 67));
    padding: 1em 0;
    font-size: 1.3em;
    font-weight: 500;
}
.faqLinks {
    display: grid;
    row-gap: 1.2em;
    transition: .8s;
}
.faqLinks a {
    display: inline-block;
    transition: transform .8s;
}
.faqLinks a:hover {
    color: var(--lilac,rgb(138, 124, 138));
    transform: scaleX(1.2) translateX(5%);
    transform-origin: left;
    transition: .8s;
}
.faqLayout .right,
.contact .right {
    max-width: 1000px;
}
.contact.about-loc {
    justify-content: center;
}
.answerList {
    display: grid;
    row-gap: .5em;
    max-width: 1000px;
}
.faqBox {
    border: 4px solid var(--lilac,rgb(138, 124, 138));
    border-radius: 15px;
}
.faqBox.open p {
    word-break: break-word;
}
.faqBox h4 {
    color: #fff;
    background-color: var(--lilac,rgb(138, 124, 138));
    cursor: pointer;
    padding: 1em;
    margin: 0;
    display: flex;
    justify-content: space-between;
    transition: .8s ease-in-out;
    column-gap: .5em;
}
.faqBox h4::after {
    content: "";
    background-image: url("../img/arrow_wt.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: block;
    width: 20px;
    height: 20px;
    transition: .3s ease-in-out;
    flex-shrink: 0;
}
.faqBox.open h4::after {
    transform: rotate(-90deg);
    transition: .3s ease-in-out;
}
.moreFAQ {
    padding: .5em 1em;
    display: none;
}
.contact-form {
    display: grid;
    row-gap: 1em;
    border: none;
}
.contact-form .btn {
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    border: none;
    width: fit-content;
    margin-left: auto;
}
.contact-form label {
    color: var(--aubergine, rgb(69, 61, 67));
    font-weight: 600;
}
.contact-form select {
    font-family: 'Montserrat', sans-serif;
    border-radius: 10px;
    padding: .5em;
    outline: none;
    color: var(--aubergine, rgb(69, 61, 67));
    border: 1px solid var(--aubergine, rgb(69, 61, 67));
    min-width: 100%;
}
.contact-form textarea, 
.contact-form input {
    padding: .5em;
    border-radius: 10px;
    outline: none;
    color: var(--aubergine, rgb(69, 61, 67));
    border: 1px solid var(--aubergine, rgb(69, 61, 67));
    font-family: 'Montserrat', sans-serif;
    width: 100%;
}
.contact-form .fdr {
    gap: 1em;
}
.contact-form .fdr > div {
    width: 100%;
    display: grid;
    row-gap: 1em;
}
.toggleFilt.edit > div,
.toggleFilt.close {
    cursor: pointer;
}
.toggleFilt .editIcon {
    width: fit-content;
}
.toggleFilt.close,
.toggleFilt .editIcon {
    display: flex;
    column-gap: .5em;
}
.toggleFilt .editIcon::before,
.toggleFilt.close.x::before {
    content: "";
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: block;
    width: 20px;
    height: 20px;
}
.toggleFilt .editIcon::before {
    background-image: url(../img/pencil.svg);
}
.toggleFilt.close.x::before {
    background-image: url(../img/x-square.svg);
}
.modal {
    left: -1000%;
    position: fixed;
}
.modal.open {
    top: 0;
    left: 0;
    bottom: 0;
    width: fit-content;
    z-index: 3;
}
.modal .filt-panel {
    background-color: rgba(126, 112, 122, 0.8);
    backdrop-filter: blur(12px);
}
.lhh-cnt .filt-cntr .toggleFilt.x { display: none; }
.modal .toggleFilt { 
    display: flex; 
    margin-top: 1em;
}
.modal .toggleFilt.x {
    justify-content: flex-end;
}
.lhh-cnt .right {
    padding-left: 2rem;
    padding-right: 2rem;
}
.litepicker .container__days .day-item.is-locked {
    text-decoration: line-through;
}
.twoCol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
}
/* booking form */
.termScrollCont {
    position: sticky;
    top: 6rem;
}
.termScroll {
    max-height: 70vh;
}
.tooltip {
    position: relative;
    display: inline-block;
}
.tooltip .tooltipText {
    visibility: hidden;
    width: 120px;
    background-color: var(--aubergine,rgb(69, 61, 67));
    color: #fff;
    text-align: center;
    padding: 5px;
    border-radius: 6px;
    position: absolute;
    z-index: 1;
    width: 120px;
    bottom: 100%;
    left: 50%;
    margin-left: -60px; /* Use half of the width (120/2 = 60), to center the tooltip */
    font-size: .8em;
    line-height: 1.1;
}
.tooltip:hover .tooltipText {
    visibility: visible; 
}
.tooltip .tooltipText::after {
    content: " ";
    position: absolute;
    top: 100%;
    /* At the bottom of the tooltip */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: var(--aubergine, rgb(69, 61, 67)) transparent transparent transparent; 
}
.formCont {
    color: var(--aubergine, rgb(69, 61, 67));
    background-color: #ffffff;
    border-radius: 15px;
}
.formCont > .padding-small {
    padding: 2rem;
    border: 4px solid var(--lilac, rgb(138, 124, 138));
    border-radius: 13px;
    margin: .25em;
}
.map {
    display: none;
}
.map.show {
    display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80vw;
    height: 70vh;
    z-index: 2;
}
.map iframe {
    width: 100%;
    height: 100%;
    border-radius: 10px;
}
.map-close {
    cursor: pointer;
    position: absolute;
    z-index: 999;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0 3em;
    top: .75em;
    width: fit-content;
    max-width: 100vw;
}
.map-close h1 {
    text-align: center;
    padding: 10px;
    display: inline-block;
    width: 100%;
    color: #FFF;
    margin: 0;
}
.gridrow {
    display: grid;
    gap: 1em;
    position: relative;
}
.gridrow.twogrid {
    grid-template-columns: repeat(2, 1fr);
}
.gridrow.threegrid {
    grid-template-columns: repeat(3, 1fr);
}
.gridrow.fourgrid {
    grid-template-columns: repeat(4, 1fr);
}
.blkStyle .col-ctrl {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 2rem;
}
.blkStyle.swap .col-ctrl {
    grid-template-columns: 3fr 2fr;
}
.colTwoThird {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
}
@keyframes sponsorSlide {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}
.sponsorsCont {
    overflow: hidden;
    padding-top: .75em;
    display: flex;
    position: relative;
    white-space: nowrap;
    column-gap: 8rem;
}
.sponsorsList {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: fit-content;
    margin: 0 auto;
    animation: 25s sponsorSlide infinite linear;
}
.sponsor {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    min-width: 200px;
    /* display: inline-block; */
}
.sponsorsCont:hover .sponsorsList {
    animation-play-state: paused;
}
.vid-container,
#video-area {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
}
.vid-container:before,
#video-area:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    outline: 4px solid #fff;
    outline-offset: -2px;
    pointer-events: none;
}
.vid-container iframe,
#video-area iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.infoWindow {
    max-width: 220px;
}
.infoWindow b,
.infoWindow b a {
    color: var(--aubergine,rgb(69, 61, 67));
    font-size: 1.25em;
}
.infoWindow img {
    width: 100%;
    aspect-ratio: 3/2 ;
    object-fit: cover;
}
.push-up {
    position: relative;
    top: -20px;
}



/* ------------------------------------------------------ 
    MEDIA QUERIES 
 ------------------------------------------------------ */
 @media only screen and (min-width:651px) {
    .btn.aubergine.toggleFilt {
        display: none;
    }
 }
 @media only screen and (min-width:600px) {
    .faqBox h4 span {
        transition: .8s ease-in-out;
    }

    .faqBox h4:hover span {
        transform: scaleX(1.1) translateX(2%);
        transform-origin: left;
        transition: .8s ease-in-out;
    }
 }
 @media only screen and (min-width:768px) {
    .three.columns { width: 22%; }
    .four.columns { width: 30.6666666667%; }
    .six.columns { width: 48%; }
 }
@media only screen and (max-width:1650px) {
    /* .town.banner { justify-content: end;} */
}
@media only screen and (max-width:1500px) {
    .town .feat-home {
        margin-right: -15em;
    }
    .town.banner {
        justify-content: space-evenly;
    }
}
@media only screen and (max-width:1425px) {
    .prop-item {
        width: calc(95% / 3);
    }

    /* .srchPg .prop-item {
        width: calc(95% / 4);
    } */
}

@media only screen and (max-width:1400px) {
    .fh-item > a {
        width: 18em;
    }
    .feat-act-item {
        flex-basis: 30%;
    }
    /* .feat-act .title {
        margin-left: 1em;
    } */
    .gridrow.fourgrid {
        grid-template-columns: 1fr 1fr;
    }
}
@media only screen and (max-width:1350px) {
    .town .feat-home {
        margin-right: -23em;
    }
}
@media only screen and (max-width:1300px) {
    .fh-item > a,
    .location-pg .prop-item  {
        width: 16em;
    }
    .footR-grp { grid-template-columns: 1fr 1fr;}
    .config {
        max-width: 650px;
    }
}
@media only screen and (max-width:1285px) {
    .logo {
        width: 200px;
    }
    .menu li {
        font-size: 1.1em;
    }
    .search-icon {
        width: 25px;
        height: 25px;
        display: block;
    }
}
@media only screen and (max-width:1220px) {
    .town .feat-home {
        margin-right: -26.5em;
    }
}
@media only screen and (max-width:1200px) {
    .config {
        max-width: 500px;   
    }
}

@media only screen and (max-width:1175px) {
    .town .feat-home {
        margin-right: unset;
        position: absolute;
        left: 11em;
    }
    .footR-grp { grid-template-columns: 1fr;}
}
@media only screen and (max-width:1150px) {
    .srchPg .prop-item {
        width: calc(95% / 3);
    }
}
@media only screen and (max-width:1100px) {
    .menu {
        align-items: start;
        padding: 0 0 0 2rem;
        height: 70px;
        align-items: center;
    }
    .menu-bars {
        display: block;
        padding-right: 2rem;
        float: right;
        cursor: pointer;
    }
    .open .menu-bars {
        padding-top: 1rem;
    }
    .change .bar1 {
        transform: rotate(-45deg) translate(-9px, 6px);
    }
    .change .bar2 {
        opacity: 0;
    }
    .change .bar3 {
        transform: rotate(45deg) translate(-8px, -6px);
    }
    .navR {
        display: none;
        transition: .5s;
    }
    .navAct {
        display: block;
        padding-top: 2.5em;
        height: 100vh;
        background-color: var(--aubergine);
    }
    .navAct ul {
        display: flex;
        flex-direction: column;
        padding: 0;
        margin: 2em;
    }
    .menu li {
        padding: .5em 2em .5em 0;
    }
    .navR li:hover {
        transform-origin: left center;
        transform: scale(1.2);
        -webkit-transform: (1.2);
        transition: 1s;
    }
    .search-icon {
        padding-top: 0;
    }
    .menu.open {
        height: 70px;
    }
    .location-pg .prop-item  {
        width: 14em;
    }
    .mob-menu {
        position: fixed;
        right: 0;
    }
    .open .mob-menu {
        top: 0;
        bottom: 0;
    }
    #pop-Price.show, 
    #pop-Cal.show {
        border-radius: 0;
        max-height: unset;
        max-width: unset;
    }
}
@media only screen and (max-width:1100px) {
    .feat-act-grp {
        flex-direction: column;
    }
    /* .feat-act .title {
        margin-left: 3rem;
    } */
    /* .feat-act-item {
        margin: .5em 3rem;
    } */
    .prop-item {
        width: calc(95% / 2);
    }
}
/* @media only screen and (max-width:1040px) {
    .prop-item {
        width: calc(85% / 2);
    }
} */
@media only screen and (max-width:1000px) {
    .ctr-marg {
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .location-pg .prop-item  {
        width: 12em;
    }
    .faqLayout {
        flex-direction: column;
    }
    .faqLayout .left {
        border-right: none;
        padding-right: 0;
        flex-basis: 100%;
        position: sticky;
        top: 4.25rem;
        height: 100%;
        border-radius: 15px;
        color: #fff;
        background-color: var(--aubergine, rgb(69, 61, 67));
        z-index: 1;
    }
    .faqLayout .left.on {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .faqLayout .right {
        padding-left: 0;
        flex-basis: 100%;
    }
    .moreTopics {
        position: relative;
        top: 0;
    }
    .moreTopics .toggleTopics {
        display: flex;
        column-gap: .5em;
        cursor: pointer;
        color: #fff;
        padding: .5em 1em;
        justify-content: space-between;
        align-items: center;
    }
    .moreTopics .toggleTopics::after {
        content: "";
        background-image: url("../img/arrow_wt.svg");
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        display: block;
        width: 20px;
        height: 20px;
        transition: .3s ease-in-out;
        flex-shrink: 0;
    }
    .on .moreTopics .toggleTopics::after {
        transform: rotate(-90deg);
        transition: .3s ease-in-out;
    }
    .faqLinks {
        display: none;
        width: 100%;
        position: absolute;
        top: 3em;
        background-color: rgb(69, 61, 67,.9);
        padding: 1em;
        border-bottom-right-radius: 15px;
        border-bottom-left-radius: 15px;
    }
    .faqLinks li {
        padding-bottom: .5em;
    }
    .faqLinks a {
        color: #fff;
    }
    .blkStyle .col-ctrl,
    .blkStyle.swap .col-ctrl {
        grid-template-columns: 1fr;
    }
    .ttd-loc.swap .left { order: unset; }
}
@media only screen and (max-width:950px) {
    /* .litepicker, */
    .home~.litepicker {
        position: fixed !important;
        top: unset !important;
        left: unset !important;
        right: 1em !important;
        bottom: 7em !important;
    }
    .location-pg .prop-item  {
        width: 11em;
    }
    .dtHide { 
        display: flex;
        flex-direction: column; 
        gap: .75em;
    }
    /* .mobHide { display: none; } */
    .propertyListing { grid-template-columns: 1fr;}
    .propertyListing .availCntr {
        position: fixed;
        top: unset;
        bottom: 0;
        left: 0;
        right: 0;
        margin-bottom: 0;
        z-index: 2;
    }
    .propertyListing .avail { 
        border-radius: 0; 
        padding: .75em 1.5em;
        border: none;
        border-top: 1px solid white;
    }
    .propertyListing .avail h3 { display: none;}
    .propertyListing .price { 
        flex-direction: row; 
        justify-content: space-between;
        align-items: center;
        line-height: 1;
    }
    .propertyListing .pa-dd-ctr,
    .propertyListing .btn-grp { height: fit-content; }
    .key-feat { 
        border: none;
        padding: 0;
    }
    .loc-img {
        display: grid;
        grid-template-columns: 65% 1fr;
        gap: 1em;
    }
    .loc-img p, .loc h4 { margin: 0;}
    .propertyListing .left > div:first-child {
        grid-template-columns: 1fr auto;
        gap: 1em;
    }
    .about-loc.contact {
        flex-direction: column-reverse;
    }
    .about-loc.contact .left {
        flex-basis: 100%;
        padding-right: 0;
        border-right: none;
    }
    .about-loc.contact .right {
        flex-basis: 100%;
        padding-left: 0;
    }
    .propertyListing .avail {
        background-color: rgb(138, 124, 138,.8);
        backdrop-filter: blur(5px);
    }
    #footer-bar {
        padding-bottom: 5.5rem;
    }
    .twoCol {
        grid-template-columns: 1fr;
    }
    .termScroll {
        max-height: 400px;
    }
    .config {
        max-width: 75vw;
    }
    .avail .price p {
        margin: 0;
    }
    .gridrow.threegrid {
        grid-template-columns: 1fr;
    }
}
@media only screen and (max-width:900px) {
    .container {
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .mob-show-900 {
        display: block;
    }
    .mob-hide-900 {
        display: none;
    }
    .cat-item h3 {
        font-size: .9em;
    }
    .pfl-grp {
        flex-direction: column;
        align-content: center;
    }
    .pfl-item {
        max-width: unset;
    }
    .propertyListing {
        flex-direction: column;
        gap: unset;
    }
    .propertyListing .left {
        margin: auto;
        padding-bottom: 2em;
    }
    .ttd-loc {
        flex-direction: column;
    }
    .ttd-loc .right {
        padding-left: 0;
    }
    .town.banner {
        padding: 70px 0 3rem;
    }
    .town .ban-img img {
        border-radius: 0;
    }
    footer .content { flex-direction: column; }
    .footL {
        border-right: 0;
        padding-right: 0;
        min-width: unset;
    }
    .footR, 
    .footL > div { padding-left: 0;}
    footer > div:first-child { row-gap: 2.5em; }
    .town .ban-img { width: 100vw; }
}  
@media only screen and (max-width:850px) {
    .ban-filt-ctr { bottom: .75em; }
    .feat-homes > div {
        position: relative;
    }
    .gst-rvws > div {
        position: relative;
    }
    .rvw-grp {
        flex-wrap: nowrap;
        overflow-x: scroll;
        scrollbar-width: none;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        justify-content: start;
    }
    .gst-rvws .prev {
        left: .5em;
    }
    .gst-rvws .next {
        left: unset;
        right: .5em;
    }
    .rvw-item {
        flex: 0 0 100%;
    }
    .rvw-grp > div:first-child, .rvw-grp > div:nth-child(2) {
        border: none;
    }
    .ban-title {
        font-size: 2.5em;
    }
    .ban-subtitle {
        font-size: 1.5em;
    }
    .gst-rvws .arrow {
        display: block;
    }
}
@media only screen and (max-width:800px) {
    .colTwoThird {
        grid-template-columns: 1fr;
    }
    .prop-item {
        width: 90%;
    }
    .icon-info {
        min-height: unset;
    }
    .lhh-cnt .properties {
        justify-content: center;
    }
    .propertyListing .left>div:first-child {
        grid-template-columns: 1fr;
    }
    .srchPg .prop-item {
        width: calc(95% / 2);
    }
    .filt-panel {
        min-width: unset;
    }
    .filt-panel .dd-bx {
        max-width: 145px;
    }
}
@media only screen and (max-width:750px) {
    .ctr-marg .arrow {
        display: block;
    }
    .ban-filt-ctr {
        width: 100%;
        bottom: 0;
        border-radius: 0;
        padding: .8em 1em;
    }
    .dd-title::after {
        content: unset;
    }
    .home .dd-title,
    .home .dd-title-cal {
        border-radius: 0;
        padding: .5em 1em;
    }
    .home #dd-title-WT { 
        border-top-left-radius: 10px;
        border-bottom-left-radius: 10px;
    }
    #dd-title-WT.ddOPN { border-bottom-left-radius: 0; }
    #dd-title-HMB {
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
    }
    #dd-title-HMB.ddOPN { border-bottom-right-radius: 0; }
    .dd-ctr {
        gap: 0;
    }
    .home .dd-bx:not(:nth-child(2)) {
        border-left: 1px solid var(--lightGrey);
    }
    .tBx-ctr {
        margin-top: .5em;
    }
    .categories {
        row-gap: 1.5em;
    }
    .cat-item {
        flex-basis: 45%;
        transform: unset;
    }
    .categories div:last-child {
        margin-bottom: 3em;
    }
    .about-loc .title {
        font-size: 2em;
    }
    .about-loc .left {
        padding-right: 1.5em;
    }
    .faqLayout .left,
    .contact .right {
        padding: 0;
    }
    .about-loc .right {
        padding-left: 1.5em;
    }
    .faqLayout .right {
        padding-left: 0;
    }
    .loc-img { grid-template-columns: 1fr; }
}
@media only screen and (max-width:720px) {
    .propertyListing .right > div:first-child {
        flex-direction: column;
    }
}
@media only screen and (max-width:700px) {
    .gridrow.fourgrid {
        grid-template-columns: 1fr;
    }
    .about-loc .left {
        border-right: none;
        padding-right: 0;
        border-bottom: 3px solid var(--lilac);
        padding-bottom: 1.5em;
        margin-bottom: 1.5em;
    }
    .faqLayout .left {
        padding-bottom: 0;
        border-bottom: none;
    }
    .about-loc .col-ctrl {
        flex-direction: column;
    }
    .loc-qp {
        display: flex;
    }
    .loc-qp > div {
        flex: 1;
        min-width: 0;
        padding: 1em;
    }
    .loc-qp > div:first-child {
        border-right: 3px solid var(--lilac);
    }
    .loc-qp h5 {
        margin-top: 0;
    }
    .about-loc .right {
        padding-left: 0;
    }
    .calGRP {
        grid-template-columns: 1fr;
    }
    .banner.home img {
        height: 75vh;
    }
    .pic-count { font-size: .9em; }
    .cam-icon {
        width: 20px;
        height: 20px;
    }
    .gridrow.twogrid {
        grid-template-columns: 1fr;
    }
}
@media only screen and (max-width:650px) {
    #footer-bar {
        padding-bottom: 7rem;
    }
    /* mobile filter expanded */
    .ban-filt-ctr.mobOPN .btn.close {
        display: block;
        background-color: var(--aubergine);
        width: fit-content;
        margin-left: auto;
        z-index: 1;
        padding: .5em 1em;
        margin-bottom: 1em;
    }
    .lhh-cnt { flex-direction: column; }
    .lhh-cnt .right { max-width: 100%; }
    .filt-cntr { 
        padding: 1em 2em;
        height: unset; 
    }
    .on .filt-cntr {
        padding: 1rem 2rem 5rem;
    }
    .srchPg.open .filt-cntr { 
        padding: 1rem 2rem 5rem;
        height: 100vh; 
    }
    .filt-cntr .select { 
        border-bottom: none;
        padding: 0; 
    }
    .filt-panel { 
        position: sticky;
        top: 64px;
        z-index: 1;
        padding-top: 0;
    }
    .filt-panel.on {
        height: 100vh;
        overflow-y: scroll;
        scrollbar-width: none;
        /* top: 0; */
        background-color: rgba(126, 112, 122, 0.8);
        backdrop-filter: blur(5px);
    }
    .modal .filt-panel.on {
        top: 0;
    }
    .filt-panel .select {
        display: flex;
        align-items: center;
        gap: .75em;
    }
    .filt-arw {
        display: inline;
        width: 20px;
        height: 20px;
        transition: .3s;
    }
    .select.on .filt-arw {
        transform: rotate(-180deg);
        transition: .3s;
    }
    .lhh-cnt .flt-bx { display: none; }
    .filt-panel > div:first-child h3 { margin-right: 1em; }
    /* dropdowns */
    .home .dd-items.ddOPN { 
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        border-radius: 0;
        z-index: 3;
        padding: 2em
    }
    .ban-filt-ctr.ddOPN
     {
        transform: unset;
        z-index: unset;
    }
    .ban-filt-ctr.mobOPN {
        transform: unset;
        width: 100%;
        position: fixed;
        top:0;
        bottom:0;
        left: 0;
        right:0;
        z-index: 3;
        background-color: rgba(126, 112, 122, 0.8);
        backdrop-filter: blur(5px);
        overflow: auto;
    }
    .dd-items.open {
        display: block;
    }
    .ban-filt-ctr {
        width: 50%;
        top: 25%;
        background-color: transparent;
    }
    .home .dd-ctr {
        grid-template-columns: 1fr;
        padding: 1em;
        background-color: white;
        border-radius: 10px;
    }
    .mobOPN .dd-ctr {
        color: #fff;
        background-color: unset;
    }
    .mobOPN .dd-title {
        font-size: 1.2rem;
    }
    .mobOPN .dd-items {
        padding-left: .5em;
    }
    .mobOPN .dd-items .select:hover {
        background-color: #fff;
        border-radius: 3px;
    }
    .mobOPN #dd-title-CAL input,
    .mobOPN #dd-title-CAL input::placeholder {
        /* color: #fff; */
        font-size: 1rem;
    }
    .mobOPN.ban-filt-ctr .dd-title::after {
        background-image: url(../img/arrow_wt.svg);
    }
     .home .dd-title {
        background-color: unset;
        border-radius: 0;
        padding: .75em 0;
    }
    .home .dd-bx:not(:nth-child(2)) {
        border-left: none;
        border-top: 1px solid var(--lightGrey);
    }
    .mobOPN .tBx-ctr {
        grid-template-columns: 1fr;
        row-gap: 1em;
    }
    .dd-bx:nth-child(2) {
        border-top: none;
    }
    .home .tBx-ctr > div:first-child {
        display: none;
    }
    .mobOPN .tBx-ctr > div:first-child {
        display: grid;
        grid-template-columns: 1fr;
        padding-left: 1em;
    }
    .tBx-ctr { gap: 0; }
    .btn.srch {
        width: 100%;
        font-family: 'Montserrat', sans-serif;
        background-color: var(--aubergine, rgb(69, 61, 67));
        font-size: 1.1rem;
            border-radius: 10px;
    }
    .mobOPN .btn.srch {
        color: var(--aubergine,rgb(69, 61, 67));
        background-color: #fff;
        box-shadow: rgb(0 0 0 / 25%) 0px 54px 55px,
            rgba(0, 0, 0, 0.12) 0px -12px 30px,
            rgba(0, 0, 0, 0.12) 0px 4px 6px,
            rgba(0, 0, 0, 0.17) 0px 12px 13px,
            rgba(0, 0, 0, 0.09) 0px -3px 5px;
    }
    .home #dd-title-CAL { padding-left: 2px;}
    #dd-title-CAL input { width: unset;}
    .srcRslt #dd-title-CAL input {
        max-width: 115px;
    }
    .calHDR h4 { font-size: 1.5em; }
    .calHDR p { font-size: 1em;}
    .home ~ .litepicker {
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%);
        width: fit-content;
    }
    .srcRslt .dd-ctr {
        display: flex;        
        column-gap: 1em;
        align-items: center;
    }
    .srcRslt  .dd-bx {
        min-width: unset;
        width: fit-content;
    }
    .srcRslt .dd-bx:not(:last-child) {
        padding-right: 1em;
        border-right: 1px dotted var(--lilac,rgb(138, 124, 138));
    }
    .srcRslt  .dd-title {
        height: 100%;
    }
    .srcRslt #dd-title-WT,
    .srcRslt #dd-title-HMB {
        border-radius: 0;
    }
    .srcRslt #dd-title-HMB,
    .srcRslt #dd-title-HMG {
        display: flex;
        column-gap: .25em;
        align-items: center;
    }
    .srcRslt .dd-title span {
        display: none;
    }
    
    .srcRslt #dd-title-HMB::before,
    .srcRslt #dd-title-HMG::before {
        content: "";
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        display: block;
        
    }
    .srcRslt #dd-title-HMB::before  {
        background-image: url(../img/bed_dbl_icon.svg);
        width: 25px;
        height: 25px;
    }
    .srcRslt #dd-title-HMG::before  {
        background-image: url(../img/person-icon.svg);
        width: 20px;
        height: 20px;
    }
    .srchPg.modal.open {
        width: 100%;
    }
    .srchPg .prop-item {
        width: calc(95% / 1);
    }
    .propertyListing .price {
        flex-wrap: wrap;
    }
    .propertyListing .price .topLeft {
        width: 100%;
        padding-bottom: 0;
        display: flex;
        column-gap: .5em;
    }
    .filt-panel .dd-bx {
        max-width: unset;
    }
    .town .feat-home {
        margin: 0 auto;
        left: 50%;
        transform: translateX(-50%);
        animation: unset;
        min-width: 75vw;
    }
}
@media only screen and (max-width:630px) {
    .dd-ctr {
        flex-wrap: wrap;
    }
    .srcRslt .dd-ctr {
        flex-wrap: nowrap;
    }
    .dd-bx {
        flex-basis: 48%;
    }
    .tBx-ctr div {
        font-size: 1em;
    }
    .book {
        padding: .5em 1em;
    }
    .fire-icon, .dog-icon, .bed-icon {
        width: 30px;
        height: 30px;
    }
}
@media only screen and (max-width:600px) {
    /* .container {
        padding-left: 2rem;
        padding-right: 2rem;
    } */
    .ban-title {
        font-size: 2em;
    }
    .ban-subtitle {
        font-size: 1.5em;
    }
    .next { right: 1.25em;}
    .prev { left: 1.25em;}
    .config img {
        width: 3em;
    }
}
@media only screen and (max-width:556px) {
    .sidescroll table {
            font-size: .8em;
    }
    .sidescroll table th,
    .sidescroll table td {
        padding: 12px 6px;
    }
}
@media only screen and (max-width:550px) {
    .banner.home img { object-position: center; }
    .ban-filt-ctr { width: 65%; }
    #map.show {
        width: 95vw;
        height: 90vh;
        top: 5em;
        transform: translate(-50%, 0);
    }
}

@media only screen and (max-width:530px) {
    .tBx-ctr {
        flex-wrap: wrap;
    }
    .categories {
        justify-content: center;
    }
    .categories.towns {
        justify-content: unset;
    }
    .cat-item {
        flex-basis: 90%;
    }
    .categories div:last-child {
        margin-bottom: 2em;
    }
}
@media only screen and (max-width:515px) {
    .pa-dd-ctr {
        flex-direction: column;
    }
    .banner.home img { height: 65vh;}
    .calHDR span { 
        flex-direction: column;
        align-items: flex-start;
    }
    .calHDR p { 
        padding: 0;
        margin: 0;
    }
}
@media only screen and (max-width:500px) {
    /* .ctr-marg {
        padding-left: 0;
        padding-right: 0;
    } */
    .feat-act .bgCont {
        padding: 1.25rem;
    }
    .ban-title { font-size: 1.5em;}
    .ban-subtitle {  font-size: 1em;}
    .prop-item {  width: 100%;}
    .loc-qp { display: block;}
    .loc-qp > div:first-child { border-right: none;}
    /* .feat-act-item { margin: .75em 1.5em;} */
    .location-pg h2 { font-size: 1.75em;}
    .propertyListing .left .crsl { margin: -1em -1em 0 -1em; }
    #pop-Price, 
    #pop-Cal {
        margin: 0;
    }
    #pop-Price.show, 
    #pop-Cal.show {
        width: 100%;
        height: 100%;
        border-radius: 0;
    }
    .propertyListing .details > div:nth-child(2) {
        column-count: 1;
    }
    .contact-form .fdr {
        flex-direction: column;
    }
    .srcRslt .dd-title,
    .srcRslt #dd-title-CAL input {
        font-size: .9em;
        transform: unset;
    }
    .tBx-ctr div {
        font-size: .9rem;
    }
    .contact-form select {
        width: 100%;
    }
    .town .feat-home {
        padding: 1.5em;
    }
    /* .feat-act>div:first-child,
    .feat-ac>.wideblock {
        padding: 1.5rem;
    } */
    .feat-home h1 {
        position: absolute;
        background-color: #ffffff85;
        padding: 0 .25em;
        font-size: 1.75em;
        border-bottom-right-radius: 10px;
    }
    .feat-home span { font-size: .6em; }
}
@media only screen and (max-width:480px) {
    .feat-home .btn-grp {
        flex-direction: column;
        row-gap: .25em;
    }
    .feat-home .img-cntr {
        height: unset;
    }
}
@media only screen and (max-width:430px) {
    .location-pg .prop-item {
        min-width: 150px;
    }
    .location-pg .prop-title {
        font-size: 1.3em;
    }
    .mob-menu {
        width: 100%;
    }
    .sr-filt-ctr .fdr {
        padding: .25em;
    }
    .srcRslt .dd-ctr {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        width: 100%;
    }
    .srcRslt .dd-bx,
    .srcRslt .dd-bx:not(:last-child) {
        padding: 0;
        border-right: none;
    }
    .srcRslt .dd-bx:first-child {
        grid-column: span 3;
        padding-left: .75em;
    }
    .srcRslt #dd-title-WT {
        padding: 0;
        text-align: left;
    }
    .srcRslt .dd-bx.cal {
        grid-column: span 3;
        grid-row: 2;
        padding: 0;
    }
    .srcRslt #dd-title-CAL {
        padding: 0;
        text-align: left;
    }
    .srcRslt .dd-title { padding: 0; }
    .srcRslt .dd-bx:nth-child(3),
    .srcRslt .dd-bx:last-child {
        grid-row: span 2;
    }
}
@media only screen and (max-width:400px) {
    .ban-filt-ctr { width: 75%;}
}

@media only screen and (max-width:420px) {
    .feat-homes h2 {
        font-size: 1.3em;
    }
    .location-pg h2 {
        font-size: 1.5em;
    }
    .pa-dd-bx.dates > div:first-child {
        display: none;
    }
    .pa-dd-title {
        width: 10em;
    }
    .avail .price .pwp > div:first-child {
        font-size: 1.5em;
    }
}
@media only screen and (max-width:390px) {
    .dd-title, 
    #dd-title-CAL input,
    .btn.srch { font-size: .9em; }
}
@media only screen and (max-width:360px) {
    .location-pg h2 {
        font-size: 1.3em;
    }
    .location-pg .prop-title {
        font-size: 1.1em;
    }
    .logo {
        width: 10em;
    }
}


