*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  overflow-x:hidden; 
}

body{
  font-family: 'Satoshi Regular', sans-serif;
  font-weight: 400;
  font-size: 19px;
  line-height: 1.4;
}

img{
  border: 0;
  max-width:100%;
}

a{
  text-decoration: none;
  cursor:pointer;
  transition:.7s color, .7s background-color, .7s box-shadow;
  color:#000;
}
a:focus{
  outline: none;
}
a:hover{
  transition:.3s color, .3s background-color, .3s box-shadow;
  color:#262262;
}
a.hover-underline:hover{
  text-decoration:underline;
}


h1{
  font-family: 'Satoshi Medium', sans-serif;
  font-weight:normal;
  font-size: 30px;
  line-height: 35px;
  margin:0;
}

h2{
  font-family: 'Satoshi Black';
  font-size: 50px;
  line-height: 60px;
  font-weight: normal; 
  margin: 0 0 20px 0;
}


h3{
  font-family: 'Satoshi Black';
  font-size: 30px;
  line-height: 35px;
  font-weight: normal; 
  margin: 0 0 20px 0;
}
h3.larger-h3{
  font-size: 35px; 
  line-height: 40px; 
}
h3.smaller-h3{
  font-size: 24px; 
}


h4{
  font-family: 'Satoshi Bold';
  font-size: 22px;
  margin: 15px 0 10px 0;
}

h5{
  font-family: 'Satoshi Bold';
  font-size: 19px;
  line-height: 20px; 
  margin: 5px 0 0 0;
}
h5.h5-sub{
  margin-top: 30px;
  margin-bottom: 15px; 
}





h3:first-child, h4:first-child, h5:first-child{
  margin-top:0 !important;
}

p{
  margin-bottom: 15px;
}
p:last-child{
  margin-bottom:0;
}

ul, ol{
  margin: 0 0 15px 30px;
}

sup{
  font-size: .6rem;
}

.large{
  font-family: 'Satoshi Black';
  font-size: 25px;
  line-height: 32px;
}
.medium{
  font-family: 'Satoshi Black';
  font-size: 20px;
  line-height: 25px;
}
.small{
  font-size: 15px !important;
  line-height: 17px;
}

.light{
  font-family: 'Satoshi Light' !important;
  font-weight: 300 !important;
}
.regular{
  font-family: 'Satoshi Medium', sans-serif;
  font-weight:400;
}
.medium{
  font-family: 'Satoshi Medium';
}
.bold, b, strong{
  font-family: 'Satoshi Bold';
}
.black{
  font-family: 'Satoshi Black';
  font-weight: normal; 
}
.italic{
  font-family: 'Satoshi Italic';
}
.underline{
  text-decoration: underline;
}

.semi{
  font-weight: 600;
}
.uppercase{
  text-transform: uppercase;
}

.clear{ clear: both; }

.container{
  margin: 0 auto;
  width: 96%;
  max-width: 1500px;
  position:relative;
  padding-left: 130px;
  padding-right: 130px; 
}

.container.med{
  max-width: 1000px; 
}
.container.wide{
  max-width: 1250px; 
}

.container.narrow{
  max-width: 800px;
}

.width-restrict{
  max-width: 1200px; 
}
.width-restrict-small{
  max-width: 750px; 
}

.relative{
  position:relative;
}

.flex{
  display:flex;
}
.flex.wrap{
  flex-wrap:wrap;
}
.flex.flex-auto{
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 10px; /* Optional spacing */
}
.flex.flex-auto .even{
  flex: 1;
  min-width: 0; /* Prevents overflow issues */
}
.flex.end{
  align-items:flex-end;
}
.flex.vert{
  align-items:center;
}
.flex.swap{
  flex-direction: row-reverse;
}
.flex .align-bottom{
  align-self: flex-end;
}

.flex.gap{
  gap: 50px; 
}

.flex .full{
  width:100%;
}

.flex .flex-1{
  flex:1;
}

.flex .half{
  width: 47%;
  margin-right: 6%;
}

.flex .half.left-margin{
  margin-left: 6%;
}

.flex .half-large{
  width: 49%;
  margin-right: 2%; 
}

.flex .half:nth-child(2n+2), .flex .half-large:nth-child(2n+2){
  margin-right:0;
}


.flex .third-gap{
  width: 25%; 
  margin-right:12.5%;
}
.flex .third-gap:nth-child(3n+3){
  margin-right:0;
}

.flex .third{
  width: 32%;
  margin-right: 2%;
}
.flex .third:nth-child(3n+3){
  margin-right:0;
}

