/* Nest In Luxury Stays - Test UI Polish V1 */

/* ---------- common header ---------- */
.topbar{
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 rgba(16,55,51,.08);
}

.brand{
  transition:transform .2s ease;
}

.brand:hover{
  transform:translateY(-1px);
}

.brand-logo-image img{
  transition:transform .3s ease,filter .3s ease;
}

.brand:hover .brand-logo-image img{
  transform:scale(1.045);
  filter:drop-shadow(0 5px 12px rgba(16,95,88,.18));
}

.nav-links a{
  position:relative;
  transition:color .2s ease,transform .2s ease;
}

.nav-links a:hover{
  transform:translateY(-1px);
}

/* ---------- buttons ---------- */
.btn,
button,
.map-filter{
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    background-color .18s ease,
    border-color .18s ease;
}

.btn:hover,
.map-filter:hover{
  transform:translateY(-2px);
}

.btn:active,
button:active,
.map-filter:active{
  transform:scale(.98);
}

/* ---------- cards ---------- */
.property-card,
.location-quick-card,
.map-brand-card{
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}

.property-card:hover,
.location-quick-card:hover,
.map-brand-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(20,55,50,.11);
}

.property-card img{
  transition:transform .45s ease;
}

.property-card:hover img{
  transform:scale(1.025);
}

/* ---------- entrance motion ---------- */
.nestin-reveal{
  opacity:0;
  transform:translateY(12px);
}

.nestin-reveal.is-visible{
  opacity:1;
  transform:none;
  transition:
    opacity .5s ease,
    transform .5s cubic-bezier(.2,.8,.2,1);
}

/* ---------- branded loader ---------- */
#nestin-page-loader{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  background:#fff;
  opacity:1;
  visibility:visible;
  transition:opacity .32s ease,visibility .32s ease;
}

#nestin-page-loader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.nestin-loader-inner{
  text-align:center;
}

.nestin-loader-logo{
  width:96px;
  height:96px;
  object-fit:contain;
  animation:nestin-logo-pulse 1.2s ease-in-out infinite;
  filter:drop-shadow(0 8px 20px rgba(16,95,88,.14));
}

.nestin-loader-name{
  margin-top:12px;
  font-size:19px;
  font-weight:800;
  color:#143d39;
}

.nestin-loader-tagline{
  margin-top:5px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
  color:#71817e;
  text-transform:uppercase;
}

.nestin-loader-line{
  width:78px;
  height:3px;
  margin:15px auto 0;
  overflow:hidden;
  border-radius:999px;
  background:#e2ece9;
}

.nestin-loader-line::after{
  content:"";
  display:block;
  width:42%;
  height:100%;
  border-radius:inherit;
  background:#0d766b;
  animation:nestin-line 1s ease-in-out infinite;
}

@keyframes nestin-logo-pulse{
  0%,100%{transform:scale(1);opacity:.87}
  50%{transform:scale(1.055);opacity:1}
}

@keyframes nestin-line{
  from{transform:translateX(-130%)}
  to{transform:translateX(285%)}
}

/* ---------- locations page spacing ---------- */
.map-hero{
  scroll-margin-top:90px;
}

@media(max-width:700px){
  .nestin-loader-logo{
    width:82px;
    height:82px;
  }

  .property-card:hover,
  .location-quick-card:hover{
    transform:none;
  }
}

@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }

  .nestin-reveal{
    opacity:1;
    transform:none;
  }
}

/* Safety: never leave loading screen permanently visible */
@keyframes nestin-loader-failsafe{
  to{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
  }
}

#nestin-page-loader{
  animation:nestin-loader-failsafe 0s linear 4s forwards;
}

#nestin-page-loader .nestin-loader-logo{
  animation:nestin-logo-pulse 1.2s ease-in-out infinite;
}

/* NESTIN LOCATIONS HEADER CONSISTENCY V1 */

.topbar{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid rgba(16,55,51,.08);
}

.topbar .nav{
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.topbar .brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
}

.topbar .brand-mark.brand-logo-image{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
}

.topbar .brand-mark.brand-logo-image img{
  width:44px;
  height:44px;
  object-fit:contain;
  display:block;
}

.topbar .brand > span:last-child{
  font-size:15px;
  line-height:1.15;
  font-weight:850;
}

.topbar .brand small{
  display:block;
  margin-top:3px;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.topbar .nav-links{
  display:flex;
  align-items:center;
  gap:24px;
}

.topbar .nav-links a{
  font-size:14px;
  font-weight:750;
  white-space:nowrap;
}

/* Slightly calmer locations hero */
.map-hero-copy h1{
  font-size:clamp(46px,5vw,72px);
  line-height:.98;
}

.map-brand-card{
  max-width:340px;
  margin-left:auto;
}

.section-head h2{
  font-size:clamp(38px,4vw,58px);
  line-height:1.04;
}

@media(max-width:800px){
  .topbar .nav{
    min-height:62px;
    gap:12px;
  }

  .topbar .brand-mark.brand-logo-image,
  .topbar .brand-mark.brand-logo-image img{
    width:38px;
    height:38px;
    flex-basis:38px;
  }

  .topbar .nav-links{
    gap:12px;
  }

  .topbar .nav-links a{
    font-size:12px;
  }

  .map-brand-card{
    max-width:none;
    margin-left:0;
  }

  .map-hero-copy h1{
    font-size:clamp(38px,11vw,54px);
  }
}

/* END NESTIN LOCATIONS HEADER CONSISTENCY V1 */

/* NEST IN MOBILE NAVIGATION V2 */

.nestin-menu-toggle{
  display:none;
}

.site-header .nav-links{
  display:flex;
  align-items:center;
  gap:7px;
}

@media(max-width:700px){

  .topbar .nav{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:62px;
  }

  .nestin-menu-toggle{
    display:flex !important;
    width:40px;
    height:40px;
    flex:0 0 40px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:0;
    margin-left:auto;
    border:1px solid #dce7e4;
    border-radius:11px;
    background:#fff;
    cursor:pointer;
  }

  .nestin-menu-toggle span{
    display:block;
    width:18px;
    height:2px;
    border-radius:999px;
    background:#153d38;
    transition:.2s ease;
  }

  .nestin-menu-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(6px) rotate(45deg);
  }

  .nestin-menu-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0;
  }

  .nestin-menu-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg);
  }

  .topbar .nav-links{
    position:absolute !important;
    top:calc(100% + 6px);
    left:8px;
    right:8px;
    z-index:9999;
    display:none !important;
    flex-direction:column !important;
    gap:2px !important;
    padding:8px !important;
    border:1px solid #dce7e4;
    border-radius:14px;
    background:#fff;
    box-shadow:0 16px 35px rgba(16,55,51,.16);
  }

  .topbar .nav-links.is-open{
    display:flex !important;
  }

  .topbar .nav-links a{
    display:flex !important;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:9px 12px !important;
    border-radius:9px;
    font-size:13px !important;
  }

  .topbar .nav-links a:hover{
    background:#eef7f4;
  }

  .site-header .nav{
    position:relative;
    display:flex;
    align-items:center;
    gap:6px;
  }

  .site-header .nav-links{
    position:absolute!important;
    top:calc(100% + 6px);
    right:0;
    z-index:9999;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    min-width:190px;
    padding:8px!important;
    border:1px solid #dce7e4;
    border-radius:14px;
    background:#fff;
    box-shadow:0 16px 35px rgba(16,55,51,.16);
  }

  .site-header .nav-links.is-open{
    display:flex!important;
  }

  .site-header .nav-links a{
    display:flex!important;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:9px 12px!important;
    border-radius:9px;
    font-size:13px!important;
  }

  .site-header .nav-links a:hover{
    background:#eef7f4;
  }
}

