.vre-room-grid,.vre-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.vre-room-card,.vre-property-card,.vre-room-details,.vre-contact{border:1px solid rgba(11,63,102,.14);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(11,63,102,.1)}.vre-room-card,.vre-property-card{overflow:hidden;display:flex;flex-direction:column}.vre-room-card__image,.vre-property-card__image{display:block;aspect-ratio:4/3;overflow:hidden;background:#eaf1f4}.vre-room-card__image img,.vre-property-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.vre-room-card:hover .vre-room-card__image img,.vre-property-card:hover .vre-property-card__image img{transform:scale(1.03)}.vre-room-card__placeholder{display:grid;width:100%;height:100%;place-items:center;padding:1.2rem;background:linear-gradient(145deg,#dceaf0,#f5f8fa 48%,#c5e3e8);color:#0b3f66;font-weight:700}.vre-room-card__body,.vre-property-card__body{display:flex;flex:1;flex-direction:column;padding:1.35rem}.vre-room-card__top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.vre-room-card__title{margin:.55rem 0 .4rem;font-size:1.55rem}.vre-room-card__title a,.vre-property-card h3 a{text-decoration:none;color:inherit}.vre-room-card__price{font-size:1.12rem;font-weight:800;white-space:nowrap;color:#0b3f66}.vre-room-card__price small,.vre-room-details__price small{font-size:.72rem;font-weight:600;color:#68747c}.vre-room-card__meta,.vre-room-card__excerpt,.vre-room-card__property,.vre-property-card__address{color:#5f6e76;font-size:.92rem}.vre-room-card__property{margin:.75rem 0 0;font-weight:700}.vre-room-card__status{display:inline-flex;border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:750;background:#e3f3f6;color:#08758a}.vre-room-card__status--proximamente{background:#fff3d5;color:#805a00}.vre-room-card__status--reservada,.vre-room-card__status--ocupada{background:#f4e6e2;color:#82483e}.vre-room-card__link{display:inline-flex;margin-top:auto;padding-top:1rem;font-weight:750;text-decoration:none}.vre-property-card h3{margin:.45rem 0}.vre-room-details{padding:clamp(1.25rem,4vw,2.5rem)}.vre-room-details__price{margin-bottom:1.5rem;color:#0b3f66;font-size:2rem;font-weight:850}.vre-room-details__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem}.vre-room-details__item{border-bottom:1px solid rgba(11,63,102,.12);padding-bottom:.8rem}.vre-room-details__label{display:block;color:#68747c;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.vre-room-details__value{display:block;margin-top:.2rem;font-weight:700}.vre-room-features{margin-top:1.75rem}.vre-room-features h3{margin-bottom:.75rem}.vre-room-features ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;padding:0;list-style:none}.vre-room-features li:before{content:'✓';margin-right:.55rem;color:#119db5;font-weight:900}.vre-room-details__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.vre-button{display:inline-flex;align-items:center;justify-content:center;padding:.82rem 1.25rem;border:0;border-radius:999px;background:#0b3f66;color:#fff!important;font:inherit;font-weight:750;text-decoration:none;cursor:pointer}.vre-button:hover{background:#119db5}.vre-button--secondary{background:transparent;border:1px solid #0b3f66;color:#0b3f66!important}.vre-button--secondary:hover{background:#eef4f6}.vre-empty{padding:1.25rem;border:1px dashed rgba(11,63,102,.25);border-radius:16px;background:#fff}.vre-room-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto auto;gap:1rem;align-items:end;margin-bottom:2rem;padding:1.25rem;border:1px solid rgba(11,63,102,.14);border-radius:20px;background:#fff}.vre-room-filters label{display:grid;gap:.35rem;font-size:.85rem;font-weight:700}.vre-room-filters select,.vre-room-filters input{width:100%;border:1px solid rgba(11,63,102,.2);border-radius:10px;background:#fff;padding:.72rem .8rem;font:inherit}.vre-filter-clear{padding:.75rem 0;text-align:center}.vre-map{overflow:hidden;border:1px solid rgba(11,63,102,.14);border-radius:28px;background:#fff;box-shadow:0 12px 35px rgba(11,63,102,.08)}.vre-map__frame{height:var(--vre-map-height,460px);background:#ddd}.vre-map__frame iframe{width:100%;height:100%;border:0}.vre-map__caption{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.4rem 1.6rem}.vre-map__caption strong{display:block;font-size:1.18rem}.vre-map__caption p{margin:.25rem 0 0;color:#68747c}.vre-kicker{display:block;margin-bottom:.35rem;color:#119db5;font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.vre-contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);overflow:hidden}.vre-contact__intro{padding:clamp(1.6rem,5vw,3.5rem);background:#102a3c;color:#fff}.vre-contact__intro h2{color:#fff}.vre-contact__details{margin-top:2rem}.vre-contact__details a{color:#fff}.vre-contact__form-wrap{padding:clamp(1.6rem,5vw,3.5rem)}.vre-contact-form{display:grid;gap:1rem}.vre-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.vre-contact-form label{display:grid;gap:.35rem;font-size:.9rem;font-weight:700}.vre-contact-form input:not([type=checkbox]),.vre-contact-form textarea{width:100%;border:1px solid rgba(11,63,102,.22);border-radius:12px;background:#fff;padding:.8rem .9rem;font:inherit}.vre-contact-form input:focus,.vre-contact-form textarea:focus{outline:2px solid #119db5;outline-offset:2px}.vre-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;font-size:.82rem!important;font-weight:400!important}.vre-consent input{margin-top:.25rem}.vre-honeypot{position:absolute!important;left:-10000px!important}.vre-form-message{margin-bottom:1rem;padding:1rem;border-radius:12px}.vre-form-message--success{background:#e3f3f6;color:#08758a}.vre-form-message--error{background:#f4e6e2;color:#82483e}.vre-media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.vre-media-gallery__item{display:block;overflow:hidden;border-radius:20px;aspect-ratio:4/3;background:#eef4f6}.vre-media-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.vre-media-gallery__item:hover img{transform:scale(1.03)}@media(max-width:1000px){.vre-room-grid,.vre-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vre-room-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.vre-contact{grid-template-columns:1fr}.vre-media-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.vre-room-grid,.vre-property-grid,.vre-room-details__grid,.vre-room-features ul,.vre-form-row,.vre-room-filters,.vre-media-gallery{grid-template-columns:1fr}.vre-map__caption{align-items:flex-start;flex-direction:column}.vre-map__frame{height:min(var(--vre-map-height,460px),360px)}}