.flex .third-twothirds{
  width: 66%;
}
.flex .third-twothirds.side-pad{
  padding-left: 50px; 
}
.flex.swap .third-twothirds.side-pad{
  padding-left:0;
  padding-right: 50px; 
}

.flex .flex-10{
  width:10%;
}
.flex .flex-15{
  width: 15%;
}
.flex .flex-20{
  width: 20%;
}
.flex .flex-50{
  width: 50%;
}
.flex .flex-55{
  width: 55%;
}
.flex .flex-70{
  width: 70%;
}

.flex .flex-80{
  width: 80%;
}
.flex .flex-85{
  width: 85%; 
}
.flex .flex-90{
  width: 90%; 
}

.flex .side-image{
  width: 45%;
}
.flex .side-image .block + .block{
  margin-top: 15px; 
}
.flex .has-side-image{
  width: 55%;
  padding-left:110px; 
}

.flex-side-alt .flex:nth-child(2n+2){
  flex-direction:row-reverse;
}
.flex-side-alt .flex:nth-child(2n+2) .has-side-image{
  padding-left:0;
  padding-right:50px;
}
.flex.swap .has-side-image{
  padding-left:0;
  padding-right: 110px; 
}


.flex .auto{
  flex:1;
  margin-right: 50px; 
}
.flex .auto-tight{
  flex: 1;
  margin-right: 15px; 
}
.flex .auto-tight.refined{
  flex: 0 0 120px;
}

.flex .auto-wrap{
  display: flex;
  flex-wrap: wrap;
  margin-right: 15px; 
  margin-bottom: 15px; 
}

.flex .auto:last-child, .flex .auto-tight:last-child{
  margin-right:0;
}
.flex .auto-close{
  flex:1;
  margin-right: 25px; 
}
.flex .auto-close:last-child{
  margin-right:0;
}

.flex .twothirds{
  width: 60%;
}
.flex .twothirds-third{
  width: 40%;
  padding-left: 50px; 
}
.flex.swap .twothirds-third{
  padding-left:0;
  padding-right: 50px; 
}


.flex .quarter{
  width: 24%;
  margin-right: 1.3333333333%;
  margin-bottom: 1.3333333333%;
}
.flex .quarter:nth-child(4n+4){
  margin-right: 0;
}

.flex .quarter-gap{
  width: 23%;
  margin-right: 2.6666666667%;
  margin-bottom: 2.6666666667%;
}
.flex .quarter-gap:nth-child(4n+4){
  margin-right: 0;
}

.flex .quarter-full{
  width: 25%; 
}

.margined{
  margin: 100px auto;
}
.margined-teeny{
  margin-top: 5px;
  margin-bottom: 5px; 
}
.margined-toony{
  margin-top: 10px;
  margin-bottom: 10px; 
}
.margined-tiny{
  margin-top: 15px;
  margin-bottom: 15px; 
}
.margined-small{
  margin-top: 30px;
  margin-bottom: 30px; 
}
.margined-med{
  margin-top: 50px;
  margin-bottom: 50px; 
}

.topmargin{
  margin-top: 75px;
}
.topmargin-small{
  margin-top: 30px; 
}
.topmargin-tiny{
  margin-top :15px; 
}

.bottommargin{
  margin-bottom: 75px;
}
.bottommargin-small{
  margin-bottom: 30px !important; 
}
.bottommargin-tiny{
  margin-bottom: 15px; 
}


.margined-right{
  margin-right: 25px; 
}

.padded{
  padding: 50px;
}
.padded-small{
  padding: 30px; 
}
.padded-tiny{
  padding: 15px; 
}

.vpadded{
  padding: 75px 0;
}
.vpadded-large{
  padding: 150px 0; 
}
.top-padded-tiny{
  padding-top: 15px; 
}

.left-padded{
  padding-left: 30px; 
}
.right-padded-small{
  padding-right: 15px; 
}

.right-padded{
  padding-right:30px; 
}
.right-padded-med{
  padding-right: 75px !important; 
}

.side-padded{
  padding-left: 30px;
  padding-right: 30px; 
}

.left{
  text-align:left;
}
.center{
  text-align:center;
}
.right{
  text-align:right;
}

.inline{
  display:inline;
}
.inlineblock{
  display:inline-block;
}
.block{
  display:block;
  width:100%; 
}

.bgcover{
  background-size:cover;
  background-position: center center;
}
.bgcover.bg-top{
  background-position: center top;
}
.bg-fit{
  background-size: contain !important;
  background-repeat: no-repeat !important; 
  background-position: center center !important;
}

