@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

:root{--ink:#102b2a;--ink-2:#173a37;--paper:#f3f1eb;--paper-2:#e7e7df;--lime:#d8eb72;--rust:#e36b43;--muted:#7d8c83;--line:rgba(16,43,42,.14);--white:#fbfbf8;--mono:'Inter',Arial,sans-serif;--sans:'Inter',Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.section-pad{padding-left:clamp(24px,6vw,92px);padding-right:clamp(24px,6vw,92px)}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,92px);border-bottom:1px solid var(--line);background:rgba(243,241,235,.96);position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.brand,.footer-brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--ink);color:var(--lime);font:500 11px var(--mono);letter-spacing:-1px}.brand strong,.brand em,.footer-brand strong,.footer-brand em{display:block;font-size:12px;line-height:1.05;font-style:normal}.brand em,.footer-brand em{font:400 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:30px;font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em}.main-nav a{opacity:.72;transition:.2s}.main-nav a:hover{opacity:1}.main-nav .nav-cta{opacity:1;background:var(--ink);color:var(--lime);padding:12px 16px}.main-nav span,.button span{margin-left:14px;font-size:16px}.menu-toggle{display:none;border:0;background:transparent;font-size:22px;color:var(--ink)}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.02fr 1fr;gap:clamp(30px,6vw,96px);align-items:center;padding-top:60px;padding-bottom:66px}.hero-copy{padding:28px 0}.eyebrow,.section-kicker{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}.eyebrow span{height:7px;width:7px;border-radius:50%;background:var(--rust);box-shadow:0 0 0 5px rgba(227,107,67,.15)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(50px,6.5vw,102px);line-height:.98;letter-spacing:-.06em;margin:27px 0 31px;font-weight:700}h1 i,h2 i{font-family:var(--serif);font-weight:600;letter-spacing:-.04em}.hero-lead{font-size:16px;max-width:460px;color:#4c635c;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;border:0;padding:15px 18px;font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:var(--lime)}.button-dark{background:var(--ink);color:var(--lime);width:100%;margin-top:22px}.button-light{background:var(--lime);color:var(--ink)}.text-link{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--ink);padding-bottom:4px}.text-link span{margin-left:10px}.hero-meta{display:flex;gap:36px;border-top:1px solid var(--line);margin-top:70px;padding-top:18px}.hero-meta strong{display:block;font-size:19px;letter-spacing:-.05em}.hero-meta span{display:block;color:var(--muted);font:400 10px var(--mono);line-height:1.3;margin-top:4px;max-width:100px}.hero-visual{height:min(70vh,720px);min-height:500px;position:relative;overflow:hidden;background:var(--ink)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(16,43,42,.2),transparent 55%,rgba(16,43,42,.3));pointer-events:none}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-caption{position:absolute;z-index:2;bottom:18px;left:18px;right:18px;color:white;font:400 10px var(--mono);letter-spacing:.03em;text-transform:uppercase;display:flex;align-items:center;gap:8px}.hero-caption small{margin-left:auto;color:rgba(255,255,255,.64)}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(216,235,114,.18)}.hero-stamp{position:absolute;z-index:2;top:22px;right:22px;color:white;font:500 14px var(--mono);line-height:1.1;text-align:right}.hero-stamp small{font-size:9px;letter-spacing:.1em}.intro-band{padding-top:118px;padding-bottom:122px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:28px}.intro-grid h2,.map-header h2,.gallery-intro h2,.contact-card h2{font-size:clamp(38px,4.5vw,68px);line-height:1.03;letter-spacing:-.06em;margin:0}.intro-grid h2 span{font-family:var(--serif);font-style:italic;font-weight:600}.large-copy{font-size:19px;line-height:1.65;color:#3e5750;max-width:600px}.muted-copy{color:var(--muted);font-size:12px;max-width:540px;margin-top:24px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:90px}.feature-card{padding:24px 22px 10px 0;border-right:1px solid var(--line);margin-right:22px}.feature-card:last-child{border:0;margin-right:0}.feature-icon{display:block;color:var(--rust);font-size:27px;height:45px}.feature-card h3{font-size:14px;margin-bottom:9px;letter-spacing:-.03em}.feature-card p{font-size:12px;line-height:1.65;color:var(--muted);max-width:200px}.map-section{background:var(--ink);color:var(--white);padding-top:112px;padding-bottom:118px}.section-kicker.light{color:rgba(255,255,255,.5)}.map-header{display:flex;justify-content:space-between;align-items:end;gap:40px}.map-header h2{margin-top:24px}.map-header>p{max-width:340px;color:rgba(255,255,255,.58);font-size:13px;line-height:1.75;margin-bottom:5px}.map-toolbar{margin-top:54px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:16px;flex-wrap:wrap}.toolbar-label,.map-note{font:400 10px var(--mono);color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.06em;margin-right:8px}.map-note{margin-left:auto}.filter-button{border:1px solid rgba(255,255,255,.2);background:transparent;color:rgba(255,255,255,.65);padding:8px 12px;font:400 10px var(--mono);text-transform:uppercase;cursor:pointer;display:inline-flex;gap:7px;align-items:center}.filter-button b{font-weight:400;opacity:.6}.filter-button.active{background:var(--lime);border-color:var(--lime);color:var(--ink)}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-dot.available{background:var(--lime)}.legend-dot.reserved{background:#f4b74b}.legend-dot.sold{background:var(--rust)}.map-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.55fr);gap:20px;margin-top:22px}.map-card{background:#122f2d;border:1px solid rgba(255,255,255,.14)}.map-stage{position:relative;aspect-ratio:2.37;overflow:hidden;background:#203b38}.map-stage>img{width:100%;height:100%;object-fit:cover}.map-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,43,42,.22),transparent 40%,rgba(16,43,42,.12))}.north{position:absolute;right:16px;top:14px;z-index:3;font:500 10px var(--mono);color:white;text-align:center;background:rgba(16,43,42,.55);padding:7px 8px}.north span{display:block;color:var(--lime);font-size:15px;line-height:12px}.plot{position:absolute;z-index:2;border:2px solid rgba(216,235,114,.9);background:rgba(216,235,114,.23);cursor:pointer;transition:.2s;min-width:7%;min-height:14%}.plot:after{content:attr(data-plot);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font:500 9px var(--mono);color:var(--ink);background:var(--lime);padding:3px 4px;white-space:nowrap}.plot:hover,.plot.selected{background:rgba(216,235,114,.62);transform:scale(1.04);z-index:4}.plot[data-status="reserved"]{border-color:#f4b74b;background:rgba(244,183,75,.35)}.plot[data-status="reserved"]:after{background:#f4b74b}.plot[data-status="sold"]{border-color:var(--rust);background:rgba(227,107,67,.35)}.plot[data-status="sold"]:after{background:var(--rust);color:white}.plot.is-hidden{display:none}.plot-01{left:11%;top:13%;width:9%;height:29%}.plot-02{left:21%;top:12%;width:9%;height:30%}.plot-03{left:31%;top:10%;width:9%;height:31%}.plot-04{left:41%;top:8%;width:10%;height:33%}.plot-05{left:12%;top:46%;width:10%;height:24%}.plot-06{left:23%;top:45%;width:10%;height:25%}.plot-07{left:34%;top:43%;width:10%;height:26%}.plot-08{left:45%;top:42%;width:9%;height:26%}.plot-09{left:16%;top:72%;width:9%;height:21%}.plot-10{left:26%;top:70%;width:9%;height:22%}.plot-11{left:36%;top:69%;width:9%;height:22%}.plot-12{left:46%;top:67%;width:9%;height:23%}.plot-13{left:57%;top:46%;width:9%;height:28%}.plot-14{left:67%;top:43%;width:9%;height:30%}.plot-15{left:77%;top:38%;width:9%;height:32%}.plot-16{left:87%;top:31%;width:8%;height:35%}.map-tip{position:absolute;bottom:14px;left:14px;z-index:3;background:var(--ink);border-left:3px solid var(--lime);padding:8px 11px;color:var(--white);font:400 10px var(--mono);line-height:1.4}.map-tip small{color:rgba(255,255,255,.55)}.map-foot{padding:10px 14px;font:400 9px var(--mono);color:rgba(255,255,255,.46);text-transform:uppercase;letter-spacing:.05em}.map-foot>span:first-child{color:var(--lime);font-size:16px;margin-right:4px}.map-foot-right{float:right}.plot-detail{background:var(--lime);color:var(--ink);padding:22px;display:flex;flex-direction:column;min-height:340px}.detail-top{display:flex;justify-content:space-between;align-items:center;font:500 10px var(--mono);text-transform:uppercase}.status-pill{display:inline-flex;align-items:center;gap:6px}.status-pill i{width:7px;height:7px;background:var(--ink);border-radius:50%}.detail-index{opacity:.58}.plot-detail h3{font-size:36px;letter-spacing:-.06em;margin:42px 0 8px}.detail-intro{font-size:13px;line-height:1.6;opacity:.7;max-width:240px}.detail-placeholder{border-top:1px solid rgba(16,43,42,.2);border-bottom:1px solid rgba(16,43,42,.2);padding:18px 0;margin-top:auto;display:flex;align-items:center;gap:12px}.detail-placeholder span{font-size:22px}.detail-placeholder p{margin:0;font:400 10px var(--mono);text-transform:uppercase}.detail-disclaimer{font-size:10px;line-height:1.5;color:rgba(16,43,42,.62);margin-top:16px}.is-disabled{opacity:.7}.plot-detail.has-selection h3{font-size:46px;margin-top:34px}.plot-detail.has-selection .detail-placeholder{display:none}.plot-detail.has-selection .detail-intro{font-size:15px;opacity:.8}.plot-detail.has-selection .is-disabled{opacity:1}.gallery-section{padding-top:120px;padding-bottom:122px;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.gallery-intro h2{margin-top:24px}.gallery-intro p{color:var(--muted);font-size:14px;line-height:1.8;max-width:300px;margin-top:28px}.gallery-grid{display:grid;grid-template-columns:1.4fr .8fr;grid-template-rows:1fr 1fr;gap:14px}.gallery-item{margin:0;position:relative;background:var(--ink);overflow:hidden;min-height:180px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.05)}.gallery-large{grid-row:span 2}.gallery-item:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(16,43,42,.86));pointer-events:none}.gallery-item figcaption{position:absolute;z-index:2;bottom:14px;left:14px;right:14px;color:var(--white);font:400 10px var(--mono);text-transform:uppercase;display:flex;align-items:center;gap:10px}.gallery-item figcaption span{color:var(--lime)}.gallery-item figcaption b{margin-left:auto;color:var(--lime);font-size:16px}.contact-section{padding-top:0;padding-bottom:0}.contact-card{background:var(--ink);color:var(--white);padding:62px clamp(24px,6vw,80px);display:flex;align-items:end;justify-content:space-between;gap:50px}.contact-card h2{margin:22px 0 22px}.contact-card p{color:rgba(255,255,255,.58);max-width:420px;font-size:14px;line-height:1.7}.contact-actions{min-width:240px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.phone-link{color:var(--lime);font-size:24px;letter-spacing:-.04em}.contact-actions small{color:rgba(255,255,255,.45);font:400 10px var(--mono)}.site-footer{display:flex;justify-content:space-between;align-items:center;padding-top:34px;padding-bottom:34px;font:400 10px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.footer-center{margin-left:auto;margin-right:60px}.footer-muted{opacity:.6}
@media(max-width:900px){.main-nav{gap:15px}.main-nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding-top:40px}.hero-visual{min-height:400px;height:56vh}.hero-meta{margin-top:46px}.intro-grid,.gallery-section{grid-template-columns:1fr;gap:35px}.feature-grid{grid-template-columns:repeat(2,1fr);row-gap:20px}.feature-card:nth-child(2){border-right:0}.map-header{display:block}.map-header>p{margin-top:25px}.map-note{width:100%;margin:8px 0 0}.map-layout{grid-template-columns:1fr}.plot-detail{min-height:320px}.gallery-grid{min-height:500px}.contact-card{align-items:flex-start;flex-direction:column}.contact-actions{min-width:0}.footer-center{margin-left:auto;margin-right:15px}}
@media(max-width:580px){.site-header{height:68px}.menu-toggle{display:block}.main-nav{position:absolute;left:0;right:0;top:68px;background:var(--paper);padding:20px 24px;display:none;border-bottom:1px solid var(--line)}.main-nav.open{display:flex;flex-direction:column;align-items:flex-start}.main-nav a:not(.nav-cta){display:block}.main-nav .nav-cta{width:100%}.hero{min-height:auto;padding-top:42px;padding-bottom:65px}.hero-visual{min-height:290px;height:52vw}.hero-meta{gap:14px;justify-content:space-between}.hero-meta strong{font-size:16px}.hero-meta span{font-size:9px}.intro-band,.map-section,.gallery-section{padding-top:74px;padding-bottom:78px}.feature-grid{margin-top:55px}.map-toolbar{gap:6px}.toolbar-label{width:100%;margin-bottom:3px}.filter-button{padding:7px 9px}.map-stage{aspect-ratio:1.45}.plot:after{font-size:7px;padding:2px}.plot-01{left:9%;top:10%;width:14%;height:28%}.plot-02{left:24%;top:9%;width:14%;height:29%}.plot-03{left:39%;top:8%;width:14%;height:29%}.plot-04{left:54%;top:7%;width:14%;height:30%}.plot-05{left:10%;top:42%;width:15%;height:22%}.plot-06{left:26%;top:41%;width:15%;height:23%}.plot-07{left:42%;top:40%;width:15%;height:23%}.plot-08{left:58%;top:39%;width:14%;height:24%}.plot-09{left:13%;top:66%;width:14%;height:22%}.plot-10{left:28%;top:65%;width:14%;height:23%}.plot-11{left:43%;top:64%;width:14%;height:23%}.plot-12{left:58%;top:63%;width:14%;height:24%}.plot-13{left:73%;top:40%;width:14%;height:26%}.plot-14{left:80%;top:36%;width:10%;height:28%}.plot-15,.plot-16{display:none}.map-foot-right{float:none;display:block;margin-top:4px}.gallery-grid{min-height:420px;grid-template-columns:1fr 1fr}.gallery-large{grid-column:span 2;grid-row:span 1;min-height:240px}.contact-card{padding-top:48px;padding-bottom:48px}.site-footer{display:block}.footer-center{margin:18px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}}

