/* Final responsive contract for the collected October 19 corrections. */
#properties .property-carousel-viewport{touch-action:pan-y;cursor:grab}
#properties .property-carousel-viewport.kc-dragging{cursor:grabbing;user-select:none}
#properties #propertyCards{will-change:transform;touch-action:pan-y}
#properties #propertyCards img{-webkit-user-drag:none;user-select:none}
@media(max-width:980px){
 #properties .property-carousel-side:is(.prev,.next){display:none!important;visibility:hidden!important;pointer-events:none!important}
}
/* Text glyphs are removed in the renderer. Only this centered chevron is drawn. */
.property-detail-gallery-prev,.property-detail-gallery-next,#propertyGalleryLightbox .property-gallery-nav{
 position:absolute!important;display:grid!important;place-items:center!important;
 width:42px!important;height:42px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;z-index:3!important;
 border:1px solid #ffffff80!important;border-radius:50%!important;background:#10203cdd!important;
 color:#fff!important;font-size:0!important;line-height:0!important;text-shadow:none!important;
 box-shadow:0 2px 8px #0002!important;top:50%!important;transform:translateY(-50%)!important;
}
.property-detail-gallery-prev::after,.property-detail-gallery-next::after,#propertyGalleryLightbox .property-gallery-nav::after{content:none!important;display:none!important}
.property-detail-gallery-prev::before,.property-detail-gallery-next::before,#propertyGalleryLightbox .property-gallery-nav::before{
 content:''!important;display:block!important;position:absolute!important;top:50%!important;left:50%!important;
 width:10px!important;height:10px!important;margin:0!important;border:0!important;
 border-top:2px solid #fff!important;border-right:2px solid #fff!important;
 transform:translate(-65%,-50%) rotate(45deg)!important;
}
.property-detail-gallery-prev::before,#propertyGalleryLightbox .property-gallery-nav.prev::before{transform:translate(-35%,-50%) rotate(-135deg)!important}
.property-detail-gallery-prev{left:12px!important}.property-detail-gallery-next{right:12px!important}
#propertyGalleryLightbox .property-gallery-nav.prev{left:14px!important}#propertyGalleryLightbox .property-gallery-nav.next{right:14px!important}
.property-detail-main{display:flex!important;flex-direction:column!important;overflow:hidden!important;height:100%!important;min-height:0!important}
.property-detail-photo-wrap{flex:1 1 auto!important;min-height:0!important;height:auto!important;display:block!important}
.property-detail-preview-strip{position:static!important;flex:0 0 auto!important;display:flex!important;justify-content:center!important;max-width:100%!important;overflow-x:auto!important;background:#f2f4f6!important;padding:8px 12px!important;gap:7px!important;transform:none!important}
.property-detail-preview-thumb{flex:0 0 60px!important;width:60px!important;height:43px!important}
.property-detail-photo-cta{position:static!important;display:block!important;align-self:center!important;flex:0 0 auto!important;margin:10px auto!important;transform:none!important;font-size:12px!important;line-height:1.3!important;padding:10px 16px!important;max-width:calc(100% - 24px)!important}
.property-detail-gallery{background:#f8f9fa!important}
.property-detail-shell .property-detail-photo-wrap .kc-tour-cta{position:absolute!important;bottom:12px!important;left:12px!important;right:auto!important;transform:none!important}
@media(max-width:979px){
 .property-detail-shell.open{padding:8px!important;align-items:flex-start!important;overflow:hidden!important}
 .property-detail-shell .property-detail-modal{display:block!important;width:100%!important;max-width:760px!important;height:calc(100dvh - 16px)!important;max-height:calc(100dvh - 16px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
 .property-detail-modal .property-detail-gallery{display:block!important;height:auto!important;min-height:0!important}
 .property-detail-modal #propertyDetailMain{height:auto!important;min-height:0!important;max-height:none!important;flex:none!important}
 .property-detail-main .property-detail-photo-wrap{flex:none!important;width:100%!important;aspect-ratio:4/3;height:auto!important;min-height:220px!important;max-height:62dvh!important}
 .property-detail-modal .property-detail-content{height:auto!important;max-height:none!important;overflow:visible!important;padding:18px!important}
 .property-detail-modal .property-detail-keygrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .property-detail-close{position:absolute!important;top:12px!important;right:12px!important}
}
@media(min-width:980px){
 .property-detail-shell .property-detail-modal{display:grid!important;grid-template-columns:minmax(0,54fr) minmax(0,46fr)!important;height:min(820px,calc(100dvh - 40px))!important;max-height:calc(100dvh - 40px)!important;overflow:hidden!important}
 .property-detail-modal .property-detail-gallery{height:100%!important;min-height:0!important}
 .property-detail-modal .property-detail-content{height:100%!important;min-height:0!important;overflow-y:auto!important}
}
.property-gallery-lightbox .property-gallery-stage{width:calc(100% - 128px)!important;max-width:1400px!important;height:calc(100dvh - 120px)!important;max-height:none!important;margin:auto!important}
@media(max-width:679px){
 .property-gallery-lightbox .property-gallery-stage{width:100%!important;max-width:100%!important;height:calc(100dvh - 120px)!important}
 #propertyGalleryLightbox .property-gallery-nav.prev{left:8px!important}#propertyGalleryLightbox .property-gallery-nav.next{right:8px!important}
 #propertyGalleryLightbox .property-gallery-nav{width:36px!important;height:36px!important}
}
/* Initialize both renderers once, then let CSS switch them when the viewport changes. */
html.v275-motion #how .process-scroll,#how .process-pin,#how .process-wrap,#how .process-detail{
 opacity:1!important;visibility:visible!important;transform:none!important;min-height:0!important;
}
@media(max-width:1180px){
 #how .process-scroll,#how .process-pin{height:auto!important;position:relative!important;top:auto!important;overflow:visible!important}
 #how .process-detail>.detail-card{display:flex!important}
 #how .process-detail:has(.kc-native-detail-slider)>.detail-card{display:none!important}
 #how .kc-native-detail-slider{display:flex!important;align-items:flex-start!important;min-height:200px!important}
 #how .kc-native-detail-slide{height:auto!important;max-height:none!important;min-width:0!important}
}
@media(min-width:1181px){
 #how .process-detail>.detail-card{display:flex!important}
 #how .kc-native-detail-slider,#how .kc-process-prev-arrow,#how .kc-process-next-arrow,#how .kc-process-swipe-hint,#how .kc-process-edge-cue{display:none!important}
}
header.nav-wrap .brand{min-height:53px}
header.nav-wrap .brand img[data-home-logo]{display:block!important;width:150px!important;height:auto!important;aspect-ratio:1617/572;max-height:none!important}
.hero>.kc-hero-first-paint{display:block!important;opacity:1!important;visibility:visible!important}
header.nav-wrap .brand,.hero{touch-action:manipulation}
@media(max-width:980px){
 #top>section.hero{isolation:isolate;max-width:100%;}
 #top>section.hero .hero-content{opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important;translate:none!important}
 header.nav-wrap .brand img[data-home-logo]{max-width:150px!important;object-fit:contain!important;flex:none!important}
}
@media(prefers-reduced-motion:reduce){#properties #propertyCards{transition:none!important}}

/* Prevent legacy desktop hero sizing from escaping the mobile viewport. */
@media(max-width:680px){
 #top,#top>section.hero,#top>section.hero .container{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 #top>section.hero .hero-content{width:calc(100% - 40px)!important;max-width:520px!important;min-width:0!important;margin-left:auto!important;margin-right:auto!important;left:auto!important;right:auto!important;transform:none!important;zoom:1!important;box-sizing:border-box!important}
 #top>section.hero .hero-content h1{font-size:clamp(32px,8.6vw,43px)!important;line-height:1.09!important;max-width:100%!important;overflow-wrap:normal!important;white-space:normal!important}
 #top>section.hero .hero-content .hero-sub{font-size:14px!important;line-height:1.67!important;max-width:35ch!important;white-space:normal!important}
 #top>section.hero .mobile-primary-actions,#top>section.hero .hero-actions{width:100%!important;max-width:100%!important;min-width:0!important}
 #top>section.hero .mobile-primary-actions a,#top>section.hero .hero-actions .btn{max-width:100%!important;box-sizing:border-box!important}
}
