/* OCCHIUZZI V25.4 · FIX SEGURO DE GALERÍA DE PROPIEDADES */
/* Restaura el comportamiento visual de V25.2 y corrige SOLO el espacio vertical sobrante
   en las galerías principales de las fichas, sin tocar el scroll horizontal del sitio. */

:root{--oc25-prop-main-max-h:78vh;--oc25-prop-thumb-h:110px;}

/* Alcance: solo fichas de propiedades */
[data-oc25-gallery],
.property-gallery,
.property-media,
.property-detail__gallery,
.property-detail__media,
.property-images,
.property-photos,
.single-gallery,
.single-property-gallery,
.detail-gallery,
.ficha-gallery,
.ficha-media,
.gallery-main,
.gallery-stage,
.gallery-wrapper,
.property-content__gallery,
.property-gallery-stage{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:start !important;
}

[data-oc25-gallery] > *,
.property-gallery > *,
.property-media > *,
.property-detail__gallery > *,
.property-detail__media > *,
.property-images > *,
.property-photos > *,
.single-gallery > *,
.single-property-gallery > *,
.detail-gallery > *,
.ficha-gallery > *,
.ficha-media > *,
.gallery-main > *,
.gallery-stage > *,
.gallery-wrapper > *,
.property-content__gallery > *,
.property-gallery-stage > *{
  flex:0 0 auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
}

/* Imagen principal */
[data-oc25-gallery] img,
.property-gallery img,
.property-media img,
.property-detail__gallery img,
.property-detail__media img,
.property-images img,
.property-photos img,
.single-gallery img,
.single-property-gallery img,
.detail-gallery img,
.ficha-gallery img,
.ficha-media img,
.gallery-main img,
.gallery-stage img,
.gallery-wrapper img,
.property-content__gallery img,
.property-gallery-stage img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  max-height:var(--oc25-prop-main-max-h) !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 auto !important;
}

/* Figura / stage principal */
[data-oc25-gallery] figure,
.property-gallery figure,
.property-media figure,
.property-detail__gallery figure,
.property-detail__media figure,
.property-images figure,
.property-photos figure,
.single-gallery figure,
.single-property-gallery figure,
.detail-gallery figure,
.ficha-gallery figure,
.ficha-media figure,
.gallery-main figure,
.gallery-stage figure,
.gallery-wrapper figure,
.property-content__gallery figure,
.property-gallery-stage figure{
  margin:0 !important;
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:hidden !important;
}

/* Tira de miniaturas */
[class*="thumb"],
[class*="thumbnail"],
.gallery-thumbs,
.property-thumbs,
.ficha-thumbs{
  position:relative !important;
  inset:auto !important;
  bottom:auto !important;
  top:auto !important;
  margin-top:16px !important;
  align-self:stretch !important;
}

[class*="thumb"] img,
[class*="thumbnail"] img,
.gallery-thumbs img,
.property-thumbs img,
.ficha-thumbs img{
  height:var(--oc25-prop-thumb-h) !important;
  max-height:none !important;
  object-fit:cover !important;
}

/* Si la columna de galería estaba estirándose por un flex/grid del detalle, la dejamos natural */
[class*="property-detail"],
[class*="detail-layout"],
[class*="detail-grid"],
[class*="ficha-layout"],
[class*="ficha-grid"],
[class*="single-property"],
[class*="property-content"]{
  align-items:start !important;
}

/* Solo dentro de fichas, cualquier wrapper con justify space-between se neutraliza por JS;
   CSS base para cuando ya sea columna */
[data-oc25-gallery],
.property-gallery,
.property-media,
.property-detail__gallery,
.property-detail__media,
.ficha-gallery,
.ficha-media,
.gallery-main,
.gallery-stage,
.gallery-wrapper,
.property-content__gallery,
.property-gallery-stage{
  justify-content:flex-start !important;
}

@media (max-width:900px){
  :root{--oc25-prop-main-max-h:66vh;--oc25-prop-thumb-h:84px;}
}