.video-aspect{
  aspect-ratio: 16/9;
}
.portrait{
  aspect-ratio: 3/4;
}
.landscape{
  aspect-ratio: 4/3;
}
.sqaure{
  aspect-ratio: 1/1;
}
.round{
  aspect-ratio:1/1;
  border-radius: 100%; 
}
.height-600{
  height: 600px !important; 
}


.bg-hover-grow{
  background-repeat: no-repeat; 
  background-position: center center;
  background-size: auto 100%; 
  transition: 1s background-size; 
}
a:hover .bg-hover-grow{
  background-size: auto 110%; 
  transition: .5s background-size; 
}


.header, .footer{
  padding: 15px 30px; 
}
.header .header-logo{
  width: 300px;
}
.header .header-logo img{
  display:block;
  width:100%;
  transition:.5s width; 
}
.header .header-nav{
  width: calc(100% - 300px);
  text-align:right;
}

.header .header-nav .nav-item{
  display:inline-block;
  position:relative; 
  margin-left: 30px; 
  transition:.5s font-size; 
}

.header .header-nav .nav-item a{
  padding-bottom: 2px;
}
.header .header-nav .nav-item a.current{
  border-bottom: 2px solid #262262; 
  color:#262262;
}

.header .header-nav .nav-item .nav-sub {
  position: absolute;
  z-index: 100; 
  top: 27px;
  left: -10px;
  background-color: #FFF;
  text-align: left;
  padding: 15px;
  white-space: nowrap;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
} 



.header .header-nav .nav-item .nav-sub a{
  display: block;
  font-size: 16px; 
  margin-bottom: 5px; 
}

.header .header-nav .nav-item .nav-sub a.current{
  border-left: 2px solid #262262; 
  color:#262262;
  border-bottom:none;
  padding-left: 5px; 
}

.header .header-nav .nav-item:hover .nav-sub {
  opacity: 1;
  visibility: visible;
}




.header .header-nav .nav-item .nav-sub .nav-sub-sub{
  position:absolute;
  top:-10px;
  left: calc(100% + 15px);
  background-color:#FFF; 
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  padding: 15px;
  opacity:0;
  transition:.7s opacity;
}
.header .header-nav .nav-item .nav-sub .relative:hover .nav-sub-sub{
  opacity: 1;
  transition:.3s opacity;
}


.header .header-nav .nav-wishlist{
  margin-left: 20px;
}
.header .header-nav .nav-wishlist img{
  width: 25px;
  vertical-align: middle;
}



@keyframes fadein {
  from { opacity: 0; }
  to { opacity: 1; }
}


header{
  position:sticky;
  top:0;
  left:0; 
  background-color:#FFF;
  z-index: 10000; 
  opacity: 1;
  transition:.5s box-shadow, .5s opacity, .5s padding; 
}
header.shrink{
  opacity: .97;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  transition:.5s box-shadow, .5s opacity, .5s padding; 
  padding: 10px 15px; 
}
header.shrink .header-logo img{
  width: 100px; 
  transition:.5s width; 
}
header.shrink .header-nav .nav-item{
  font-size: 14px; 
  transition:.5s font-size; 
}





