:root{--ink:#102f36;--ink-soft:#31535a;--green:#087b6d;--cream:#f5f1e9;--paper:#fffdfa;--line:#d8d6ce;--gold:#d99943;--muted:#657379}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}.shell{width:min(1180px,calc(100% - 42px));margin:auto}.top{background:var(--ink);color:#fff}.top .shell{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.04em;font-weight:700;color:#fff;text-decoration:none}.brand small{font-family:Arial,sans-serif;display:block;font-size:.56rem;letter-spacing:.22em;font-weight:700;color:#ebd196;margin-top:3px}nav{display:flex;align-items:center;gap:22px;font-size:.9rem}nav a{color:#fff;text-decoration:none;opacity:.9}nav a:hover,nav a.active{color:#ebd196;opacity:1}.admin-link{padding:10px 14px;border:1px solid rgba(255,255,255,.7);border-radius:999px}.mobile-menu{display:none}.mobile-menu summary{list-style:none;cursor:pointer;padding:9px 13px;border:1px solid rgba(255,255,255,.65);border-radius:999px;font-size:.84rem;font-weight:800}.mobile-menu summary::-webkit-details-marker{display:none}.intro{padding:88px 0 66px;background:var(--cream)}.eyebrow{margin:0 0 16px;text-transform:uppercase;letter-spacing:.17em;color:var(--green);font-weight:800;font-size:.72rem}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:end}.intro h1{margin:0;font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.4rem);line-height:.96;font-weight:500;letter-spacing:-.045em}.intro p{font-size:1.08rem;line-height:1.65;color:var(--ink-soft);margin:0}.section{padding:76px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-heading h2{margin:0;font-family:Georgia,serif;font-size:clamp(2.25rem,4vw,3.7rem);font-weight:500;letter-spacing:-.04em}.section-heading p{max-width:460px;margin:0;color:var(--ink-soft);line-height:1.6}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.filter{appearance:none;border:1px solid var(--line);background:white;border-radius:999px;padding:10px 14px;color:var(--ink);font-weight:700;cursor:pointer}.filter.active,.filter:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.property{background:#fff;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}.property-image{aspect-ratio:1.38;background:linear-gradient(145deg,#31535a,#102f36);background-size:cover;background-position:center;position:relative}.property-image span{position:absolute;right:12px;bottom:12px;background:rgba(16,47,54,.8);border-radius:999px;color:#fff;font-size:.7rem;padding:6px 9px}.property-body{padding:21px;display:flex;flex-direction:column;flex:1}.tag{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-weight:800}.property h3{font-family:Georgia,serif;font-size:1.55rem;font-weight:500;margin:10px 0 8px}.property p{color:var(--muted);line-height:1.5;margin:0}.price{font-size:1.2rem;font-weight:800;color:var(--ink);margin:18px 0}.property-action{display:inline-block;margin-top:auto;color:var(--green);font-weight:800;text-decoration:none}.empty{padding:52px 28px;border:1px dashed #b9bbb1;text-align:center;color:var(--ink-soft);background:#fff}.form-wrap{background:#fff;border:1px solid var(--line);padding:clamp(24px,4vw,52px);max-width:930px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-size:.83rem;font-weight:800}input,select,textarea{width:100%;padding:13px;border:1px solid #bfc5c0;border-radius:3px;color:var(--ink);font:inherit;background:#fff}textarea{min-height:120px;resize:vertical}.form-note{font-size:.85rem;color:var(--muted);line-height:1.55;margin:19px 0}.button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;padding:14px 20px;border-radius:999px;font-size:.95rem;font-weight:800;text-decoration:none}.button:hover{background:#065d54}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:50px}.step{background:var(--paper);padding:26px}.step b{display:block;color:var(--gold);font-size:.8rem;margin-bottom:20px}.step h3{font-family:Georgia,serif;font-size:1.45rem;font-weight:500;margin:0 0 10px}.step p{margin:0;color:var(--ink-soft);line-height:1.55}footer{background:var(--ink);color:#fff;padding:34px 0}footer .shell{display:flex;justify-content:space-between;gap:20px;align-items:center}footer p{margin:0;font-size:.83rem;color:rgba(255,255,255,.8)}.loading{padding:30px;color:var(--muted)}@media(max-width:760px){.shell{width:min(100% - 32px,1180px)}.top .shell{min-height:72px}.top .shell>.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu nav{position:absolute;z-index:10;right:0;top:calc(100% + 9px);display:grid;width:230px;gap:2px;padding:8px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:var(--ink);box-shadow:0 16px 30px rgba(0,0,0,.28)}.mobile-menu nav a{padding:11px;border-radius:7px}.mobile-menu nav a:hover{background:rgba(255,255,255,.12)}.intro{padding:62px 0 52px}.intro-grid{grid-template-columns:1fr;gap:24px}.section{padding:58px 0}.section-heading{display:block}.section-heading p{margin-top:16px}.property-grid,.steps,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}footer .shell{display:block}footer p+ p{margin-top:8px}}

.featured-badge{position:absolute;left:12px;top:12px;border-radius:999px;background:#d99943;color:#102f36;padding:6px 9px;font-size:.68rem;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:30;display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#087b6d;color:#fff;padding:13px 17px;box-shadow:0 12px 28px rgba(5,64,56,.3);font-size:.88rem;text-decoration:none}.whatsapp-float span{font-size:1.2rem;font-weight:900}.whatsapp-float:hover{background:#065d54;transform:translateY(-2px)}@media(max-width:760px){.whatsapp-float{right:16px;bottom:16px;padding:12px 15px}}
.form-actions{display:flex;flex-wrap:wrap;gap:10px}.button.secondary{background:#fff;color:#087b6d;border:1px solid #087b6d}.button.secondary:hover{background:#e9f5f2}.form-status{min-height:1.4em;margin:14px 0 0;color:#087b6d;font-size:.9rem;font-weight:700}
.view-separator{width:1px;background:#d8d6ce;margin:2px 2px}.mapa-propiedades{height:min(580px,65vh);border:1px solid var(--line);background:#edf2ec}.mapa-vacio{padding:42px;border:1px dashed #b9bbb1;background:#fff;color:var(--ink-soft);text-align:center}@media(max-width:760px){.view-separator{display:none}}
.otto-map-pin-wrap{background:transparent;border:0}.otto-map-pin{display:grid;place-items:center;width:46px;height:30px;border-radius:999px;background:#087b6d;color:#fff;font:800 10px/1 Arial,sans-serif;box-shadow:0 3px 10px rgba(0,0,0,.28)}.otto-map-pin:after{content:"";position:absolute;left:18px;top:25px;border:5px solid transparent;border-top-color:#087b6d}
.whatsapp-float{right:20px;bottom:20px;width:54px;height:54px;padding:0;display:grid;place-items:center;border:2px solid rgba(255,255,255,.92);border-radius:50%;background:#20a269;box-shadow:0 10px 24px rgba(0,0,0,.22)}.whatsapp-float svg{width:28px;height:28px;fill:#fff}.whatsapp-float b,.whatsapp-float span{display:none}.whatsapp-float:hover{background:#168c59;transform:translateY(-2px)}@media(max-width:760px){.whatsapp-float{right:14px;bottom:14px;width:50px;height:50px}}

#catalogo[hidden],#mapa-propiedades[hidden]{display:none!important}

.location-filter{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:0 12px;color:var(--ink);font-size:.78rem;font-weight:800}.location-filter select{width:auto;border:0;background:transparent;padding:10px 3px;font:inherit;color:var(--ink);outline:0}
.trust{padding:86px 0;background:#f2eee5;border-top:1px solid rgba(16,47,54,.08);border-bottom:1px solid rgba(16,47,54,.08)}.trust-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(38px,7vw,105px);align-items:start}.trust-heading h2{margin:0;max-width:570px;font-family:Georgia,serif;font-size:clamp(2.35rem,4.2vw,4.15rem);font-weight:500;line-height:1.04;letter-spacing:-.045em}.trust-copy{padding-top:34px;color:var(--ink-soft);font-size:1.07rem;line-height:1.66}.trust-copy>p{margin:0 0 28px}.trust-data{display:grid;gap:0;margin:0;border-top:1px solid rgba(16,47,54,.18)}.trust-data div{display:grid;grid-template-columns:190px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid rgba(16,47,54,.18)}.trust-data dt{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-weight:800}.trust-data dd{margin:0;color:var(--ink);font-size:.92rem;font-weight:700}@media(max-width:760px){.trust{padding:58px 0}.trust-layout{grid-template-columns:1fr;gap:22px}.trust-copy{padding-top:0}.trust-data div{grid-template-columns:1fr;gap:4px}}
.trust{order:7}.contact{order:8}
.property-search{flex:1 1 250px;max-width:360px;border:1px solid var(--line);border-radius:999px;padding:10px 15px;font:inherit;font-size:.88rem;color:var(--ink);background:#fff}.property-search:focus{outline:2px solid rgba(8,123,109,.22);border-color:var(--green)}.filter-result{min-height:1.4em;margin:-12px 0 20px;color:var(--ink-soft);font-size:.86rem;font-weight:700}@media(max-width:760px){.property-search{flex-basis:100%;max-width:none}}
