*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f0e8;color:#15211d;font-family:"Trebuchet MS",Arial,sans-serif;overflow-x:hidden}html[data-theme=dark] body{background:#0f1714;color:#f3f0e8}:root{--navy:#15211d;--cream:#f3f0e8;--copper:#b5875b;--sky:#7e9189;--line:rgba(21,33,29,.18);--muted:#68736e}.skip{position:fixed;left:-999px}.site-header{height:88px;position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;padding:0 4.5vw;background:rgba(243,240,232,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}html[data-theme=dark] .site-header{background:rgba(15,23,20,.9)}.brand{font-family:Georgia,serif;font-size:1.35rem;letter-spacing:.08em;color:inherit;text-decoration:none}.desktop-nav{margin-left:auto;display:flex;gap:2rem}.desktop-nav a,.mobile-nav a{color:inherit;text-decoration:none;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.desktop-nav a.active{color:var(--copper)}.header-actions{margin-left:1.5rem;display:flex;gap:.5rem}.icon-btn{border:1px solid var(--line);background:none;color:inherit;width:42px;height:42px}.menu{display:none}.mobile-nav{display:none}.section-rail{position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:40;display:grid;gap:5px}.section-rail a{font-size:.62rem;text-transform:uppercase;text-decoration:none;color:transparent;display:flex;gap:8px;justify-content:flex-end;transition:.3s}.section-rail a span{color:var(--muted);width:22px}.section-rail a.active{color:var(--copper)}main{padding-top:88px}.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:.82fr 1.18fr}.hero-copy{padding:10vh 5vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.24em;color:var(--copper);font-weight:800}.hero h1,.page-hero h1{font-family:Georgia,serif;font-size:clamp(3.8rem,7.3vw,8.2rem);line-height:.92;font-weight:400;letter-spacing:-.05em;margin:.35em 0}.hero p,.page-hero p{font-size:1.05rem;line-height:1.75;color:var(--muted);max-width:620px}.hero-visual{position:relative;padding:2.5vw 4vw 4vw 0}.hero-visual .main{width:100%;height:100%;object-fit:cover;border-radius:42vw 42vw 0 0}.property-float{position:absolute;left:-4rem;bottom:4rem;background:rgba(243,240,232,.97);padding:1.5rem 1.8rem;width:290px;box-shadow:0 30px 70px rgba(21,33,29,.18)}.property-float strong{font-family:Georgia,serif;font-size:1.35rem;display:block}.property-float span{color:var(--muted);font-size:.8rem}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 1.5rem;background:var(--navy);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:800;border:1px solid var(--navy);transition:.3s}.btn:hover{background:var(--copper);border-color:var(--copper);transform:translateY(-2px)}html[data-theme=dark] .btn{background:var(--copper);border-color:var(--copper)}.btn.ghost{background:transparent;color:inherit;border-color:var(--line)}.button-row{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap}section{padding:9rem 5vw;border-top:1px solid var(--line);position:relative}.section-head{max-width:900px;margin-bottom:4rem}.section-head h2{font-family:Georgia,serif;font-size:clamp(2.8rem,5vw,5.6rem);font-weight:400;line-height:1;letter-spacing:-.045em;margin:.2em 0}.section-head p{color:var(--muted);line-height:1.7}.property-ribbon{display:flex;gap:1.5rem;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:1rem}.property-card{min-width:min(420px,85vw);scroll-snap-align:start;position:relative;background:#fff;color:var(--navy)}html[data-theme=dark] .property-card{background:#1b2823;color:#f3f0e8}.property-card img{width:100%;height:330px;object-fit:cover}.property-info{padding:1.6rem}.property-info h3{font-family:Georgia,serif;font-size:1.55rem;margin:0 0 .5rem}.property-info .meta{display:flex;justify-content:space-between;color:var(--muted)}.property-info .price{color:var(--copper);font-weight:800}.service-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.service{padding:2.5rem 0;border-top:1px solid var(--copper)}.service h3{font-family:Georgia,serif;font-size:2rem;font-weight:400}.service p{color:var(--muted);line-height:1.7}.editorial{display:grid;grid-template-columns:1.1fr .9fr;min-height:700px}.editorial img{width:100%;height:100%;object-fit:cover}.editorial .copy{padding:7rem 6vw;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center}.editorial h2{font-family:Georgia,serif;font-size:4.2rem;font-weight:400;line-height:1}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.metric{padding:2.5rem;background:var(--cream)}html[data-theme=dark] .metric{background:#0f1714}.metric b{display:block;font-family:Georgia,serif;font-size:2.8rem;color:var(--copper)}.page-hero{padding:13rem 5vw 7rem;min-height:62vh;background:linear-gradient(120deg,rgba(126,145,137,.28),transparent 62%)}.filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:2rem}.filters button{padding:.8rem 1.2rem;background:none;border:1px solid var(--line);color:inherit}.filters button.active{background:var(--navy);color:#fff}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.listing-grid .property-card{min-width:0}.listing-grid .property-card img{height:260px}.map-panel{position:relative;min-height:520px;background:linear-gradient(140deg,#c7d0ca,#e8dfd2);overflow:hidden}.map-panel:before,.map-panel:after{content:"";position:absolute;border:1px solid rgba(21,33,29,.24);border-radius:50%}.map-panel:before{width:650px;height:650px;left:-120px;top:-200px}.map-panel:after{width:400px;height:400px;right:-80px;bottom:-120px}.map-pin{position:absolute;left:54%;top:42%;width:26px;height:26px;background:var(--copper);border-radius:50% 50% 50% 0;transform:rotate(-45deg);animation:pin 1.8s infinite}.map-pin:after{content:"";position:absolute;width:8px;height:8px;background:#fff;border-radius:50%;left:9px;top:9px}@keyframes pin{50%{transform:translateY(-8px) rotate(-45deg)}}.map-label{position:absolute;left:calc(54% + 34px);top:40%;background:#fff;color:var(--navy);padding:1rem;box-shadow:0 15px 40px rgba(0,0,0,.12)}.yield-tool{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.tool{padding:2.5rem;border:1px solid var(--line)}.field{display:grid;gap:.5rem;margin-bottom:1.2rem}.field label{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}input,select,textarea{width:100%;padding:1rem;border:1px solid var(--line);background:transparent;color:inherit;font:inherit}option{color:#111}.result{font-family:Georgia,serif;font-size:4rem;color:var(--copper)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem}.faq button{width:100%;padding:1.3rem 0;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);color:inherit;font-size:1.1rem}.faq .answer{max-height:0;overflow:hidden;color:var(--muted)}footer{padding:5rem 5vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:2rem}footer a{color:inherit;display:block;margin:.4rem 0}.fine{grid-column:1/-1;color:var(--muted);font-size:.78rem}a{color:inherit}.property-float{color:var(--navy)}html[data-theme=dark] .property-float{background:rgba(243,240,232,.97);color:var(--navy)}html[data-theme=dark] .property-float span{color:#5f6964}html[data-theme=dark] .mobile-nav{background:#0f1714}.property-card a,.service a,.faq a{color:inherit}.property-card a:hover,.service a:hover,footer a:hover{color:var(--copper)}.filters button:hover,.icon-btn:hover{border-color:var(--copper);color:var(--copper)}:focus-visible{outline:2px solid var(--copper);outline-offset:4px}[data-reveal]{opacity:0;transform:translateY(26px);transition:.8s}[data-reveal].in{opacity:1;transform:none}@media(max-width:900px){.desktop-nav{display:none}.menu{display:block}.mobile-nav{position:absolute;top:88px;left:0;right:0;padding:2rem;background:var(--cream);display:grid;gap:1rem;transform:translateY(-140%);transition:.35s}.mobile-nav.open{transform:none}.section-rail{display:none}.hero,.editorial,.yield-tool,.contact-grid{grid-template-columns:1fr}.hero-copy{min-height:65vh}.hero-visual{height:65vh;padding:0}.hero-visual .main{border-radius:0}.property-float{left:5vw}.service-columns,.listing-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr 1fr}}@media(max-width:600px){section{padding:6rem 5vw}.hero h1,.page-hero h1{font-size:3.5rem}.service-columns,.listing-grid,.metrics{grid-template-columns:1fr}.editorial .copy{padding:5rem 6vw}.editorial h2{font-size:3rem}}
/* Build 16 — demo interface and mobile stability */
.icon-btn{display:grid;place-items:center}.demo-ui-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.inline-icon{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:900px){.mobile-nav{position:fixed!important;top:88px!important;left:0!important;right:0!important;z-index:90!important;background:#f3f0e8!important;border-bottom:1px solid var(--line);box-shadow:0 26px 70px rgba(0,0,0,.18);max-height:calc(100dvh - 88px);overflow:auto}html[data-theme=dark] .mobile-nav{background:#0f1714!important}.mobile-nav a{padding:9px 0;font-size:.78rem}.site-header{z-index:100}.hero h1,.page-hero h1{overflow-wrap:normal;word-break:normal;text-wrap:balance}}
@media(max-width:560px){.hero h1,.page-hero h1{font-size:clamp(3.2rem,14vw,4.4rem)!important;line-height:.94!important;letter-spacing:-.045em!important}}


/* Build 19 — flagship property composition */
.property-ribbon{align-items:stretch}.property-card:nth-child(1){min-width:min(520px,88vw)}.property-card:nth-child(1) img{height:420px}.property-card:nth-child(2),.property-card:nth-child(3),.property-card:nth-child(4){min-width:min(360px,78vw)}.property-card:nth-child(n+2) img{height:310px}.property-card picture{display:block}.hero-visual>picture{display:block;height:100%}.editorial img{filter:saturate(.86) contrast(1.04)}
@media(max-width:900px){.property-card:nth-child(1),.property-card:nth-child(n+2){min-width:min(82vw,420px)}.property-card:nth-child(1) img,.property-card:nth-child(n+2) img{height:320px}}
@media(prefers-reduced-motion:reduce){.hero-visual img,.property-card img{animation:none!important;transition:none!important}}
