.geo-map{position:relative;min-width:0;height:650px;min-height:450px;background:#d8dfcc;isolation:isolate;overflow:hidden;color:#173c34;border:1px solid #cbd1c3}
.geo-canvas,.geo-fallback{position:absolute;inset:0}.geo-fallback{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:90px 35px;background:linear-gradient(150deg,#dce3ce,#b3c8b6)}.geo-fallback h3{font-size:3.5rem;margin:15px 0}.geo-fallback p{max-width:370px;font-size:14px;line-height:1.6}.geo-fallback.has-overview{background-size:cover;background-position:center;color:white;text-shadow:0 1px 8px #122b23}.geo-fallback.has-overview .eyebrow{color:#fff}.geo-fallback.has-overview:before{content:'';position:absolute;inset:0;background:#10251c80;z-index:-1}.geo-fallback.has-overview{isolation:isolate}
.geo-toolbar{position:absolute;top:18px;left:18px;right:18px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}.geo-toolbar>*{pointer-events:auto}.geo-layers{display:flex;background:#f8f6ef;padding:4px;box-shadow:0 3px 16px #13261d14}.geo-map button{font:400 13px/1.3 var(--sans);border:0;background:#f8f6ef;color:#173c34;min-height:44px;padding:10px 14px;cursor:pointer}.geo-map button:hover{transform:none;background:#e8ecdf}.geo-map button:disabled{opacity:.55;cursor:default}.geo-map button[aria-pressed=true]{background:#173c34;color:#fff}.geo-terrain{box-shadow:0 3px 16px #13261d14}.geo-actions{position:absolute;right:18px;top:83px}.geo-actions button{display:flex;align-items:center;gap:7px}.geo-actions span{font-size:12px}
.geo-status{position:absolute;left:18px;right:65px;top:86px;max-width:420px;background:#f8f6efeb;font-size:13px;line-height:1.5;padding:12px 15px;pointer-events:none}.geo-selection{position:absolute;left:18px;right:18px;bottom:72px;background:#f8f6ef;padding:24px;box-shadow:0 8px 35px #13261d21}.geo-selection h3{font-size:2.3rem;max-width:90%;margin:8px 0}.geo-selection .geo-close{position:absolute;right:8px;top:8px;font-size:28px;padding:2px 14px}.geo-facts{font-size:14px;margin:12px 0 20px}.geo-selection-links{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.geo-selection-links .button{font-size:13px;min-height:46px;padding:12px 18px}.geo-selection-links .text-link{font-size:14px}
.geo-footer{position:absolute;left:0;right:0;bottom:24px;padding:7px 12px;background:#f8f6efe8;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;line-height:1.5}.geo-footer button{font-size:12px;padding:5px;min-height:36px;text-decoration:underline}.geo-noscript{position:absolute;left:18px;right:18px;bottom:70px;background:#f8f6ef;padding:16px;font-size:14px}.geo-map .maplibregl-ctrl-attrib{font-size:10px;max-width:100%}.geo-map .maplibregl-ctrl-bottom-right{max-width:100%}.geo-map .maplibregl-ctrl-top-right{top:137px;right:8px}.geo-map .maplibregl-ctrl-group button{width:38px;height:38px;min-height:38px;padding:0}.geo-map canvas:focus-visible{outline:3px solid #c0ab76;outline-offset:-4px}.map-position-note{font-size:12px;color:#687269;line-height:1.6}.map-show{border:0;background:none;color:#173c34;font-size:13px;padding:10px 0;text-decoration:underline;text-underline-offset:4px}.map-show:disabled{color:#687269;text-decoration:none;cursor:default}.plot-card.is-map-selected{box-shadow:inset 3px 0 #173c34;padding-left:16px}.map-section-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.map-section-intro p{max-width:420px;font-size:15px;color:#687269}.geo-map.is-disabled{height:auto;min-height:0;padding:24px}.geo-map.is-disabled>*{display:none}.geo-map.is-disabled .geo-status{display:block;position:static;max-width:none}
@media(max-width:767px){.geo-map{height:70svh;min-height:480px;max-height:760px}.geo-toolbar{top:12px;left:12px;right:12px;gap:5px}.geo-map button{font-size:12px;padding-inline:12px}.geo-status{left:12px;right:60px;top:75px;font-size:12px;max-width:280px}.geo-actions{top:130px;right:12px}.geo-actions span{display:none}.geo-actions button{font-size:22px}.geo-selection{left:10px;right:10px;bottom:82px;padding:18px}.geo-selection h3{font-size:2rem}.geo-selection-links{gap:10px}.geo-selection-links .button{width:100%}.geo-facts{margin-bottom:12px;font-size:13px}.geo-map .maplibregl-ctrl-top-right{top:181px}.geo-footer{font-size:10px;bottom:24px}.map-section-intro{display:block}.map-section-intro p{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.geo-map *{scroll-behavior:auto!important}}
.geo-selection{z-index:2;max-height:calc(100% - 175px);overflow-y:auto}.geo-map.has-selection .maplibregl-ctrl-top-right,.geo-map.has-selection .geo-actions{visibility:hidden}
@media(min-width:768px){.geo-status{right:150px}}
.geo-canvas,.geo-fallback{bottom:84px}
.geo-map [hidden]{display:none!important}
.geo-footer{bottom:0;min-height:84px;padding:14px 18px;background:#f8f6ef;border-top:1px solid #cbd1c3;font-size:12px;align-items:center}
.geo-notes{min-width:0}.geo-footer .geo-status{position:static;max-width:none;padding:0;background:none;font-size:13px;margin:0 0 4px;color:#173c34}
.geo-footer [data-map-caption]{margin:0;color:#536052}.geo-footer button{flex-shrink:0;max-width:130px}
.geo-map .maplibregl-ctrl-top-right{top:137px}.geo-selection{bottom:120px}
@media(max-width:767px){.geo-map{min-height:570px}.geo-canvas,.geo-fallback{bottom:116px}.geo-footer{min-height:116px;padding:12px;gap:8px;font-size:11px}.geo-footer .geo-status{font-size:12px}.geo-footer button{max-width:92px;padding:6px;min-height:44px}.geo-actions{top:75px}.geo-map .maplibregl-ctrl-top-right{top:125px}.geo-selection{bottom:132px;max-height:calc(100% - 210px)}}
.plot-card.is-map-selected{padding-left:0;box-shadow:0 0 0 3px #c89b43;outline:6px solid #f3e5c7;background:#f3e5c7}
.map-show[aria-pressed=true]{font-weight:600;color:#755513}
.map-legend{display:flex;flex-wrap:wrap;gap:8px 18px;font:12px/1.6 var(--sans);color:#536052;padding:12px 0}
.map-legend[hidden],.map-legend [hidden]{display:none!important}.map-legend span{display:flex;align-items:center;gap:7px}.map-legend i{width:18px;height:13px;display:inline-block;flex-shrink:0}
.legend-parcel{background:#41684c66;border:2px solid #173c34}.legend-reserved{background:#c29b44;border:2px solid #7b551a}.legend-sold{background:#bc6c61;border:2px solid #803f3a}.legend-selected{background:#efbd55;border:2px solid #173c34}.legend-reference{background:#41684c;border:2px dashed #fff5d6;outline:1px solid #41684c}
.geo-boundary{font:12px/1.5 var(--sans);color:#655128;margin:8px 0}.geo-boundary a{display:block;text-decoration:underline;text-underline-offset:3px}
.geo-map .geo-list-link{padding:0;min-height:36px;text-decoration:underline;text-underline-offset:3px;margin-bottom:8px}
.geo-selection{padding:18px}.geo-selection h3{font-size:2rem;margin:6px 0}.geo-selection .geo-facts{margin:8px 0}
.geo-map{scroll-margin-top:80px}
@media(min-width:768px){
  .catalog-columns{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .catalog-map-column{position:static;top:auto;width:100%;max-height:none;overflow:visible;scrollbar-gutter:auto;overscroll-behavior-y:auto}
  .catalog-map-column .geo-map{height:clamp(530px,66svh,800px);min-height:530px;max-height:none}
  .catalog-results{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 25px;margin-top:44px}
  .catalog-results .plot-card{margin-bottom:0}
  .catalog-results .empty-state{grid-column:1/-1}
  .catalog-map-column .map-legend{gap:8px 24px;padding:18px 0}
  .catalog-map-column .map-parcel-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));gap:8px}
  .catalog-map-column .map-parcel-buttons button{width:100%}
}
@media(min-width:768px) and (max-width:1100px){.catalog-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1700px){
  body.catalog-page .shell{width:calc(100% - clamp(72px,5vw,144px));max-width:2400px}
  body.catalog-page .catalog-results{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:2250px){body.catalog-page .catalog-results{grid-template-columns:repeat(5,minmax(0,1fr))}}
.map-parcel-picker{flex-basis:100%;border-top:1px solid #cbd1c3;margin-top:4px;padding-top:12px}.map-parcel-picker p{margin:0 0 10px}.map-parcel-picker [data-map-parcel-summary]{font-weight:600;color:#173c34}.map-parcel-buttons{display:flex;flex-wrap:wrap;gap:6px}.map-parcel-buttons button{box-sizing:border-box;font:600 13px/1 var(--sans);min-height:44px;min-width:60px;padding:10px;border:1px solid #aab8a5;background:#f8f6ef;color:#173c34;cursor:pointer}.map-parcel-buttons button:hover{background:#e4eadb}.map-parcel-buttons button[data-availability=available]{background:#d8e9d9;border-color:#527b59;color:#173c34}.map-parcel-buttons button[data-availability=available]:hover{background:#c7e0c9}.map-parcel-buttons button[data-availability=reserved]{background:#f4e1a5;border-color:#a47a29;color:#5f4310}.map-parcel-buttons button[data-availability=reserved]:hover{background:#edd17c}.map-parcel-buttons button[data-availability=sold]{background:#edd0c9;border-color:#aa675b;color:#713830}.map-parcel-buttons button[data-availability=sold]:hover{background:#e6bbb2}.map-parcel-buttons button[aria-pressed=true]{box-shadow:inset 0 0 0 2px #173c34}.map-parcel-buttons button:focus-visible{outline:3px solid #173c34;outline-offset:2px}.map-parcel-picker .map-parcel-hint{margin:10px 0 0;color:#687269}
@media(max-width:767px){.geo-map.has-selection{height:790px;max-height:none}.geo-selection{padding:14px}.geo-selection h3{font-size:1.8rem}.geo-selection-links .button{min-height:44px}.geo-boundary{font-size:11px}}

/* Keep the two next steps together when a parcel is selected. */
.geo-selection{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,330px);align-items:center;column-gap:28px;padding:22px 28px}
.geo-selection>.eyebrow,.geo-selection>h3,.geo-selection>.geo-facts,.geo-selection>.geo-list-link{grid-column:1}
.geo-selection .geo-facts{margin:9px 0 4px}
.geo-selection-links{grid-column:2;grid-row:1/span 4;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;padding-right:25px}
.geo-selection-links a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:50px;padding:10px 11px 10px 17px;font:600 14px/1.35 var(--sans);text-decoration:none;transition:background .25s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.32,.72,0,1)}
.geo-selection-links a span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;font-size:16px;transition:transform .25s cubic-bezier(.32,.72,0,1)}
.geo-selection-links a:hover span{transform:translate(2px,-2px)}
.geo-selection-links a:active{transform:scale(.985)}
.geo-selection-links a:focus-visible{outline:3px solid #b18537;outline-offset:3px}
.geo-open-card{background:#173c34;color:#fff}
.geo-open-card:hover{background:#275449;color:#fff}
.geo-open-card span{background:#ffffff24}
.geo-book-viewing{border:1px solid #173c34;background:#f8f6ef;color:#173c34}
.geo-book-viewing:hover{background:#e9eddf;color:#173c34}
.geo-book-viewing span{background:#e6eadf}
.geo-map .geo-list-link{justify-self:start;margin:0}
@media(max-width:767px){
  .geo-selection{display:flex;flex-direction:column;align-items:stretch;padding:17px 16px;gap:0}
  .geo-selection-links{padding-right:0;margin-top:13px;gap:9px}
  .geo-selection-links a{min-height:50px;font-size:13px}
  .geo-map .geo-list-link{align-self:flex-start;margin-top:9px}
}
@media(prefers-reduced-motion:reduce){.geo-selection-links a,.geo-selection-links a span{transition:none}}