.text-white{ color:#FFFFFF; }
.text-blue{ color: #262262; }
.bg-white{ background-color:#FFFFFF; }

a.hover-text-black:hover{ color:#000; }


.transparent{
  background-color:rgba(255,255,255,.5);
  padding: 15px 15px 0 15px; 
}


.button{
  display: inline-block;
  background-color: #262262;
  color:#FFF;
  padding: 13px 20px; 
  border:0;
  font-family: 'Satoshi Medium', sans-serif;
  font-size: 18px; 
  line-height: 1.3;
  cursor:pointer; 
  min-width: 200px;
  text-align:center;  
  transition:.7s background-color; 
}
.button.button-50{
  height: 50px !important; 
}

.button.white{
  background-color:#FFF;
  color: #000000;
}
.button:hover{
  color:#FFF;
  background-color: #02AFB2;  
  transition: .3s background-color; 
}

.button.white:hover{
  color:#FFF;
  background-color: #262262;  
  transition: .3s background-color; 
}

.button.red{
  background-color: #B40B0B;
}

.button:has(+ .button){
  margin-right: 25px; 
  margin-bottom: 15px; 
}

.button.block{
  margin-left:0 !important;
  margin-bottom: 15px; 
  min-width:1px; 
  text-align:center;
}

.button.block.mobile-not-block{
  display: inline-block; 
  width:auto;
}


.button.outline{
  background-color:#FFF; 
  border: 1px solid #262262;
  color: #262262; 
}
.button.outline.active{
  background-color:#262262;
  color:#FFF; 
}

.button.pink{
  background-color: #CE5198;
  height: 45px !important; 
}

.button.white-hover:hover{
  background-color:#FFF; 
  color: #262262;
}


.search-input{
  display:block;
  width: calc(100% - 15px);
  height: 45px; 
  line-height: 45px; 
  background-color:#FFFFFF;
  color:#000;
  font-family: 'Satoshi Medium', sans-serif;
  font-size: 16px; 
  border:0;
  padding: 0 20px; 
  text-align:left; 
  overflow:hidden;
}
.search-input.bordered{
  border: 1px solid #707070; 
  width:100%; 
}
.search-input:focus{
  outline:none;
}

.button.search{
  width: 100%;
  min-width:100%; 
  text-align:left; 
  height: 45px;
  line-height: 20px;  
}
.button.search.not-block{
  width: auto;
  min-width:1px; 
}

.right-icon{
  background-position: right 10px center; 
  background-repeat: no-repeat; 
  background-size: auto 50%; 
  transition: .3s background-size; 
  padding-right: 50px; 
}
.right-icon.search{
  background-image: url('/images/search.svg');
}
.right-icon.filter{
  background-image: url('/images/filter.svg');
}
.right-icon:hover{
  background-size: auto 55%;
  transition: .3s background-size; 
}



.listing{
  display:block; 
  margin-bottom: 2%; 
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  position:relative; 
  transition:.7s box-shadow;
  font-size:17px; 
}
.listing:hover{
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
  transition:.3s box-shadow;
}

.listing h5{
  margin-bottom: 10px; 
}

.listing .listing-pad{
  padding: 10px 15px 15px 15px; 
}
.listing .listing-tags{
  position:absolute;
  top:15px;
  left:15px; 
  text-transform: uppercase;
  z-index: 1;
}
.listing .listing-tags span{
  display:inline-block;
  background-color: #262262;
  color:#FFF;
  padding: 8px 20px;
  border-radius: 5px; 
  font-size: 13px; 
  line-height: 1;
  margin-right: 5px; 
  margin-bottom: 5px; 
}

.listing .listing-tags span.listing-openhome{
  color: #262262;
  background-color:#FFF;
  margin-right: 45px;
}

.listing .listing-tags span.listing-sold{
  background-color: #02AFB2;
  color:#FFF;
  font-size: 16px;
  padding: 12px 30px; 
}

.listing .listing-wishlist{
  position:absolute;
  top: 15px;
  right: 10px; 
  z-index: 300; 
}





.listing .listing-photo-slider img{
  display:block;
  width:100%;
}

.listing .listing-photo-slider .owl-dots{
  position:absolute;
  bottom:10px;
  left:0;
  width:100%;
  text-align:center;
}

.listing .listing-photo-slider .owl-dots .owl-dot{
  border: 1px solid #FFF;
  border-radius: 100%;
  width: 12px;
  height: 12px; 
  margin: 0 2px;
  opacity: .7;
}
.listing .listing-photo-slider .owl-dots .owl-dot:hover{
  background:rgba(255,255,255,.5);
  opacity: 1;
}
.listing .listing-photo-slider .owl-dots .owl-dot.active{
  background-color:#FFF;
  opacity: 1;
}




.listing .listing-photo-slider  .owl-prev{
  position: absolute;
  left: 10px;
  top: 50%;
  width: 30px;
  height: 50px;
  background: none;
  background-image: url(/images/arrow-left.svg) !important;
  padding: 0;
  margin: -20px 0 0 0;
  opacity: .8;
  text-indent: -100px;
  border: 0;
  border-radius: 0;
  overflow:hidden;
  filter:invert(1); 
  opacity: 0;
  transition:.3s opacity;
}

.listing .listing-photo-slider  .owl-next{
  position: absolute;
  right: 10px;
  top: 50%;
  width: 30px;
  height: 50px;
  background: none;
  background-image: url(/images/arrow-right.svg) !important;
  padding: 0;
  margin: -20px 0 0 0;
  opacity: .8;
  text-indent: -100px;
  border: 0;
  border-radius: 0;
  overflow:hidden;
  filter:invert(1); 
  opacity: 0;
  transition:.3s opacity;
}


.listing:hover .listing-photo-slider .owl-prev, .listing:hover .listing-photo-slider .owl-next{
  opacity: .6;
  transition:.3s opacity; 
}

.listing:hover .listing-photo-slider .owl-prev:hover, .listing:hover .listing-photo-slider .owl-next:hover{
  opacity: 1;
  transition:.3s opacity; 
}



.bottom-shadow{
  box-shadow: 0px 10px 15px -5px rgba(100, 100, 111, 0.2);
  padding-bottom: 50px; 
}
.bottom-shadow.style0{
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.bottom-shadow.style41{
  box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px 0px inset;
}
.bottom-shadow.style47{
  box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;
}

.bottom-border{
  border-bottom: 2px solid #262262;
}

.line{
  border-top: 2px solid #262262;
}

.gone{
  display:none;
}
.here{
  display:block;
}

.tabs{
  margin-bottom: 20px; 
}
.tabs a{
  display: inline-block; 
  text-transform:uppercase;
  border-bottom: 4px solid #FFFFFF;
  padding: 0 10px 5px 10px; 
  margin: 0 5px; 
  font-size: 20px; 
}

.tabs a.current{
  border-bottom: 4px solid #262262;
  transition:.3s border-color;
}


.overlay-heading{
  background-color:#FFF;
  text-align:center; 
  text-transform: uppercase;
  transition:.3s all;
  margin: 0 20px; 
  padding: 20px; 
}
a:hover .overlay-heading{
  background-color: #262262;
  color:#FFF;
  transition:.3s all;
}

.video-embed iframe{
  display:block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border:0;
}

.sixteen-nine{
  aspect-ratio: 16/9;
}

.video-thumbnail .video-play{
  position:absolute;
  top: calc(50% - 35px);
  left: calc(50% - 35px);
  width: 70px; 
  opacity: .6;
  transition:.3s all;
}
.video-thumbnail:hover .video-play{
  top: calc(50% - 60px);
  left: calc(50% - 60px);
  width: 120px; 
  opacity: .9;
  transition:.3s all;
}

.video-caption{
  position:absolute;
  left: 20px;
  bottom: 20px;
  font-size: 18px;
  line-height: 1.2; 
}
.video-caption .play{
  width: 45px; 
  margin-bottom: 10px;
  transition:.3s width, .3s opacity;
}
a:hover .video-caption .play{
  width: 100px;
  opacity: .7;
  transition:.3s width, .3s opacity;
}

.todo{
  border: 2px dashed red; 
  color: red;
  padding: 20px; 
  text-align:center;
  margin: 20px;
  background-color:#F7D4D4;
}



footer{
  background-color: #FFFFFF;
  color:#262262;
  font-size: 15px; 
}
footer h5{
  font-size: 17px; 
  margin-bottom: 5px; 
}
footer a{
  color:#262262; 
}
footer a:hover{
  color:#262262;
  text-decoration: underline;
}

.footer .nzrn{
  width: 150px;
}
.footer-logo{
  display:block;
  max-height: 150px;
}

footer .top-blue-border{
  border-top: 1px solid #262262;
  padding-top: 15px; 
}
footer .top-blue-border.thick{
  border-top: 4px solid #262262;
}

.icon{
  width: 30px; 
  vertical-align: middle;
}
.icon-small{
  height: 18px; 
  vertical-align: middle;
  margin-top: -4px; 
}
.icon-med{
  height: 25px; 
  vertical-align: middle;
  margin-top: -4px; 
}
.icon-large{
  width: 45px; 
  vertical-align: middle;
}

.flex-icon{
  width: 60px;
}
.flex-icon-content{
  width: calc(100% - 60px);
}

.icon-max{
  width: 50%;
  max-width: 100px; 
}

.icon-hobby{
  max-height: 100px; 
}

.copy{
  font-size: 14px; 
  border-top: 2px solid #262262;
  margin-top: 30px; 
  padding-top: 30px; 
}

.copy .footer-nav a{
  border-left: 1px solid #262262;
  padding-left: 10px;
  margin-left: 10px; 
}

.copy .footer-nav a:first-child{
  border-left:0;
  margin-left:0;
  padding-left:0;
}


.goverlay{
  background:rgba(0,0,0,.6) !important;
}

.page-header + .container{
  margin-top: -50px; 
  background-color:#FFF; 
  padding-top: 50px; 
}
.page-header h2{
  margin:0;
}

.square{
  aspect-ratio: 1/1;
}
.small-square{
  aspect-ratio: 16/9;
  background-size: contain;
  background-repeat: no-repeat; 
} 
.video-aspect{
  aspect-ratio:16/9;
}

.default-bg{
  background-color:#f1f1f1;
}

.darken{
  background:rgba(0,0,0,.2);
}


.suburb{
  width: 25%;
  border-right: 10px solid #FFF;
  border-bottom: 10px solid #FFF;
}
.suburb.double{
  width: 50%; 
}
.suburb.five{
  width: 20%; 
}

.suburb-label{
  background-color:#FFF;
  margin: 0 auto;
  width: 70%; 
  text-align:center;
  text-transform: uppercase;
  padding: 20px; 
  transition:.7s all;
  font-size: 15px;
}
a:hover .suburb-label{
  background-color:#262262;
  color:#FFF;  
  transition:.3s all;
}


.label{
  font-family: 'Satoshi Bold';
  margin-top: 15px; 
}

.input{
  border: 1px solid #707070;
  width: 100%;
  height: 45px; 
  line-height: 45px; 
  background-color:#FFF;
  padding: 0 10px; 
  font-family: 'Satoshi Medium', sans-serif;
  font-weight:400;
  font-size: 16px;
  color:#000000;   
  display:block;
  border-radius:0;
}
.input:focus{
  outline:none;
  border-color: #262262;
}
textarea.input{
  height: 120px; 
  line-height: 25px; 
  padding: 10px; 
}
textarea.input.high{
  height: 200px; 
}
.input.subtle{
  border:0;
  text-align:right;
}
.input.sort{
  font-size: 19px;
  font-weight:400;
  font-family: 'Satoshi Regular', sans-serif;
}
.input::placeholder{
  color:#999;
}
select.input{
  color:#999;
}
select.input.has-selection{
  color:#000;
}



select{
  appearance: none; 
  padding-right: 35px !important;
  background: url('/images/arrow-down.svg') no-repeat right 10px center;
  background-size: 20px auto;
}


.button-label{
  display: block;
  color: #262262;
  background-color:#FFF;
  border: 1px solid #262262;
  padding: 13px 20px; 
  font-family: 'Satoshi Medium', sans-serif;
  font-size: 16px; 
  line-height: 1.3;
  cursor:pointer; 
  text-align:center;  
}
input[type="radio"]:checked + .button-label {
  background-color: #262262;
  color:#FFF;
  transition:.3s all;
}


.suburbsection{
  color: #262262;
  text-transform: uppercase;
  padding: 20px;
  text-align:center; 
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  font-size: 13px;
  line-height: 1.1;
  border: 2px solid #fff;
  transition:.7s border;
}
.suburbsection img{
  display:block;
  margin: 0 auto;
  width:100%;
  max-width: 200px; 
  margin-bottom: 8px; 
}

.suburbsection:hover{
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
  transition:.3s box-shadow;
}

.suburbsection.active{
  border: 2px solid #262262;
  transition:.3s border;
}


.shadow{
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
a.shadow:hover{
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

.columns{
  columns:2;
  column-gap: 50px;
}

.columns-4{
  columns:4;
  column-gap: 50px;
}

.stars{
  float:right;
}
.stars img{
  width: 20px; 
  margin-left: 3px; 
}

a:hover .learn-more, .learn-more:hover{
  color:#262262;
  text-decoration: underline;
  transition:.3s color; 
}


.pagination a{
  display: inline-block;
  border: 1px solid #707070;
  height: 45px;
  width: 45px;
  text-align:center;
  line-height: 45px; 
  margin: 0 5px; 
}
.pagination a.current{
  background-color:#262262;
  border-color:#262262;
  color:#FFF; 
}
.pagination a.noborder{
  border:none;
}
.pagination .arrow{
  width: 16px;
  vertical-align: middle;
}

.team-tabs{
  border-bottom: 5px solid #262262;
}
.team-tabs .tab{
  background-color: #E9E9E9;
  color: #262262;
  border-radius: 30px 30px 0 0;
  padding: 15px 10px 15px 10px;
  margin-right: 0;
  text-align:center; 
  transition:none;
  font-size: 15px; 
  line-height: 1.2; 
  flex: 1 0 auto;
}
.team-tabs .tab.active{
  color: #E9E9E9;
  background-color: #262262;
}

.contact-icon{
  width: 30px;
  margin-right: 5px; 
  text-align:center; 
}
.contact-icon img{
  max-height: 20px;
  max-width: 20px; 
  vertical-align: middle;
}

#stars img{
  width: 30px; 
  margin-right: 10px; 
}
#stars .star {
  cursor: pointer;
  opacity: .3;
  transition: .3s opacity;
}

#stars .star.selected {
  opacity: 1;
}

#stars .star:hover{
  opacity: .9;
}



.listing-side{
  width: 30%;
}
.listing-main{
  width: 70%;
  height: 100%; 
  border-right: 15px solid #FFFFFF; 
}


.listing-sold-overlay{
  position:absolute;
  top: 15px;
  left: 150px; 
  z-index: 1000; 
  background-color: #02AFB2;
  color:#FFF;
  font-size: 30px;
  padding: 15px 30px; 
}
 


.listing-specs{
  font-size: 20px; 
}
.listing-specs .spec{
  border-right: 1px solid #000;
  padding-right: 10px;
  margin-right: 10px;
}
.listing-specs .spec:last-child{
  border:none;
}

.listing-photo-secondary{
  height: calc(50% - 7.5px);
}

.more-photos{
  position:absolute;
  left:0;
  top:0;
  height:100%;
  width:100%;
  background:rgba(0,0,0,.3);
  color:#FFF;
  font-size: 80px; 
  text-align:center; 
  transition:.3s font-size; 
}
a:hover .more-photos{
  font-size: 100px;
  transition:.3s font-size; 
}


.listing-tabs{
  text-align:center;
}
.listing-tabs a{
  display: inline-block;
  border-bottom: 3px solid #FFF; 
  padding: 5px; 
  margin: 0 30px; 
  text-transform: uppercase;
  transition: .3s border-color;
}
.listing-tabs a.active{
  border-bottom: 3px solid #262262;
  transition: .3s border-color;
}



.search-main{
  width: 80%;
  margin-right: 15px;
}



.error{
  background-color: #B40B0B;  
  color:#FFF;
  padding: 15px;
  text-align:center; 
}
.error a{
  color:#FFF;
  text-decoration: underline;
}

.sticky-top{
  position:sticky;
  top:100px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected]{
  background-color: #02AFB2 !important;
}

.select2-container--default .select2-selection--single{
  height: 45px !important;
  border-radius: 0 !important; 
  border: 1px solid #707070 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b{
  display:none;
}


.select2-container{
  display:block;
  color:#000;
  font-family: 'Satoshi Medium', sans-serif;
  font-size: 16px; 
  border:0;
  text-align:left; 
}
.listing-search .select2-container--default .select2-search--inline .select2-search__field{
  height: 45px; 
  position:relative;
  top: -5px; 
  padding-left: 10px !important; 
}

.select2-container--default .select2-selection--multiple{
  border:none !important; 
  height: 45px !important; 
  border-radius: 0 !important; 
}


.listing-search .select2.select2-container{
  height: 50px !important;
  border-radius: 0 !important; 
  border: 1px solid #707070 !important;
}


.fancybox__nav {
  font-size: 2rem; /* Adjust size as needed */
}

.fancybox-button--arrow_left,
.fancybox-button--arrow_right {
    width: 60px !important; /* Adjust width */
    height: 60px !important; /* Adjust height */
}

.fancybox-container--thumbs .fancybox-controls, .fancybox-container--thumbs .fancybox-slider-wrap, .fancybox-container--thumbs .fancybox-caption-wrap{
  right:0 !important;
}

.fancybox-thumbs {
  background-color:#000 !important; 
  top:auto !important;
  right: auto !important;
  width: 100% !important; 
  height: 85px !important; 
  padding-top: 10px !important; 
  overflow:hidden !important; 
}

.fancybox-thumbs ul{
  display:flex !important;
}
.fancybox-thumbs ul li{
  flex:1; 
  border-color: #000 !important; 
}

.fancybox-buttons, .fancybox-infobar__body{
  display:none !important;
}


.fancybox-button{
  height: 65px !important; 
}
.fancybox-button--left{
  position:absolute !important;
  left: 0;
  top: 40vh; 
  z-index: 99999;
}
.fancybox-button--right{
  position:absolute !important;
  right: 0;
  top: 40vh; 
  z-index: 99999;
}
.fancybox-button--left::after, .fancybox-button--right::after {
  width: 30px !important;
  height: 30px !important; 
}


.label-button{
  border: 1px solid #707070;
  width: 100%;
  background-color:#FFF;
  padding: 20px 2px; 
  font-family: 'Satoshi Medium', sans-serif;
  font-weight:400;
  font-size: 16px;
  color:#000000;   
  display:block;
  text-align:center; 
  cursor:pointer; 
}

input:checked + .label-button{
  background-color:#262262;
  color:#FFF;
}


.checkbox{
  display:block; 
  background-image:url('/images/square-light.svg');
  background-size: 25px auto;
  background-repeat: no-repeat; 
  padding-left: 35px; 
  min-height: 30px; 
  padding-top: 5px; 
  margin-bottom: 10px; 
  break-inside:avoid; 
}
/*
input:checked + .checkbox{
  background-image:url('/images/check-square-solid.svg');
}
*/


.range-slider {
  position: relative;
  width: 100%;
}

.range-slider::before, .range-slider::after{
  display:none !important; 
}

#suburblist .h5-sub:not([style*="display: none"]):first-of-type {
  margin-top: 0 !important;
}

.top-border{
  border-top: 1px solid #262262;
  padding-top: 15px; 
}

#note{
  text-align:center;
  padding: 15px; 
  background-color:#02AFB2;
  color:#FFF; 
}

.featured-testimonial-name{
  font-size: 19px; 
  margin: 15px 0;
}

.listing-agent{
  font-size: 19px; 
}
.listing-agent h5{
  font-size: 22px; 
  line-height: 30px; 
}

.empty-gone:empty{
  display: none !important;
}

.rise-up{
  margin-top: -75px; 
}


#refined{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height: 100%;
  z-index: 100001;
}

