/* Near-black pine, natural images, luminous cartography, restrained glass. */
:root{--brand-green:#030f0b;--paper:#030f0b;--white:#0a1b14;--pale:#081911;--ink:#f2f4e9;--muted:#b5c3b6;--gold:#d9dfb6;--lake:#c1d8b9;--line:#d2e0ca20;--ease:cubic-bezier(.22,1,.36,1)}
body{background:var(--paper)}
.site-home .site-header{background:#030f0be8;border-color:#e3eec81a;box-shadow:inset 0 1px #ffffff0b}
@supports(backdrop-filter:blur(20px)){.site-home .site-header{background:linear-gradient(140deg,#14271c85,#030f0bad);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}}
.site-home .hero{padding-top:66px}.hero-copy .eyebrow{color:#c0ceb7}
.hero h1>span{background:linear-gradient(100deg,#eff1d0,#a6c89b);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero .intro{max-width:710px!important}
.site-home .hero-image{border-radius:32px;background:#0a1b14;box-shadow:0 35px 90px #0004}
.site-home .hero-image>img{aspect-ratio:2.2;object-position:58% 62%}.site-home .hero-image figcaption{background:#0a1b14}.site-home .hero-facts{padding-bottom:32px}
.site-home .project-intro{gap:56px 80px}
.capri-details{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.capri-details article{padding:30px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#19332272,#0a1b14bb);box-shadow:inset 0 1px #ffffff10}
.capri-details article>span{font-size:.8125rem;letter-spacing:.08em;color:var(--muted)}
.capri-details h3{font-size:1.5rem;margin:24px 0 12px;font-weight:550}.capri-details article p{font-size:1rem!important;margin-bottom:0!important}
.capri-inclusions{grid-column:1/-1;border-block:1px solid var(--line);padding:0 4px;margin-top:-24px}
.capri-inclusions summary{font-size:1.0625rem;cursor:pointer;padding:23px 0;color:var(--ink)}.capri-inclusions>div{padding:0 0 24px;max-width:850px}.capri-inclusions li{margin-bottom:8px;color:var(--muted);font-size:1rem}
.lots-section{background:#06150e}.country-section{background:#030f0b}.visit-section,.trust-section{background:#071a11}
.lot-detail,.comparison-panel,.visit-form,.trust-card{background:linear-gradient(140deg,#15302299,#0a1b14d9);border:1px solid var(--line);box-shadow:inset 0 1px #ffffff0d;backdrop-filter:blur(16px)}
.visit-form input,.visit-form select,.lot-tools select,.mobile-picker select{background:#06160e}
.site-home .header-action,.floating-contact{background:linear-gradient(145deg,#e6eccc1a,#9db2980b);border:1px solid #e6eccc34;box-shadow:inset 0 1px #ffffff24,0 8px 24px #0002;backdrop-filter:blur(24px) saturate(145%)}
.floating-contact{color:#edf2df!important}
.button,.subtle-button,.map-tabs button,.map-icon-button{transition:background 240ms var(--ease),box-shadow 240ms var(--ease),border-color 240ms var(--ease),transform 240ms var(--ease)}
.button:hover{box-shadow:0 6px 24px #d9dfb61a;transform:translateY(-2px)}.button:active{transform:translateY(0)}
.interactive-map{display:grid;grid-template-columns:minmax(0,1fr) 295px;grid-template-rows:auto 570px auto;background:#0b2015;border-radius:32px;border:1px solid #e3eec82d;box-shadow:0 32px 90px #0004;overflow:hidden}
.map-toolbar{grid-column:1/-1;background:linear-gradient(140deg,#22443085,#0b2015dc);padding:16px 20px;border-color:#ffffff1a;box-shadow:inset 0 1px #ffffff18;backdrop-filter:blur(24px)}
.map-tabs{background:#030f0b99;border:1px solid #ffffff14;padding:4px;gap:3px}.map-tabs button{padding:9px 20px;color:#c4d4c1;font-size:.9375rem;font-weight:500}
.map-tabs button[aria-pressed=true]{background:linear-gradient(140deg,#edf2e4e8,#d4e0cbd9);color:#112719;box-shadow:inset 0 1px white,0 3px 9px #0003}
.map-stage{grid-column:1/-1;grid-row:2;height:100%;background:radial-gradient(ellipse at 40% 38%,#e0ead2,#c6d7b5 70%,#b1c59e);touch-action:pan-y pinch-zoom;overscroll-behavior:auto;cursor:default}
.map-stage.is-interactive{touch-action:none;cursor:grab}.map-stage.is-interactive:active{cursor:grabbing}
.map-world{width:1828px;height:1258px;filter:drop-shadow(0 22px 18px #18381a20)}
#map-scene{transition:transform 650ms var(--ease);transform-origin:0 0}
.map-curb{fill:#f7f5e4;stroke:#708771;stroke-width:2;stroke-linejoin:round}.map-road{fill:url(#road-fill);stroke:#7c9484;stroke-width:2}.map-median{fill:#729666;stroke:#d8e2c6;stroke-width:3}
.map-lot{cursor:pointer;outline:none}.map-lot-side{fill:#74996b;stroke:#74996b;stroke-width:3;transition:opacity 360ms var(--ease);pointer-events:none}
.map-lot-shape{fill:url(#lot-fill);stroke:#6d936b;stroke-width:3;stroke-linejoin:round;vector-effect:none;transition:fill 200ms,stroke 200ms;outline:none}
.map-lot:hover .map-lot-shape{fill:#e6efc5;stroke:#2c6140;stroke-width:5}.map-lot[aria-pressed=true] .map-lot-shape{fill:url(#lot-selected-fill);stroke:#285c3b;stroke-width:6}
.map-lot[aria-pressed=true] .map-lot-side{fill:#406b3b;stroke:#406b3b}.map-lot:focus-visible .map-lot-shape{stroke:#0b3824;stroke-width:8;stroke-dasharray:14 5}
.map-lot-label{pointer-events:none;fill:#244d31}.map-lot-number{font-size:58px;font-weight:650;letter-spacing:-2px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.map-lot-area{font-size:34px;font-weight:450;letter-spacing:-.5px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.map-street-label{font-size:23px;letter-spacing:2px;fill:#4b6456;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;pointer-events:none}
.interactive-map[data-view=plan] .map-lot-side{opacity:0}
.map-place-label,.map-navigation,.map-interact{background:linear-gradient(135deg,#f9fce9d4,#edf4eab9);border:1px solid #ffffffc2;box-shadow:inset 0 1px #fff,0 8px 26px #16332022;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}
.map-place-label{max-width:calc(100% - 85px);padding:12px 15px}.map-place-symbol{background:var(--brand-green)}
.map-interact{position:absolute;left:20px;bottom:20px;color:#17351f;border-radius:999px;padding:9px 18px;min-height:44px;font-size:.875rem;font-weight:550}.map-interact[aria-pressed=true]{background:#133a25;color:white;border-color:#ffffff70}
.map-selection{position:absolute;right:0;top:0;bottom:0;width:295px;padding:30px 26px;border-radius:0;border:0;border-left:1px solid #e3eec82d;background:linear-gradient(130deg,#173b22ed,#0a2418f2);color:#f2f6e8;box-shadow:inset 0 1px #ffffff18;backdrop-filter:blur(26px);display:flex;flex-direction:column;justify-content:center}
.map-stage:not(.is-context){padding-right:295px}.map-selection .eyebrow{color:#c3d2bc;margin-bottom:18px;font-size:.8125rem}
.map-selection-heading h3{color:#f1f6e5;font-size:1.7rem;margin-bottom:10px}.map-selection-heading strong{color:#e2e9bf;font-size:2.5rem;font-weight:550}
.map-selection>p:not(.eyebrow){color:#bfceba;font-size:.9375rem;line-height:1.5;margin-block:20px 28px}.map-selection .button{background:#dde6c3;color:#0d2919;font-size:.9375rem;min-height:48px}.map-selection .button:hover{background:#edf2d7}.map-selection .text-link{color:#cadfc0;font-size:.875rem;margin-top:16px}
.map-navigation{right:315px}.map-stage:not(.is-context) .map-place-label{max-width:calc(100% - 380px)}
.map-context-view{position:absolute;inset:0;background:#07150c;display:flex;align-items:center;justify-content:center}.map-context-view img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-width:none}
.map-context-note{background:#07190dd4;color:#eef4e4;border-color:#ffffff38;backdrop-filter:blur(22px);max-width:480px;font-size:.875rem;bottom:18px}.map-stage.is-context{height:100%;background:#07150c}.map-stage.is-context .map-place-label{background:#07190dd4;color:#eef4e4;border-color:#ffffff38}.map-stage.is-context .map-place-label span:not(.map-place-symbol){color:#c3d3bc}
.interactive-map>figcaption{grid-column:1/-1;background:#0b2015;gap:28px;padding:20px 24px;color:#bdcbb6}.interactive-map>figcaption span:first-child{flex:0 0 31%;font-size:.875rem}
.map-dialog{background:#0b2015;border-radius:28px}.map-dialog>.interactive-map{display:grid;grid-template-rows:auto minmax(120px,1fr) auto}.map-dialog .map-stage{height:100%;min-height:120px}
.amenity-card{background:linear-gradient(145deg,#132d1c99,#071a11);border-radius:28px;box-shadow:inset 0 1px #ffffff10}.amenity-card ul{list-style:none;padding:0;margin:22px 0 0;color:var(--muted);font-size:.9375rem;line-height:1.55}.amenity-card li{padding:10px 0;border-top:1px solid var(--line)}.amenity-card>div{padding:30px}.amenity-card img{transition:transform 750ms var(--ease)}.amenity-card:hover img{transform:scale(1.04)}
.location-actions{display:flex;flex-wrap:wrap;gap:12px}.location-actions .subtle-button{color:var(--muted)}#address-status{margin-top:18px;max-width:420px}
.location-map-shell{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:#0b2015;margin-bottom:88px}
.location-map-shell iframe{display:block;width:100%;height:390px;border:0;pointer-events:none;filter:saturate(.7)}
.location-map-shell iframe.is-active{pointer-events:auto}
.location-map-shell>p{padding:18px 24px;font-size:.875rem;color:var(--muted);margin:0;line-height:1.5}
.location-map-toggle{position:absolute;bottom:78px;left:24px;border-radius:999px;border:1px solid #ffffff60;color:#eff3e5;background:#082618df;backdrop-filter:blur(22px);padding:12px 20px;font-size:.9375rem;min-height:48px;box-shadow:inset 0 1px #ffffff30,0 8px 24px #0003}
.location-map-toggle[aria-pressed=true]{background:#e6eccedb;color:#12341e}
@media(max-width:1100px){.interactive-map{grid-template-columns:minmax(0,1fr) 260px}.map-selection{width:260px;padding:24px 20px}.map-stage:not(.is-context){padding-right:260px}.map-navigation{right:276px}.map-stage:not(.is-context) .map-place-label{max-width:calc(100% - 340px)}.map-selection-heading strong{font-size:2.2rem}.capri-details article{padding:24px}}
@media(max-width:760px){
 .site-home .hero{padding-top:42px}.site-home .hero-image{border-radius:26px}.site-home .hero-image>img{aspect-ratio:1.35;object-position:58% 66%}.site-home .project-intro{gap:28px}
 .capri-details{grid-template-columns:1fr;gap:14px}.capri-details article{padding:24px}.capri-details h3{font-size:1.5rem;margin-top:16px}.capri-inclusions{margin-top:0}.capri-inclusions summary{font-size:1rem}
 .interactive-map{display:block;border-radius:26px}.map-toolbar{padding:12px;flex-wrap:wrap;gap:8px}.map-tabs button{padding:7px 12px;font-size:.875rem}.map-toolbar-actions{gap:8px}.map-toolbar #open-plan{font-size:.8125rem;padding:7px 12px}
 .map-stage,.map-stage.is-context{height:620px;padding:0!important}.map-world.compact-labels .map-lot-area{display:none}.map-world.compact-labels .map-lot-number{font-size:70px}.map-world.compact-labels .map-street-label{font-size:29px;letter-spacing:0}
 .map-selection{left:12px;right:12px;top:auto;bottom:12px;width:auto;border:1px solid #ffffff35;border-radius:22px;padding:19px 20px;display:block;box-shadow:inset 0 1px #ffffff26,0 10px 30px #10311b20;background:linear-gradient(135deg,#173b22ec,#0a2418f2)}
 .map-selection .eyebrow{margin-bottom:6px;font-size:.75rem}.map-selection-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.map-selection-heading h3{font-size:1.4rem;margin-bottom:0}.map-selection-heading strong{font-size:1.8rem}.map-selection>p:not(.eyebrow){font-size:.875rem;margin:10px 0 12px}.map-selection .text-link{margin-top:8px;font-size:.875rem}
 .map-navigation{top:12px;right:12px}.map-stage:not(.is-context) .map-place-label{max-width:calc(100% - 80px)}.map-place-label{top:12px;left:12px;padding:10px;gap:8px}.map-place-label span:not(.map-place-symbol){font-size:.75rem}
 .map-interact{left:12px;bottom:242px;font-size:.8125rem;padding:8px 14px;min-height:40px}.map-context-view{inset:64px 0 84px}.map-context-note{left:12px;right:12px;bottom:12px;max-width:none;font-size:.8125rem;line-height:1.5;padding:13px 15px}
 .interactive-map>figcaption{padding:18px;line-height:1.5}.interactive-map>figcaption span:first-child{font-size:.875rem}.interactive-map>figcaption span+span{font-size:.8125rem}
 .map-dialog>.interactive-map{display:flex}.map-dialog .map-stage{flex:1;min-height:0}.map-dialog figcaption{display:none}.map-dialog .map-selection{left:12px;right:12px;top:auto;bottom:12px;width:auto;max-height:none;overflow:visible}.map-dialog .map-selection .eyebrow{display:none}.map-dialog .map-interact{bottom:227px}
 .amenity-card>div{padding:26px}.amenity-card ul{font-size:.9375rem}.country-overview .large-copy{font-size:1.5rem}.location-map-shell{border-radius:24px;margin-bottom:56px}.location-map-shell iframe{height:340px}.location-map-toggle{bottom:110px;left:16px;padding:10px 16px;font-size:.875rem}.location-map-shell>p{padding:18px;font-size:.8125rem}
}
@media(max-width:380px){.map-toolbar{justify-content:center}.map-tabs{width:100%;justify-content:center}.map-toolbar-actions{width:100%;justify-content:space-between}.map-stage{height:610px}.map-selection-heading strong{font-size:1.55rem}.map-place-symbol{display:none}.map-place-label span:not(.map-place-symbol){font-size:.75rem}.map-selection{padding:18px 16px}.map-selection .button{font-size:.875rem}}
@media(max-height:580px) and (min-width:761px){.map-dialog .map-selection{width:260px;padding:20px}.map-dialog .map-selection-heading strong{font-size:2rem}}
@media(max-height:480px){
 .map-dialog .map-toolbar{flex-wrap:nowrap;padding:8px 12px}.map-dialog .map-tabs{width:auto}.map-dialog .map-tabs button{padding-inline:12px}.map-dialog .map-toolbar-actions{width:auto}.map-dialog #open-plan{display:none}
 .map-dialog .map-selection{left:auto;right:0;top:0;bottom:0;width:210px;padding:16px;border:0;border-left:1px solid #ffffff28;border-radius:0;max-height:none;overflow:auto;display:flex;justify-content:center}
 .map-dialog .map-selection-heading{display:block}.map-dialog .map-selection-heading h3{font-size:1.125rem;margin-bottom:3px}.map-dialog .map-selection-heading strong{font-size:1.6rem}.map-dialog .map-selection>p:not(.eyebrow){font-size:.875rem;margin:8px 0}.map-dialog .map-selection .button{font-size:.875rem;padding:10px;min-height:44px}.map-dialog .map-selection .text-link{font-size:.875rem;margin-top:6px}
 .map-dialog .map-place-label{display:none}.map-dialog .map-navigation{top:10px;right:220px;width:40px}.map-dialog .map-navigation button{height:38px;width:40px}.map-dialog .map-navigation output{display:none}.map-dialog .map-interact{left:10px;bottom:10px;font-size:.75rem;padding:6px 10px;min-height:38px}.map-dialog .map-context-view{inset:0}.map-dialog .map-context-note{max-width:70%;left:10px;right:auto;bottom:10px}
}
@media(prefers-reduced-motion:reduce){#map-scene,.map-lot-side,.map-lot-shape,.button,.subtle-button,.map-tabs button,.amenity-card img{transition:none!important}}