/* Clean real-estate presentation: brighter surfaces, calmer typography, map-first hierarchy. */
:root{--ink:#163b4a;--ink-2:#0e3040;--paper:#f7f8f5;--paper-2:#e8eee9;--lime:#d9ed9c;--rust:#d96f4c;--muted:#75857f;--line:rgba(22,59,74,.14)}
.site-header{background:rgba(247,248,245,.97)}
h1{font-size:clamp(44px,5.7vw,82px);letter-spacing:-.055em}
h1 i,h2 i{font-family:var(--sans);font-style:normal;font-weight:800;letter-spacing:-.06em;color:var(--rust)}
.hero-visual,.map-card,.plot-detail,.contact-card{border-radius:12px}
.hero-visual{box-shadow:0 18px 50px rgba(22,59,74,.13)}
.button{border-radius:4px}
.feature-card{border-right:0;border-bottom:1px solid var(--line);padding-bottom:20px;margin-right:22px}
.feature-card:nth-child(n+3){border-bottom:0}
.feature-card h3{font-weight:700}
.map-section{background:#163b4a}
.map-card{overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.14);align-self:start}
.map-toolbar{border-bottom-color:rgba(255,255,255,.2)}
.plot-detail{box-shadow:0 20px 50px rgba(0,0,0,.12)}
.contact-card{box-shadow:0 20px 45px rgba(0,0,0,.12)}
.hero{position:relative;display:block;min-height:calc(100vh - 78px);padding-top:clamp(88px,14vh,150px);padding-bottom:80px;overflow:hidden}.hero-visual{position:absolute;inset:0;height:auto;min-height:0;border-radius:0;box-shadow:none}.hero-visual img,.hero-visual video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%}.hero-visual video{z-index:1}.hero-visual img{z-index:0}.hero-visual:after{z-index:2;background:linear-gradient(90deg,rgba(14,48,64,.9) 0%,rgba(14,48,64,.68) 36%,rgba(14,48,64,.1) 78%),linear-gradient(180deg,rgba(14,48,64,.12),rgba(14,48,64,.42))}.hero-copy{position:relative;z-index:3;max-width:620px;padding:0;color:white}.hero-copy .eyebrow{color:rgba(255,255,255,.72)}.hero-lead{color:rgba(255,255,255,.78);max-width:520px}.hero-meta{border-top-color:rgba(255,255,255,.28)}.hero-meta span{color:rgba(255,255,255,.68)}.hero-copy .text-link{color:white;border-bottom-color:white}.hero-visual .hero-caption{z-index:4}.hero-stamp{z-index:4}.admin-panel{padding-top:88px;padding-bottom:88px;background:#e8eee9}.admin-panel[hidden]{display:none}.admin-panel-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.admin-panel h2{font-size:clamp(38px,4vw,62px);letter-spacing:-.06em;margin:22px 0 10px}.admin-panel-head p{color:var(--muted);font-size:13px;max-width:480px}.admin-grid{display:grid;grid-template-columns:320px 1fr;gap:24px;margin-top:40px}.admin-form,.admin-list{background:var(--paper);padding:24px;border:1px solid var(--line);border-radius:10px}.admin-form label{display:block;font:500 10px var(--mono);text-transform:uppercase;margin-bottom:16px;color:var(--muted)}.admin-form input,.admin-form select{display:block;width:100%;margin-top:7px;border:1px solid var(--line);background:white;padding:11px;color:var(--ink);font:400 13px var(--sans)}.admin-form .button{width:100%;margin-top:8px}.admin-reset{background:none;border:0;border-bottom:1px solid var(--line);color:var(--muted);padding:10px 0;font:400 10px var(--mono);text-transform:uppercase;cursor:pointer}.admin-message{font-size:12px;color:var(--rust);min-height:18px}.admin-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;align-content:start}.admin-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);background:transparent;color:var(--ink);padding:12px;text-align:left;cursor:pointer}.admin-row:hover{background:var(--lime)}.admin-row b,.admin-row small{display:block}.admin-row b{font:500 12px var(--mono)}.admin-row small{color:var(--muted);font-size:11px;margin-top:3px}.admin-row em{font:500 9px var(--mono);font-style:normal}.admin-status-available{color:#4f8a50}.admin-status-reserved{color:#a36e14}.admin-status-sold{color:var(--rust)}.footer-admin{color:var(--rust);margin-right:10px}
@media(max-width:900px){.hero{min-height:calc(100vh - 68px)}.admin-grid{grid-template-columns:1fr}}
@media(max-width:580px){.hero{min-height:calc(100svh - 68px);padding-top:68px}.hero-visual img,.hero-visual video{object-position:58% center}.hero-copy{max-width:100%}.hero-meta{border-top-color:rgba(255,255,255,.28)}.admin-panel-head{display:block}.admin-grid{margin-top:28px}.admin-list{grid-template-columns:1fr}.footer-admin{display:block;margin:10px 0}}
.map-source-link{font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--lime);margin-left:12px;white-space:nowrap}.map-source-link:hover{text-decoration:underline}

