/* Property media: one shared collection, two responsive presentations. */
.TdczKmub[data-agent-listing-detail="inmueble"] { width: min(1184px, 100%); }
.ic-property-gallery { margin: 0 20px 28px; position: relative; border-radius: 16px; overflow: hidden; background: #edf2f4; color: #173b4b; }
.ic-property-gallery button, .ic-gallery-viewer button { font: inherit; cursor: pointer; }
.ic-property-gallery__grid { display: flex; height: clamp(240px, 66vw, 480px); }
.ic-property-gallery__cell { position: relative; flex: 0 0 100%; width: 100%; height: 100%; padding: 0; border: 0; background: #e3eaee; overflow: hidden; }
.ic-property-gallery__cell img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s; }
.ic-property-gallery__cell:focus-visible, .ic-property-gallery__all:focus-visible, .ic-gallery-viewer button:focus-visible { outline: 3px solid #008bc4; outline-offset: -4px; }
.ic-property-gallery__play { position: absolute; inset: 0; display: grid; place-content: center; color: white; background: #0005; font-weight: bold; font-size: 20px; }
.ic-property-gallery__grid.flickity-enabled { display: block; }
.ic-property-gallery__grid .flickity-viewport { height: 100% !important; }
.ic-property-gallery__tools { position: absolute; inset: auto 16px 16px; display: flex; justify-content: space-between; align-items: center; gap: 12px; pointer-events: none; }
.ic-property-gallery__tools > * { pointer-events: auto; }
.ic-property-gallery__counter { padding: 7px 12px; color: #fff; background: #162c38cc; border-radius: 20px; font-size: 13px; font-weight: bold; }
.ic-property-gallery__all { border: 1px solid #ffffffb3; border-radius: 9px; padding: 11px 15px; background: white; color: #173b4b; font-weight: bold !important; box-shadow: 0 2px 12px #0002; }
.ic-property-gallery__empty { min-height: 260px; padding: 30px 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; }
.ic-property-gallery__empty img { object-fit: contain; opacity: .65; }
.ic-property-gallery__empty p { margin: 0; color: #526b76; }
.ic-gallery-viewer { position: fixed; inset: 0; width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; padding: 0; border: 0; background: #fff; color: #173b4b; }
.ic-gallery-viewer::backdrop { background: #0b182bcc; }
.ic-gallery-viewer[open] { display: flex; flex-direction: column; }
.ic-gallery-viewer__header { min-height: 68px; padding: 12px 24px; border-bottom: 1px solid #e4eaed; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.ic-gallery-viewer__title { margin: 0; font-size: 17px; font-weight: bold; flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ic-gallery-viewer__close { flex-shrink: 0; white-space: nowrap; }
.ic-gallery-viewer__close, .ic-gallery-viewer__zoom { border: 1px solid #d9e3e8; border-radius: 10px; background: #fff; color: #173b4b; padding: 10px 14px; min-height: 44px; }
.ic-gallery-viewer__layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; flex: 1; min-height: 0; }
.ic-gallery-viewer__media { display: flex; flex-direction: column; min-width: 0; min-height: 0; background: #101b24; }
.ic-gallery-viewer__canvas { position: relative; flex: 1; min-height: 0; overflow: hidden; }
.ic-gallery-viewer__stage { position: absolute; inset: 0; overflow: auto; display: flex; align-items: center; justify-content: center; touch-action: pan-y pinch-zoom; }
.ic-gallery-viewer__stage img, .ic-gallery-viewer__stage video, .ic-gallery-viewer__stage iframe { display: block; width: 100%; height: 100%; object-fit: contain; border: 0; }
.ic-gallery-viewer__stage.is-zoomed { display: block; touch-action: pan-x pan-y pinch-zoom; }
.ic-gallery-viewer__stage.is-zoomed img { width: 200%; height: 200%; max-width: none; max-height: none; object-fit: contain; }
.ic-gallery-viewer__nav { position: absolute; top: calc(50% - 24px); width: 48px; height: 48px; border-radius: 50%; border: 1px solid #ffffff5c; background: #11232be6; color: white; font-size: 28px !important; }
.ic-gallery-viewer__prev { left: 16px; }
.ic-gallery-viewer__next { right: 16px; }
.ic-gallery-viewer__nav:disabled { opacity: .3; cursor: default; }
.ic-gallery-viewer__controls { display: flex; justify-content: space-between; align-items: center; padding: 10px 16px; color: #fff; gap: 12px; }
.ic-gallery-viewer__thumbs { display: flex; gap: 8px; padding: 0 16px 14px; overflow-x: auto; flex-shrink: 0; }
.ic-gallery-viewer__thumb { flex: 0 0 76px; width: 76px; height: 56px; border: 2px solid transparent; border-radius: 6px; padding: 0; overflow: hidden; background: #53626d; }
.ic-gallery-viewer__thumb[aria-current="true"] { border-color: #fff; }
.ic-gallery-viewer__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ic-gallery-viewer__aside { padding: 30px 24px; display: flex; flex-direction: column; align-items: start; gap: 18px; border-left: 1px solid #e4eaed; }
.ic-gallery-viewer__aside p { margin: 0; line-height: 1.5; }
.ic-gallery-viewer__price { font-size: 24px; font-weight: bold; }
.ic-gallery-viewer__contact { width: 100%; min-height: 48px; border: 0; border-radius: 10px; padding: 12px 20px; background: #007bb6; color: #fff; font-weight: bold !important; }
.ic-gallery-viewer__error { color: #fff; padding: 32px; text-align: center; }
@media (min-width: 1024px) {
    .ic-property-gallery__grid { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; height: clamp(340px, 36vw, 480px); gap: 6px; }
    .ic-property-gallery__cell:first-child { grid-row: span 2; }
    .ic-property-gallery__cell:nth-child(n+6) { display: none; }
    .ic-property-gallery__grid[data-count="1"] { grid-template-columns: 1fr; }
    .ic-property-gallery__grid[data-count="1"] .ic-property-gallery__cell img { object-fit: contain; }
    .ic-property-gallery__grid[data-count="2"], .ic-property-gallery__grid[data-count="3"] { grid-template-columns: 1fr 1fr; }
    .ic-property-gallery__grid[data-count="2"] .ic-property-gallery__cell { grid-row: span 2; }
    .ic-property-gallery__grid[data-count="4"] .ic-property-gallery__cell:nth-child(2) { grid-column: span 2; }
    .ic-property-gallery__cell:hover img { transform: scale(1.025); }
}
@media (max-width: 1023px) {
    .ic-property-gallery__cell img { object-fit: contain; }
    .ic-gallery-viewer__layout { grid-template-columns: 1fr; grid-template-rows: minmax(0,1fr) auto; }
    .ic-gallery-viewer__aside { padding: 12px 16px max(12px, env(safe-area-inset-bottom)); border: 0; }
    .ic-gallery-viewer__aside p { display: none; }
    .ic-gallery-viewer__header { min-height: 60px; padding: max(12px, env(safe-area-inset-top)) 16px 12px; }
}
@media (max-width: 767px) {
    .ic-property-gallery { margin: 0 0 20px; border-radius: 0; }
    .ic-property-gallery__tools { inset: auto 12px 12px; }
    .ic-gallery-viewer__nav { width: 44px; height: 44px; }
    .ic-gallery-viewer__prev { left: 8px; }
    .ic-gallery-viewer__next { right: 8px; }
    .ic-gallery-viewer__thumbs { padding: 0 12px 10px; }
}
@media (prefers-reduced-motion: reduce) { .ic-property-gallery__cell img { transition: none; } }
