/* Property map and floor-plan gallery: intentionally scoped to this section. */
.property-plans{border-top:1px solid var(--line);background:var(--paper)}
.property-plans-heading{text-align:center;margin-bottom:48px}
.property-plans-heading .eyebrow{margin:0 auto 24px;max-width:none}
.property-plans-heading h2{font-size:clamp(44px,5.3vw,80px);margin-bottom:24px}
.property-plans-heading>p:last-child{max-width:none;font-size:19px;color:var(--muted)}
.property-map-wrap{position:relative}
.property-map-scroll{overflow-x:auto;border:1px solid var(--line);background:#fff;overscroll-behavior-x:contain}
.property-map-canvas{position:relative;width:100%;isolation:isolate;background:#edf0e8}
.property-map-canvas>img{width:100%;height:auto;mix-blend-mode:multiply}
.property-map-canvas>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.property-hotspot{fill:transparent;stroke:transparent;stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .18s,stroke .18s;outline:none}
.property-hotspot:hover,.property-hotspot:focus-visible,.property-hotspot[aria-expanded=true]{fill:#293a3033;stroke:var(--ink)}
.property-hotspot[data-plan="A"]{fill:#7e633d33}
.property-hotspot[data-plan="A"]:hover,.property-hotspot[data-plan="A"]:focus-visible,.property-hotspot[data-plan="A"][aria-expanded=true]{fill:#7e633d55;stroke:var(--ink)}
.property-hotspot[data-plan="C"]{fill:#c99d87cc;stroke:#625849;stroke-width:1.2}
.property-hotspot[data-plan="C"]:hover,.property-hotspot[data-plan="C"]:focus-visible,.property-hotspot[data-plan="C"][aria-expanded=true]{fill:#b78d78dd;stroke:var(--ink);stroke-width:2}
.property-hotspot:focus-visible{stroke-width:4;stroke-dasharray:4 3}
.property-number-labels{pointer-events:none}
.property-number-labels circle{fill:#fff;fill-opacity:1;stroke:#000;stroke-width:.45}
.property-number-labels text{fill:#000;font:700 6.4px Arial,sans-serif;text-anchor:middle}
.property-card{position:absolute;z-index:4;width:310px;padding:22px;background:#bfb197;color:#24362b;box-shadow:0 12px 36px #15251d40}
.property-card[data-kind=single],.property-legend [data-kind=single]{--property-card-bg:#eee7e0;background:#eee7e0}
.property-card[data-kind=triplex],.property-legend [data-kind=triplex]{--property-card-bg:#b0bfba;background:#b0bfba}
.property-card[data-plan="A"],.property-legend [data-kind="duplex-a"]{--property-card-bg:#b2a185;background:#b2a185}
.property-card[data-plan="B"],.property-legend [data-kind="duplex-b"]{--property-card-bg:#bfb197;background:#bfb197}
.property-card[data-plan="C"],.property-legend [data-kind="duplex-c"]{--property-card-bg:#c7a18d;background:#c7a18d}
.property-legend{display:flex;flex-wrap:wrap;gap:18px 32px;list-style:none;padding:0;margin:0 0 20px;font-size:16px}
.property-legend li{display:flex;gap:10px;align-items:center}
.property-legend span{display:inline-block;width:28px;height:18px;border:1px solid #293a3060}
.property-card[hidden]{display:none}
.property-card .eyebrow{font-size:11px;margin:0 24px 9px 0;color:inherit}
.property-card h3{font-size:32px;letter-spacing:-.02em;margin-bottom:14px}
.property-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin-bottom:15px}
.property-card p{font-size:17px;line-height:1.35}
.property-card .property-card-note{font-size:13px;color:inherit;margin-top:12px;opacity:.85}
.property-specs{margin:0;font-size:16px;line-height:1.4}
.property-specs>div{display:flex;justify-content:space-between;gap:16px;margin-top:4px}
.property-specs dd{margin:0;text-align:right;font-weight:500}
.property-card-close{position:absolute;right:5px;top:5px;width:38px;height:38px;border:0;background:transparent;color:inherit;font:28px/1 var(--sans)}
.property-card-close:hover{background:#ffffff20}
.property-card-link{display:block;text-align:center;background:var(--paper);color:var(--ink);padding:13px 12px;margin-top:18px;font-size:15px;letter-spacing:.06em}
.property-card-link:hover,.property-card-link:focus-visible{background:color-mix(in srgb,var(--property-card-bg,#bfb197) 65%,white)}
.property-card-coming{display:block;width:100%;border:1px solid #293a3050;background:transparent;color:inherit;padding:13px 8px;margin-top:18px;font:13px var(--sans);letter-spacing:.04em;cursor:default}
.property-card [hidden]{display:none}
.property-downloads{display:flex;flex-wrap:wrap;gap:12px 24px}
.property-map-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-top:24px}
.property-picker{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:16px}
.property-picker select{font:inherit;color:var(--ink);background:var(--paper);border:1px solid #899783;border-radius:0;padding:10px 36px 10px 14px;min-height:46px;max-width:100%}
.property-picker select:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.property-download{font-size:16px;padding:10px 0;border-bottom:1px solid #899783;white-space:nowrap}
.property-download:hover{border-color:var(--ink)}
.property-disclaimer{font-size:14px;color:var(--muted);max-width:90ch;margin-top:22px}
.property-mobile-hint{display:none}
.plan-dialog{padding:0;border:0;width:min(1600px,96vw);max-width:96vw;height:94dvh;max-height:94dvh;background:var(--paper);color:var(--ink);overflow:hidden}
.plan-dialog::backdrop{background:#17271fe8}
.plan-dialog[open]{display:flex;flex-direction:column}
body.plan-viewer-open{overflow:hidden}
.plan-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px;border-bottom:1px solid var(--line);flex-shrink:0}
.plan-dialog-top h2{font-size:clamp(25px,2.6vw,38px)}
.plan-dialog-top p{font-size:15px;color:var(--muted);margin-top:4px}
.plan-close{flex-shrink:0;width:46px;height:46px;font:32px/1 var(--sans);border:1px solid var(--line);background:transparent;color:var(--ink)}
.plan-close:hover{background:#dce1d2}
.plan-toolbar{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;padding:10px;border-bottom:1px solid var(--line);flex-shrink:0}
.plan-toolbar button{min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);background:transparent;color:var(--ink);font:16px var(--sans)}
.plan-toolbar button:hover:not(:disabled){background:#dce1d2}
.plan-toolbar button:disabled{opacity:.35;cursor:default}
.plan-count{min-width:64px;text-align:center;font-size:16px}
.plan-toolbar-separator{height:25px;width:1px;background:var(--line);margin:0 5px}
.plan-canvas{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#dce0d6;padding:16px;touch-action:pan-x pan-y pinch-zoom}
.plan-canvas img{max-width:none;margin:0 auto;background:white;box-shadow:0 2px 12px #1e2c2920;display:block}
.plan-dialog-foot{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 22px;font-size:14px;border-top:1px solid var(--line)}
.plan-dialog-foot a{text-decoration:underline;text-underline-offset:4px;min-height:34px;display:flex;align-items:center}
.plan-dialog-foot p{color:var(--muted)}
@media(max-width:900px){
 .property-plans-heading{margin-bottom:28px;text-align:left}
 .property-plans-heading h2{font-size:46px}
 .property-plans-heading>p:last-child{font-size:18px}
 .property-map-canvas{min-width:760px}
 .property-mobile-hint{display:block;font-size:14px;color:var(--muted);margin-top:12px}
 .property-card{position:relative;inset:auto!important;width:100%;margin-top:16px;padding:24px;scroll-margin-top:calc(var(--header) + 16px)}
 .property-card img{max-height:180px;object-position:50% 50%}
 .property-card-close{width:44px;height:44px}
 .property-map-bottom{flex-direction:column;gap:14px}
 .property-picker{width:100%;gap:8px}
 .property-picker select{width:100%}
 .plan-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh}
 .plan-dialog-top{padding:12px 14px}
 .plan-dialog-top h2{font-size:27px}
 .plan-toolbar{gap:5px;padding:8px 6px}
 .plan-toolbar button{padding:8px 10px}
 .plan-toolbar-separator{margin:0 2px}
 .plan-canvas{padding:8px}
 .plan-dialog-foot{padding:8px 14px;font-size:13px}
 .plan-dialog-foot p{max-width:22ch}
}
@media(prefers-reduced-motion:reduce){.property-hotspot{transition:none}}
.property-card[data-kind="single"] .property-card-link:hover,.property-card[data-kind="single"] .property-card-link:focus-visible{background:color-mix(in srgb,var(--property-card-bg) 82%,#7d7265)}

/* Off-site context: east is down on the illustrated property map. */
.property-golf-label{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px 16px 24px;background:#edf0e8;color:var(--ink);text-align:left}
.property-golf-label>span{font-size:34px;line-height:1}
.property-golf-label strong{display:block;font:500 16px var(--sans);letter-spacing:.12em;text-transform:uppercase}
.property-golf-label small{display:block;font-size:13px;line-height:1.5;margin-top:5px;color:var(--muted)}
@media(max-width:600px){.property-golf-label strong{font-size:13px;letter-spacing:.08em}.property-golf-label small{font-size:12px}}

.property-map-context{display:flex;align-items:stretch;background:#edf0e8}
.property-map-context .property-map-canvas{flex:1;min-width:0}
.property-golf-south{flex:0 0 52px;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;color:var(--ink);padding:24px 0}
.property-golf-south strong{writing-mode:vertical-rl;transform:rotate(180deg);font:500 16px var(--sans);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.property-golf-south>span{font-size:30px;line-height:1}
@media(max-width:900px){.property-map-context{min-width:952px}}