#refined .refined-close{
  display:block;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height: 100%;
  z-index: 20001; 
  background:rgba(0,0,0,.5);
  cursor:default;
}

#refined .refined-container{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height: 100%; 
  z-index: 20002; 
  pointer-events: none;
}

#refined .refined-box{
  background-color: #FFF;
  border: 2px solid #262262;
  position:relative; 
  z-index: 20003; 
  width: 80%;
  max-width: 1200px; 
  margin: 0 auto; 
  border-radius: 10px; 
  pointer-events: auto; 
}
#refined .refined-box .refined-max{
  max-height: 90vh;
  overflow:auto;
  padding: 30px; 
  border-radius: 10px; 
}
#refined .refined-box .refined-x img{
  position:absolute;
  top: -15px;
  right: -15px; 
  width: 45px; 
  transition:.3s width;
}

#refined .refined-box .refined-x:hover img{
  width: 50px;
  transition:.3s width;
}

.getaroom-label{
  text-transform: uppercase;
  cursor:pointer; 
  display:block;
  padding-bottom: 5px; 
}
input:checked + .getaroom-label{
  border-bottom: 4px solid #262262;
}


.owl-carousel .owl-dots{
  position:absolute;
  bottom:-25px;
  left:0;
  width:100%;
  text-align:center;
}

