.property-media{margin-bottom:26px;min-width:0}.media-tabs{display:flex;gap:24px;overflow-x:auto;border-bottom:1px solid #e2e5eb;margin-bottom:18px;padding:0 2px}.media-tabs button{flex-shrink:0;border:0;border-bottom:3px solid transparent;background:transparent;color:#687487;padding:13px 1px;font-weight:600;white-space:nowrap}.media-tabs button[aria-selected="true"]{color:#353c75;border-bottom-color:#353c75}.property-media [hidden],.photo-dialog [hidden]{display:none!important}.property-media .large-photo{height:clamp(250px,40vw,490px);background:#f2f1ed;cursor:zoom-in;overflow:hidden;border-radius:3px}.large-photo>img{display:block;width:100%;height:100%;object-fit:contain}.photo-tools{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:12px 0;font-size:12px;color:#687487}.photo-tools .btn{font-size:12px;padding:8px 12px}.property-media .gallery{overflow-x:auto;padding:2px 0 8px;gap:8px}.property-media .gallery button{padding:0;flex:0 0 88px;height:64px;overflow:hidden;border-radius:2px;background:#f2f1ed}.gallery button img{width:100%;height:100%;object-fit:cover;display:block}.property-media button:focus-visible,.large-photo:focus-visible{outline:2px solid #4c91c8;outline-offset:3px}.property-media h2{font-size:28px}.property-media select{padding:9px;max-width:100%;margin:0 8px 8px 0}.property-media #propertyVideo iframe{max-width:100%}[data-property-ref]{cursor:pointer}
.photo-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:64px 70px 56px;margin:0;border:0;background:rgba(19,20,23,.94);color:#fff;overflow:hidden}.photo-dialog::backdrop{background:rgba(0,0,0,.78)}.photo-dialog[open]{display:grid;place-items:center}.photo-dialog-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;touch-action:pan-y}.photo-dialog-title{position:absolute;top:18px;left:70px;right:80px;margin:0;font:14px/1.5 Arial,sans-serif;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#efefef}.photo-dialog-close,.photo-dialog-arrow{position:absolute;border:0;background:rgba(0,0,0,.4);color:white;cursor:pointer;display:grid;place-items:center;border-radius:3px;min-width:44px;min-height:44px}.photo-dialog-close{right:16px;top:12px;font-size:34px;font-weight:300}.photo-dialog-arrow{top:calc(50% - 27px);font:44px/1 Arial,sans-serif;width:46px;height:54px}.photo-dialog-arrow.previous{left:12px}.photo-dialog-arrow.next{right:12px}.photo-dialog button:hover{background:rgba(255,255,255,.16)}.photo-dialog button:focus-visible{outline:2px solid white;outline-offset:3px}.photo-dialog-count{position:absolute;bottom:16px;left:0;right:0;text-align:center;margin:0;font:600 14px/1.5 Arial,sans-serif}
@media(max-width:580px){.media-tabs{gap:20px}.media-tabs button{font-size:13px}.photo-dialog{padding:62px 8px 58px}.photo-dialog-title{left:16px;right:65px;font-size:12px}.photo-dialog-arrow{width:44px;height:48px;min-width:44px;background:rgba(0,0,0,.6)}.photo-dialog-arrow.previous{left:6px}.photo-dialog-arrow.next{right:6px}.property-media .gallery button{flex-basis:76px;height:56px}}

/* La galería larga no debe ensanchar las columnas de la ficha. */
.detail-top>div{min-width:0;flex:1}.detail-top #title{font-size:clamp(26px,2.6vw,38px);line-height:1.15;font-weight:600;color:#252c49;letter-spacing:-.015em;margin:10px 0 12px;overflow-wrap:anywhere}
.detail-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}.detail-layout>*,.detail-top>*,#propertyPhotos{min-width:0;max-width:100%}
.property-media{width:100%;max-width:100%}.property-media .large-photo{display:grid;place-items:center;width:100%;max-width:100%;height:clamp(300px,36vw,500px);background:#f3f2ef}
.property-media .large-photo>img{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:50% 50%}
.property-media .gallery{width:100%;max-width:100%;min-width:0;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain}.photo-tools{flex-wrap:wrap}
@media(max-width:880px){.detail-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:580px){.detail-top #title{font-size:28px;line-height:1.15}.property-media .large-photo{height:clamp(300px,110vw,460px)}}
