.lightbox{position:fixed;inset:0;z-index:2000;background:#061229f5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .22s var(--ease)}body.lightbox-open{overflow:hidden}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox__stage{flex:1;width:100%;display:flex;align-items:center;justify-content:center;position:relative;padding:4rem 6rem}.lightbox__stage img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm)}.lightbox__counter{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);font-size:.82rem;font-weight:600;letter-spacing:.15em;color:#ffffffb3;background:#ffffff14;padding:.4rem .85rem;border-radius:999px;backdrop-filter:blur(8px)}.lightbox__close,.lightbox__nav{position:absolute;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background var(--dur-base) var(--ease),transform var(--dur-base) var(--ease);z-index:2}.lightbox__close{top:1.5rem;right:1.5rem}.lightbox__nav--prev{left:1.5rem;top:50%;transform:translateY(-50%)}.lightbox__nav--next{right:1.5rem;top:50%;transform:translateY(-50%)}.lightbox__close:hover,.lightbox__nav:hover{background:#ffffff2e}.lightbox__nav--prev:hover{transform:translateY(-50%) translate(-2px)}.lightbox__nav--next:hover{transform:translateY(-50%) translate(2px)}.lightbox__thumbs{width:100%;padding:1.5rem;display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;max-width:100%}.lightbox__thumb{width:64px;height:48px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;opacity:.5;border:2px solid transparent;transition:opacity var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease);background:#ffffff0d}.lightbox__thumb.is-active{opacity:1;border-color:var(--color-gold)}.lightbox__thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}@media (max-width: 640px){.lightbox__stage{padding:3rem 1.5rem}.lightbox__nav{width:40px;height:40px}.lightbox__nav--prev{left:.5rem}.lightbox__nav--next{right:.5rem}}.prop-gallery-wrap{padding-top:calc(var(--header-height) + clamp(2rem,4vw,3.75rem));padding-bottom:1.5rem}.prop-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text-secondary);margin-bottom:1.5rem}.prop-breadcrumb a{color:var(--text-secondary);transition:color var(--dur-base) var(--ease)}.prop-breadcrumb a:hover{color:var(--color-gold)}.prop-breadcrumb [aria-current=page]{color:var(--color-navy);font-weight:600}.prop-breadcrumb span[aria-hidden]{color:var(--color-gray-cool);opacity:.6}.prop-gallery{display:grid;grid-template-columns:2fr 1fr;gap:.5rem;height:clamp(360px,50vh,560px);border-radius:var(--radius-lg);overflow:hidden}.prop-gallery__main{position:relative;overflow:hidden}.prop-gallery__main img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 50%;object-position:50% 50%}.prop-gallery__badge{position:absolute;top:1.25rem;left:1.25rem;padding:.5rem 1rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.prop-gallery__badge--rent{background:#0a1d3feb;color:var(--color-gold-soft)}.prop-gallery__badge--sale{background:var(--color-gold);color:var(--color-navy)}.prop-gallery__main,.prop-gallery__thumb{cursor:zoom-in;transition:opacity var(--dur-base) var(--ease)}.prop-gallery__main:hover,.prop-gallery__thumb:hover{opacity:.92}.prop-gallery__main:focus-visible,.prop-gallery__thumb:focus-visible{outline:3px solid var(--color-gold);outline-offset:2px}.prop-gallery__zoom{position:absolute;bottom:1.25rem;right:1.25rem;width:40px;height:40px;border-radius:50%;background:#fffffff2;color:var(--color-navy);display:flex;align-items:center;justify-content:center;transition:transform var(--dur-base) var(--ease)}.prop-gallery__main:hover .prop-gallery__zoom{transform:scale(1.08)}.prop-gallery__thumbs{display:grid;grid-template-rows:repeat(3,1fr);gap:.5rem}.prop-gallery__thumb{position:relative;overflow:hidden;background:var(--color-light)}.prop-gallery__thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out)}.prop-gallery__thumb:hover img{transform:scale(1.05)}.prop-gallery__thumb--placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-gray-cool);opacity:.4}.prop-title-block{margin-bottom:2rem}.prop-title-block__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;color:var(--text-secondary);letter-spacing:.04em;margin-bottom:1rem}.prop-title-block__type{color:var(--color-gold);text-transform:uppercase;letter-spacing:.12em;font-weight:600}.prop-title-block__dot{opacity:.5}.prop-title-block__city{color:var(--color-navy);text-decoration:underline;text-decoration-color:var(--color-gold);text-underline-offset:3px}.prop-title-block__title{font-family:var(--font-sans);font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.06;font-weight:700;color:var(--color-navy);letter-spacing:-.025em;margin-bottom:.75rem}.prop-title-block__tagline{font-size:1.15rem;color:var(--text-secondary);line-height:1.5;margin:0}.prop-quick-specs{display:flex;flex-wrap:wrap;gap:.5rem;padding:1.25rem 1.5rem;background:var(--color-light);border-radius:var(--radius-md);margin-bottom:3rem}.prop-quick-spec{display:flex;align-items:center;gap:.65rem;padding:.5rem .85rem;background:var(--color-white);border-radius:var(--radius-sm);font-size:.92rem;color:var(--text-primary)}.prop-quick-spec svg{color:var(--color-gold)}.prop-quick-spec strong{font-weight:700;color:var(--color-navy);margin-right:2px}.prop-section{margin-bottom:3.5rem;padding-top:2.5rem;border-top:1px solid rgba(10,29,63,.08)}.prop-section__title{margin-bottom:1.25rem;color:var(--color-navy)}.prop-section__header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.prop-section__header h2{margin:0;color:var(--color-navy)}.prop-section__header--center{justify-content:center;text-align:center;flex-direction:column;align-items:center}.prop-section__count{font-size:.78rem;color:var(--color-gold);text-transform:uppercase;letter-spacing:.16em;font-weight:600}.prop-description{line-height:1.75;color:var(--text-primary)}.prop-description__text,.prop-description__extra{font-size:1.0625rem;margin-bottom:1rem}.prop-description__toggle{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--color-navy);font-weight:600;font-size:.92rem;text-transform:uppercase;letter-spacing:.08em;padding:.5rem 0;border-bottom:2px solid var(--color-gold);cursor:pointer}.prop-description__toggle:hover{color:var(--color-gold-hover, #B89554)}.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.amenity-item{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;background:var(--color-light);border-radius:var(--radius-sm);font-size:.92rem;color:var(--text-primary);transition:background var(--dur-base) var(--ease)}.amenity-item:hover{background:#e8ebf0}.amenity-item svg{width:22px;height:22px;color:var(--color-navy);flex-shrink:0}.rules-list{display:flex;flex-direction:column;gap:.65rem;background:var(--color-light);padding:1.5rem 2rem;border-radius:var(--radius-md);border-left:3px solid var(--color-gold)}.rules-list li{padding-left:1.5rem;position:relative;color:var(--text-primary);line-height:1.55}.rules-list li:before{content:"—";position:absolute;left:0;color:var(--color-gold);font-weight:600}.prop-map{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16 / 9;box-shadow:var(--shadow-sm)}.prop-map iframe{width:100%;height:100%;border:0;display:block}.prop-map__radius{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.prop-map__radius span{width:min(38%,220px);aspect-ratio:1;border:2px solid rgba(24,91,117,.72);border-radius:50%;background:#2f97b72e;box-shadow:0 0 0 8px #ffffff47,0 8px 30px #0a1d3f29}.prop-map__overlay{position:absolute;bottom:1.5rem;left:1.5rem;display:flex;gap:.85rem;align-items:center;background:#fffffff7;backdrop-filter:blur(8px);padding:.85rem 1.25rem;border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-width:360px}.prop-map__overlay svg{color:var(--color-gold);flex-shrink:0}.prop-map__overlay strong{display:block;font-size:.95rem;color:var(--color-navy);margin-bottom:2px}.prop-map__overlay span{font-size:.82rem;color:var(--text-secondary);line-height:1.4}.prop-whatsapp-card{margin-top:1.5rem;padding:1.5rem;border:1px solid rgba(10,29,63,.08);border-radius:var(--radius-md);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;background:var(--color-light)}.prop-whatsapp-card__icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#1f9d62}.prop-whatsapp-card strong{display:block;color:var(--color-navy);font-size:1rem}.prop-whatsapp-card p{margin:.3rem 0 0;color:var(--text-secondary);font-size:.88rem;line-height:1.5}.prop-whatsapp-card .btn{white-space:nowrap}.prop-process{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;counter-reset:step}.prop-process__step{position:relative;padding-top:1.5rem}.prop-process__step:before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,var(--color-gold) 0%,transparent 80%)}.prop-process__num{display:block;font-family:var(--font-sans);font-size:2.25rem;color:var(--color-gold);line-height:1;font-weight:700;margin-bottom:1rem;letter-spacing:-.03em}.prop-process__step h3{font-family:var(--font-sans);font-size:1.2rem;color:var(--color-navy);margin-bottom:.6rem;font-weight:600}.prop-process__step p{font-size:.92rem;line-height:1.55;color:var(--text-secondary);margin:0}.prop-cancellation{background:var(--color-light);padding:2rem 2.5rem;border-radius:var(--radius-md);border-left:3px solid var(--color-gold)}.prop-cancellation h3{font-family:var(--font-sans);font-size:1.15rem;color:var(--color-navy);margin-bottom:.65rem;font-weight:600}.prop-cancellation__body{font-size:.95rem;line-height:1.65;color:var(--text-primary);margin:0}.inquiry-form{display:flex;flex-direction:column}.inquiry-form .field{margin-bottom:1rem}.inquiry-form .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.inquiry-form .field--checkbox{padding:.25rem 0}.inquiry-form .field label{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-navy);margin-bottom:.4rem}.checkbox-label{display:flex;align-items:center;gap:.65rem;text-transform:none!important;letter-spacing:0!important;font-size:.92rem!important;font-weight:500!important;color:var(--text-primary);cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-gold)}.inquiry-form__privacy{font-size:.8rem;color:var(--text-secondary);margin:.5rem 0 1rem}.inquiry-form__submit{width:100%}.prop-layout{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start}@media (min-width: 1024px){.prop-layout{grid-template-columns:1.65fr 1fr;gap:4rem}}.prop-sidebar{position:static}@media (min-width: 1024px){.prop-sidebar{position:sticky;top:calc(var(--header-height) + 1.5rem)}}.booking-card{background:var(--color-white);border:1px solid rgba(10,29,63,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;text-align:left}.booking-card__top{padding:1.25rem}@media (min-width: 540px){.booking-card__top{padding:1.75rem}}@media (min-width: 1024px){.booking-card__top{padding:2rem}}.booking-card__chip{display:inline-block;padding:.35rem .85rem;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:1rem}.booking-card__chip--rent{background:var(--color-navy);color:var(--color-gold-soft)}.booking-card__chip--sale{background:var(--color-gold);color:var(--color-navy)}.booking-card__price{display:flex;align-items:baseline;gap:.35rem;margin-bottom:1.5rem;flex-wrap:wrap;text-align:left;width:100%}.booking-card__from{font-size:.78rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.booking-card__amount{font-family:var(--font-sans);font-size:1.85rem;color:var(--color-gold);font-weight:700;letter-spacing:-.025em;white-space:nowrap}@media (min-width: 540px){.booking-card__amount{font-size:2rem}}@media (min-width: 1024px){.booking-card__amount{font-size:2.25rem}}.booking-card__unit{font-size:.88rem;color:var(--text-secondary)}.booking-card__cta{width:100%;margin-bottom:1rem}.booking-card__visit-cta{background:var(--color-navy);color:var(--text-on-dark);border-color:var(--color-navy);box-shadow:0 8px 20px #0a1d3f24}.booking-card__visit-cta:hover{background:var(--color-white);color:var(--color-navy);border-color:var(--color-navy);transform:translateY(-1px);box-shadow:var(--shadow-md)}.booking-card__note--trust{text-align:center;font-size:.82rem;color:var(--text-secondary);line-height:1.4;margin:.5rem 0 0}.booking-card__dates{margin-bottom:0}.booking-card__field-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.booking-card__field{margin-bottom:.65rem}.booking-card__field label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-navy);margin-bottom:.35rem}.booking-card__input{width:100%;padding:.65rem .85rem;background:var(--color-white);border:1px solid rgba(10,29,63,.15);border-radius:var(--radius-sm);font-size:.92rem;color:var(--text-primary);font-family:inherit;transition:border-color var(--dur-base) var(--ease);background-color:#fff}.booking-card__input:focus{outline:none;border-color:var(--color-gold)}.booking-card__input::-webkit-calendar-picker-indicator{filter:invert(.4);cursor:pointer}.booking-card__estimate{margin:1rem 0 1.25rem;padding:1rem 1.1rem;background:var(--color-white);border:1px dashed rgba(10,29,63,.18);border-radius:var(--radius-md);min-height:60px}.booking-card__estimate-row{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-primary);margin-bottom:.35rem}.booking-card__estimate-row:last-of-type{margin-bottom:0}.booking-card__estimate-row--total{border-top:1px solid rgba(10,29,63,.12);padding-top:.6rem;margin-top:.5rem;font-family:var(--font-sans);font-weight:700;font-size:1.05rem;color:var(--color-navy);margin-bottom:0}.booking-card__estimate-help{text-align:center;color:var(--text-secondary);font-size:.85rem;margin:0;line-height:1.4}.booking-card__trust{padding:1.5rem 2rem 2rem;background:var(--color-light);border-top:1px solid rgba(10,29,63,.08)}.booking-card__trust h4{font-family:var(--font-sans);font-size:.78rem;color:var(--color-gold);text-transform:uppercase;letter-spacing:.18em;margin-bottom:1rem;font-weight:600}.trust-list{display:flex;flex-direction:column;gap:1rem}.trust-item{display:flex;gap:.85rem;align-items:flex-start}.trust-item svg{color:var(--color-gold);flex-shrink:0;margin-top:2px}.trust-item strong{display:block;font-size:.88rem;color:var(--color-navy);font-weight:600;margin-bottom:2px}.trust-item span{display:block;font-size:.78rem;color:var(--text-secondary);line-height:1.4}.prop-reviews__score{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:var(--color-light);border-radius:var(--radius-md)}.prop-reviews__score-num{font-family:var(--font-sans);font-size:2rem;font-weight:700;color:var(--color-navy);line-height:1}.prop-reviews__score-meta{display:flex;flex-direction:column;gap:2px}.prop-reviews__stars{display:inline-flex;gap:2px;color:var(--color-gold)}.prop-reviews__score-meta span{font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.prop-reviews__score-sub{font-size:.66rem!important}.prop-section__subtitle{font-size:.95rem;color:var(--text-secondary);margin-top:.25rem}.prop-reviews__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.prop-review{background:var(--color-light);padding:1.75rem;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1rem}.prop-review__stars{display:inline-flex;gap:2px;color:var(--color-gold);width:-moz-fit-content;width:fit-content}.prop-review__text{font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--text-primary);margin:0;flex:1}.prop-review__footer{display:flex;justify-content:space-between;align-items:flex-end;padding-top:1rem;border-top:1px solid rgba(10,29,63,.08);gap:1rem}.prop-review__footer strong{display:block;font-size:.92rem;color:var(--color-navy);font-weight:600}.prop-review__footer span{display:block;font-size:.78rem;color:var(--text-secondary)}.prop-review__date{font-size:.72rem!important;white-space:nowrap;flex-shrink:0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.related-card{background:var(--color-white);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease);color:var(--text-primary)}.related-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.related-card__media{aspect-ratio:16/10;overflow:hidden;position:relative}.related-card__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 65%;object-position:center 65%;transition:transform 1s var(--ease-out)}.related-card:hover .related-card__media img{transform:scale(1.05)}.related-card__chip{position:absolute;bottom:.85rem;left:.85rem;padding:.3rem .7rem;border-radius:999px;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.related-card__chip--rent{background:#0a1d3feb;color:var(--color-gold-soft)}.related-card__chip--sale{background:var(--color-gold);color:var(--color-navy)}.related-card__body{padding:1.25rem}.related-card__meta{font-size:.7rem;color:var(--color-gold);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.related-card__title{font-family:var(--font-sans);font-size:1.15rem;color:var(--color-navy);margin:.4rem 0 .75rem;line-height:1.25;font-weight:600}.related-card__price{font-size:.9rem;color:var(--color-gold);font-weight:700}@media (max-width: 960px){.prop-gallery-wrap{padding-top:calc(var(--header-height) + 1.5rem)}.prop-gallery{grid-template-columns:1fr;height:auto}.prop-gallery__main{aspect-ratio:16/10}.prop-gallery__thumbs{display:grid;grid-template-rows:none;grid-template-columns:repeat(3,1fr);gap:.5rem}.prop-gallery__thumb{aspect-ratio:1;min-height:80px}.prop-layout{grid-template-columns:1fr;gap:2.5rem}.prop-sidebar{position:static}.amenities-grid{grid-template-columns:repeat(2,1fr)}.prop-process,.related-grid,.inquiry-form .field-row{grid-template-columns:1fr}}@media (max-width: 540px){.prop-gallery-wrap{padding-top:calc(var(--header-height) + 1rem)}.prop-breadcrumb{margin-bottom:1rem}.prop-whatsapp-card{grid-template-columns:auto minmax(0,1fr);padding:1.2rem}.prop-whatsapp-card .btn{grid-column:1/-1;width:100%}.prop-section{margin-bottom:2.5rem;padding-top:2rem}.prop-quick-specs{padding:1rem;gap:.4rem}.prop-quick-spec{padding:.45rem .7rem;font-size:.85rem}.amenities-grid{grid-template-columns:1fr}.inquiry-form{padding:1.5rem}.inquiry-form .field-row{grid-template-columns:1fr}.prop-map__overlay{bottom:1rem;left:1rem;right:1rem;max-width:none}.specs-grid{grid-template-columns:1fr}}.prop-mobile-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#0a1d3ff7;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 22px #00000040;border-top:1px solid rgba(200,167,106,.25);text-align:left}@media (max-width: 720px){.prop-mobile-cta{display:flex;flex-direction:column;gap:.65rem}body:has(.prop-mobile-cta){padding-bottom:128px}}.prop-mobile-cta__price{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;justify-content:flex-start;gap:.4rem;line-height:1.1;text-align:left;width:100%;margin-right:auto}.prop-mobile-cta__from,.prop-mobile-cta__unit{white-space:nowrap}.prop-mobile-cta__from{font-size:.65rem;color:#fff9;text-transform:uppercase;letter-spacing:.12em}.prop-mobile-cta__amount{font-family:var(--font-sans);font-size:1.35rem;font-weight:700;color:var(--color-gold);white-space:nowrap;flex-shrink:0}.prop-mobile-cta__unit{font-size:.7rem;color:#ffffffb3}.prop-mobile-cta__btn{width:100%;font-size:.8rem;padding:.95rem 1.5rem;min-height:50px;letter-spacing:.06em}.booking-card__price{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;gap:.35rem;margin-bottom:1.5rem;text-align:left;width:100%}.booking-card__from{white-space:nowrap}.booking-card__amount{font-size:1.75rem}