/* ===== BRAND LOGO BORDER FIX ===== */

.topbar .brand{
  border:0 !important;
  outline:0;
  box-shadow:none !important;
}

.topbar .brand:focus{
  outline:0;
  box-shadow:none !important;
}

/* Keep accessible keyboard focus without the black rectangle */
.topbar .brand:focus-visible{
  outline:2px solid rgba(13,118,107,.35);
  outline-offset:4px;
  border-radius:10px;
}

.topbar .brand-mark,
.topbar .brand-logo-image,
.topbar .brand-logo-image img{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

.property-card-catalog .property-card-actions.property-contact-actions-v520{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.property-card-catalog .property-contact-actions-v520 .btn{
  min-width:0!important;
  white-space:nowrap;
}
.property-contact-number-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:8px;
}
.property-contact-number{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:0;
  min-height:38px;
  padding:6px 9px;
  border:1px solid #d7e4df;
  border-radius:9px;
  background:#f7fbf9;
  color:#17463e;
  text-decoration:none;
  font-size:11px;
  line-height:1.2;
}
.property-contact-number svg{width:14px;height:14px;flex:0 0 auto}
.property-contact-number span{font-weight:750;white-space:nowrap}
.property-contact-number-whatsapp{background:#f1faf4;color:#136a43}

/* Compact, legible property-card actions on mobile and narrow layouts. */
@media(max-width:1000px){
  .property-card-catalog .property-card-actions.property-contact-actions-v520{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .property-card-catalog .property-contact-actions-v520 .btn{
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:auto!important;
    min-height:40px!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  .property-contact-number-row{gap:6px}
  .property-contact-number{gap:4px;padding:6px 4px;font-size:10px}
}
@media(max-width:420px){
  .property-card-catalog .property-card-actions.property-contact-actions-v520{gap:5px!important}
  .property-card-catalog .property-contact-actions-v520 .btn{padding:7px 5px!important;font-size:10px!important}
  .property-contact-number{font-size:9px}
}

/* Keep amenity details readable instead of clipping them in a one-line strip. */
.property-card-catalog .listing-amenities{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center;
  overflow:visible!important;
  row-gap:5px;
  min-height:25px;
}
.property-card-catalog .listing-amenity{
  flex:0 1 auto!important;
  max-width:calc(50% - 5px)!important;
  min-height:24px;
  font-size:10px!important;
  line-height:1.25;
}
.property-card-catalog .listing-amenity-label{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
}
.property-card-catalog .listing-amenity-more{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 7px;
  border-radius:7px;
  background:#eef7f3;
  font-size:10px;
}
.property-card-catalog .listing-amenities-empty{
  color:#657871;
  font-size:10px;
  font-style:italic;
}
@media(max-width:1000px){
  .property-contact-number{display:flex;min-height:40px;white-space:nowrap}
}
@media(max-width:420px){
  .property-card-catalog .listing-amenity{max-width:100%!important}
}

/* Homepage refresh: clear hierarchy, opaque navigation, roomy cards. */
.home-catalogue{
  --brand:#176b60;
  --brand-dark:#10534b;
  --ink:#18352f;
  --cream:#f4f7f5;
  background:#f4f7f5!important;
  color:#18352f;
}
.home-catalogue .site-header{
  position:sticky;
  top:0;
  z-index:1200;
  padding:0!important;
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid #dfe9e5!important;
  box-shadow:0 4px 16px rgba(25,54,47,.06)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
.home-catalogue .site-header .header-row{
  min-height:70px!important;
  padding:8px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.home-catalogue .site-header .brand img{
  width:42px!important;
  height:42px!important;
  padding:0;
  border:1px solid rgba(22,35,31,.12);
  border-radius:11px;
  background:#232724!important;
  box-shadow:0 3px 9px rgba(23,41,35,.12)!important;
}
.home-catalogue .site-header .brand-copy{color:#173d35!important;font-size:18px;font-weight:800}
.home-catalogue .site-header .brand-copy small{color:#708078!important;font-size:9px!important;letter-spacing:.08em}
.home-catalogue .site-header .nav{gap:10px}
.home-catalogue .site-header .nav-link{color:#36574f!important;font-size:14px;padding:10px 12px}
.home-catalogue .site-header .btn-primary{
  min-height:42px;
  padding:10px 18px;
  border-radius:11px;
  background:#176b60!important;
  box-shadow:0 5px 13px rgba(23,107,96,.18)!important;
  font-size:13px;
}
.home-catalogue .catalog-intro-direct{
  padding:24px 0 20px!important;
  background:linear-gradient(135deg,#f4f8f5 0%,#edf4f0 100%)!important;
  border-bottom:1px solid #dce8e3!important;
}
.home-catalogue .seo-home-strip{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)!important;
  align-items:center;
  gap:14px 32px!important;
}
.home-catalogue .seo-home-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px 12px;white-space:normal!important}
.home-catalogue .seo-home-kicker{font-size:11px!important;letter-spacing:.12em}
.home-catalogue .catalog-intro-direct h1{color:#173d35!important;font-size:clamp(27px,3vw,38px)!important;line-height:1.13!important;font-weight:800!important;letter-spacing:-.03em!important}
.home-catalogue .catalog-intro-direct p{max-width:620px;color:#526861!important;font-size:15px!important;line-height:1.6!important}
.home-catalogue .catalog-location-bar-direct{
  grid-column:1/-1;
  display:flex!important;
  flex-wrap:wrap;
  gap:10px!important;
  margin:0!important;
  padding-top:12px!important;
  border-top:1px solid #dce8e3!important;
}
.home-catalogue .catalog-location-bar-direct .catalog-location-label{display:block!important;color:#577068;font-size:12px;font-weight:750}
.home-catalogue .catalog-location-chips{display:flex;flex-wrap:wrap!important;gap:8px!important;overflow:visible!important}
.home-catalogue .location-chip{
  min-height:36px!important;
  padding:8px 14px!important;
  border:1px solid #d4e3dd!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#28594e!important;
  font-size:12px!important;
  font-weight:700;
  box-shadow:0 2px 7px rgba(22,71,60,.04);
}
.home-catalogue .location-chip.is-active,
.home-catalogue .location-chip[aria-current="true"]{background:#176b60!important;border-color:#176b60!important;color:#fff!important}
.home-catalogue .catalog-section-direct{padding:24px 0 44px!important}
.home-catalogue .property-grid.property-grid-direct{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.home-catalogue .property-card-catalog{
  border:1px solid #dce7e2!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(24,61,51,.07)!important;
}
.home-catalogue .property-card-catalog:hover{border-color:#bfd4ca!important;box-shadow:0 15px 34px rgba(24,61,51,.12)!important;transform:translateY(-3px)}
.home-catalogue .property-card-catalog .property-card-media{height:auto!important;aspect-ratio:16/9;background:#e7f0ec!important}
.home-catalogue .property-card-catalog .property-card-body{padding:18px!important}
.home-catalogue .property-card-catalog .property-location{color:#657a72!important;font-size:12px!important;font-weight:700}
.home-catalogue .property-card-catalog h3{margin-top:7px;color:#183b34!important;font-size:19px!important;line-height:1.3!important;font-weight:750!important;letter-spacing:-.02em}
.home-catalogue .property-card-catalog .property-audience-inline .chip{min-height:27px;padding:5px 10px;font-size:11px}
.home-catalogue .property-card-catalog .sharing-list{gap:7px!important;margin-top:12px!important}
.home-catalogue .property-card-catalog .sharing-pill{min-height:34px!important;padding:7px 10px!important;border-radius:9px!important;font-size:11px!important;color:#526861!important}
.home-catalogue .property-card-catalog .sharing-pill b{color:#174f45!important;font-size:12px!important}
.home-catalogue .property-card-catalog .listing-amenities{margin-top:11px!important;gap:6px!important}
.home-catalogue .property-card-catalog .listing-amenity{min-height:28px;padding:6px 9px;font-size:11px!important}
.home-catalogue .property-card-catalog .listing-amenity-icon svg{width:14px;height:14px}
.home-catalogue .property-card-catalog .listing-amenity-more{min-height:28px;padding:6px 9px;font-size:11px}
.home-catalogue .property-card-catalog .listing-amenities-empty{font-size:12px!important}
.home-catalogue .amenity-motion-card{
  padding:18px!important;
  background:linear-gradient(135deg,#edf5f1 0%,#f7f6ef 100%)!important;
}
.home-catalogue .amenity-motion-card::before,
.home-catalogue .amenity-motion-card::after,
.home-catalogue .amenity-motion-orb{display:none!important;animation:none!important}
.home-catalogue .amenity-motion-content{max-width:520px}
.home-catalogue .amenity-motion-kicker{min-height:24px;padding:4px 9px;font-size:9px;box-shadow:none}
.home-catalogue .amenity-motion-title{margin-top:8px;font-size:clamp(16px,1.5vw,21px);line-height:1.2}
.home-catalogue .amenity-motion-items{margin-top:11px;gap:6px}
.home-catalogue .amenity-motion-item{min-height:27px;padding:5px 8px;font-size:10px;box-shadow:none}
.home-catalogue .amenity-motion-home-icon svg{width:12px;height:12px}
.home-catalogue .property-card-catalog .property-card-actions.property-contact-actions-v520{gap:8px!important;margin-top:16px!important}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:42px!important;padding:9px 10px!important;border-radius:10px!important;font-size:12px!important;font-weight:750}
.home-catalogue .property-contact-number-row{gap:8px!important;margin-top:9px!important}
.home-catalogue .property-contact-number{min-height:42px;padding:8px 10px;border-radius:10px;font-size:12px!important;font-weight:750}
.home-catalogue .property-contact-number-whatsapp{background:#eef8f1;color:#176345}
.home-catalogue .seo-home-guide{background:#eef4f0;border-color:#dce7e2}

@media(max-width:1180px){
  .home-catalogue .seo-home-strip{grid-template-columns:1fr!important;gap:12px!important}
  .home-catalogue .catalog-intro-direct p{max-width:850px}
  .home-catalogue .property-grid.property-grid-direct{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
}
@media(max-width:760px){
  .home-catalogue .site-header .header-row{min-height:58px!important;padding:7px 0!important;background:transparent!important}
  .home-catalogue .site-header .brand img{width:36px!important;height:36px!important;border-radius:9px}
  .home-catalogue .site-header .brand-copy{font-size:15px!important}
  .home-catalogue .site-header .nav .btn-primary{min-height:38px!important;padding:8px 12px!important;font-size:11px!important}
  .home-catalogue .catalog-intro-direct{padding:21px 0 18px!important}
  .home-catalogue .seo-home-strip{gap:10px!important}
  .home-catalogue .seo-home-title{display:block!important}
  .home-catalogue .seo-home-kicker{display:block!important;margin-bottom:7px}
  .home-catalogue .catalog-intro-direct h1{font-size:clamp(27px,7vw,34px)!important}
  .home-catalogue .catalog-intro-direct p{font-size:14px!important;line-height:1.55!important}
  .home-catalogue .catalog-location-bar-direct{margin-top:4px!important;padding-top:12px!important}
  .home-catalogue .catalog-location-chips{flex-wrap:nowrap!important;max-width:100%;overflow-x:auto!important;padding:1px 2px 5px;scrollbar-width:thin}
  .home-catalogue .location-chip{flex:0 0 auto}
  .home-catalogue .catalog-section-direct{padding:18px 0 32px!important}
  .home-catalogue .property-grid.property-grid-direct{grid-template-columns:1fr!important;gap:16px!important}
  .home-catalogue .property-card-catalog .property-card-media{aspect-ratio:16/9;max-height:260px}
  .home-catalogue .property-card-catalog .property-card-body{padding:16px!important}
  .home-catalogue .property-card-catalog h3{font-size:18px!important}
}
@media(max-width:420px){
  .home-catalogue .property-card-catalog .property-card-body{padding:13px!important}
  .home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:40px!important;padding:8px 5px!important;font-size:11px!important}
  .home-catalogue .property-contact-number{font-size:11px!important}
}

/* Catalogue polish: keep the real property data legible at every card width. */
.home-catalogue{background:#f6f7f3!important;color:#203b35}
.home-catalogue .catalog-intro-direct{background:linear-gradient(120deg,#f2f6f2,#edf4f0 64%,#f7f4e9)!important}
.home-catalogue .catalog-section-direct{max-width:1440px;margin-inline:auto}
.home-catalogue .property-card-catalog{
  overflow:hidden!important;
  border-radius:18px!important;
  box-shadow:0 5px 20px rgba(24,61,51,.055)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.home-catalogue .property-card-catalog:hover{transform:translateY(-2px)!important;box-shadow:0 12px 26px rgba(24,61,51,.11)!important}
.home-catalogue .property-card-catalog .property-card-media{
  display:block;
  position:relative;
  aspect-ratio:16/9!important;
  min-height:205px;
  overflow:hidden;
  background:#e8efea!important;
}
.home-catalogue .property-card-catalog .property-card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.home-catalogue .property-card-catalog:hover .property-card-media>img{transform:scale(1.025)}
.home-catalogue .property-card-catalog .property-card-body{padding:17px!important}
.home-catalogue .property-card-catalog .property-title-row{align-items:flex-start;gap:8px}
.home-catalogue .property-card-catalog h3{font-size:18px!important;line-height:1.32!important}
.home-catalogue .property-card-catalog .property-audience-inline{flex-wrap:wrap;justify-content:flex-end}
.home-catalogue .property-card-catalog .sharing-scroll{width:100%;margin-top:12px!important;overflow:visible!important}
.home-catalogue .property-card-catalog .sharing-list{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
}
.home-catalogue .property-card-catalog .sharing-pill{
  display:flex!important;
  flex:1 1 142px!important;
  align-items:center;
  justify-content:space-between;
  gap:5px 8px!important;
  min-width:0;
  max-width:100%;
  min-height:38px!important;
  padding:7px 9px!important;
  border:1px solid #e2eae5!important;
  border-radius:10px!important;
  background:#f9fbf9!important;
  color:#526861!important;
  font-size:10px!important;
  line-height:1.25;
  white-space:normal!important;
  scroll-snap-align:none;
}
.home-catalogue .property-card-catalog .sharing-pill span{white-space:normal!important}
.home-catalogue .property-card-catalog .sharing-pill b{flex:0 0 auto;color:#155d50!important;font-size:12px!important;white-space:nowrap}
.home-catalogue .property-card-catalog .sharing-pill small{font-size:9px!important}
.home-catalogue .property-card-catalog .listing-amenities{display:flex;flex-wrap:wrap;align-items:flex-start;overflow:visible!important}
.home-catalogue .property-card-catalog .listing-amenity{max-width:100%;white-space:normal}
.home-catalogue .property-card-catalog .property-card-actions.property-contact-actions-v520{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px!important;
  margin-top:15px!important;
}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{
  display:flex;
  min-width:0;
  min-height:43px!important;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:8px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1.2;
  white-space:nowrap;
}
.home-catalogue .property-card-catalog .property-contact-number-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;margin-top:8px!important}
.home-catalogue .property-card-catalog .property-contact-number{display:flex;min-width:0;min-height:41px;align-items:center;justify-content:center;gap:7px;padding:8px!important;border-radius:10px;font-size:12px!important;white-space:nowrap}
.home-catalogue .property-card-catalog .amenity-motion-card{
  display:grid;
  min-height:100%;
  place-items:center;
  padding:22px!important;
  background:radial-gradient(ellipse at 18% 18%,rgba(215,230,219,.72),transparent 46%),linear-gradient(135deg,#eef4ef,#f8f6ed)!important;
}
.home-catalogue .property-card-catalog .amenity-motion-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(100%,440px);max-width:100%;text-align:center}
.home-catalogue .property-card-catalog .amenity-motion-kicker{min-height:0;padding:6px 11px;border:1px solid #d9e6dd;border-radius:999px;background:#fff;color:#527369;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.home-catalogue .property-card-catalog .amenity-motion-title{margin-top:12px;color:#174f45;font-size:clamp(18px,2vw,24px);line-height:1.2}
.home-catalogue .property-card-catalog .amenity-motion-items{display:flex;flex-wrap:wrap;justify-content:center;margin-top:12px;gap:7px}
.home-catalogue .property-card-catalog .amenity-motion-item{min-height:30px;padding:6px 9px;border:1px solid rgba(210,225,217,.9);border-radius:999px;background:rgba(255,255,255,.85);color:#385c51;font-size:10px}
.home-catalogue .property-card-catalog .amenity-motion-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100%;padding:24px;background:linear-gradient(135deg,#eef4ef,#f7f4e9);text-align:center}
.home-catalogue .property-card-catalog .amenity-motion-empty strong{color:#245b4e;font-size:18px}
.home-catalogue .property-card-catalog .amenity-motion-empty span{color:#667a71;font-size:13px}
@media(max-width:1100px){
  .home-catalogue .property-grid.property-grid-direct{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
}
@media(max-width:760px){
  .home-catalogue .property-grid.property-grid-direct{grid-template-columns:1fr!important;gap:16px!important}
  .home-catalogue .catalog-location-bar-direct{align-items:flex-start!important}
  .home-catalogue .catalog-location-bar-direct .catalog-location-label{width:100%;text-align:left}
  .home-catalogue .catalog-location-chips{flex-wrap:wrap!important;justify-content:flex-start!important;overflow:visible!important;gap:7px!important;padding:0!important}
  .home-catalogue .location-chip{min-height:34px!important;padding:7px 12px!important;font-size:11px!important}
  .home-catalogue .property-card-catalog .property-card-body{padding:16px!important}
  .home-catalogue .property-card-catalog .property-card-media{min-height:190px;max-height:280px}
  .home-catalogue .property-card-catalog .sharing-pill{flex-basis:142px!important}
  .home-catalogue .property-card-catalog .amenity-motion-card{padding:16px!important}
  .home-catalogue .property-card-catalog .amenity-motion-title{font-size:19px!important}
  .home-catalogue .property-card-catalog .amenity-motion-items{gap:6px}
  .home-catalogue .property-card-catalog .amenity-motion-item{min-height:28px;padding:5px 8px}
}
@media(max-width:380px){
  .home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{font-size:11px!important;padding:7px 4px!important}
  .home-catalogue .property-card-catalog .property-contact-number{font-size:11px!important}
}

/* A calm, accessible photo tour and one clear starting rent per property. */
.home-catalogue .property-card-catalog .property-card-media{isolation:isolate}
.home-catalogue .property-card-catalog .property-card-media-link{
  position:absolute;
  inset:0;
  z-index:1;
  display:block;
  overflow:hidden;
  color:inherit;
}
.home-catalogue .property-card-catalog .property-card-media-link>img{display:block;width:100%;height:100%;object-fit:cover}
.home-catalogue .property-card-catalog .property-photo-track{display:flex;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1);will-change:transform}
.home-catalogue .property-card-catalog .property-photo-slide{display:block;flex:0 0 100%;width:100%;height:100%;object-fit:cover}
.home-catalogue .property-card-catalog .card-badge,
.home-catalogue .property-card-catalog .catalog-availability-pop{z-index:2}
.home-catalogue .property-card-catalog .photo-carousel-control{
  position:absolute;
  z-index:4;
  top:50%;
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.8);
  border-radius:50%;
  background:rgba(255,255,255,.94);
  box-shadow:0 4px 14px rgba(19,45,39,.18);
  color:#174f45;
  font:600 26px/1 system-ui,sans-serif;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.home-catalogue .property-card-catalog .photo-carousel-control:hover{background:#fff;box-shadow:0 6px 18px rgba(19,45,39,.23)}
.home-catalogue .property-card-catalog .photo-carousel-control:focus-visible{outline:3px solid #e5bd66;outline-offset:2px}
.home-catalogue .property-card-catalog .photo-carousel-prev{left:12px}
.home-catalogue .property-card-catalog .photo-carousel-next{right:12px}
.home-catalogue .property-card-catalog .photo-carousel-count{
  position:absolute;
  z-index:3;
  right:12px;
  bottom:12px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:999px;
  background:rgba(20,40,35,.72);
  color:#fff;
  font-size:11px;
  font-weight:750;
  line-height:1;
  pointer-events:none;
}
.home-catalogue .property-card-catalog .starting-price{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:4px 8px;
  margin-top:13px;
  padding:10px 13px;
  border:1px solid #dce9e1;
  border-radius:12px;
  background:linear-gradient(110deg,#f1f7f3,#fbfaf4);
}
.home-catalogue .property-card-catalog .starting-price-label{color:#63776f;font-size:11px;font-weight:700}
.home-catalogue .property-card-catalog .starting-price>strong{color:#125d50;font-size:22px;font-weight:850;letter-spacing:-.035em;line-height:1.1}
.home-catalogue .property-card-catalog .starting-price-period{color:#687970;font-size:12px;font-weight:600}
.home-catalogue .property-card-catalog .starting-price-options{margin-left:auto;color:#62766d;font-size:10px;font-weight:700}
.home-catalogue .property-card-catalog .starting-price-empty>strong{font-size:15px;letter-spacing:0}
@media(max-width:760px){
  .home-catalogue .property-card-catalog .property-card-media-link>img{width:100%;height:100%}
  .home-catalogue .property-card-catalog .photo-carousel-control{width:36px;height:36px}
  .home-catalogue .property-card-catalog .photo-carousel-prev{left:9px}
  .home-catalogue .property-card-catalog .photo-carousel-next{right:9px}
  .home-catalogue .property-card-catalog .starting-price{gap:4px 7px;padding:10px 12px}
  .home-catalogue .property-card-catalog .starting-price>strong{font-size:21px}
}
@media(prefers-reduced-motion:reduce){
  .home-catalogue .property-card-catalog .property-photo-track{transition:none!important}
}

/* Final mobile listing polish: easy photo gestures and reliable touch targets. */
@media(max-width:760px){
  .home-catalogue .property-card-catalog .property-card-media-link{touch-action:pan-y}
  .home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:44px!important}
  .home-catalogue .property-card-catalog .property-contact-number{min-height:44px!important}
  .home-catalogue .property-card-catalog .photo-carousel-control{width:40px;height:40px}
}

/* 2026-10 catalogue finish: calm hierarchy, clear pricing and compact actions. */
.home-catalogue .site-header{padding:8px 0 0!important;background:#f6f7f3!important}
.home-catalogue .site-header .header-row{min-height:58px!important;padding:6px 12px!important;border:1px solid #e1e9e4!important;border-radius:16px!important;background:#fff!important;box-shadow:0 3px 12px rgba(28,52,45,.06)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.home-catalogue .catalog-intro-direct{padding:24px 0 18px!important;background:#f6f7f3!important;border-bottom:1px solid #e3e9e5!important}
.home-catalogue .property-grid.property-grid-direct{align-items:stretch!important;gap:22px!important}
.home-catalogue .property-card-catalog{display:flex!important;min-width:0!important;min-height:100%!important;flex-direction:column!important;overflow:hidden!important;border:1px solid #e0e8e3!important;border-radius:18px!important;background:#fff!important;box-shadow:0 4px 16px rgba(31,63,52,.055)!important}
.home-catalogue .property-card-catalog:hover{border-color:#cbdcd2!important;box-shadow:0 10px 24px rgba(31,63,52,.10)!important;transform:translateY(-2px)!important}
.home-catalogue .property-card-catalog .property-card-media{flex:0 0 auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1.72!important;background:#edf2ee!important}
.home-catalogue .property-card-catalog .property-card-media-link,.home-catalogue .property-card-catalog .property-card-media-link>img,.home-catalogue .property-card-catalog .property-photo-track,.home-catalogue .property-card-catalog .property-photo-slide{width:100%!important;height:100%!important}
.home-catalogue .property-card-catalog .property-card-media-link>img,.home-catalogue .property-card-catalog .property-photo-slide{object-fit:cover!important}
.home-catalogue .property-card-catalog .card-badge{top:13px!important;left:13px!important;padding:7px 11px!important;border:1px solid rgba(226,235,229,.95)!important;border-radius:999px!important;background:rgba(255,255,255,.96)!important;color:#36594e!important;font-size:11px!important;font-weight:750!important;box-shadow:0 2px 8px rgba(20,48,38,.08)!important}
.home-catalogue .property-card-catalog .catalog-availability-pop{right:13px!important;bottom:13px!important;padding:7px 11px!important;border:1px solid rgba(226,235,229,.95)!important;border-radius:999px!important;background:#fff!important;color:#36594e!important;font-size:11px!important;box-shadow:0 2px 9px rgba(20,48,38,.10)!important}
.home-catalogue .property-card-catalog .property-card-body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:0!important;padding:18px!important}
.home-catalogue .property-card-catalog .property-card-topline{order:0!important;margin:0!important}
.home-catalogue .property-card-catalog .property-location{color:#718078!important;font-size:12px!important}
.home-catalogue .property-card-catalog .property-title-row{order:1!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;margin-top:5px!important}
.home-catalogue .property-card-catalog h3{margin:0!important;font-size:19px!important;line-height:1.3!important;letter-spacing:-.025em!important}
.home-catalogue .property-card-catalog .property-audience-inline{flex:0 0 auto;max-width:42%;gap:5px!important}
.home-catalogue .property-card-catalog .property-audience-inline .chip{background:#eef6f2!important;color:#286252!important}
.home-catalogue .property-card-catalog .starting-price{order:2!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:baseline!important;gap:3px 9px!important;margin-top:15px!important;padding:12px 14px!important;border:1px solid #e1ebe5!important;border-radius:12px!important;background:#f6f9f6!important}
.home-catalogue .property-card-catalog .starting-price-label{grid-column:1;color:#687a71!important;font-size:11px!important}
.home-catalogue .property-card-catalog .starting-price>strong{grid-column:2;color:#175c50!important;font-size:23px!important}
.home-catalogue .property-card-catalog .starting-price-period{grid-column:3;color:#687a71!important;font-size:12px!important}
.home-catalogue .property-card-catalog .starting-price-options{grid-column:1/-1;margin:3px 0 0!important;color:#718078!important;font-size:10px!important}
.home-catalogue .property-card-catalog .room-type-summary{order:3!important;display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px}
.home-catalogue .property-card-catalog .room-type-label{color:#75847d;font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.home-catalogue .property-card-catalog .room-type-chips{display:flex;flex-wrap:wrap;gap:6px}
.home-catalogue .property-card-catalog .room-type-chip{display:inline-flex;min-height:26px;align-items:center;padding:5px 9px;border:1px solid #e4eae6;border-radius:999px;background:#f5f6f5;color:#596b63;font-size:10px;font-weight:650;line-height:1.2}
.home-catalogue .property-card-catalog .room-type-more{background:#edf5f1;color:#2e6657}
.home-catalogue .property-card-catalog .listing-amenities{order:4!important;min-height:30px;margin-top:11px!important;gap:6px!important}
.home-catalogue .property-card-catalog .listing-amenity{min-height:28px!important;padding:5px 8px!important;border:0!important;border-radius:999px!important;background:#f1f6f3!important;color:#527065!important;font-size:10px!important}
.home-catalogue .property-card-catalog .listing-amenity-more{min-height:28px!important;padding:5px 8px!important;border-radius:999px!important;background:#edf5f1!important;color:#376555!important;font-size:10px!important}
.home-catalogue .property-card-catalog .listing-amenities-empty{color:#7c8982!important;font-size:11px!important;font-style:normal!important}
.home-catalogue .property-card-catalog .property-card-actions.property-contact-actions-v520{order:5!important;grid-template-columns:1.15fr 1fr!important;gap:9px!important;margin-top:16px!important}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:43px!important;border-radius:10px!important;font-size:12px!important;font-weight:750!important}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn-primary{background:#146b5d!important;border-color:#146b5d!important;box-shadow:none!important}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn-enquire{border:1px solid #b9d7ca!important;background:#fff!important;color:#176354!important}
.home-catalogue .property-card-catalog .property-quick-links{order:6!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:9px!important}
.home-catalogue .property-card-catalog .property-quick-links>a{display:flex;min-width:0;min-height:38px;align-items:center;justify-content:center;gap:6px;padding:7px 5px;border:1px solid #e2eae5;border-radius:9px;background:#f8faf8;color:#49665c;font-size:11px;font-weight:700;text-decoration:none;white-space:nowrap}
.home-catalogue .property-card-catalog .property-quick-links>a:hover{border-color:#bcd8cb;background:#eff7f2;color:#165d50}
.home-catalogue .property-card-catalog .property-quick-links svg{width:15px;height:15px;flex:0 0 auto}
.home-catalogue .property-card-catalog .property-contact-number-whatsapp{background:#f0f8f2!important;color:#26704e!important}
.home-catalogue .property-card-catalog .amenity-motion-empty{display:flex!important;min-height:100%!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:22px!important;background:linear-gradient(135deg,#f0f5f1,#f8f7f2)!important;text-align:center!important}
.home-catalogue .property-card-catalog .photo-fallback-brand{color:#7d9187;font-size:9px;font-weight:800;letter-spacing:.16em}
.home-catalogue .property-card-catalog .amenity-motion-empty strong{color:#315d50!important;font-size:18px!important}
.home-catalogue .property-card-catalog .amenity-motion-empty>span:last-child{color:#7a8981;font-size:12px}
@media(max-width:1100px){.home-catalogue .property-grid.property-grid-direct{gap:17px!important}}
@media(max-width:760px){
  .home-catalogue .site-header{padding-top:5px!important}
  .home-catalogue .site-header .header-row{min-height:50px!important;padding:4px 8px!important;border-radius:13px!important}
  .home-catalogue .catalog-intro-direct{padding:18px 0 15px!important}
  .home-catalogue .property-grid.property-grid-direct{gap:15px!important}
  .home-catalogue .property-card-catalog{border-radius:16px!important}
  .home-catalogue .property-card-catalog .property-card-media{aspect-ratio:1.65!important;min-height:0!important;max-height:none!important}
  .home-catalogue .property-card-catalog .property-card-body{padding:15px!important}
  .home-catalogue .property-card-catalog h3{font-size:18px!important}
  .home-catalogue .property-card-catalog .starting-price{grid-template-columns:auto minmax(0,1fr) auto!important;margin-top:12px!important;padding:11px 12px!important}
  .home-catalogue .property-card-catalog .starting-price>strong{font-size:22px!important}
  .home-catalogue .property-card-catalog .property-quick-links{gap:6px!important}
  .home-catalogue .property-card-catalog .property-quick-links>a{min-height:40px;font-size:10px}
}
@media(max-width:390px){
  .home-catalogue .property-card-catalog .property-card-body{padding:13px!important}
  .home-catalogue .property-card-catalog .property-audience-inline{max-width:38%}
  .home-catalogue .property-card-catalog .property-card-actions.property-contact-actions-v520 .btn{font-size:11px!important}
  .home-catalogue .property-card-catalog .property-quick-links svg{width:13px;height:13px}
}

/* Reference-led mobile listing finish: clear branding, generous starting price,
   and a practical action hierarchy on every property card. */
.home-catalogue .nestin-menu-toggle{display:none;align-items:center;justify-content:center;flex:0 0 auto;width:46px;height:46px;padding:10px;border:1px solid #dce7e2;border-radius:14px;background:#fff;color:#173d35}
.home-catalogue .nestin-menu-toggle span{display:block;width:19px;height:2px;border-radius:2px;background:currentColor}
.home-catalogue .nestin-menu-toggle{flex-direction:column;gap:5px}
.home-catalogue .property-card-catalog .starting-price{min-height:100px!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-content:center!important;gap:5px 10px!important;padding:17px 20px!important;border-radius:17px!important;background:#f5f8f5!important}
.home-catalogue .property-card-catalog .starting-price-label{font-size:13px!important}
.home-catalogue .property-card-catalog .starting-price>strong{font-size:29px!important}
.home-catalogue .property-card-catalog .starting-price-period{font-size:14px!important}
.home-catalogue .property-card-catalog .starting-price-options{margin-top:6px!important;font-size:12px!important}
.home-catalogue .property-card-catalog .room-type-summary{margin-top:16px!important;gap:10px!important}
.home-catalogue .property-card-catalog .room-type-label{font-size:12px!important}
.home-catalogue .property-card-catalog .room-type-chip{min-height:34px;padding:7px 13px;font-size:12px}
.home-catalogue .property-card-catalog .listing-amenities{gap:8px!important;margin-top:14px!important}
.home-catalogue .property-card-catalog .listing-amenity,.home-catalogue .property-card-catalog .listing-amenity-more{min-height:34px!important;padding:7px 11px!important;font-size:12px!important}
.home-catalogue .property-card-catalog .property-card-actions.property-contact-actions-v520{margin-top:20px!important;gap:12px!important}
.home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:54px!important;border-radius:13px!important;font-size:15px!important}
.home-catalogue .property-card-catalog .property-quick-links{margin-top:12px!important;gap:10px!important}
.home-catalogue .property-card-catalog .property-quick-links>a{min-height:48px;padding:9px 7px;border-radius:12px;font-size:13px}
@media(max-width:900px){
  .home-catalogue .site-header .header-row{min-height:clamp(68px,12vw,100px)!important;padding:8px 12px!important;gap:10px!important}
  .home-catalogue .site-header .brand{min-width:0!important;gap:clamp(8px,2vw,14px)!important;flex:1 1 auto!important}
  .home-catalogue .site-header .brand img{width:clamp(48px,9vw,72px)!important;height:clamp(48px,9vw,72px)!important;border-radius:15px!important}
  .home-catalogue .site-header .brand-copy{display:block!important;max-width:clamp(130px,25vw,210px)!important;font-size:clamp(17px,3vw,24px)!important;line-height:1.08!important;white-space:normal!important}
  .home-catalogue .site-header .brand-copy small{display:none!important}
  .home-catalogue .site-header .nav{flex:0 0 auto!important;gap:9px!important}
  .home-catalogue .site-header .nav-links{position:absolute!important;top:calc(100% + 8px)!important;right:0!important;z-index:1500!important;display:none!important;min-width:210px!important;padding:8px!important;border:1px solid #dce7e2!important;border-radius:14px!important;background:#fff!important;box-shadow:0 14px 34px rgba(22,50,41,.15)!important}
  .home-catalogue .site-header .nav-links.is-open{display:flex!important}
  .home-catalogue .site-header .nav-links a{display:flex!important;min-height:46px!important;align-items:center!important;padding:10px 12px!important}
  .home-catalogue .site-header .nav .btn-primary{display:flex!important;width:clamp(104px,22vw,176px)!important;min-height:clamp(54px,10vw,88px)!important;align-items:center!important;justify-content:center!important;padding:9px 14px!important;border-radius:20px!important;font-size:clamp(15px,2.7vw,22px)!important;line-height:1.1!important;text-align:center!important;white-space:normal!important}
  .home-catalogue .nestin-menu-toggle{display:flex!important;width:clamp(48px,9vw,72px)!important;height:clamp(48px,9vw,72px)!important;border-radius:18px!important}
  .home-catalogue .nestin-menu-toggle span{width:clamp(20px,3.5vw,29px)!important;height:3px!important}
  .home-catalogue .property-grid.property-grid-direct{grid-template-columns:1fr!important;max-width:780px!important;margin-inline:auto!important;gap:20px!important}
  .home-catalogue .property-card-catalog .property-card-media{aspect-ratio:1.68!important}
  .home-catalogue .property-card-catalog .property-card-body{padding:clamp(17px,3.5vw,30px)!important}
  .home-catalogue .property-card-catalog h3{font-size:clamp(21px,4vw,32px)!important;line-height:1.2!important}
  .home-catalogue .property-card-catalog .property-location{font-size:clamp(14px,2.3vw,20px)!important;font-weight:700!important}
  .home-catalogue .property-card-catalog .property-audience-inline{max-width:44%!important;flex-wrap:wrap!important;justify-content:flex-end!important}
  .home-catalogue .property-card-catalog .property-audience-inline .chip{padding:8px 13px!important;font-size:clamp(12px,2.2vw,18px)!important}
  .home-catalogue .property-card-catalog .starting-price{min-height:clamp(94px,17vw,146px)!important;padding:clamp(13px,2.6vw,22px)!important;border-radius:20px!important}
  .home-catalogue .property-card-catalog .starting-price-label{font-size:clamp(14px,2.7vw,22px)!important}
  .home-catalogue .property-card-catalog .starting-price>strong{font-size:clamp(26px,5.5vw,42px)!important}
  .home-catalogue .property-card-catalog .starting-price-period{font-size:clamp(14px,2.7vw,22px)!important}
  .home-catalogue .property-card-catalog .starting-price-options{font-size:clamp(13px,2.5vw,20px)!important}
  .home-catalogue .property-card-catalog .room-type-summary{gap:10px 14px!important}
  .home-catalogue .property-card-catalog .room-type-label{font-size:clamp(13px,2.4vw,19px)!important}
  .home-catalogue .property-card-catalog .room-type-chip{min-height:clamp(36px,7vw,56px)!important;padding:8px clamp(12px,2.5vw,20px)!important;font-size:clamp(13px,2.5vw,20px)!important}
  .home-catalogue .property-card-catalog .listing-amenity,.home-catalogue .property-card-catalog .listing-amenity-more{min-height:clamp(36px,6.8vw,54px)!important;padding:8px clamp(12px,2.4vw,19px)!important;font-size:clamp(13px,2.4vw,19px)!important}
  .home-catalogue .property-card-catalog .property-contact-actions-v520 .btn{min-height:clamp(58px,12vw,88px)!important;font-size:clamp(15px,2.8vw,22px)!important}
  .home-catalogue .property-card-catalog .property-quick-links>a{min-height:clamp(48px,10vw,76px)!important;font-size:clamp(13px,2.5vw,19px)!important}
}
@media(max-width:430px){
  .home-catalogue .site-header .header-row{padding-inline:8px!important;gap:6px!important}
  .home-catalogue .site-header .brand-copy{max-width:122px!important;font-size:16px!important}
  .home-catalogue .site-header .nav{gap:6px!important}
  .home-catalogue .site-header .nav .btn-primary{width:92px!important;min-height:54px!important;padding:7px 10px!important;font-size:14px!important}
  .home-catalogue .nestin-menu-toggle{width:48px!important;height:48px!important;border-radius:14px!important}
  .home-catalogue .property-card-catalog .property-card-body{padding:15px!important}
  .home-catalogue .property-card-catalog .property-title-row{gap:7px!important}
  .home-catalogue .property-card-catalog h3{font-size:21px!important}
  .home-catalogue .property-card-catalog .starting-price{grid-template-columns:auto minmax(0,1fr)!important;min-height:98px!important;gap:4px 8px!important;padding:13px!important}
  .home-catalogue .property-card-catalog .starting-price-period{grid-column:1/-1!important;justify-self:end!important}
  .home-catalogue .property-card-catalog .starting-price-options{grid-column:1/-1!important}
  .home-catalogue .property-card-catalog .property-quick-links{gap:6px!important}
  .home-catalogue .property-card-catalog .property-quick-links>a{gap:4px!important;font-size:12px!important}
}

/* Sharing choices use bed symbols to show the occupancy count without text clutter. */
.home-catalogue .property-card-catalog .room-type-summary{display:flex!important;align-items:center!important;margin-top:12px!important}
.home-catalogue .property-card-catalog .room-type-label{display:none!important}
.home-catalogue .property-card-catalog .room-type-chips{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.home-catalogue .property-card-catalog .room-type-chip{display:inline-flex!important;min-width:38px!important;min-height:34px!important;align-items:center!important;justify-content:center!important;gap:2px!important;padding:7px 9px!important;border:1px solid #e1ebe5!important;border-radius:999px!important;background:#f1f6f3!important;color:#286252!important}
.home-catalogue .property-card-catalog .room-type-chip svg{display:block!important;width:15px!important;height:15px!important;flex:0 0 15px!important}
@media(max-width:900px){
  .home-catalogue .property-card-catalog .room-type-summary{margin-top:clamp(12px,2.5vw,20px)!important}
  .home-catalogue .property-card-catalog .room-type-chips{gap:clamp(7px,1.6vw,12px)!important}
  .home-catalogue .property-card-catalog .room-type-chip{min-width:clamp(40px,8vw,58px)!important;min-height:clamp(38px,7vw,54px)!important;padding:8px clamp(8px,1.8vw,14px)!important}
  .home-catalogue .property-card-catalog .room-type-chip svg{width:clamp(15px,3vw,21px)!important;height:clamp(15px,3vw,21px)!important;flex-basis:clamp(15px,3vw,21px)!important}
}

/* Icon-led listing details: compact amenities, audience, and contact controls. */
.home-catalogue .property-card-catalog .property-title-row{align-items:center!important}
.home-catalogue .property-card-catalog .property-title-row h3{flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}
.home-catalogue .property-card-catalog .property-title-row h3 a{display:block!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}
.home-catalogue .property-card-catalog .property-audience-inline{display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;max-width:none!important}
.home-catalogue .property-card-catalog .property-audience-inline .chip{display:inline-flex!important;width:34px!important;height:34px!important;min-width:34px!important;align-items:center!important;justify-content:center!important;padding:7px!important;border:1px solid #dfebe4!important;border-radius:50%!important;background:#eff6f2!important;color:#176354!important}
.home-catalogue .property-card-catalog .property-audience-inline .chip svg{display:block!important;width:19px!important;height:19px!important}
.home-catalogue .property-card-catalog .listing-amenities{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important}
.home-catalogue .property-card-catalog .listing-amenity{display:inline-flex!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;align-items:center!important;justify-content:center!important;padding:8px!important;border:1px solid #e3ece6!important;border-radius:50%!important;background:#f2f7f3!important;color:#286252!important}
.home-catalogue .property-card-catalog .listing-amenity-icon,.home-catalogue .property-card-catalog .listing-amenity-icon svg{display:block!important;width:20px!important;height:20px!important}
.home-catalogue .property-card-catalog .listing-amenity-more{display:inline-flex!important;min-width:38px!important;height:38px!important;align-items:center!important;justify-content:center!important;padding:0 9px!important;border:1px solid #e3ece6!important;border-radius:999px!important;background:#f2f7f3!important;color:#286252!important;font-size:11px!important;font-weight:750!important}
.home-catalogue .property-card-catalog .listing-amenities-empty{display:none!important}
.home-catalogue .property-card-catalog .property-quick-links>a{width:48px!important;height:48px!important;min-height:48px!important;justify-self:center!important;padding:10px!important;border-radius:13px!important}
.home-catalogue .property-card-catalog .property-quick-links svg{width:21px!important;height:21px!important}
.home-catalogue .property-card-catalog .amenity-motion-item{width:38px!important;height:38px!important;justify-content:center!important;padding:8px!important;border-radius:50%!important}
.home-catalogue .property-card-catalog .amenity-motion-home-icon,.home-catalogue .property-card-catalog .amenity-motion-home-icon svg{width:20px!important;height:20px!important}
@media(max-width:900px){
  .home-catalogue .property-card-catalog .property-title-row h3{font-size:clamp(19px,3.6vw,28px)!important}
  .home-catalogue .property-card-catalog .property-audience-inline .chip{width:clamp(36px,7vw,48px)!important;height:clamp(36px,7vw,48px)!important;min-width:clamp(36px,7vw,48px)!important}
  .home-catalogue .property-card-catalog .property-audience-inline .chip svg{width:clamp(19px,3.6vw,25px)!important;height:clamp(19px,3.6vw,25px)!important}
  .home-catalogue .property-card-catalog .listing-amenity{width:clamp(40px,7.4vw,52px)!important;height:clamp(40px,7.4vw,52px)!important;min-width:clamp(40px,7.4vw,52px)!important;min-height:clamp(40px,7.4vw,52px)!important}
  .home-catalogue .property-card-catalog .listing-amenity-icon,.home-catalogue .property-card-catalog .listing-amenity-icon svg{width:clamp(21px,3.8vw,28px)!important;height:clamp(21px,3.8vw,28px)!important}
  .home-catalogue .property-card-catalog .property-quick-links>a{width:clamp(48px,9vw,64px)!important;height:clamp(48px,9vw,64px)!important;min-height:clamp(48px,9vw,64px)!important}
  .home-catalogue .property-card-catalog .property-quick-links svg{width:clamp(21px,4vw,28px)!important;height:clamp(21px,4vw,28px)!important}
}

/* Option 1: balanced card with clear sharing, amenity, and audience labels. */
.home-catalogue .property-card-catalog .property-title-row{align-items:center!important}
.home-catalogue .property-card-catalog .property-title-row h3{flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}
.home-catalogue .property-card-catalog .property-title-row h3 a{display:block!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}
.home-catalogue .property-card-catalog .property-audience-inline{display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;max-width:none!important}
.home-catalogue .property-card-catalog .property-audience-inline .chip{display:inline-flex!important;width:auto!important;min-width:0!important;min-height:32px!important;height:auto!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:5px 9px!important;border:1px solid #dcebe3!important;border-radius:999px!important;background:#eff6f2!important;color:#176354!important;font-size:11px!important;font-weight:750!important;white-space:nowrap!important}
.home-catalogue .property-card-catalog .property-audience-inline .chip svg{display:block!important;width:15px!important;height:15px!important;flex:0 0 15px!important}
.home-catalogue .property-card-catalog .starting-price{min-height:76px!important;align-content:center!important;padding:12px 14px!important;border-radius:13px!important}
.home-catalogue .property-card-catalog .room-type-summary{gap:8px!important}
.home-catalogue .property-card-catalog .room-type-label{display:inline-block!important;color:#718078!important;font-size:10px!important;font-weight:750!important;letter-spacing:.04em!important;text-transform:uppercase!important}
.home-catalogue .property-card-catalog .room-type-summary{display:flex!important;align-items:center!important;margin-top:12px!important}
.home-catalogue .property-card-catalog .room-type-label{display:block!important}
.home-catalogue .property-card-catalog .room-type-chips{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
.home-catalogue .property-card-catalog .room-type-chip{display:inline-flex!important;min-width:48px!important;min-height:34px!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:6px 9px!important;border:1px solid #e1ebe5!important;border-radius:999px!important;background:#f1f6f3!important;color:#286252!important;font-size:11px!important;font-weight:750!important}
.home-catalogue .property-card-catalog .room-type-chip svg{display:block!important;width:17px!important;height:17px!important;flex:0 0 17px!important}
.home-catalogue .property-card-catalog .listing-amenities{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important;min-height:0!important}
.home-catalogue .property-card-catalog .listing-amenity{display:inline-flex!important;width:auto!important;min-width:0!important;height:32px!important;min-height:32px!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:5px 9px!important;border:1px solid #e3ece6!important;border-radius:999px!important;background:#f2f7f3!important;color:#49665c!important;font-size:10px!important;font-weight:650!important}
.home-catalogue .property-card-catalog .listing-amenity-icon,.home-catalogue .property-card-catalog .listing-amenity-icon svg{display:block!important;width:15px!important;height:15px!important;flex:0 0 15px!important}
.home-catalogue .property-card-catalog .listing-amenity-label{display:inline!important;color:inherit!important;font-size:inherit!important;line-height:1.1!important}
.home-catalogue .property-card-catalog .listing-amenities:not(.is-expanded) .listing-amenity-extra{display:none!important}
.home-catalogue .property-card-catalog .listing-amenity-more{display:inline-flex!important;width:auto!important;min-width:0!important;height:auto!important;min-height:32px!important;align-items:center!important;justify-content:center!important;gap:3px!important;padding:5px 10px!important;border:1px solid #dcebe3!important;border-radius:999px!important;background:#eaf4ee!important;color:#286252!important;font-size:10px!important;font-weight:750!important;white-space:nowrap!important;cursor:pointer!important}
.home-catalogue .property-card-catalog .listing-amenity-more:hover{border-color:#bcd8cb!important;background:#e0efe6!important}
.home-catalogue .property-card-catalog .listing-amenity-more span{font-size:inherit!important}
.home-catalogue .property-card-catalog .listing-amenities-empty{display:block!important;width:fit-content!important;padding:6px 10px!important;border-radius:999px!important;background:#f3f6f4!important;color:#75847d!important;font-size:10px!important}
.home-catalogue .property-card-catalog .property-quick-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:center!important}
.home-catalogue .property-card-catalog .property-quick-links>a{width:auto!important;height:auto!important;min-height:42px!important;justify-self:stretch!important;gap:6px!important;padding:8px 6px!important;border-radius:10px!important;font-size:11px!important}
.home-catalogue .property-card-catalog .property-quick-links svg{width:16px!important;height:16px!important}
@media(max-width:900px){
  .home-catalogue .property-card-catalog .property-audience-inline .chip{min-height:clamp(34px,6vw,44px)!important;height:clamp(34px,6vw,44px)!important;padding:6px clamp(8px,1.8vw,13px)!important;font-size:clamp(11px,2vw,15px)!important}
  .home-catalogue .property-card-catalog .property-audience-inline .chip svg{width:clamp(15px,2.8vw,20px)!important;height:clamp(15px,2.8vw,20px)!important;flex-basis:clamp(15px,2.8vw,20px)!important}
  .home-catalogue .property-card-catalog .room-type-chip{min-height:clamp(36px,6.5vw,46px)!important;padding:7px clamp(9px,1.8vw,13px)!important;font-size:clamp(11px,2vw,15px)!important}
  .home-catalogue .property-card-catalog .room-type-chip svg{width:clamp(17px,3vw,22px)!important;height:clamp(17px,3vw,22px)!important;flex-basis:clamp(17px,3vw,22px)!important}
  .home-catalogue .property-card-catalog .listing-amenity{min-height:clamp(34px,6vw,42px)!important;height:auto!important;padding:7px clamp(8px,1.7vw,12px)!important;font-size:clamp(10px,1.9vw,14px)!important}
  .home-catalogue .property-card-catalog .listing-amenity-icon,.home-catalogue .property-card-catalog .listing-amenity-icon svg{width:clamp(15px,2.8vw,20px)!important;height:clamp(15px,2.8vw,20px)!important;flex-basis:clamp(15px,2.8vw,20px)!important}
  .home-catalogue .property-card-catalog .listing-amenity-more{min-height:clamp(34px,6vw,42px)!important;font-size:clamp(10px,1.9vw,14px)!important}
  .home-catalogue .property-card-catalog .property-quick-links>a{min-height:clamp(44px,8vw,58px)!important;font-size:clamp(11px,2vw,15px)!important}
  .home-catalogue .property-card-catalog .property-quick-links svg{width:clamp(16px,3vw,21px)!important;height:clamp(16px,3vw,21px)!important}
}

/* Keep the card's collapsed amenities preview to a tidy two-row grid. */
.home-catalogue .property-card-catalog .listing-amenities{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;gap:7px!important}
.home-catalogue .property-card-catalog .listing-amenity{width:100%!important;min-width:0!important;max-width:100%!important;justify-content:flex-start!important;overflow:hidden!important;white-space:nowrap!important}
.home-catalogue .property-card-catalog .listing-amenity-label{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.home-catalogue .property-card-catalog .listing-amenity-more{width:100%!important;min-width:0!important;justify-self:stretch!important;white-space:nowrap!important}
.home-catalogue .property-card-catalog .listing-amenities:not(.is-expanded) .listing-amenity-extra{display:none!important}
