@import url(_fonts.css?v=1.0.10);
@import url(_base.css?v=1.0.10);
@import url(_helpers.css?v=1.0.10);
@import url(_print.css?v=1.0.10); 

:root {

  --color-primary:#021452;
  --color-primary-alt:#00ffff;
  --color-primary-transparent:rgba(2, 19, 82, 0.5);
  --color-primary-alt-transparent:rgba(0, 255, 255, 0.5);
  --color-primary-light:#eff8ff;
  --color-secondary:#0064e0;
  --color-secondary-hover:#0059c6;
  --color-secondary-transparent:rgba(0, 89, 198, 0.5);
  --color-secondary-alt:#5abcff;
  --color-secondary-alt-hover:#43adf3;
  --color-dark: #000000;
  --color-light: #ffffff;
  --color-success: green;
  --color-warning: #ff8c00;
  --color-error: #cd0808;
  --font-title: "ubuntu", sans-serif;
  --font-body: "lato", sans-serif;
  --vh100: 100dvh;
  --vw100: 100dvw;
  --grid-gap:20px;
  --grid-gap--large:40px;
  --topbar-height: 100px;
  --bottombar-height: 70px;
  --search-input-height:54px;
  
  @media(max-width:980px){
    --topbar-height: 80px;
    --grid-gap--large:20px;
    --grid-gap:15px;
  }

  @media(max-width:768px){
    --bottombar-height: 65px;
  }

  @media(max-width:667px){
    --search-input-height:46px;
    --bottombar-height: 60px;
  }

  @media(max-width:380px){
     --bottombar-height: 55px;
  }
} 


/* ========================================================================== 
PAGE  
========================================================================== */ 