/* The aerial/cadastre image is 1759 × 763. Keep the stage at the same ratio so
   map markers never drift when the image is resized. Markers are deliberately
   compact labels: the cadastral lines remain the authoritative boundaries. */
.map-stage{aspect-ratio:1759 / 763}
.map-stage>img{object-fit:fill}
.plot{min-width:0;min-height:0;width:auto;height:auto;padding:0;border:0;background:transparent!important;transform:translate(-50%,-50%);z-index:3}
.plot:after{position:static;display:block;transform:none;border:1px solid rgba(255,255,255,.45);box-shadow:0 4px 14px rgba(0,0,0,.24);font-size:10px;padding:5px 7px;border-radius:3px}
.plot:hover,.plot.selected{transform:translate(-50%,-50%) scale(1.08);z-index:5}
.plot[data-status="reserved"]:after{background:#f4b74b}.plot[data-status="sold"]:after{background:var(--rust);color:#fff}
.plot-01{left:20.5%;top:30%}.plot-02{left:28.5%;top:28%}.plot-03{left:36%;top:25%}.plot-04{left:43.5%;top:22%}
.plot-05{left:51%;top:19%}.plot-06{left:59%;top:15%}.plot-07{left:67%;top:11%}.plot-08{left:75%;top:9%}
.plot-09{left:40%;top:42%}.plot-10{left:48%;top:40%}.plot-11{left:56%;top:38%}.plot-12{left:64%;top:35%}
.plot-13{left:72%;top:32%}.plot-14{left:80%;top:29%}.plot-15{left:87%;top:25%}.plot-16{left:94%;top:21%}

/* The complete plan is the authoritative map. The aerial image remains available
   as a separate orientation view because the supplied photo is only a crop. */
.map-view-switcher{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}
.map-view-button{border:1px solid rgba(255,255,255,.22);background:transparent;color:rgba(255,255,255,.7);padding:10px 13px;cursor:pointer;font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.03em}
.map-view-button.active{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.map-view-note{font:400 10px var(--mono);color:rgba(255,255,255,.5);margin-left:8px}
.map-stage{aspect-ratio:8813 / 3508;background:#f5f5f0}
.map-image{position:absolute!important;inset:0;width:100%;height:100%;object-fit:fill!important;transition:opacity .25s}
.map-image-aerial{display:none}
.map-image-cadastre{display:none}
.map-stage.aerial-view{aspect-ratio:1759 / 763}
.map-stage.aerial-view .map-image-plan{display:none}
.map-stage.cadastre-view{aspect-ratio:1400 / 900}
.map-stage.cadastre-view .map-image-plan{display:none}
.map-stage.cadastre-view .map-image-cadastre{display:block}
.map-stage.aerial-view .map-image-aerial{display:block}
.map-stage.aerial-view .plot,.map-stage.aerial-view .map-tip,.map-stage.cadastre-view .plot,.map-stage.cadastre-view .map-tip{display:none}
.map-stage.aerial-view .map-aerial-warning{display:block}
.map-stage.cadastre-view .map-cadastre-warning,.map-stage.cadastre-view .map-cadastre-badge{display:block}
.map-wash{background:transparent}
.plot-plan{left:var(--x);top:var(--y);transform:translate(-50%,-50%);min-width:0;min-height:0;width:auto;height:auto;border:0!important;background:transparent!important;padding:0;z-index:4}
.plot-plan:after{content:attr(data-plot);position:static;display:block;transform:none;background:rgba(22,59,74,.82);color:white;border:1px solid rgba(255,255,255,.65);box-shadow:0 2px 8px rgba(0,0,0,.22);font:500 7px var(--mono);padding:3px 4px;border-radius:3px;white-space:nowrap}
.plot-plan:hover,.plot-plan.selected{transform:translate(-50%,-50%) scale(1.12);z-index:8}
.plot-plan[data-status="reserved"]:after{background:#c48b24}.plot-plan[data-status="sold"]:after{background:var(--rust)}
.map-aerial-warning{display:none;position:absolute;left:16px;bottom:16px;z-index:5;max-width:340px;background:rgba(22,59,74,.92);border-left:3px solid var(--rust);padding:10px 12px;color:white;font:400 10px var(--mono);line-height:1.5}
.map-cadastre-warning,.map-cadastre-badge{display:none;position:absolute;z-index:5;background:rgba(22,59,74,.94);color:white;font:400 10px var(--mono);line-height:1.5}
.map-cadastre-warning{left:16px;bottom:16px;max-width:390px;border-left:3px solid var(--lime);padding:10px 12px}
.map-cadastre-badge{right:16px;bottom:16px;border:1px solid rgba(255,255,255,.35);padding:9px 11px;text-align:right;color:var(--lime)}
.map-cadastre-badge small{color:rgba(255,255,255,.68)}
.map-foot-right{max-width:70%}
@media(max-width:900px){.map-view-note{width:100%;margin-left:0}.plot-plan:after{font-size:6px;padding:2px 3px}}
@media(max-width:900px){.location-route-strip{grid-template-columns:repeat(2,1fr)}.location-route-strip>div:nth-child(2){border-right:0;margin-right:0}.location-route-strip>div:nth-child(n+3){border-top:1px solid var(--line)}.utility-highlight{grid-template-columns:1fr;gap:22px}}
@media(max-width:580px){.map-view-button{font-size:9px;padding:8px 9px}.map-stage{aspect-ratio:1.3}.map-stage.aerial-view{aspect-ratio:1.45}.map-stage.cadastre-view{aspect-ratio:1.3}.plot-plan:after{font-size:5px;padding:2px 2px}.map-foot-right{max-width:none}.map-cadastre-badge{right:10px;bottom:10px;font-size:9px}.map-cadastre-warning{left:10px;right:10px;bottom:10px}}
@media(max-width:580px){.location-route-strip{grid-template-columns:1fr}.location-route-strip>div,.location-route-strip>div:nth-child(2){border-right:0;border-top:1px solid var(--line);margin-right:0;padding-right:0}.location-route-strip>div:first-child{border-top:0}.utility-list{gap:7px}.utility-list span{font-size:12px;padding:8px 11px}}

/* Interactive map controls and editorial parcel status. */
.map-canvas{position:absolute;inset:0;transform-origin:center center;transition:transform .22s ease;will-change:transform}
.map-stage{cursor:grab;touch-action:none}.map-stage.is-dragging{cursor:grabbing}.map-stage.is-dragging .map-canvas{transition:none}
.plot-polygons{position:absolute;inset:0;width:100%;height:100%;z-index:3;overflow:visible;pointer-events:none}
.plot-shape{pointer-events:all;cursor:pointer;fill:rgba(216,235,114,.06);stroke:rgba(216,235,114,.72);stroke-width:.22;vector-effect:non-scaling-stroke;opacity:.9;outline:none;transition:fill .18s ease,stroke .18s ease,opacity .18s ease,filter .18s ease}
.plot-shape:hover,.plot-shape.selected{fill:rgba(216,235,114,.34);stroke:var(--lime);stroke-width:1.8;opacity:1;filter:drop-shadow(0 0 5px rgba(216,235,114,.58))}
.plot-shape[data-status="reserved"]{fill:rgba(244,183,75,.08);stroke:rgba(244,183,75,.8)}.plot-shape[data-status="reserved"]:hover,.plot-shape[data-status="reserved"].selected{fill:rgba(244,183,75,.38);stroke:#f4b74b}
.plot-shape[data-status="sold"]{fill:rgba(227,107,67,.08);stroke:rgba(227,107,67,.82)}.plot-shape[data-status="sold"]:hover,.plot-shape[data-status="sold"].selected{fill:rgba(227,107,67,.38);stroke:var(--rust)}
.plot-shape[data-status="excluded"]{fill:rgba(113,128,123,.05);stroke:rgba(113,128,123,.56)}.plot-shape[data-status="excluded"]:hover,.plot-shape[data-status="excluded"].selected{fill:rgba(113,128,123,.3);stroke:#71807b}
.plot-shape.is-hidden{display:none}
.plot-plan:after{display:none}.plot-shape{fill:transparent;stroke:transparent;opacity:0}.plot-shape:hover,.plot-shape.selected{fill:rgba(216,235,114,.34);stroke:var(--lime);stroke-width:1.8;opacity:1}.plot-shape[data-status="reserved"]:hover,.plot-shape[data-status="reserved"].selected{fill:rgba(244,183,75,.38);stroke:#f4b74b}.plot-shape[data-status="sold"]:hover,.plot-shape[data-status="sold"].selected{fill:rgba(227,107,67,.38);stroke:var(--rust)}.plot-shape[data-status="excluded"]:hover,.plot-shape[data-status="excluded"].selected{fill:rgba(113,128,123,.3);stroke:#71807b}
.map-stage.aerial-view .plot-shape,.map-stage.cadastre-view .plot-shape{display:none}
.location-route-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:58px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.location-route-strip>div{padding:18px 22px 18px 0;border-right:1px solid var(--line);margin-right:22px}.location-route-strip>div:last-child{border-right:0;margin-right:0}.location-route-strip span{display:block;color:var(--rust);font:600 10px var(--mono);letter-spacing:.08em;margin-bottom:8px}.location-route-strip strong{display:block;font-size:14px;line-height:1.4;font-weight:600;max-width:230px}
.utility-highlight{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;margin-top:48px;padding:28px 0;border-bottom:1px solid var(--line)}.utility-kicker{display:block;color:var(--muted);font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.utility-highlight h3{margin:0;font-size:clamp(23px,2.5vw,34px);line-height:1.08;letter-spacing:-.045em}.utility-highlight h3 em{color:var(--rust);font-family:var(--serif);font-weight:600}.utility-list{display:flex;align-items:center;align-content:center;flex-wrap:wrap;gap:10px}.utility-list span{border:1px solid var(--line);border-radius:999px;padding:10px 14px;color:var(--ink);font-size:13px;background:rgba(255,255,255,.32)}
.map-controls{position:absolute;right:16px;bottom:16px;z-index:12;display:flex;align-items:center;gap:2px;background:rgba(16,43,42,.9);padding:4px;border:1px solid rgba(255,255,255,.24);box-shadow:0 4px 14px rgba(0,0,0,.2)}
.map-controls button,.map-controls span{height:30px;min-width:30px;display:grid;place-items:center;border:0;background:transparent;color:white;font:500 11px var(--mono)}
.map-controls button{cursor:pointer}.map-controls button:hover{background:var(--lime);color:var(--ink)}.map-controls span{min-width:48px;color:var(--lime);font-size:10px}.map-controls button:last-child{padding:0 8px;min-width:48px;font-size:9px;text-transform:uppercase}
.legend-dot.excluded{background:#71807b}.plot[data-status="excluded"]{border-color:#71807b;background:rgba(113,128,123,.22)}.plot[data-status="excluded"]:after{background:#71807b;color:white}.plot-plan[data-status="excluded"]{opacity:.62}.plot-plan[data-status="excluded"]:after{background:#71807b;color:white}.admin-status-excluded{color:#71807b}.is-disabled{pointer-events:none}
@media(max-width:580px){.map-controls{right:10px;bottom:10px}.map-controls button,.map-controls span{height:28px;min-width:28px}}

.brand-mark.logo-mark{display:block;width:32px;height:38px;background:#fff;border:1px solid rgba(16,43,42,.18);overflow:hidden}.brand-mark.logo-mark img{display:block;width:100%;height:100%;max-width:none;object-fit:contain}
.site-logo{display:block;width:220px;height:auto;max-width:38vw}
@media(max-width:580px){.site-logo{width:166px;max-width:54vw}}

.geometry-editor{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;margin-top:24px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
.geometry-editor h3{font-size:24px;letter-spacing:-.04em;margin:10px 0}
.geometry-editor p{color:var(--muted);font-size:13px;max-width:620px}
.geometry-editor-controls label{display:block;font:500 10px var(--mono);text-transform:uppercase;color:var(--muted)}
.geometry-editor-controls select{display:block;width:100%;margin-top:7px;border:1px solid var(--line);background:white;padding:11px;color:var(--ink);font:400 13px var(--sans)}
.geometry-editor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
.geometry-editor-actions .button{margin:0}
.geometry-draft-line{fill:none;stroke:#ffcf48;stroke-width:.55;vector-effect:non-scaling-stroke;opacity:1}
.geometry-draft-point{fill:#ffcf48;stroke:#102b2a;stroke-width:.25;vector-effect:non-scaling-stroke}
.geometry-draft-point.is-delete-target{fill:#e07650;cursor:not-allowed}
.geometry-editor-actions .admin-reset.is-active{background:#e07650;color:#fff;border-color:#e07650;padding:10px 12px}
.geometry-editing{cursor:crosshair}
@media(max-width:900px){.geometry-editor{grid-template-columns:1fr}}