.owl-carousel .owl-dots .owl-dot{
  border: 1px solid #FFF;
  border-radius: 100%;
  width: 12px;
  height: 12px; 
  margin: 0 2px;
  opacity: .5 !important;
}
.owl-carousel .owl-dots .owl-dot:hover{
  background:rgba(255,255,255,.5);
  opacity: 1 !important;
}
.owl-carousel .owl-dots .owl-dot.active{
  background-color:#FFF;
  opacity: 1;
}

.max-w-80{
  max-width: 80%; 
}

.grecaptcha-badge{
  display:none; 
}


.mobile-gone{display:block; }
.desktop-gone{display:none; }

.map-popup{
  width: 250px; 
}
.map-popup a{
  color:#262262 !important;
}

.mm-wrapper{
  overflow: visible !important; 
}



.grid-6{
  display: grid;
  grid-template-columns: repeat(6, 1fr); 
  gap: 20px; 
}

.grid-5{
  display: grid;
  grid-template-columns: repeat(5, 1fr); 
  gap: 20px; 
}

.grid-4{
  display: grid;
  grid-template-columns: repeat(4, 1fr); 
  gap: 20px; 
}


.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
}


.grid-gap{
  gap: 50px !important;
}

.grid-span-1 {
  grid-column: span 1;
}

.grid-span-2 {
  grid-column: span 2;
}
.grid-span-3 {
  grid-column: span 3;
}


#box-buttons{
  position:fixed;
  top: 50px;
  right: 20px; 
  z-index: 2147483600;
}

#box-buttons a{
  display: block;
  margin-bottom: 15px; 
  padding: 0 3px;
  transition:.3s padding;
}
#box-buttons a img{
  display:block;
  width: 40px;
  transition:.3s width;
}
#box-buttons a:hover{
  padding: 0;
  transition:.3s padding;
}
#box-buttons a:hover img{
  width: 46px; 
  transition:.3s width;
}

.bullet-columns ul{
  columns:2;
}

.x-hidden{
  overflow-x:hidden;
}

@media screen and (min-width: 1150px){
  #menu{
    display:none !important;
  }
}

.no-right-margin{
  margin-right:0 !important;
}

.range-slider output{
  display:none;
}

.lightbox-close{
  position:absolute;
  top: 10px;
  right: 10px; 
  width: 25px; 
}

.search-input-height input{
  height: 35px !important; 
}