/* Homepage-only full-bleed presentation of the approved six-property carousel. */
.home-property-hero.home-listings{position:relative;padding:0;background:#171717;color:#fff;isolation:isolate;scroll-margin-top:0}
.home-property-hero .home-listings-heading{margin:0}
.home-property-hero.home-listings .home-listings-grid{position:relative;display:block;width:100%;max-width:none;margin:0;min-height:760px;height:100svh;max-height:1200px}
.home-property-hero.home-listings .home-listing{position:relative;width:100%;height:100%;min-height:inherit;isolation:isolate;overflow:hidden}
.home-property-hero.home-listings .home-listing-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;max-height:none;aspect-ratio:auto;touch-action:pan-y}
.home-property-hero.home-listings .home-listing-image picture,.home-property-hero.home-listings .home-listing-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.home-property-hero .home-listing::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 25%,transparent 42%,rgba(0,0,0,.35) 66%,rgba(0,0,0,.87)),linear-gradient(90deg,rgba(0,0,0,.16),transparent 70%)}
.home-property-hero.home-listings .listing-carousel-details{position:relative;display:flex;flex-direction:column;justify-content:flex-end;width:100%;height:100%;max-width:none;margin:0;padding:150px max(6vw,24px) 112px;pointer-events:none}
.home-property-hero .listing-carousel-details a,.home-property-hero .listing-carousel-details button{pointer-events:auto}
.home-property-hero .home-listing-status{color:#fff;font-size:12px;letter-spacing:.2em;margin:0 0 16px;font-weight:500}
.home-property-hero.home-listings .home-listing h3{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(42px,4.6vw,72px);line-height:1.02;letter-spacing:-.025em;max-width:1050px;margin:0 0 12px;text-wrap:balance}
.home-property-hero .home-listing h3 a{color:inherit;text-decoration:none}
.home-property-hero .home-listing-city{font-size:15px;color:rgba(255,255,255,.85);margin:0}
.home-property-hero .home-listing-price{font-size:23px;font-weight:400;color:#fff;margin:18px 0 5px;line-height:1.3}
.home-property-hero .home-listing-specs{font-size:13px;letter-spacing:.04em;color:rgba(255,255,255,.85);margin:0}
.home-property-hero .home-listing-hook,.home-property-hero .home-listing-film,.home-property-hero [data-public-status=historical] .home-listing-price{display:none}
.home-property-hero.home-listings .home-listing-actions{display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap;margin:22px 0 0;padding:0;border:0}
.home-property-hero .hero-property-primary,.home-property-hero [data-public-status=historical] .home-listing-actions a{display:inline-flex;align-items:center;min-height:48px;padding:12px 23px;background:#fff;color:#181817;border:1px solid #fff;text-decoration:none;font:500 14px/1.5 Inter,sans-serif;margin:0}
.home-property-hero.home-listings .home-listing-showing,.home-property-hero.home-listings button.home-listing-photos{display:inline-flex;width:auto;min-width:0;min-height:48px;padding:10px 0;margin:0;border:0;background:transparent;color:#fff;font:400 14px/1.5 Inter,sans-serif;text-decoration:none}
.home-property-hero .hero-property-primary:hover,.home-property-hero [data-public-status=historical] .home-listing-actions a:hover{background:#ece9e3;border-color:#ece9e3}
.home-property-hero .home-listing-showing:hover,.home-property-hero button.home-listing-photos:hover{text-decoration:underline;text-underline-offset:5px}
.home-property-hero a:focus-visible,.home-property-hero button:focus-visible{outline:2px solid #fff;outline-offset:5px}
.home-property-hero .listing-carousel-controls{top:auto;bottom:20px;left:0;right:0;z-index:5}
.home-property-hero .listing-carousel-outgoing{height:100%;z-index:3}
.home-property-hero .listing-carousel-outgoing::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 25%,transparent 42%,rgba(0,0,0,.35) 66%,rgba(0,0,0,.87))}
.home-property-hero .home-listing.is-entering{animation:listingCarouselReveal .7s ease-out both}
@media(max-width:980px){.home-property-hero.home-listings .home-listings-grid{min-height:740px}.home-property-hero.home-listings .listing-carousel-details{padding-inline:32px}.home-property-hero.home-listings .home-listing h3{font-size:56px}}
@media(max-width:600px){.home-property-hero.home-listings .home-listings-grid{height:100svh;min-height:800px;max-height:1000px}.home-property-hero.home-listings .listing-carousel-details{padding:120px 24px 100px}.home-property-hero.home-listings .home-listing h3{font-size:42px;line-height:1.03;max-width:340px;margin-bottom:10px}.home-property-hero .home-listing-status{font-size:12px;margin-bottom:13px}.home-property-hero .home-listing-city{font-size:14px}.home-property-hero .home-listing-price{font-size:22px;margin-top:16px}.home-property-hero .home-listing-specs{font-size:12px}.home-property-hero.home-listings .home-listing-actions{gap:4px 18px;margin-top:18px}.home-property-hero .hero-property-primary,.home-property-hero [data-public-status=historical] .home-listing-actions a{font-size:14px;padding:11px 18px}.home-property-hero.home-listings .home-listing-showing{font-size:13px}.home-property-hero.home-listings button.home-listing-photos{font-size:13px;min-height:44px}.home-property-hero .listing-carousel-controls{bottom:20px}.home-property-hero .home-listing::after{background:linear-gradient(180deg,rgba(0,0,0,.28),transparent 22%,rgba(0,0,0,.08) 35%,rgba(0,0,0,.72) 60%,rgba(0,0,0,.94))}}
@media(max-height:650px) and (min-width:601px){.home-property-hero.home-listings .home-listings-grid{height:auto;min-height:740px}}
@media(prefers-reduced-motion:reduce){.home-property-hero .home-listing.is-entering,.home-property-hero .listing-carousel-outgoing{animation:none!important}.home-property-hero .listing-carousel-outgoing{display:none}}