html {-moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; -webkit-text-size-adjust:100%; line-height:1.5; text-rendering:optimizeLegibility; font-size:62.5%; height:100%; scroll-behavior: smooth;}
body {background:#fff;min-height:100%;color: var(--color-primary);font-family:var(--font-body);font-weight:400;-webkit-font-smoothing:antialiased; overflow-x: hidden;}

body:not(.transparent) main { padding-top:var(--topbar-height); }

body.has-map.map-active {  overflow: hidden;}
body.lock {  overflow: hidden;} 


@media(min-width:981px){ 
  body.scroll {--topbar-height:80px;}
  body:not(.has-search).scroll {--topbar-height:80px;}
  body:not(.has-search) main{  transition: padding-top .3s ease-in-out;}
  body:not(.transparent,.map-active).has-search.scroll main {padding-top: 195px;}
}
 
@media(max-width:980px){
  body { --bottombar-height:calc(75px + env(safe-area-inset-bottom));  padding-bottom: var(--bottombar-height);}
  body.has-search.search-active{  overflow: hidden;}
  body:not(.transparent, .menu-active, .search-active) main { padding-top:0; }

} 

@media(max-width:768px){ 
  body { --bottombar-height:calc(70px + env(safe-area-inset-bottom));}
}

@media(max-width:667px){

  body { --bottombar-height:calc(65px + env(safe-area-inset-bottom)); }
}

@media(max-width:380px){
  body { --bottombar-height: calc(55px + env(safe-area-inset-bottom)); }
}

@media(max-width:360px){
  html{ font-size: 54.5%;}
}

/* ========================================================================== 
#STORE PROMPT  
========================================================================== */

.storeprompt {background: var(--color-secondary);color: #fff;border-bottom: 1px solid var(--color-secondary-hover); display: none; visibility: hidden;}
.storeprompt.visible { display: block; visibility: visible;}

.storeprompt .container {display: flex;padding: 8px 0;gap: 10px;align-items: center;}
.storeprompt .icon {width: 34px;height: 34px; display: none;}
.storeprompt .icon img{width: 100%;height: 100%;object-fit: contain;object-position: center;border-radius: 5px;}
.storeprompt .message {font-size: 1.5rem;}
.storeprompt .buttons {margin-left: auto;display: flex;gap: 10px;align-items: center;}
.storeprompt .buttons .install {font-weight: 500;padding: 0px 8px;border-radius: 5px;border: 1px solid var(--color-primary);transition: all .3s ease-in-out;background: var(--color-primary);color: #fff;font-size: 1.5rem;height: 34px;display: flex;align-items: center;}
.storeprompt .buttons .close {font-size: 1.6rem;color: #ffff;padding: 5px;}

/* ========================================================================== 
#OFFLINE  
========================================================================== */

#offline-message {
  display: none;
  justify-content: center;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: var(--color-warning);
  color: #ffffff;
  text-align: center;
  padding: 10px;
  z-index: 99999;
  font-size: 1.6rem;
  font-weight: 600;
  text-transform: capitalize;
}

#offline-message i { padding-right:5px;}

@media(max-width:980px){
  #offline-message {bottom: var(--bottombar-height);}
}

/* ========================================================================== 
#LAYOUT  
========================================================================== */
section { scroll-margin-top: var(--topbar-height);}
section,footer, main, header,article {width:100%;}


.u-bg-color-grey {background-color:var(--color-stone)!important;}
.u-bg-color-green {background-color:var(--color-primary)!important;}
.u-bg-color-dark-green {background-color:var(--color-dark)!important;}
.u-bg-color-aqua {background-color:var(--color-aqua)!important;}
.u-bg-color-leaf {background-color:var(--color-leaf)!important;}

.u-color-grey {color:var(--color-stone)!important;}
.u-color-green {color:var(--color-primary)!important;}
.u-color-dark-green {color:var(--color-dark)!important;}
.u-color-aqua {color:var(--color-aqua)!important;}
.u-color-leaf {color:var(--color-leaf)!important;}

#overlay  { position: fixed;width: 100%;height: var(--vh100);top: var(--topbar-height);left: 0;z-index: 8; background-color:rgba(16, 46, 44, 0); transition: all 0.3s ease-out .6s; visibility: hidden; opacity: 0;}
#overlay.active {visibility: visible;opacity: 1; background-color:rgba(16, 46, 44, .8);  transition:all 0.3s ease-in;  visibility: visible;}


/* ========================================================================== 
HEADINGS 
========================================================================== */

h1, h2, h3, h4, h5, h6 {font-weight: 500;margin:0;font-family: var(--font-title);}
h1 {font-size:3rem;line-height:1.25;}
h2 {font-size:2.8rem; line-height:1.25;}
h3 {font-size:2.4rem; line-height:1.25;}
h4 {font-size:2.2rem; line-height:1.25;}
h5 {font-size:2rem; line-height:1.25;}
h6 {font-size:1.8rem; line-height:1.25;}
h1.page-title, .section-title {font-size:3.4rem;font-family: var(--font-title);color: var(--color-primary);}
.section-title.section-title--large {font-size:4.4rem;}

.title {font-family: var(--font-title);color: var(--color-primary);}
.sub-title { font-family: var(--font-sub-title); letter-spacing: var(--font-sub-title-spacing); font-weight: var(--font-sub-title-weight); font-style: var(--font-sub-title-style);  text-transform: uppercase;}
.highlight { font-family: var(--font-highlight); font-weight: var(--font-highlight-weight); font-style: var(--font-highlight-style); text-transform: none;}

header.btn-right { display: flex; justify-content: space-between; align-items: center; gap: 20px;}

@media(max-width:980px) {
  h1 {font-size:2.8rem; line-height:1.25;}
  h2 {font-size:2.6rem; line-height:1.25;}
  h3 {font-size:2.4rem; line-height:1.25;}
  h4 {font-size:2.2rem; line-height:1.25;}
  h5 {font-size:1.8rem; line-height:1.25;}
  h6 {font-size:1.7rem; line-height:1.25;}
  h1.page-title, .section-title {font-size:3rem;}
  .section-title.section-title--large {font-size:3.4rem;}


  header.btn-right { flex-direction: column;}

}

@media(max-width:667px) {
  h1 {font-size:2.6rem; line-height:1.25;}
  h2 {font-size:2.4rem; line-height:1.25;}
  h3 {font-size:2.2rem; line-height:1.25;}
  h4 {font-size:2rem; line-height:1.25;}
  h5 {font-size:1.8rem; line-height:1.25;}
  h6 {font-size:1.7rem; line-height:1.25;}
  h1.page-title, .section-title {text-wrap-style:balance;text-align: center;font-size: 2.6rem;}
  .section-title.section-title--large {font-size:3rem;}

}

/* ========================================================================== 
#TEXT 
========================================================================== */

.text {font-size: 1.5rem;color: var(--color-primary);line-height: 1.5;}
.text.text--large {font-size: 1.8rem;line-height: 1.65;}
.text.text--small { font-size: 1.3rem; line-height: 1.4;}
.text.text--balance{ text-wrap-style:balance;}
.text.text--pretty{ text-wrap-style:pretty;}
.text strong { font-weight: 700;}
.text a:not(.m-btn){color: var(--color-secondary-alt);border-bottom: 1px solid;}
.text a:not(.m-btn):hover{color: var(--color-secondary-alt-hover);}

.text ul {display: flex;flex-direction: column;gap: 8px;list-style: disc;list-style-position: outside;padding-left: 15px;}
.text ul.tick {gap: 15px;padding-left: 0;}
.text ul.tick li {padding-left: 40px;position: relative;display: flex;align-items: baseline;}
.text ul.tick li::before {content: "\f058";font-family: var(--fa-style-family,"Font Awesome 6 Free");font-weight: var(--fa-style,900);position: absolute;left: 0;font-size: 2.4rem;color: var(--color-primary);line-height: initial;}

.text ul.tick.aqua li::before { color: var(--color-aqua);}
.text ul.tick-x li::before {content: "\f057";}


.text ul.tick.big { gap: 20px;}
.text ul.tick.big li {font-size: 1.8rem;align-items: center;padding-left: 45px;} 
.text ul.tick.big li::before {font-size: 2.8rem;color: #fff;}

.text img {max-width:100% !important; height:auto;}
.text iframe {max-width:100% !important;}

.text img[align="left"] { padding: 10px 20px 20px 0;}
.text img[align="right"] { padding: 10px 0px 20px 20px;}


.text-box {display: grid;width: 100%;padding: 30px 30px;background: #eee;height: 100%;color: var(--color-primary);}
.text-box .highlight {font-size: 3.4rem;}
.text-box .text {color: var(--color-primary);}

@media(max-width:980px){
  .text.text--large {font-size: 1.6rem;}
  .text { font-size: 1.5rem;}
  .text ul.tick.big li {font-size: 1.6rem;align-items: center;padding-left: 35px;} 
  .text ul.tick.big li::before {font-size: 2.4rem;color: #fff;}

  .text-box .highlight {font-size: 3rem;}
}

@media(max-width:667px){
  .text.text--large {font-size: 1.6rem;}
  .text ul.tick.big li {font-size: 1.5rem;} 
  .text ul.tick.big li::before {font-size: 2.2rem;}

}

/* ========================================================================== 
BUTTONS 
========================================================================== */

.btn-box {display:flex;flex-wrap:wrap;gap:20px;width: 100%;}
.btn-box.center {justify-content:center;}
.btn-box.btn-box--row { flex-direction: row;}
.btn-box.btn-box--row * { flex: 1;}

.m-btn {pointer-events:auto;cursor:pointer;background:var(--color-secondary);border:none;border-radius: 5px;padding: 12px 20px;margin:0;font-family:inherit;font-size:inherit;position:relative;display:inline-block;font-size: 1.6rem;color:#000000;text-align:center;transition:all ease-in-out .3s !important;line-height:1.5;text-shadow:none;font-weight: 500;font-family: var(--font-title);}

.m-btn.m-btn--small { padding: 8px 15px; font-size: 1.4rem;}
.m-btn:has(i){ display: inline-flex; gap: 10px; justify-content: center; align-items: center;}
/* Primary Button */
.m-btn.m-btn--primary {color: #fff;background: var(--color-secondary);}
.m-btn.m-btn--primary:hover {background: var(--color-primary);}

/* Primary Button */
.m-btn.m-btn--primary-o {color: var(--color-primary);background: transparent;border: 1px solid #ddd;}
.m-btn.m-btn--primary-o:hover {background: var(--color-primary);color: #fff;}

/* Primary Button */
.m-btn.m-btn--primary-tel {color: var(--color-primary);background: transparent;border: 1px solid var(--color-primary);max-height: 48px; font-weight: 400;}
.m-btn.m-btn--primary-tel:hover {cursor: pointer;}

/* Primary Button */
.m-btn.m-btn--primary-link {color: var(--color-primary);background: transparent;border: 1px solid var(--color-primary);max-height: 48px;}
.m-btn.m-btn--primary-link:hover {cursor: pointer;}

/* Primary Button */
.m-btn.m-btn--primary-alt {color: #fff; background: var(--color-secondary);}
.m-btn.m-btn--primary-alt:hover {background: var(--color-primary-alt); color:var(--color-primary);}

.m-btn:disabled { opacity: 0.5; cursor: not-allowed;}

@media (max-width:960px) {
  .m-btn {padding:10px 20px; font-size:1.5rem;}
}

@media (max-width:667px) {
  .m-btn{padding: 8px 15px; font-size:1.4rem;}
  .m-btn.m-btn--primary-tel { max-height: 37px;}
  .btn-box.btn-box--row{ flex-direction: column-reverse;}
}

/* ========================================================================== 
#TOP HEADER 
========================================================================== */

#top {position: fixed;top: 0;left: 0;width: 100%;z-index: 1000;transition: all .3s ease-in-out;max-height:  calc(var(--vh100) - var(--topbar-height));}
#top .topbar {position: relative;z-index: 999;height: var(--topbar-height);border-bottom: 1px solid transparent;transition: all .3s ease-in-out;}
body:not(.transparent) #top .topbar, body.scroll #top .topbar, body.menu-active #top .topbar {background-color: var(--color-secondary);}

body.transparent:not(.scroll) #top .topbar{ background-color: transparent;}

.top-container{display: flex;height: var(--topbar-height);align-items: center;gap: 30px;transition: all .3s ease-in-out;}

.top-container .menu-btn button {all:unset;display: flex;gap: 5px;align-items: center;cursor: pointer;}
.top-container .menu-btn .menu-btn-text{color: #fff;font-size: 1.6rem;font-weight: 400; display: none;}

.top-container .logo-container {display: flex;flex: 1; justify-content: flex-start;}
.top-container .logo-container img {height: calc(var(--topbar-height) / 2.2);width: auto;max-height: 50px;margin-top: -7.5px;transition: all .3s ease-in-out;}

.top-container .navigation-container {display: flex;justify-content: center;}
.top-container nav { transition: all .3s ease-in-out;}
.top-container nav > ul {display: flex;gap: 30px;position: relative;}
.top-container nav > ul > li { position: relative;}
.top-container nav > ul > li > a {color: #fff;font-weight: 500;font-size: 1.8rem;padding: 0px 0;transition: all .3s ease-in-out;position: relative;display: flex;align-items: center;}
.top-container nav ul ul > li:first-child { margin-top: 14px;}
.top-container nav ul ul > li:last-child { margin-bottom: 14px;}
.top-container nav ul ul > li > a {color: var(--color-primary);font-size: 1.8rem;font-weight: 400;padding: 8px 0;display: grid;transition: all .3s ease-in-out;/* border-bottom: 1px solid rgb(0 0 0 / 5%); */}
.top-container nav ul ul > li > a:hover { border-color: rgb(0 0 0 / 15%);}
.top-container nav ul ul > li:last-child > a { border-bottom: none;}

.top-container .search-btns-container {display: flex;justify-content: flex-end;border-left: 1px solid rgb(255 255 255 / 25%);padding-left: 30px;}
.top-container .search-btns-container a {color: #fff;font-weight: 500;font-size: 1.8rem;padding: 0px 0;transition: all .3s ease-in-out;position: relative;display: flex;flex-direction: row;gap: 10px;align-items: center;/* padding: 8px 20px; *//* border: 1px solid #fff; *//* border-radius: 20px; */cursor: pointer;}
.top-container .search-btns-container a i{font-size: 2.4rem;color: #fff;transition: all .3s ease-in-out;}
.scroll .top-container .search-btns-container a i, body:not(.transparent) .top-container .search-btns-container a i{color: #fff;}
.top-container .search-btns-container > a:hover {color: var(--color-primary-alt);}
.top-container .search-btns-container > a.myhomes.active {color: var(--color-primary-alt);}

.top-container .search-btns-container a.disabled { opacity: 0.5; cursor: not-allowed;}

.top-container .search-btns-container a.searchsavedbtn i {
    color: var(--color-primary-alt)!important;
}

.menu-btn {display: none;} 
.menu-btn .lines {position: relative;display: inline-block;width: 34px;height: 20px;}
.menu-btn .lines span{top: 50%;display: block;transition-timing-function: cubic-bezier(.55,.055,.675,.19);transition-duration: 75ms;}
.menu-btn .lines span:before {top: -7px;}
.menu-btn .lines span:after {bottom: -7px;} 
.menu-btn .lines span:after, .menu-btn .lines span:before {display: block;content: "";}
.menu-btn .lines span, .menu-btn .lines span:after, .menu-btn .lines span:before {position: absolute;width: 34px;height: 2px;transition-timing-function: ease;transition-duration: .15s;transition-property: transform;background-color: #fff;}
.menu-btn .active .lines span, .menu-btn.active .lines span:after, .menu-btn.active .lines span:before {background-color: var(--color-primary-alt);}
.menu-btn .active .lines span { transition-delay: .12s;transition-timing-function: cubic-bezier(.215,.61,.355,1);transform: rotate(45deg);}
.menu-btn .active .lines span:before {top: 0;transition: top 75ms ease,opacity 75ms ease .12s;opacity: 0;background-color: var(--color-primary-alt);}
.menu-btn .active .lines span:after {bottom: 0;transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;transform: rotate(-90deg);background-color: var(--color-primary-alt);}
 
 

/* search page nav */
 

@media(min-width:981px){ 

  body.has-search.scroll:not(.map-active) .top-container nav { opacity: 0; display: none;}
  body.has-search .top-container .search-btns-container {gap: 40px;}
  body.has-search .top-container .search-btns-container a:not(.myhomes) { display: none; }
  body.has-search.scroll:not(.map-active) .top-container .search-btns-container{ border-color: transparent;}
  body.has-search.scroll:not(.map-active) .top-container .search-btns-container a:not(.myhomes) { display: flex; }
  body.has-search.scroll:not(.map-active) .top-container .search-btns-container a:not(:last-child)::after{position: absolute;content: "";top:0px;right: -30px;width: 1px;height: 100%;/* background:rgb(255 255 255 / 25%); */}
  .top-container .search-btns-container a#MapToggle { display: none;}




  .top-container .logo-container img.mobile { display: none;}
  .top-container nav > ul > li > a:hover, .top-container nav > ul > li > a.active{color: var(--color-primary-alt);}


  /* submenu */
  .top-container nav ul ul {display: grid;position: absolute;top: 40px;left: 0;min-width: 200px;width: max-content;opacity: 0;visibility: hidden;height: 0;align-content: flex-start;z-index: -1;background: #fff;padding: 0 20px;border-radius: 5px;box-shadow: 1px 1px 2px rgb(0 0 0 / 10%);}
  .top-container nav ul ul.show {height: auto;opacity: 1;visibility: visible; z-index: 1;}
  .top-container nav ul ul::before {--height: 20px;content: "";position: absolute;top: calc(0px - var(--height));left: 0;width: 100%;height: var(--height);}
  .top-container nav ul > li:has(ul):last-child > ul { left: initial; right: -20px; }
  .top-container nav ul ul::after{content: "";position: absolute;width: 0;height: 0;border-left: 10px solid transparent;border-right: 10px solid transparent;border-bottom: 10px solid #fff;left: 15px;top: -10px;;opacity: 0;}

  .top-container nav ul > li:has(ul):last-child > ul::after {left: initial;right: 15px;}

}

@media(max-width:980px){
  body:not(.menu-active, .search-active) #top {position: relative;}
  body:not(.menu-active, .search-active).transparent #top {position: relative;height: 0;}

  body.map-active.has-search #top,  body.search-active #top {position: fixed;}

  body.transparent:not(.menu-active, .search-active) #top .topbar{ background-color: transparent;}
  body.transparent.menu-active #top .topbar,   body.transparent.search-active #top .topbar{background-color: var(--color-secondary);}

  

  .menu-btn {display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;color: #fff;height: 100%;} 
  .top-container { gap: 0px;}
  .top-container .logo-container{ justify-content: center;}
  .top-container .logo-container img { max-height: 50px;} 
  .top-container .logo-container img.desktop { display: none;}

  .top-container nav {display: flex;position: fixed;top: var(--topbar-height);left: -100%;width: 100%;grid-column: auto;justify-content: flex-start;background: var(--color-secondary);height: calc(var(--vh100) - (var(--topbar-height) + var(--bottombar-height)));padding: 20px;transition: left .3s ease-in-out;}
  .top-container nav.open {left: 0; overflow-y: scroll;}
  .top-container nav > ul{display: flex;width: 100%;flex-direction: column;gap: 0;}
  .top-container nav > ul > li > a {display: flex;color: #fff;padding: 8px 0;border-bottom: 1px solid rgb(255 255 255 / 10%);font-size: 1.8rem;letter-spacing: 0;}
  .top-container nav > ul > li > a.active{color: var(--color-primary-alt);}
  .top-container nav > ul > li:last-child > a { border: none;}

  .top-container nav ul ul {display: grid;position: relative;width: 100%;opacity: 0;visibility: hidden;height: 0;align-content: flex-start;transition: all .2s ease-in-out;z-index: -1;background: rgb(255 255 255 / 15%);padding: 0 20px;}
  .top-container nav ul ul.show {height: auto;opacity: 1;visibility: visible;z-index: 1;}
  .top-container nav ul ul > li > a {padding: 6px 0;border-color: rgb(255 255 255 / 10%);color: #fff;font-size: 1.6rem;}
  .top-container nav ul ul > li:first-child { margin-top: 10px;}
  .top-container nav ul ul > li:last-child { margin-bottom: 10px;}

  .top-container nav > ul > li:has(ul) > a {padding-right: 40px;}
  .top-container nav > ul > li:has(ul) > a::after {position: absolute;content: "\2b";font-family: "Font Awesome 6 Free";font-weight: 900;font-size: 1.6rem;right: 15px;color: #fff;transition: all .3s ease-in-out;} 
  .top-container nav > ul > li:has(ul.show) > a::after{ content: "\f068";}

  .top-container .search-btns-container {padding-left: 0;border: none;position: absolute;right: 20px;}
  .top-container .search-btns-container a{ display: none;}
  .top-container .search-btns-container a i {font-size: 1.8rem;}
  .top-container .search-btns-container a#MapToggle.map-active { display: flex;}

  .top-container nav::-webkit-scrollbar {width: 3px;}
  /* Track */
  .top-container nav::-webkit-scrollbar-track {background:var(--color-secondary-hover); }
  /* Handle */
  .top-container nav::-webkit-scrollbar-thumb {background:var(--color-secondary-alt); }
  /* Handle on hover */
  .top-container nav::-webkit-scrollbar-thumb:hover {background:var(--color-secondary-alt); }
}

@media(max-width:768px){
}

@media(max-width:667px){
  .top-container .menu-btn button { gap: 0;}
  .top-container .menu-btn .menu-btn-text { display: none;}
	.menu-btn .lines {width: 25px;height: 20px;}
  .menu-btn .lines span, .menu-btn .lines span:after, .menu-btn .lines span:before {width: 25px;height: 2px;}
  .top-container .search-btns-container a { gap: 5px;}
  .top-container .search-btns-container a, .top-container .search-btns-container a i{ font-size: 1.5rem;}
  .top-container .search-btns-container a#MapToggle.map-active{  display: none;}

}

@media(max-width:480px){
}

/* ========================================================================== 
Bottom Navigation Bar 
========================================================================== */

#bottombar { display: none;}

@media(max-width:980px){

  #bottombar {display: block; position: fixed;bottom: 0;left: 0;z-index: 999;width: 100%;background: var(--color-secondary);border-top: 1px solid rgb(255 255 255 / 10%);}
  #bottombar nav ul{display: flex;height: var(--bottombar-height);justify-content: space-evenly;align-items: center;}
  #bottombar nav ul li {flex: 25%;height: 100%;position: relative;}
  #bottombar nav ul li:not(:last-child){ border-right: 0px solid rgb(255 255 255 / 10%);}
  #bottombar nav ul li a {display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;color: #fff;height: 100%;gap: 5px;cursor: pointer; transition: none;}
  #bottombar nav ul li a .icon {height: 25px;font-size: 2rem;}
  #bottombar nav ul li a.active .icon { color: var(--color-primary-alt);}
  #bottombar nav ul li a .btn-text {color: #fff;font-size: 1.4rem;line-height: normal;}
  #bottombar nav ul li button {all:unset;display: flex;align-items: center;cursor: pointer;flex-direction: column;gap: 5px;position: relative;top: 2px;}
  #bottombar nav ul li button .menu-btn-text {color: #fff;font-size: 1.4rem;line-height: normal;}

  #bottombar nav ul li a.disabled, #bottombar nav ul li a.disabled .btn-text{ color: rgba(255,255,255,0.5);}
  

  body #bottombar nav ul {height: calc(var(--bottombar-height)); border-top: 1px solid rgb(255 255 255 / 10%);}

  #bottombar nav ul li a.searchsavedbtn i { color: var(--color-primary-alt);}
}


@media(max-width:667px){ 
  #bottombar nav ul li button .menu-btn-text, #bottombar nav ul li a .text { font-size: 1.3rem;}
  body #bottombar nav ul li a, body #bottombar nav ul li button{ padding-bottom: env(safe-area-inset-bottom);}

}

@media(max-width:480px){
  #bottombar nav ul li a .icon {height: 22px; }
  #bottombar nav ul li a .btn-text { font-size: 1.3rem;}
  .menu-btn .lines { height: 16px;}
  #bottombar nav ul li button .menu-btn-text, #bottombar nav ul li a .text { font-size: 1.2rem;}
}


/* ========================================================================== 
SEARCH 
========================================================================== */

.searchbar {position: relative;height: auto;max-height:  calc(var(--vh100) - var(--topbar-height));width: 100%;top:0;left: 0;background: #fff;padding: 20px 0;z-index: 999;}
.searchbar.overflow { overflow-y: scroll;}

#topsearch.searchbar {border-bottom: 1px solid #ddd;}

.searchbar .searchbox{position: relative;}
/* width */
.searchbar::-webkit-scrollbar {width: 5px; }
/* Track */
.searchbar::-webkit-scrollbar-track {background:#f4f4f4; }
/* Handle */
.searchbar::-webkit-scrollbar-thumb {background:var(--color-secondary-alt); }
/* Handle on hover */
.searchbar::-webkit-scrollbar-thumb:hover {background:var(--color-secondary-alt); }


.floatingbar{
  background-color:var(--color-secondary);
  border-radius: 0 5px 5px 0;
  width:auto;
  max-width: 210px;
  box-sizing: border-box;
  display: grid;
  position: fixed;
  bottom: 50px;
  z-index: 1;
  padding: 10px 15px;
}

.floatingbar p{
  font-family: var(--font-title);
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  /* display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center; */
}

.floatingbar.surveyPrompt { display: none;}
.floatingbar.surveyPrompt.visible { display: grid;}

.floatingbar a.close {position: absolute;width: 30px;height: 30px;right: -12.5px;top: -12.5px;background: var(--color-primary);border-radius: 50%;color: #fff;display: flex;align-items: center;justify-content: center;font-size: 1.8rem; cursor: pointer;}



.floatingbar p i { position: relative; top: 1px;}

.floatingbar p span { 
  text-decoration: underline;
}

@media(max-width:980px){
  .floatingbar { 
    bottom: calc(var(--bottombar-height) + 20px);
  }
}

@media(max-width:667px){
  .floatingbar{
    max-width: 180px;
  }
  .floatingbar p{
    font-size: 1.4rem;
  }

  .floatingbar a.close { 
    font-size: 1.6rem; 
    width: 25px; 
    height: 25px;
  }
}

@media(min-width:981px){
  
  body:not(.has-search-simple).hide-search .searchbar:not(.searchbar--agent){ display: none;}

  #topsearch.homesearch { display: none;}

  .searchbar.show .searchbox {opacity: 1;visibility: visible;height: auto;z-index: 1;}

  .searchbar:not(#topsearchsimple).map-active  {
    position: fixed;
    top: var(--topbar-height);
    transition: none;
  }
  .searchbar:not(#topsearchsimple,.map-active).scroll {position: fixed;top: -95px;transition: all .3s ease-in-out;padding: 15px 0px;}
  .searchbar:not(#topsearchsimple).scroll.show { top: var(--topbar-height);}

  #topsearchoverlay  {position: fixed;width: 100%;height: var(--vh100);top: var(--topbar-height);left: 0;z-index: 9;background-color:rgba(0, 0, 0, 0);transition: all 0s ease-in-out;visibility: hidden;opacity: 0;}
#topsearchoverlay.show {visibility: visible;opacity: 1; background-color:rgba(0, 0, 0, .4); visibility: visible;}

}

@media(max-width:980px){
  #topsearchoverlay { top: 0;} 

 


  #topsearch.searchbar {
    display: flex;
    position: fixed;
    top: var(--topbar-height);
    right: -100%;
    width: 100%;
    left: initial;
    grid-column: auto;
    justify-content: flex-start;
    background: #fff;
    height: calc(var(--vh100) - (var(--topbar-height) + var(--bottombar-height)));
    padding: 25px 5px;
    transition: right .3s ease-in-out;
    max-height: 100%;
  }
  #topsearch.searchbar .inner { width: 100%;}

  #topsearch.searchbar.show{ 
    right: 0;
    overflow-y: scroll;
  }
}

@media(max-width:768px){

}

/* ========================================================================== 
HOME VIDEO 
========================================================================== */

#homeslider{height: calc(var(--vh100));width: 100%;position: relative;}
body:not(.transparent) #homeslider { height: calc(var(--vh100) - var(--topbar-height)); position: relative;}

#homeslider video { height: 100vh; height: 100%; width: 100%;object-fit: cover;position: absolute;}

#homeslider .overlay {position: absolute;bottom: 0;left:0;z-index: 1;display: flex;flex-direction: column;align-items: center;justify-content: center;width: 100%;height: calc(100% - 0px);padding: 100px 2% 100px 2%;text-align: center;color: #fff;gap: var(--grid-gap--large);background-color: rgb(0 0 0 / 40%);}


#homeslider .overlay-txt h1 {font-size: 5.8rem;position: relative;text-wrap-style:balance;font-weight: 500;font-family: var(--font-title);text-shadow: 1px 1px 5px rgb(0 0 0 / 20%);}
#homeslider .overlay-txt .subheading {font-size: 2rem;font-weight: 500;margin-top: 10px;}
#homeslider .overlay-txt .m-btn { font-size: 1.6rem;}

#homeslider .owl-item { height: calc(var(--vh100) - var(--topbar-height)); }
#homeslider .owl-item .img { width:100%; height:100%; background-repeat:no-repeat; background-position:center; background-size:cover; }
#homeslider .owl-item .img:after {content: "";position: relative;display: block;width: 100%;height: 100%;top: 0;left: 0;background: rgb(0 0 0 / 30%);}

#homeslider .owl-nav { display:none; }
#homeslider .owl-dots {z-index:1;position:absolute;bottom: 65px;height:5px;text-align:center;width: auto;left: 0;display: flex;width: 100%;align-items: center;justify-content: center;gap: 10px;}
#homeslider .owl-dot {display:inline-block; display:inline;zoom:1;width: 15px;height: 15px;margin: 0;vertical-align:top;}
#homeslider .owl-dot span { float:left; width:100%; height:100%;background: transparent; cursor:pointer;border-radius: 50%;border: 2px solid #fff;}
#homeslider .owl-dot.active span, #homeslider .owl-dot span:hover {background: var(--main-green);border-color: var(--main-green);}


#homeslider.arrow {position: absolute;bottom: 40px; z-index: 1;}
#homeslider.arrow span {position: relative;display: block; cursor: pointer;}
#homeslider.arrow i {font-size: 2.4rem;color: white;} 



@media (min-width:981px){
  #home-slider.full { height: var(--vh100);}
  .transparent #home-slider.full:before {content: "";position: absolute;top: 0px;height: 300px;width: 100%;background: -moz-linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1); z-index: 1; }
}

@media (max-width:980px){
  #homeslider{height: calc(100svh - var(--bottombar-height))}
  #homeslider .overlay {padding: var(--topbar-height) 20px 0px;}
  #homeslider .overlay-txt h1 {font-size: 4.4rem;}
  #homeslider .overlay-txt .subheading { font-size: 1.8rem;}
}

@media (max-width:768px){
  #homeslider .overlay-txt h1 {font-size: 3.8rem;}
  #homeslider .overlay-txt .subheading { font-size: 1.7rem;}
}

@media (max-width:480px){
  #homeslider .overlay-txt{ text-wrap-style:balance;}
  #homeslider .overlay-txt h1 {font-size: 3.8rem;line-height: 3.8rem;text-wrap-style:pretty;}
  #homeslider .overlay-txt .subheading { font-size: 1.6rem;}
  #homeslider .overlay-txt .btn-box { flex-direction: column; gap: 5px;}
  #homeslider .overlay-txt .m-btn { font-size: 1.3rem;}
}



/* ====================================================================== 
CONTENT
====================================================================== */

#content { padding: 80px 0;}
#content.padding--60 { padding: 60px 0;}
#content.padding--50 { padding: 50px 0;}
#content.padding--40 { padding: 40px 0;}
#content.padding--30 { padding: 30px 0;}
#content.padding--20 { padding: 20px 0;}


#content.banner-image  {padding:100px 0; background-position: center;background-repeat: no-repeat; background-size: cover; position: relative;}
#content.banner-image.large { padding: 150px 0;}
#content.banner-image.fixed { background-attachment: fixed; background-position: bottom;}
#content.banner-image::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 1;background: rgb(0 0 0 / 60%);}
#content.banner-image.overlay-10::before { background: rgb(0 0 0 / 10%);}
#content.banner-image header, #content.banner-image .btn-box { position: relative; z-index: 2;}
#content.banner-image header * {color: #fff;}
#content.banner-image header h1 { font-size: 4.4rem;}

#content.bg-image  {padding:100px 0; background-position: center;background-repeat: no-repeat; background-size: cover; position: relative;}
#content.bg-image.large { padding: 150px 0;}
#content.bg-image.fixed { background-attachment: fixed; background-position: bottom;}
#content.bg-image::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 1;background: rgb(0 0 0 / 60%);}
#content.bg-image.overlay-10::before { background: rgb(0 0 0 / 10%);}
#content.bg-image.overlay-20::before { background: rgb(0 0 0 / 20%);}
#content.bg-image.overlay-30::before { background: rgb(0 0 0 / 30%);}
#content.bg-image.overlay-40::before { background: rgb(0 0 0 / 40%);}
#content.bg-image.overlay-50::before { background: rgb(0 0 0 / 50%);}
#content.bg-image.overlay-70::before { background: rgb(0 0 0 / 70%);}
#content.bg-image.overlay-80::before { background: rgb(0 0 0 / 80%);}
#content.bg-image.overlay-90::before { background: rgb(0 0 0 / 90%);}

#content.bg-image.bg-image-half-right { }
#content.bg-image.bg-image-half-right::before { width: 50%; left: 50%;}


.page-divide {max-width: 1430px;margin-left: auto;margin-right: auto;position: relative;}
.page-divide.small { max-width: 1100px;}
.page-divide::after { position: absolute; content: ""; background-color: #ddd; height: 1px; width: calc(100% - 60px); left: 30px;}

@media(max-width:980px){ 
  #content { padding: 60px 0;}
  #content.banner-image.large , #content.bg-image.large{ padding: 100px 0;}
  #content.banner-image.fixed, #content.bg-image.fixed {background-attachment: initial;}
  .page-divide::after { position: absolute; content: ""; background-color: #ddd; height: 1px; width: calc(100% - 40px); left: 20px;}
  #content.banner-image header h1 { font-size: 3.8rem;}
}

@media(max-width:667px){
  #content.banner-image header h1 { font-size: 3rem;}

}

.content-info {display: flex;flex-direction: row;gap: 40px;position: relative;z-index: 1;}
.content-info .col-2{ flex: 1;}
.content-info .col-1{ flex: 1;}
.content-info .col-33{ flex: 1;}
.content-info .col-66{ flex: 2;} 
.content-info .width-50 { width: 50%;}
.content-info.center{align-items: center;}
.content-info.just-center{ justify-content: center;}
.content-info.reverse{ flex-direction: row-reverse;}
.content-info.column{ flex-direction:column;}
.content-info.column.reverse{ flex-direction:column-reverse;}
.content-info .padding { padding: 40px 60px;}

.content-info.nogap { gap: 0px;}
.content-info.gap--lg{ gap: 60px;}
.content-info .img{position: relative;overflow: hidden;display: flex;}
.content-info .img img{max-width: 100%;object-fit: cover;object-position: center;}
.content-info .img.min img { min-height: 400px;}
.content-info .img.max { max-height: 500px;}
.content-info .img.contain img {object-fit: contain;}

.content-info .img.img--video {align-items: center;justify-content: center;}
.content-info .img.img--video::before {content: "";position: absolute;width: 100%;height: 100%;left: 0;top: 0;background: #000;opacity: .1;z-index: 1; transition: all .3s ease-in-out;}
.content-info .img.img--video .play-btn {position: absolute;z-index: 2;display: flex;flex-direction: column;align-items: center;gap: 0px;font-size: 1.6rem;color: #fff;}
.content-info .img.img--video .play-btn i {font-size: 6rem; transition: all .3s ease-in-out;}

.content-info .img.img--video:hover { cursor: pointer;} 
.content-info .img.img--video:hover::before { opacity: .3;}
.content-info .img.img--video:hover .play-btn i { font-size: 7rem;}


.social-links-inline{display: flex;flex-direction: row;gap: 15px;}
.social-links-inline li a{display: flex;align-items: center;justify-content: center;width: 48px;height: 48px;border: 1px solid #ddd;border-radius: 50%;font-size: 2rem;transition: all .3s ease-in-out;color: var(--color-secondary);}
.social-links-inline li a:hover {background: #fff;color: var(--color-primary);}



.content-info .text { display: inline-block; width: 100%;}
.content-info .bg-overflow-left {background-position: center;background-repeat: no-repeat;background-size: cover;}

.content-info.divide-top { padding-top: 60px; margin-top: 60px; border-top: 1px solid #ddd; }
.content-info.divide-bottom { padding-bottom: 60px; margin-bottom: 60px; border-bottom: 1px solid #ddd; }


@media(max-width: 980px) {
  .content-info { padding: 0 20px; text-align: center;}
  .content-info, .content-info.reverse,.content-card, .content-info.column.reverse {flex-direction: column;gap: 20px;}
  .content-info.mobile-reverse { flex-direction: column-reverse;}
  .content-info .col-2 , .content-card .col-2, .content-info .width-50 { width: 100%; }
  .content-card ul li { font-size: 1.4rem;}
  .content-info .text-box .highlight { font-size: 3rem;}
  .content-info.gap--lg{ gap: 30px;}  
  .content-info .padding { padding: 25px 25px;}
  .content-info .bg-overflow-left { display: none; }
  .content-info .img.max {max-height: 350px;}

}

@media(max-width: 667px) {

  .content-info .text:not(.left), .content-info .title:not(.left), .content-info .sub-title:not(.left){ text-align: center;}
  .content-info .text:has(ul) ul{text-align: left;}
  .content-info .divide:not(.left)::after { left: calc(50% - 30px);}
  .content-info .btn-box { justify-content: center;}
  .content-info .img.max {max-height: 250px;}

  .content-info.center .social-links-inline { justify-content: center;}

}
/* ====================================================================== 
notification page
====================================================================== */

.notify {position: fixed;top: calc(var(--topbar-height) + 20px);;right: 20px; z-index: 9;background-color: var(--color-success);color: #fff;padding: 10px 15px;border-radius: 5px;font-size: 1.6rem; display: none;}
@media(max-width:980px){
  .notify {position: fixed;bottom: calc(var(--bottombar-height));top: initial;right: 0;width: 100%;border-radius: 0px;text-align: center;font-weight: 600;}

}

/* ====================================================================== 
search page
====================================================================== */

.search-top {padding: 25px 0 25px;container-type: inline-size;margin-bottom: 25px;}
.search-top:not(.no-results) header {display: flex;justify-content: space-between;align-items: flex-start;flex-wrap: wrap;gap: 20px;padding: 0 0 25px 0;border-radius: 0px;}
.search-top:not(.no-results) .search-info {display: flex;gap: 5px;flex-direction: column-reverse;}
.search-top:not(.no-results) .search-info h1 {color: var(--color-primary);font-weight: 500;font-size: 2.8rem;}
.search-top:not(.no-results) .search-info .text{position: relative;}
.search-top:not(.no-results) .search-info .text.map{ display: none;}


@media(max-width:980px) { 
  .search-top:not(.no-results) .search-info h1 {font-size: 2.4rem; text-wrap-style: pretty;}
}

@media(max-width:768px) { 
  .search-top:not(.no-results) header {flex-direction: column-reverse;align-items: center;text-align: center;}
}

@media(max-width:667px) { 
  .search-top .search-info h1 {font-size: 2.4rem;}
}

/* top search */

.search-paging {display: flex;gap: 10px;align-items: center;flex-direction: row-reverse;}
.search-paging .pagestop {display: flex;gap: 10px;align-items: center;}

.search-paging select {font-family: var(--font-title);border:none;border: 1px solid #ddd;height: 50px;padding: 0px 40px 0 15px;-webkit-appearance: none;-moz-appearance:none;appearance:none;cursor: pointer;width:100%;font-size: 1.6rem;position:relative;z-index: 7;color: var(--color-primary);font-weight: 400;width: 100%;background: none;border-radius: 5px;}
.search-paging .selbox {position: relative;display: flex;align-items: center;}
.search-paging .selbox i {position: absolute;right: 15px;font-size: 1.6rem;color: var(--color-primary);}

.search-paging a {cursor: pointer;background: none;border: none;border-radius: 6px;padding: 10px 15px;color: var(--color-primary);font-size: 1.5rem;display: flex;align-items: center;justify-content: center;gap: 10px;transition: all .3s ease-in-out;border: 1px solid #ddd;height: 50px;width: 50px;}
.search-paging a i {font-size: 1.6rem;color: var(--color-primary);}
.search-paging a span  {display: none;}

.search-paging .pagestop li:not(.PageChange){ display: none;}

.search-top-buttons {display: flex;gap: 10px;}
.search-top-buttons a {cursor: pointer;background: #fff;border: 1px solid var(--color-primary);border-radius: 5px;padding: 12px 15px;color: var(--color-primary);font-size: 1.6rem;display: flex;align-items: center;gap: 10px;transition: all .3s ease-in-out;font-family: var(--font-title);font-weight: 400;}
.search-top-buttons a i {font-size: 1.8rem;}

.search-top-buttons a.searchsavebtn .icon {display: flex; }
.search-top-buttons a.searchsavebtn:not(.disabled) i { animation: bellshake .5s cubic-bezier(.36,.07,.19,.97); backface-visibility: hidden; transform-origin: top right; animation-iteration-count: 2}
.search-top-buttons a.searchsavebtn:not(.disabled):hover i { animation: bellshakehover .5s cubic-bezier(.36,.07,.19,.97); backface-visibility: hidden; transform-origin: top right;  animation-iteration-count: 2; }

.search-top-buttons a.searchsavedbtn {background: var(--color-primary);color: var(--color-light);}

.search-top-buttons a.searchsavebtn.disabled {color: var(--color-primary-transparent); border-color: var(--color-primary-transparent); cursor: not-allowed; }
.search-top-buttons a.searchsavedbtn.disabled  {background: var(--color-primary-transparent);color: var(--color-light); cursor: not-allowed; border-color: var(--color-primary-transparent);}


.search-top-buttons a .open { display: none}
.search-top-buttons a .closed { display: inline-block;;}
.search-top-buttons a.map-active .open { display: inline-block;;}
.search-top-buttons a.map-active .closed { display: none;}
.search-top.map-active .search-top-buttons #view-search, .search-top .search-top-buttons #view-search { display: none;}

.search-top.no-results .search-utilities { margin-top: 20px;}

.search-utilities {display: flex;width: 100%;justify-content: space-between;align-items: center;margin-top: 10px;gap: 5px;flex-wrap: wrap;}
.search-utilities .search-buttons {display: flex;gap: 0px;align-items: center;border: 1px solid #ddd;border-radius: 5px;text-wrap: nowrap;}
.search-utilities .search-buttons a {cursor: pointer;border-radius: 0px;padding: 12px 15px;color: var(--color-primary);font-size: 1.6rem;display: flex;align-items: center;gap: 10px;transition: background .3s ease-in-out;border-left: 1px solid #ddd;font-family: var(--font-title);}
.search-utilities .search-buttons a:first-child {border-left: 0;border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
.search-utilities .search-buttons a:last-child {border-right: 0;border-top-right-radius: 5px;border-bottom-right-radius: 5px;}

.search-utilities .search-buttons a:hover { background-color: #f4f4f4; }
.search-utilities .search-buttons a i {font-size: 1.8rem;}

.search-utilities .search-buttons a.active, .search-utilities .search-buttons a.map-active {background-color: #eee;font-weight: 400; }


.search-utilities .search-buttons a.search-btn-2 { background-color: var(--color-primary);}
.search-utilities .search-buttons a.search-btn-2 i { font-size: 1.5rem;}
.search-utilities .search-buttons a.search-btn-2.active {opacity: 0;}

.search-utilities .search-buttons a .open { display: none} 
.search-utilities .search-buttons a .closed { display: inline-block;;}
.search-utilities .search-buttons a.map-active .open { display: inline-block;;}
.search-utilities .search-buttons a.map-active .closed { display: none;}


.search-top.map-active {position: fixed;background: #fff;top: 195px;z-index: 10;margin: 0;padding: 20px 0;}
.scroll .search-top.map-active {top: 175px;}
.search-top.map-active .grid-1 { display: flex; }

.search-top.map-active header {align-items: center;justify-content: flex-end;padding: 0;flex-direction: row-reverse;}
.search-top.map-active .search-info{ gap: 0px;}
.search-top.map-active .search-info .text:not(.map){display: none;}
.search-top.map-active .search-info .text.map{ display: block;}
.search-top.map-active .search-info h1 { font-size: 2rem;}


.search-top.map-active .search-utilities  {margin-top: 0;align-items: flex-start;justify-content: flex-end;width: auto;}
.search-top.map-active .search-utilities .search-buttons a.changeview { display: none;}
.search-top.map-active .search-utilities .search-buttons a.map-active { border-left: 0px;}

.search-top.map-active .search-utilities .search-paging { display: none;}




@media(max-width:980px) { 

  .search-top.map-active, .scroll .search-top.map-active { top: var(--topbar-height); padding: 15px 0;}
  
  .search-utilities .search-buttons a.changeview{ display: none;  }
  .search-utilities .search-buttons a#view-map{border-left: 0px;}

  .search-top.map-active .search-info h1{ display: block; font-size: 1.6rem;}
  .search-top.map-active .search-info .text.map{ font-size: 1.4rem;}

  .search-top.map-active .search-top-buttons a:has(.btn-text){height: 40px;width: 40px;justify-content: center;}
  .search-top.map-active .search-top-buttons .btn-text {display: none;}  


  .search-top.map-active .search-utilities .search-buttons a { padding: 10px 12px; font-size: 1.4rem;}
  .search-top.map-active .search-utilities .search-buttons a i { font-size: 1.6rem;}
}

@media(max-width:800px) { 
  .search-top.map-active .grid-1{flex-direction: column;gap: 10px;}
  .search-top.map-active header{text-align: left;gap: 10px;flex-direction: row;justify-content: space-between;}
  .search-top.map-active .search-top-buttons a:has(.btn-text) { height: 40px; width: 40px;}
  .search-top.map-active .search-utilities {justify-content: flex-start;width: 100%;}
  .search-top.map-active .search-utilities .search-buttons {width: 100%;}
  .search-top.map-active .search-utilities .search-buttons a { width: 100%; justify-content: center; text-align: center; height: 40px;}
}



@media(max-width:768px) {  


  .search-top:not(.map-active) .search-top-buttons {width: 100%; justify-content: center;}
  
  
  .search-top .search-top-buttons a {padding: 10px 15px;font-size: 1.5rem;height: 44px;flex: 1;justify-content: center;transition: none;}
  .search-top .search-top-buttons #view-search {display: flex;}
  .search-top .search-top-buttons #view-search.map-active { background-color: var(--color-primary); color: #fff;}

  .search-top:not(.map-active) .search-utilities .search-buttons {flex-wrap: wrap;}
  .search-top:not(.map-active) .search-utilities .search-buttons a {padding: 10px 15px;font-size: 1.4rem;height: 44px;}
  .search-top:not(.map-active) .search-utilities .search-buttons a i { font-size: 1.5rem;}
  .search-top:not(.map-active) .search-utilities .search-buttons a.search-btn-2 i { font-size: 1.4rem;} 

  .search-paging { gap: 5px;}
  .search-paging select, .search-top.map-active .search-paging select {height: 44px;font-size: 1.4rem;padding: 0 30px 0 10px;}
  .search-paging .selbox i, .search-top-buttons a i, .search-paging a i {font-size: 1.5rem;right: 12px;}

  .search-utilities .search-paging .pagestop { gap: 5px;}
  .search-utilities .search-paging .pagestop .PageChange { display: none;}
  .search-utilities .search-paging .pagestop li:not(.PageChange){ display: block;}
  .search-utilities .search-paging a {height: 44px;width: 42px;} 
 

 
}
@media(max-width:600px){
  
  .search-top:not(.no-results) .search-utilities { justify-content: center; margin-top: 0; gap: 10px;}
  .search-paging { gap: 10px;}

}

@media(max-width:480px){

  .search-top.map-active header { flex-wrap: nowrap;}
  .search-top.map-active .search-info { flex-wrap: nowrap;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
  .search-top.map-active .search-info h1{ display: block; font-size: 1.5rem; white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
  .search-top.map-active .search-info .text.map{ font-size: 1.3rem;}

  .search-top.map-active .search-top-buttons a:has(.btn-text){width: 36px; height: 36px;}
  .search-top.map-active .search-utilities .search-buttons a { height: 36px; font-size: 1.3rem;}

  
}

@media(max-width:380px){

}


/* listings */
#property-list {display: grid;grid-gap: 25px;grid-template-columns: repeat(1, minmax(0, 1fr));}

#property-list.property-list--grid {grid-template-columns: repeat(3, minmax(0, 1fr));}
#property-list > .property-card {display: flex;flex-direction: column;width: 100%; scroll-margin-top: calc(var(--topbar-height) + 20px);}  
#property-list > .property-card .property-card--container {position: relative;display: flex;flex-direction: column;height: 100%;flex: auto;border: 1px solid #ddd;border-radius: 5px;transition: border-color .3s ease-in-out;background: #fff;}
#property-list > .property-card .property-card--container:hover {border-color: #666;}



.property-card .prop-img {width: 100%;position: relative;border-top-left-radius: 5px;border-top-right-radius: 5px; height: 18vw; max-height: 300px;}
.property-card--newhomes .prop-img { height: 22vw; max-height: 330px;}
.property-card .prop-img img.prop-image {width: 100%;height: 100%;object-fit: cover;border-top-left-radius: 5px;border-top-right-radius: 5px;position: absolute;left: 0;top: 0;}

.property-card .prop-img img:not([src]) {visibility: hidden;}

.property-card .prop-img.prop-img--slider .img-slider {width: 100%;  height: 100%; overflow: hidden;}
.property-card .prop-img.prop-img--slider .img-slider .swiper-slide {text-align: center;font-size: 18px;background: #fff;}

.property-card .prop-img.prop-img--slider .img-slider .swiper-arrow { opacity: 0; }
.property-card .prop-img.prop-img--slider .img-slider.swiper-initialized .swiper-arrow {opacity: 1;}

.property-card .prop-img.prop-img--slider .swiper-button-next {height: 100%;top: 0;margin: 0;width: 50px; right: 0;transition: all .3s ease-in-out;}

.property-card .prop-img.prop-img--slider .swiper-button-prev {height: 100%;top: 0;margin: 0;width: 50px; left: 0; transition: all .3s ease-in-out;}

/* .property-card .prop-img.prop-img--slider .swiper-button-next:hover {background: linear-gradient(270deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0) 100%); }
.property-card .prop-img.prop-img--slider .swiper-button-prev:hover {background: linear-gradient(90deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0) 100%); } */

.property-card .prop-img.prop-img--slider .swiper-button-next:after, .property-card .prop-img.prop-img--slider .swiper-button-prev:after { display: none;}
.property-card .prop-img.prop-img--slider .swiper-button-next i, .property-card .prop-img.prop-img--slider .swiper-button-prev i { color: #fff; font-size: 26px;}
 


.property-card .prop-save-property {position: absolute;z-index: 3;margin-left: auto;right: 15px;bottom: 15px;}
.property-card .prop-save-property .save-property--btn {background: none;color: inherit;border: none;padding: 0;font: inherit;cursor: pointer;outline: inherit;font-size: 3.4rem;color: #999;display: flex;align-items: center;justify-content: center;text-align: center;transition: all .3s ease-in-out;padding: 10px;}
.property-card .prop-save-property .save-property--btn.saved {color: var(--color-secondary);}
.property-card .prop-save-property .save-property--btn.pulse {animation: pulseheart 1.5s ease 0s 1 normal both;}
 
@media(min-width:980px){ 
  .property-card .prop-save-property .save-property--btn:hover{color: var(--color-secondary);}
}

.save-property--btn .btn-text { display: none;}

.property-card .prop-info {padding: 20px 20px;display: flex;flex-direction: column;gap: 15px;justify-content: flex-start;flex: auto;}

.property-card .prop-top-dets {display: flex;justify-content: space-between;width: 100%;align-items: flex-end;padding-bottom: 15px;border-bottom: 1px solid #ddd;min-height: 70px;}
.property-card .prop-price {position: relative;color: var(--color-primary);display: flex;flex-direction: column;line-height: normal;gap: 0px;}
.property-card .prop-price .status {font-size: 1.5rem;color: #666;text-align: left; text-transform: capitalize;}
.property-card .prop-price .amount {font-size: 3rem;font-weight: 600;font-family: var(--font-title);}

.property-card .prop-agent{display: flex;height: 64px;width: auto;overflow: hidden;position: absolute;right: 20px;bottom: -15px;z-index: 9; gap:10px;}
.property-card .prop-agent.prop-agent--text {gap: 10px;}
.property-card .prop-agent .agent-img {display: flex;gap: 10px;width: 64px;height: 64px;}
.property-card .prop-agent .agent-img img{object-fit: contain;position: relative;width: 100%;height: 100%;object-position: center;}
.property-card .prop-agent .agent-details {display: flex;align-items: flex-end;display: none;}
.property-card .prop-agent .agent-name {font-size: 1.3rem;line-height: 1.2; color: #666;}


.property-card .prop-sale-status{font-size: 1.6rem;padding: 6px 8px;background: var(--color-secondary);display: flex;color: #fff;border-radius: 5px;position: absolute;bottom: 20px;left: 20px;z-index: 3;text-transform: capitalize;font-weight: 600;}
.property-card .prop-sale-status.sale-sold {background-color: var(--color-primary);color: #fff!important;}


.property-card .prop-main-dets {display: flex;width: 100%;flex-direction: column;gap: 0;align-items: flex-start;max-width: calc(100% - 60px); text-align: left;}
.property-card--newhomes .prop-main-dets { max-width: 100%;}
.property-card h2 {color: var(--color-primary);position: relative;font-size: 2.4rem;font-weight: 400;text-wrap-style:pretty;}
.property-card h2 strong{font-weight: 500;}
.property-card .prop-address-2  {color: #666;position: relative;font-size: 1.8rem;text-transform: capitalize;font-weight: 400;text-wrap-style:pretty;}
.property-card .prop-headline {color: #666;position: relative;font-size: 1.5rem;text-transform: capitalize;font-weight: 400;margin-bottom: 15px;}
.property-card .prop-newhome {position: relative;font-size: 1.4rem;text-transform: capitalize;font-weight: 400;padding: 3px 8px;background: var(--color-secondary);color: var(--color-light);border-radius: 5px;}


.property-card .prop-bottom-dets {display: flex;justify-content: flex-end;align-items: flex-end;width: 100%;margin-top: auto;justify-content: flex-start;}

.property-card .prop-icons {display: flex;flex-direction: row;gap: 16px;}
.property-card .prop-icons li {display: flex;flex-direction: row;align-items: center;gap: 10px;font-size: 1.6rem;color: #999;font-weight: 400;position: relative;width: auto!important;}
.property-card .prop-icons span i {font-size: 2.2rem;position: relative;color: #999;}
.property-card .prop-icons li:not(:last-child)::after {position: absolute;content: "";top: 15%;right: calc(-1  * (var(--grid-gap--large) / 2));width: 1px;height: 75%;background: #ddd;opacity: 0;}
.property-card .prop-icons span i.icon-bedroom { font-size: 2.4rem;}
.property-card .prop-icons span i.icon-bathroom { top: -2px;}
.property-card .prop-icons li i.icon-house-alt {font-size: 2.4rem;}
.property-card .prop-icons li i.icon-receptions { top: 1px;} 

.property-card .prop-added {font-size: 1.3rem;padding: 4px 8px;background: rgb(2 20 82);display: flex;color: #fff;border-radius: 5px;position: absolute;bottom: 20px;left: 20px;z-index: 3;}


.property-card .prop-msg span {color: #fff;background: var(--color-primary);font-size: 1.4rem;letter-spacing: 0;padding: 8px 10px;font-weight: 400;border-left: 3px solid var(--color-leaf);}
.property-card .prop-msg {position: absolute;bottom: 15px;display: flex;left: 15px;}


.property-card .ribbon-top {
  --d:12px;
  --w:200px;
  --c: var(--color-secondary);
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(29.29%, -100%) rotate(45deg);
  color: #fff;
  text-align: center;
  width: var(--w);
  transform-origin: bottom left;
  padding:5px 0 calc(var(--d) + 5px);
  background: linear-gradient(rgba(0,0,0,0.6) 0 0) bottom/100% var(--d) no-repeat var(--c);
  clip-path:polygon(0 100%,0 calc(100% - var(--d)),50% calc(100% - var(--d) - var(--w)/2),100% calc(100% - var(--d)),100% 100%,calc(100% - var(--d)) calc(100% - var(--d)), var(--d) calc(100% - var(--d)));
  z-index:9;
  font-family: var(--font-title);
  font-size: 1.6rem;
  display:flex;
  flex-direction:column;
  font-weight: 500;
  }
  
.property-card .ribbon-top.left {left:0;right:auto;transform: translate(-29.29%, -100%) rotate(-45deg);transform-origin: bottom right;}
.property-card .ribbon-top.right {right: 0;left: auto;transform: translate(29.29%, -100%) rotate(45deg);transform-origin: bottom left;}

/* Pagination */
.pagnation {display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;padding: 60px 0; gap: 40px;}
.pagnation .sub-title { color: var(--color-primary); font-size: 2.2rem; text-wrap-style:balance;}
.pages {display: flex;justify-content: center;text-align: center;width: 100%;gap: 10px;flex-wrap: wrap;}
.pages li {position:relative;}
.pages a {display: flex;align-items: center;justify-content: center;gap: 8px;height: 42px;width: 42px;text-align:center;font-size: 1.6rem;color: var(--color-primary);font-weight:400;border: 1px solid #ddd;transition: all .3s ease-in-out;border-radius: 5px;}
.pages a.active { background-color: var(--color-primary); border-color: var(--color-primary); color: #fff;}
.pages a:hover {border-color: #666;}

.pages .next a, .pages .prev a { width: auto; padding: 0 10px;}
.pages a i {font-size: 1.4rem;position:relative;top: 1px;}
.pages span { float:left; height:42px; line-height:42px; width:46px; text-align:center; font-size:1.6rem; color:#666; font-weight:600; letter-spacing:0.8px; }

@media(max-width:667px){
  .pages a{ width: 40px; height: 40px;}
}

/* map */ 



#dropMap {width: 100%;margin-left: -100%;height: 100%;position: fixed;height: calc(var(--vh100) - (var(--topbar-height)));position: fixed;left: 0;bottom: 0;background: #fff;z-index: 3;}

#dropMap.map-active {width: 100%;margin-left: 0%;z-index: 99;}
#dropMap .map-holder { position: relative; width: 100%; height: 100%; background: #e5e3df;}

#dropMap .map-holder #map-loading {position: relative;z-index: 1;width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;flex-direction: column;gap: 10px;text-align: center;}
#dropMap .map-holder #map-loading.hide { display: none;}
#dropMap .map-holder #map-loading .map-loading--icon { width: 42px;height: 42px;z-index: 10;box-sizing: border-box;border: 4px solid var(--color-secondary);border-radius: 50%;border-top-color: transparent;animation: preloader-spin 1s infinite linear;}
#dropMap .map-holder #map-loading .map-loading--text {font-size: 1.4rem; display: none;}

#dropMap .map-holder #map_canvas {position: absolute;top: 0;bottom: 0;width: 100%;height: 100%;background: #e5e3df;border-right: 1px solid #ddd;}

#dropMap .map-holder a#MapToggle {height: 37px;position: absolute;right: 95px;top: 10px;z-index: 9999;border-radius: 3px;background: var(--color-primary);display: flex;align-items: center;justify-content: center;color: var(--color-light);font-size: 1.6rem;padding: 0 12px;font-weight: 500;font-family: Roboto, Arial, sans-serif;gap: 10px;}
#dropMap .map-holder a#MapToggle i {font-size: 1.6rem;color: #ffffff;text-align: center;}
#dropMap .map-holder a#MapToggle.map-active i {color: #fff;}
#dropMap .map-holder a#MapToggle:hover {background: var(--color-primary);}
#dropMap .map-holder a#MapToggle:hover i { color: #fff; } 

#results { overflow: hidden; padding-top: 6px;}
#results.map-active  { padding-top: 25px;}
 #results.map-active #property-list { z-index: 0;}  
#dropMap .map-holder a#MapToggle { display:none;}


@media(min-width:981px){

  #dropMap {height: calc(var(--vh100) - (var(--topbar-height) + 185px));}

  /* .search-top.map-active {width: 60%;margin-left: 40%;clear: both;padding-left: 40px;padding-right: 0px;padding-top: 40px;}
  .search-top.map-active .inner {max-width: 100%;padding-left: 5px;}
  #results.map-active .listings {width: 60%;margin-left: 40%;clear: both;padding-left: 40px;padding-right: 0px;} */
}


@media (min-width: 981px) { 

  #property-list.property-list--list .property-card .property-card--container { flex-direction: row; }
  #property-list.property-list--list .property-card .prop-img {flex: 1;min-height: 240px;max-height: 300px;max-width: 436px;}
  #property-list.property-list--list .property-card.property-card--newhomes .prop-img { max-height: 330px;}
  #property-list.property-list--list .property-card .prop-img,#property-list.property-list--list .property-card .prop-img img.prop-image { border-top-right-radius: 0px; border-bottom-left-radius: 5px;}
  #property-list.property-list--list .property-card .ribbon-top.right{left:0;right:auto;transform: translate(-29.29%, -100%) rotate(-45deg);transform-origin: bottom right; }


  #property-list.property-list--list .property-card .prop-img .prop-save-property { top: 25px; left: 25px; right: initial; bottom: initial; }
  #property-list.property-list--list .property-card .prop-info {flex: 2;padding: 25px 25px;gap: 20px;}
  #property-list.property-list--list .property-card h2 { font-size: 2.2rem;}
  #property-list.property-list--list .property-card .prop-price .amount { font-size: 3.4rem; }
  #property-list.property-list--list .property-card .prop-agent {height: 64px;bottom: 20px;}
  #property-list.property-list--list .property-card .prop-top-dets .prop-sale-status {position: relative;top: initial;left: initial;margin-right: auto;background: var(--color-secondary);margin-left: 25px;bottom: 5px;color: #fff;}

  #property-list.property-list--list .property-card .prop-img img.prop-image, #property-list.property-list--list .property-card .prop-img.prop-img--slider .img-slider img {border-top-right-radius: 0px; border-bottom-left-radius: 5px;}

  #property-list.property-list--list .property-card .prop-bottom-dets { width: auto;}

} 


@media (min-width: 981px) and (max-width: 1360px){ 
  .property-card .prop-img { height: 22vw;}
  
}

@media (min-width: 981px) and (max-width: 1100px){ 
  .property-card .prop-price .amount { font-size: 2.6rem;}
  .property-card h2 {font-size: 2.2rem;}
  .property-card .prop-address-2{  font-size: 1.8rem;}
  
}

@media (max-width: 980px) { 
  #dropMap.map-active {width: 100%;z-index: 10;bottom: var(--bottombar-height);height: calc(var(--vh100) - ( var(--topbar-height) + var(--bottombar-height)) - 73px);}
  #dropMap .map-holder a#MapToggle {top: calc(50% - 40px);height: 80px;right: 0;border-radius: 5px 0 0 5px;border: 1px solid #ddd;border-right: 0;background: #fff; width: 40px;}
  #dropMap .map-holder a#MapToggle i, #dropMap .map-holder a#MapToggle.map-active i{ color: var(--color-primary); font-size: 2.4rem;}
  #dropMap .map-holder a#MapToggle:hover{ background-color: #fff;}
  #dropMap .map-holder a#MapToggle:hover i  {color: var(--color-primary);}
}

@media (max-width: 800px) { 
  #dropMap.map-active { height: calc(var(--vh100) - ( var(--topbar-height) + var(--bottombar-height)) - 123px);}
  #dropMap .map-holder a#MapToggle { height: 40px; top: calc(50% - 20px);}
  #dropMap .map-holder a#MapToggle i { font-size: 2rem;}
}

@media (max-width: 480px) { 
  #dropMap.map-active {
    height: calc(var(--vh100) - (var(--topbar-height) + var(--bottombar-height)) - 115px);
  }
}

@media (max-width: 360px) { 
  #dropMap.map-active {
    height: calc(var(--vh100) - (var(--topbar-height) + var(--bottombar-height)) - 114px);
  }
}





@media (max-width: 980px) {
  #property-list {grid-gap: var(--grid-gap);}
  #property-list.property-list--grid, #results.map-active #property-list.property-list--list, #property-list.property-list--list {grid-template-columns: repeat(2,minmax(0, 1fr));  }
  .property-card h2 {font-size: 2.2rem;}
  .property-card .prop-address-2{  font-size: 1.6rem;}


  .property-card .prop-img { height: 33.3vw; max-height: 350px;}
  .map-active .property-card .prop-img { max-height: 300px;}

}

@media (max-width: 768px) {
  .property-card h2 {font-size: 2rem;}
  .property-card .prop-address-2{font-size: 1.5rem;}

  .property-card .post, .property-card .prop-icons li { font-size: 1.4rem;}
  .property-card .prop-price .status { font-size: 1.4rem;}
  .property-card .prop-price .amount { font-size: 2.6rem;}
  
  .map-active .property-card .prop-img { max-height: 300px;}

  .property-card .prop-img.prop-img--slider .img-slider .swiper-arrow { opacity: 1!important;}
 
 
}

@media (max-width: 700px) {
  .map-active .property-card .prop-img { max-height: 350px;}
}

@media (max-width: 667px) {
  #results.map-active #property-list.property-list--list, #property-list.property-list--grid, #property-list.property-list--list, #results.map-active #property-list.property-list--grid {grid-template-columns: repeat(1,minmax(0, 1fr));}
  .property-card .prop-img { height: 65vw; max-height: 400px;}

}
 
@media (max-width: 480px) {

  .property-card .prop-icons span i {font-size: 1.6rem;}
  .property-card .prop-icons li i.icon-house-outline { font-size: 2rem;}
  .property-card h2 {font-size: 2.2rem;}
  .property-card .prop-address-2{  font-size: 1.6rem;}
  
}


/* Members Area */

.membox { border-top:1px solid #d6d6d6; background:#fff; float:left; width:100%; padding:20px; }
#SavedSearchList { float:left; width:100%; }
#SavedSearchList .nores {float:left;text-align: center;width:100%;font-size: 1.8rem;color: var(--color-primary);margin:10px 0 0;font-weight: 400;}
.saved { float:left; width:100%; }
.saved li {float:left;width:100%;border-bottom: 1px solid #ddd;}
.saved .stbl {display:table;vertical-align:top;width:100%;table-layout:fixed;font-size: 1.6rem;color: var(--color-primary);}
.saved .scell { display:table-cell; text-align:center; padding:15px 10px; }
.saved .scell i { font-size: 2rem;}
.saved .scsearch {line-height:2.0rem;width:70%;text-align:left;border-left: 1px solid #ddd;}
.saved .scsearch a {text-decoration:none;color: var(--color-primary);}
.saved .scsearch a:hover { text-decoration:underline; }
.saved .scalert {width:10%;border-left: 1px solid #ddd;vertical-align:middle;}
.saved .scview {width:10%;border-left: 1px solid #ddd;vertical-align:middle;}
.saved .scdel {width:10%;border-left: 1px solid #ddd;border-right: 1px solid #ddd;vertical-align:middle;}
.saved .scdel a { color: #ff0000;}
.saved .stop .scell {word-wrap:break-word;border-color:#fff;text-transform: capitalize;font-size: 1.6rem;color: var(--color-primary);font-weight: 500;}

@media(max-width:667px){
  .saved { margin-top:20px}
  .saved .stbl {  display: flex; flex-wrap: wrap;}
  .saved .scell { width: 100%;  }
  .saved .scell:not(.scsearch) { flex: 1; border-top: 1px solid #ddd;}
  .saved .scsearch {border-right: 1px solid #ddd;background: #f4f4f4;text-align: center;}

  .stop .scsearch { display: none;}
}

/* ====================================================================== 
NEW HOMES
====================================================================== */

.new-homes { display: grid;grid-template-columns: repeat(3, 1fr);grid-gap: var(--grid-gap--large);}
.new-homes .new-homes-box { display: grid; width: 100%;}
.new-homes .new-homes-box .img { width: 100%;display: flex;border-right: none;position: relative;overflow: hidden;background: none;}
.new-homes .new-homes-box .img img { width: 100%;position: absolute;left: 0;top: 0;bottom: 0;right: 0;-o-transform: translateZ(0);-moz-transform: translateZ(0);-webkit-transform: translateZ(0);transform: translateZ(0);width: 100%;height: 100%;object-position: center;max-height: 100%;object-fit: cover;transition: all .6s ease-in-out;}
.new-homes .new-homes-box .img::after {padding-top: 75%; display: block;content: "";overflow: hidden;}
.new-homes .new-homes-box .info {padding: 20px 0; display: flex; flex-direction: column; align-items: flex-start; }
.new-homes .new-homes-box .info h2 { color: var(--color-primary);position: relative;margin-bottom: 20px;font-size: 2.6rem;text-wrap-style:balance;line-height: 1.2;}
.new-homes .new-homes-box .info h2::after {content: "";position: absolute;bottom: -10px;width: 40px;height: 2px;background-color: var(--color-secondary);left: 0;}

.new-homes .new-homes-box .info .addr { color: var(--color-stone);font-size: 1.6rem;text-transform: uppercase;}
.new-homes .new-homes-box .info .price-range {margin-top:20px; position: relative;font-size: 2.2rem;color: var(--color-primary);display: flex;}

@media (max-width: 980px) {
  .new-homes {grid-template-columns: repeat(2, 1fr);}
}

@media (max-width: 768px) {
  .new-homes .new-homes-box .info h2 { font-size: 2.2rem;}
  .new-homes .new-homes-box .info .addr { font-size: 1.4rem}
  .new-homes .new-homes-box .info .price-range { font-size: 2rem;}
}

@media (max-width: 667px) {
  .new-homes {grid-template-columns: repeat(1, 1fr);}
  .new-homes .new-homes-box .info h2 { font-size: 2.4rem;}
}

/* ====================================================================== 
Find Agent
====================================================================== */

.agent-section{
  position: relative;
  z-index: 3;
}

/* ====================================================================== 
Footer
====================================================================== */

footer {position: relative;z-index: 2; background-color: #fff; }
footer .ft-top {padding: 60px 0; border-top: 1px solid #ddd;}

.search-areas-links {display: grid;width: 100%;grid-template-columns: repeat(6, minmax(0, 1fr));gap: var(--grid-gap--large); align-items: start;}

.ft-links-container {display: block;width: 100%;position: relative;padding-top: 30px;column-gap: var(--grid-gap--large);}


.ft-links-container:nth-of-type(1){grid-column: 1/4;}
.ft-links-container:nth-of-type(2){ grid-column: 4/6;}
.ft-links-container:nth-of-type(3){ grid-column: 6/7;}
.ft-links-container:nth-of-type(4){ grid-column: 1/3;}
.ft-links-container:nth-of-type(5){ grid-column: 3/4;}
.ft-links-container:nth-of-type(6){ grid-column: 4/5;}
.ft-links-container:nth-of-type(7){ grid-column: 5/6;}
.ft-links-container:nth-of-type(8){ grid-column: 6/7;}

.ft-links-container--col-3 {-moz-column-count: 3;-webkit-column-count: 3;column-count: 3;}
.ft-links-container--col-2 { -moz-column-count: 2;-webkit-column-count: 2;column-count: 2;}
.ft-links-container--col-1 { -moz-column-count: 1;-webkit-column-count: 1;column-count: 1; }

.ft-links-container li { margin-bottom: 2px;}
.ft-links-container li:first-child{width: 100%;position: absolute;top: 0px;left: 0;}
.ft-links-container li:first-child a{font-size: 1.8rem;font-weight: 500;font-family: var(--font-title);color: var(--color-primary);}
.ft-links-container li a {font-size: 1.5rem;color: #666;line-height: 1.5;}
.ft-links-container li a:hover { text-decoration: underline;}

.ft-middle {background: #eff8ff;padding: 20px 0px;}

footer .useful-links{display: flex;flex-direction: row;gap: 10px;flex-wrap: wrap;}
footer .useful-links li {margin-right: 15px;}
footer .useful-links a {font-size: 1.6rem;}
footer .useful-links a:hover {text-decoration: underline;}

footer .useful-links li.agent {margin-left: auto;margin-right: 0;}
footer .useful-links li.agent a {font-weight: 500;padding: 5px 8px;border-radius: 5px;border: 1px solid var(--color-primary);transition: all .3s ease-in-out;background: var(--color-primary);color: #fff;}
footer .useful-links li.agent a:hover{ text-decoration: none; background-color: var(--color-primary); color: #fff; }

footer .useful-links li.agent.agent--reg {margin-left: 5px;margin-top: 0;}

footer .ft-bottom {padding: 30px 0;background: var(--color-primary);color: #fff;}
footer .ft-bottom .container { display: flex;flex-direction: row;justify-content: space-between;gap: 20px;align-items: flex-end;}
footer .ft-bottom .left {display: flex;flex-direction: row;gap: 20px;}
footer .ft-bottom .left .logo { display: flex; flex-direction: column; gap: 15px; align-items: flex-start;}
footer .ft-bottom .left .logo img { width:auto; max-width: 100%;max-height: 36px; }

footer .ft-bottom .left .legal {display: flex;flex-direction: row;gap: 5px;flex-wrap: wrap;}
footer .ft-bottom .left .legal li {font-size: 1.4rem;position: relative;margin-right: 15px;}
footer .ft-bottom .left .legal li:not(:last-child)::after {position: absolute; content: ""; right: -10px; top: 0; width: 1px; height: 100%; background: #ddd;}
footer .ft-bottom .left .legal li a:hover {text-decoration: underline; } 


footer .ft-bottom .right {display: flex;flex-direction: column;gap: 20px;align-items: flex-end;}

footer .ft-bottom .social-links{display: flex;flex-direction: row;gap: 15px;}
footer .ft-bottom .social-links li a{display: flex;align-items: center;justify-content: center;width: 36px;height: 36px;border: 1px solid #ddd;border-radius: 50%;font-size: 1.6rem; transition: all .3s ease-in-out;}
footer .ft-bottom .social-links li a:hover {background: #fff;color: var(--color-primary);}

footer .ft-bottom .store-links{display: flex;flex-direction: row;gap: 15px;}
footer .ft-bottom .store-links li a img {width: auto;height: 38px;}
 

@media (max-width: 1280px) {
  .ft-links-container li:first-child a span{ display: none;}

}

@media (max-width: 1200px) {
  footer .useful-links li { margin-right: 12px;}
  footer .useful-links a { font-size: 1.5rem;}
  
}

@media (max-width: 1100px) {
  footer .useful-links{ flex-direction: row;}
 
}

@media (max-width: 980px) {

  .search-areas-links {grid-template-columns: repeat(2, minmax(0, 1fr));}

  .ft-links-container { -moz-column-count: 2;-webkit-column-count: 2;column-count: 2;}
  .ft-links-container:nth-of-type(odd){grid-column: 1/2;}
  .ft-links-container:nth-of-type(even){grid-column: 2/3;}


  footer .ft-bottom .container { flex-direction: column; align-items: flex-start;}
  footer .useful-links{ justify-content: center;}
  footer .useful-links li.agent, footer .useful-links li.agent.agent--reg {width: calc(50% - 6px); margin: 10px 0 0;}
  footer .useful-links li.agent a{ display: flex; width: 100%; justify-content: center;}
  footer .ft-bottom .right { flex-direction: row;}
}

@media (max-width: 768px) {
 
  footer .ft-bottom .container { align-items: center;}
  .ft-links-container li:first-child a{ font-size: 1.8rem;}
  .ft-links-container li a{ font-size: 1.5rem;}
  
  footer .useful-links { justify-content: center;}
  footer .useful-links li.agent a { display: flex; width: 100%; justify-content: center;}
  footer .ft-bottom .left .logo { align-items: center; text-align: center;}
  footer .ft-bottom .left .legal{ justify-content: center;}
  footer .ft-bottom .left .legal li {font-size: 1.3rem;}

  footer .ft-bottom .right { flex-direction: column; align-items: center;}
}

@media (max-width: 667px) {

  footer .useful-links li.agent:not(.agent--reg){margin-top: 10px;}
  footer .useful-links li.agent, footer .useful-links li.agent.agent--reg {width: calc(100%); margin: 0px 0 0;}
}
@media (max-width: 480px) {
  
  footer .ft-top{ padding: 40px 0;}
  footer .useful-links { gap: 8px;}
  footer .useful-links li {margin-right: 8px;}

  
  .search-areas-links {grid-template-columns: repeat(1, minmax(0, 1fr));}
  .ft-links-container:nth-of-type(odd){grid-column: 1/3;}
  .ft-links-container:nth-of-type(even){grid-column: 1/3;}

}

@media (max-width: 360px) {

}


/* ====================================================================== 
ACCORDION
====================================================================== */

.accordion{display: flex;flex-direction: row;gap: 40px;position: relative;z-index: 1;flex-wrap: wrap;}
.accordion{gap: 0;width: 100%;flex-direction: column;}
.accordion .accord-container{float:left;width:100%;border-bottom: 1px solid rgb(255 255 255 / 20%);}
.accordion .accord-container:last-of-type{border-bottom-width: 0px;}
.accordion .accord-container a.toggle{position:relative;padding: 20px 50px 20px 0px;font-size:1.5rem;letter-spacing:0.05rem;line-height:2rem;display: flex;justify-content: space-between;align-items: center;color: var(--color-leaf);}
.accordion .accord-container a.toggle h2 {color: var(--color-leaf);}
.accordion .accord-container a.toggle:hover{cursor:pointer;}
.accordion .accord-container a.toggle.active{color: var(--color-leaf);}
.accordion .accord-container a.toggle::after{font-family: 'FontAwesome';content:"\f107";position:absolute;right:20px;font-size: 2rem;font-weight:700;transition:all 0.4s ease-in-out;}
.accordion .accord-container a.toggle.active::after{color: #67a7ac;content:"\f106";}
.accordion .accord-box{display:none;float:left;width:100%;padding: 25px 0 45px;}
.accordion .accord-box.show{background: transparent;display: inline-block;}

.accordion .accord-box .text { color: #ffffff;}

/* ====================================================================== 
iframe
====================================================================== */
.responsive-iframe {position: relative;overflow: hidden;width: 100%;background:#000;}
.responsive-iframe iframe {width: 100%; aspect-ratio: 16 / 9; height: auto;}
.responsive-iframe.responsive-iframe--portrait iframe { aspect-ratio: 9 / 16;}

/* ====================================================================== 
FORMS
====================================================================== */
.mfp-hide { display: none;}
.m-form.column {display:flex; flex-wrap:wrap; gap:20px; width:100%;}
.m-form.m-form--inline {display:flex;}
.m-form.m-form--inline .m-form-group {margin-bottom:0; flex:1;}
.m-form.m-form--inline .m-form-group input {border-bottom-right-radius:0; border-top-right-radius:0;}
.m-form.m-form--inline .m-form-group+.c-btn {border-bottom-left-radius:0; border-top-left-radius:0;}
.m-form-group {margin-bottom:1rem;}
.m-form-group label {font-size:1.5rem; float:left; margin-bottom:5px;}
.m-form-group.m-form-group--flat {margin-bottom:0;}
.m-form-group.m-form-group--inline {width:auto; display:inline-block;}
.m-form-group.m-form-group--inline label {font-weight:400; margin-bottom:0; color:#6f6f6f;}
.m-form-group label .red {vertical-align:top; color:#e20b0a;}
.m-form-group.flex-full {width:calc(100%); margin:0px;}
.m-form-group.flex-half {width:calc(50% - 10px); margin:0px;}
.m-form-group.flex-third {width:calc(33.33% - 13.33px); margin:0px;}
.m-form-group i {position:absolute; right:15px; top:calc(50% - 5px); font-size:1.4rem; color:#000; z-index:1;}
.m-form-group:hover i {color: var(--color-secondary-alt);}
.m-form-control {appearance:none; -webkit-appearance:none; border:1px solid #ddd; box-shadow:none; display:block; font-family:inherit; font-size:14px; font-weight:500; height:42px; padding:5px 15px; transition:border-color 0.25s, box-shadow 0.25s; width:100%; line-height:26px;}
select.m-form-control {background:transparent; z-index:0; padding:5px 30px 5px 15px;}
.m-form-control.placeholder {color:gray; font-weight:400; font-style:italic;}
.m-form-control:-moz-placeholder {color:gray; font-weight:400; font-style:italic;}
.m-form-control::-moz-placeholder {color:gray; font-weight:400; font-style:italic;}
.m-form-control:-ms-input-placeholder {color:gray; font-weight:400; font-style:italic;}
.m-form-control::-webkit-input-placeholder {color:gray; font-weight:400; font-style:italic;}
.m-form-control:focus, .m-form-control:hover {border-color:#797979; outline:0;} 
.m-form-control:disabled {border-color:#ddd !important; cursor:not-allowed;}
.m-form-control:disabled+.m-form-select-icon {color:gray;}
.m-form-control.m-form-control--inline {width:auto;}
.m-form-control.m-form-control--file {border:0; box-shadow:none; height:auto; padding:0; width:auto;} 
.m-form-control.m-form-control--file:focus, .m-form-control.m-form-control--file:hover {box-shadow:none;}
.m-form-control.m-form-control--file.is-error {box-shadow:none;} 
.m-form-control.m-form-control--textarea {height:auto; resize:vertical; min-height:100px;}
.m-form-control.is-error {border-color:#ff4136; box-shadow:0 0 0.5em rgba(255, 65, 54, 0.25);} 
.m-form-prefix-wrapper {position:relative;}
.m-form-prefix-icon {position:absolute; top:8px; left:16px; color:#717171;} 
.m-form-control.m-form-control--prefix {padding-left:40px;}  
.m-form-select-wrapper {display: flex; width: 100%; position:relative;}
.m-form-select-wrapper .m-form-select-icon {position:absolute;top:calc(50% - .75rem);right:15px;pointer-events:none;color: var(--color-secondary);font-size:1.5rem;}
.m-form-select-wrapper .m-form-select-text-icon {pointer-events:none; color:#ababab;} 
.m-form-select-text {border:none; font-weight:600;} 
.m-form-help {color:gray; font-size:0.75rem; margin-top:0.375rem;}
.m-form-help.is-error {color:#ff4136;}
.m-form-sum {display:flex; align-items:center; margin-bottom:1.75rem; gap:10px;}
.m-form-sum .m-form-sum-text {font-size:1.6rem;} 
.m-form-sum .m-form-sum-input {max-width:fit-content; padding:5px;}
#err-msg {display:inline-block; width:100%; background: var(--color-error);color: #fff;padding: 10px;text-align: center;font-size: 1.5rem;width: 100%;}
.thank-you-text {float:left; width:100%; text-align:center; padding:15px; background:var(--color-success); color:#fff; font-size:1.6rem;}


.m-form-checkbox {display: flex;width: 100%;position: relative;align-items: center;}
.m-form-checkbox input {position: absolute;left: 0;width: 18px;height: 18px;}
.m-form-checkbox label {padding-left: 30px;color: var(--color-dark);margin: 0;}

.form-container.sent {display:none}


@media all and (max-width: 667px) {
  .m-form-group.flex-half, .m-form-group.flex-third {width:100%;}
  .m-form-sum {flex-direction:column; align-items:flex-end;}
  .m-form-checkbox { align-items: flex-start;}
  .m-form-checkbox input { top: 4px;}
  .m-form-checkbox label {font-size: 1.5rem!important;}

}

@media all and (min-width: 501px) {
  .m-form.m-form--inline .m-form-group {flex:auto;}
}

@media all and (min-width: 501px) {
  .m-form-group {margin-bottom:1.75rem;}
}

.c-checkbox {display:inline-block; position:relative; cursor:pointer; font-size:1.6rem; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; color:#000; user-select:none;}
.c-checkbox.c-checkbox--full {width:100%; margin:0; margin-bottom:15px;}
.c-checkbox.c-checkbox--inline {margin:0 0px 0 10px; vertical-align:bottom; display:inline; padding:2px;}
.c-checkbox input[type="checkbox"] {margin-right:10px; top:1px; position:relative;}
.c-checkbox .c-checkbox-tick {position:absolute; top:-3px; left:0; height:31px; width:31px; background-color:#fff; border:1px solid #e2e2e2;}
.c-checkbox .c-checkbox-tick::after {content:""; position:absolute; display:none; left:11px; top:3px; width:8px; height:17px; border:solid #B24AAF; border-width:0px 2px 2px 0; -webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg);}
.c-checkbox input[type="checkbox"]:checked~.c-checkbox-tick:after {display:block;}

/* ==========================================================================  
Login / register 
========================================================================== */
 
.login-bg--desktop {position: absolute;top: 0;width: calc(50% - 30px);right: 0;height: 100%;}
.login-bg--desktop img {width: 100%;height: 1000px;object-fit: cover;object-position: 60%;}
.login-bg--desktop::after{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: var(--color-primary-light); opacity: .8;}
.login-bg--desktop::before{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: linear-gradient(90deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%); z-index: 1;
}


.loginform-toggles {display: flex;/* padding: 0 40px; */}
.loginform-toggles .btn-toggle {font-size: 2rem;font-family: var(--font-title);padding: 10px 20px;border: 1px solid #ddd;width: 50%;text-align: center;color: #999;border-color: #fff;border-bottom-width: 0px;border-top-left-radius: 10px;border-top-right-radius: 10px; position: relative; cursor: pointer;}
.loginform-toggles .btn-toggle.active {background-color: #fff;border-color: #ddd;border-bottom-color: #fff;color: var(--color-primary);}
.loginform-toggles .btn-toggle.active::after { position: absolute; content: ""; bottom: -1px; left: 0; height: 1px; width: 100%; background-color: #fff;}

.login {display: grid;padding: 40px 40px; width:100%;background: #fff;border-radius: 10px; border: 1px solid #ddd; border-top-right-radius: 10px; border-top-left-radius: 0px;  border-top-right-radius: 0px;}
.login.login-form-active { border-top-right-radius: 10px; }
.login.register-form-active { border-top-left-radius: 10px; }

.login.reset{ border-radius: 10px;}


.loginbox {display: grid;} 
.loginbox form{ display: flex; gap: 10px; width: 100%; flex-wrap: wrap;}
.loginbox form .field{display: grid;gap: 5px;position: relative;height: 50px;align-items: flex-start; width: 100%;}
.loginbox form .field.half{ width: calc(50% - 5px);}

.loginbox form  label {font-size: 1.5rem;position: absolute;bottom: 18px;left: 10px;transition: all .3s ease-in-out;z-index: 0;padding: 0 5px;color: #999;width: auto;margin: 0;}
.loginbox form input:not([type="checkbox"]){border-radius: 5px;appearance:none;-webkit-appearance:none;border: none;border: 1px solid #ddd;box-shadow:none;display:block;font-family:inherit;font-size:14px;font-weight:500;height: 43px;padding: 10px 15px;transition:border-color 0.25s, box-shadow 0.25s;width:100%;line-height:26px;background-color: transparent;z-index: 1;}
.loginbox form input:focus, .loginbox form input:hover {border-color: #666;outline:0;}
.loginbox form input:focus ~ label{ color: var(--color-primary);}
.loginbox form input:not(.check):focus ~ label, .loginbox form input:not(.check).active ~ label {bottom: 40px;background: #fff;z-index: 1;padding: 0 5px;}

.loginbox form .checkbox{height: auto;}
.loginbox form .checkbox label {position: relative;bottom: 27px!important;z-index: 1;padding-left: 30px;color: var(--color-primary);}
.loginbox form .checkbox input[type="checkbox"]{height: 20px;width: 20px; border: 1px solid #000; }

.loginbox .link{ width: 100%;}
.loginbox .link a {font-size: 1.5rem; color: var(--color-secondary); text-decoration: underline;}

.logtxt {margin-bottom: 15px;}
.loginerr {margin-bottom: 10px;background: var(--color-error);color: #fff;padding: 10px 10px 12px;text-align: center;border-radius: 5px;}
.loginerr a {color: #fff!important;font-weight: 600;}

.loginsuccess {margin-bottom: 10px;background: var(--color-success);color: #fff;padding: 10px 10px 12px;text-align: center;border-radius: 5px;}
.loginsuccess a {color: #fff!important;font-weight: 600;} 


.loginbox .third-party-btns { display: flex; flex-direction: column; gap: 15px; margin-bottom: 10px;}
.loginbox .third-party-btns .m-btn {display: flex;justify-content: center;}
.loginbox .third-party-btns .m-btn span.wrap  {width: 195px;text-align: left;position: relative;padding-left: 40px;}
.loginbox .third-party-btns .m-btn img {height: 24px;width: 24px;object-fit: contain;position: absolute;left: 0;object-position: left;}
.loginbox .third-party-btns .m-btn--facebook { background-color: #1877F2; border-color: #1877F2; color: #fff; }
.loginbox .third-party-btns .m-btn--google { background-color: #fff; border-color: #ddd; color: #000; } 
.loginbox .third-party-btns .m-btn--apple { background-color: #000; border-color: #000; color: #fff;}

.register-form-active .loginbox .third-party-btns .m-btn span.wrap{ width: 215px;}



.newuser {display: grid; margin-top: 40px; padding:0 60px;}
.newuser .text {font-size: 1.8rem;}
.newuser button { margin-top: 10px;} 

.loginbox form input:-webkit-autofill,
.loginbox form input:-webkit-autofill:hover, 
.loginbox form input:-webkit-autofill:focus, 
.loginbox form input:-webkit-autofill:active{
    -webkit-background-clip: text;
    -webkit-text-fill-color: var(--color-dark);
    transition: background-color 5000s ease-in-out 0s;
    box-shadow: inset 0 0 20px 20px #ffffff00;
}

.loginbox .divider {width: 100%;position: relative;display: flex;align-items: center;justify-content: center;}
.loginbox .divider span {font-size: 1.4rem;color: #999;padding: 0 15px;background: #fff;z-index: 1;}
.loginbox .divider::before {content: "";width: 100%;position: absolute;z-index: 0;background: #dddddd;height: 1px;left: 0;top: 50%;}


@media (max-width: 980px) {
  .login {padding: 40px 10%;text-align: center;max-width: 100%;}
  .login-bg--desktop { display: none;}
  .newuser{ margin-top: 0px; padding: 25px; background-color: var(--color-primary-light); border-radius: 10px;}
}

@media (max-width: 667px) {
  .login, .login.reminder {padding: 30px 30px;}
  .loginbox form .field.half{ width:100%;}
  .loginbox .third-party-btns .m-btn img{ width:20px; height:20px;}
  .loginbox .third-party-btns .m-btn span.wrap { padding-left: 30px; width: 165px;}
  .register-form-active .loginbox .third-party-btns .m-btn span.wrap{ width: 185px;}
  .newuser .text{ font-size: 1.5rem;}
  .loginform-toggles .btn-toggle { font-size: 1.8rem;}


}
/* ==========================================================================  
Latest News
========================================================================== */


/* ==========================================================================  
FANCYBOX 
========================================================================== */

html.fancybox-iframe, body.fancybox-iframe {height:auto;}
.fancybox__slide:not(.has-iframe) .fancybox__content {padding:40px !important; max-width: 900px!important; display: flex!important;}
.fancybox--pop {min-height:auto !important; height:auto !important;}

.fancybox__content.white-popup-block { flex-direction: row; gap:var(--grid-gap--large); flex-wrap: wrap;}
.fancybox__content.white-popup-block .left { flex: 2;}
.fancybox__content.white-popup-block .right { flex: 1;}

.fancybox__slide.has-iframe .fancybox__content {padding: 0px;}
.fancybox__container.is-compact .fancybox__slide.has-iframe .fancybox__content {
  padding: 0!important;
  width: 100%;
  height: 100%;
}
/* Form Popup */
.white-popup-block { position:relative; background:#fff; padding:30px 50px 30px; width:auto; max-width:900px; margin:20px auto;border-radius: 5px;}
.white-popup-block.white-popup-block--small { max-width:600px;}
.white-popup-block .formresponse {display:none; width: 100%;padding: 10px 15px;border-radius: 5px;font-size: 1.6rem;}
.white-popup-block .formresponse.success {background-color: var(--color-success);color: #fff;}
.white-popup-block .formresponse.error {background-color: var(--color-error);color: #fff;}


#contactform.white-popup-block .grid-60 { width: 100%;}
#contactform.white-popup-block { max-width: 800px; }
#contactform.white-popup-block .pformt {text-align: center;}

#agentcontactform.white-popup-block .grid-60 { width: 100%;}
#agentcontactform.white-popup-block { max-width: 800px; }
#agentcontactform.white-popup-block .pformt {text-align: center;}


.popform {float:left;width:100%;display: flex;flex-direction: column;gap: 15px;align-items: end;}
.pformt {float:left;width:100%;font-size: 2.6rem;line-height: 1.25;font-family: var(--font-title);position: relative;color: var(--color-primary);margin-bottom: 40px;text-align: left;font-family: var(--font-title);font-weight: 500;}
.pformt2 { float:left; text-align:center; width:100%; margin:10px 0 30px; font-size:1.6rem; color:#333; letter-spacing:0.4px; }
.popform label {float:left;width:100%;font-size: 1.6rem;font-weight: 500;color: var(--color-primary);margin-bottom: 5px; text-align: left;}
.popform label span {color: var(--color-error);}
.popform .valbox {float:left;width:100%;}
.popform .selbox { width:100%;background: #fff; position: relative;display: flex;align-items: center;}
.popform .selbox i {color: var(--color-primary);z-index: 0; position: absolute; right: 15px; font-size: 1.4rem;}
.popform .selbox:hover i { color: var(--color-dark);}
.popform .valboxcapt label {width:50%;text-align:right;margin: 10px 0 10px;padding:0 20px 0 0;}
.popform input[type=text], .popform input[type=email], .popform input[type=password], .popform input[type=number], .popform input[type=date]{float: left;width:100%;padding:10px 10px;border: 1px solid #ddd;border-radius:0;-moz-border-radius:0;-webkit-border-radius:0;font-size: 1.5rem;box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none;-webkit-appearance:none;appearance:none;-moz-appearance:none;font-family: var(--font-body);border-radius: 5px;}
.popform select {float: left;width:100%;padding:10px 10px;border: 1px solid #e2e2e2;border-radius: 5px;-moz-border-radius: 5px;-webkit-border-radius: 5px;font-size:1.4rem;letter-spacing:0.4px;box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none;-webkit-appearance:none;appearance:none;-moz-appearance:none;position: relative;background: transparent;z-index: 1;color: var(--color-dark);height: 43px;}
.popform select:focus, .popform input[type=text]:focus, .popform input[type=email]:focus, .popform input[type=password]:focus, .popform input[type=number]:focus, .popform input[type=date]:focus, .popform textarea:focus {outline: none;border-color: #666;}
.popform .val-select { float: left; position: relative; width: 100%; }
.popform .val-select .fa { position: absolute; right: 15px; top: 17px; font-size: 1.6rem; margin: -5px 0 0; z-index: 0; color: #151335; }

.popform #bookerr { float: left; width: 100%; font-size: 1.4rem; color: #da1f12; margin-top: 14px; letter-spacing: 0.04rem; line-height: 2rem; font-weight: 300; }

.popform .valboxcapt input[type=number] { width:50%; }
.popform textarea {-webkit-appearance:none;appearance:none;-moz-appearance:none;border-radius:0;-moz-border-radius:0;-webkit-border-radius:0;float: left;width:100%;padding: 10px;border: 1px solid #ddd;font-size: 1.5rem;line-height:2.0rem;font-family: var(--font-body);border-radius: 5px;}
.popform button {float:right;}
.popform button .fa { display: none; margin:0 0 0 10px; position:relative; right:0; }
.popform button:hover .fa { right:-5px; }   
.pformr {float:left;width:100%;color: var(--color-primary);padding-left: 40px;}   
.pformr img {float:left;width:100%;margin-top: 15px;margin-bottom: 15px;}

.popform .required.is-error {border-color: #ed1d26;}
.popform label.error {background: #ed1d26;margin: 0;padding: 5px 10px;color: #fff;text-transform: capitalize;}


.popform .valbox.optin label { padding: 0;}
.popform .valbox.optin input{ position: relative; top: 2px; margin-right: 5px;} 

.pformr #prop-name { float: left; width: 100%; font-size: 1.6rem; margin-top: 14px; letter-spacing: 0.06rem; font-weight: 300; }
.pformr #prop-top-dets { float: left; width: 100%; font-size: 1.6rem; color: #006a67; letter-spacing: 0.06rem; border-bottom: 1px solid #ddd;  padding-bottom: 7px; }
.pformr #prop-deposit { float: left; width: auto; clear: both; padding: 10px; background: #ffc600; font-size: 1.4rem; color: #333; letter-spacing: 0.06rem; margin-top: 10px; }
.pformr #terms a { float: left; width: auto; clear: both; font-size: 1.4rem; color: #333; letter-spacing: 0.04rem; font-weight: 300; margin-top: 10px; text-decoration: none;   }
.pformr #terms a:hover { text-decoration: underline; color: #000; }

.formreq {float:left;width:100%;font-size: 2rem;line-height: 1.25;margin-bottom: 5px;color: var(--color-primary);font-family: var(--font-title);font-weight: 500;}
.formtext { font-weight: 400; font-size: 1.5rem;}
.formtext span { text-transform: capitalize;}
.formtext a { color: var(--color-primary); text-decoration: underline; }
.formhouse { float:left; width:100%; border:1px solid #fff; }
.formhouse span { float:left; width:100%; padding:15px 20px; font-size:1.6rem; line-height:2.2rem; }
.formhouse img { float:left; width:100%; }
.formadd { float:left; width:100%; }
.formadd span { float: left; width:100%; }
.formadd .title { line-height:2.0rem; font-size:1.4rem; color:#666; margin:8px 0 0; letter-spacing:0.2px; }
.formadd .ph { font-size:2rem; letter-spacing:0.6px; margin:12px 0 6px; }
.formadd .em a { text-decoration: none; letter-spacing:0.2px; font-size:1.4rem; color:#006a67; }
.formadd .em a:hover { text-decoration:underline; }
.g-recaptcha { float:left; width:100%; margin:20px 0 0; }
.valerr {overflow:hidden;float:left;width:100%;background: var(--color-error);color: #fff;padding:0 10px;height:0;font-size:1.4rem;margin:0;}
.valbox.valshow .valerr {height:auto;padding: 8px 10px;}

.members .formreq, .members .formadd .title, .formadd .em a { font-size:1.6rem; letter-spacing:0.6px; margin:12px 0 6px; color: #000;  }
.members .formadd .ph  {font-size: 1.8rem;}
.members .formadd .title { line-height:2.6rem;  margin:0px 0 0;}


.valsteps {float: left;width: 100%;margin: 15px 0 40px; padding-bottom: 30px; border-bottom: 1px solid #e6e6e6;}
.valsteps .img {float: left;width: 17%;text-align: center;}
.valsteps .img img{ max-width: 100%;}
.valsteps .txt {float: left;width: 83%;font-size: 1.6rem;letter-spacing: 0.04rem;line-height: 3rem;font-weight: 300;padding-left: 10px;}
.valsteps .txt strong {font-size: 2rem;font-weight: 500;color: #016a68;}

.remove-search-btn { color: var(--color-error); font-size: 1.5rem; display: inline-flex; width: 100%; align-items: center; gap: 8px; margin-top: 15px; text-align: center; justify-content: center;}


.popform:has(.valbox.half) { flex-direction: row; flex-wrap: wrap; align-items: start;}
.popform .valbox.half {float:left;width:calc(50% - 7.5px);}



@media(max-width:980px) {
  .pformr {display: none;}
}

@media(max-width:667px) {
  .form-popup {flex-direction:column;}
  .popform .valbox.half {float:left;width:100%;}
 
  .fancybox__content.white-popup-block { flex-direction: column;}
  .fancybox__content.white-popup-block .left { flex: 1;}
  .fancybox__content.white-popup-block .right { flex: 1;}

  .pformt { font-size: 2.4rem;}

  .white-popup-block { padding: 30px 30px;}
  .white-popup-block .formresponse{ padding: 8px 14px; font-size: 1.4rem;}
  .popform label{ font-size: 1.4rem;}

} 

/* ==========================================================================  
TOOLTIPS 
========================================================================== */

[data-tooltip] {position: relative;}

.search-top-buttons [data-tooltip]:before,
.search-top-buttons [data-tooltip]:after {
  position: absolute;
  left: 0px;
  transform: translate(-100%,0);
  -webkit-font-smoothing: antialiased;
  margin: 0 auto;
  opacity: 0;
  visibility: hidden;
  z-index: 9;
  transition: 0.6s ease-in-out 0.4s;
}

.search-top-buttons [data-tooltip]:before {
  content: "";
  height: 0;
  width: 0;
  top: calc(50% - 10px);
  border-style: solid;
  border-width: 10px;
  border-color: transparent transparent transparent var(--color-primary);
}

.search-top-buttons [data-tooltip]:after {
  content: attr(data-tooltip);
  background: var(--color-primary);
  padding: 0.6rem 1rem 0.7rem 1rem;
  font-size: 1.3rem;
  box-sizing: border-box;
  top: -2px;
  color: #fff;
  border-radius: 2px;
  z-index: 9;
  width: 265px;
  border-radius: 5px;
  text-align: center;
  left: -20px;
  line-height: unset;
}

.search-top-buttons [data-tooltip].disabled:hover:before,
.search-top-buttons [data-tooltip].disabled:hover:after {
  opacity: 1;
  visibility: visible;
  transition: 0.2s ease-in-out 0.2s;
}

.map-active .search-top-buttons [data-tooltip]:before,
.map-active .search-top-buttons [data-tooltip]:after {
  transform: translate(100%,0);
  left: initial;
  right: 0;
}

.map-active .search-top-buttons [data-tooltip]:after {
  left: initial;
  right: -20px;
}

.map-active .search-top-buttons [data-tooltip]:before {
  border-color: transparent var(--color-primary) transparent transparent;
}

@media(max-width: 980px){

  .search-top-buttons [data-tooltip]:after{
    font-size: 1.2rem;
  }

  #bottombar [data-tooltip]:before,
  #bottombar [data-tooltip]:after {
    display: none!important;
  }
}

@media(max-width: 768px){


  .search-top:not(.map-active) .search-top-buttons [data-tooltip]:before,
  .search-top:not(.map-active) .search-top-buttons [data-tooltip]:after {
    transform: translate(0%,0);
    /* top: 0; */
  }
  .search-top:not(.map-active) .search-top-buttons [data-tooltip]:before{
    border-color: transparent transparent var(--color-primary) transparent;
    left: calc(50% - 10px);
    top: calc(100% - 10px);
  }
  .search-top:not(.map-active) .search-top-buttons [data-tooltip]:after{
    left: 0;
    top: calc(100% + 10px);
    width: 100%;
  }

  .map-active .search-top-buttons [data-tooltip]:before,
  .map-active .search-top-buttons [data-tooltip]:after {
    transform: translate(-100%,0);
    left: 0;
    right: initial;
  }

  .map-active .search-top-buttons [data-tooltip]:after {
    left: -20px;
    right: initial;
    width: 250px;
  }
  .map-active .search-top-buttons [data-tooltip]:before {
    border-color: transparent transparent transparent var(--color-primary);
  }
} 


.ptr--ptr {
  background-color: var(--color-secondary);
  box-shadow: none!important;
}

.ptr--box {
  padding: 10px;
  flex-basis: 100%;
}

.ptr--pull {
  transition:none;
}

.ptr--text {
  display: none!important;
}

.ptr--icon {
  text-indent: -9999px;
  width: 30px;
    height: 30px;
    position: relative;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 2px solid #fff;
    border-radius: 50%;
    border-top-color: transparent;
    animation: preloader-spin 1s infinite linear;
    opacity: 0;
    transition: opacity .3s ease-in-out;

}

.ptr--pull.ptr--release  .ptr--icon{ 
  opacity: 1;
}


/* ==========================================================================  
ANIMATIONS 
========================================================================== */

@keyframes preloader-spin {
  0% {
      transform: rotate(0deg)
  }

  100% {
      transform: rotate(360deg)
  }
}

@keyframes pulseheart {
	0% {
		animation-timing-function: ease-out;
		transform: scale(1);
		transform-origin: center center;
	}

	10% {
		animation-timing-function: ease-in;
		transform: scale(0.80);
	}

	20% {
		animation-timing-function: ease-out;
		transform: scale(1.1);
	}

	40% {
		animation-timing-function: ease-in;
		transform: scale(0.80);
	}

	50% {
		animation-timing-function: ease-out;
		transform: scale(1);
	}
}

@keyframes bellshake {
  0% { transform: rotate(0); }
  15% { transform: rotate(5deg); }
  30% { transform: rotate(-5deg); }
  45% { transform: rotate(4deg); }
  60% { transform: rotate(-4deg); }
  75% { transform: rotate(2deg); }
  85% { transform: rotate(-2deg); }
  92% { transform: rotate(1deg); }
  100% { transform: rotate(0); }
}
@keyframes bellshakehover {
  0% { transform: rotate(0); }
  15% { transform: rotate(5deg); }
  30% { transform: rotate(-5deg); }
  45% { transform: rotate(4deg); }
  60% { transform: rotate(-4deg); }
  75% { transform: rotate(2deg); }
  85% { transform: rotate(-2deg); }
  92% { transform: rotate(1deg); }
  100% { transform: rotate(0); }
}



.rwd-table {
  font-size: 1.4rem;
}
.rwd-table tr {
    border-bottom: 1px solid rgb(214 214 214);
}
.rwd-table th {
  display: none;
}
.rwd-table td {
  display: block;
}
.rwd-table td:first-child {
  padding-top: .5em;
}
.rwd-table td:last-child {
  padding-bottom: .5em;
}
.rwd-table td:before {
  content: attr(data-th) " ";
  /*font-weight: bold;*/
  width: 8.5em;
  display: inline-block; 
} 
@media (min-width: 480px) {    
  .rwd-table td:before { 
    display: none;     
  }  
}  
.rwd-table th, .rwd-table td {    
  text-align: left;     
}     
@media (min-width: 480px) {   
  .rwd-table th, .rwd-table td {    
    display: table-cell;
    padding: .25em .5em;
  }   
  .rwd-table th:first-child, .rwd-table td:first-child { 
    padding-left: 0;
  } 
  .rwd-table th:last-child, .rwd-table td:last-child {
    padding-right: 0; 
  }
} 
 
@media (max-width: 480px) {
  .rwd-table input[type=radio] {
      display: inline-block!important;
      margin: 0 20%!important;
  }
  .rwd-table th, .rwd-table td:before { 
    line-height: 0.2em;
    padding-top: 15px;
  }
}

.rwd-table {
  color: var(--color-dark);
  overflow: hidden;
}

.rwd-table th, .rwd-table td {
  margin: .5em 1em;
}
@media (min-width: 480px) {
  .rwd-table th, .rwd-table td {
    padding: 1.4rem 1rem !important;
  }
} 
.rwd-table th, .rwd-table td:before {
  color: var(--color-dark);
  text-align: center;
} 

.rwd-table input[type=radio] {
  display: block;
  margin: 0 auto; 
}

.freeprivacypolicy-com---nb-simple { max-width: 100%!important;background-color: var(--color-secondary)!important; border-top: 1px solid var(--color-secondary)!important; color: #ffffff!important;}
.freeprivacypolicy-com---palette-light .cc-nb-title, .freeprivacypolicy-com---palette-light .cc-nb-text { color: #ffffff!important;}
.freeprivacypolicy-com---palette-light .cc-nb-okagree, .freeprivacypolicy-com---palette-light .cc-cp-foot-save {background-color: var(--color-primary)!important; color: #ffffff!important;}
.freeprivacypolicy-com---palette-light .cc-nb-reject, .freeprivacypolicy-com---palette-light .cc-nb-changep { background-color:var(--color-secondary)!important; color: #fff!important;}
.grecaptcha-badge { display: none!important;}