@media (max-width: 767px) {
  .property-gallery { display:flex; grid-template:none; gap:10px; overflow-x:auto; overflow-y:hidden; margin-inline:-12px; padding:0 12px 8px; border-radius:0; scroll-snap-type:x mandatory; scroll-padding-inline:12px; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .property-gallery::-webkit-scrollbar { display:none; }
  .property-gallery .gallery-item,
  .property-gallery .gallery-item:nth-child(n) { display:block; flex:0 0 min(88vw,520px); width:min(88vw,520px); height:auto; aspect-ratio:4/3; border-radius:14px; scroll-snap-align:center; }
  .property-gallery .gallery-main { grid-column:auto; grid-row:auto; }
  .property-gallery .gallery-item img { display:block; width:100%; height:100%; object-fit:cover; }
  .property-gallery .photo-count-mobile { display:none; }
  .mobile-photo-position { position:absolute; right:12px; bottom:12px; z-index:3; display:flex; align-items:center; gap:5px; padding:7px 10px; border:1px solid rgba(255,255,255,.24); border-radius:999px; background:rgba(10,17,29,.78); color:#fff; box-shadow:0 5px 18px rgba(0,0,0,.24); backdrop-filter:blur(8px); font-size:.76rem; line-height:1; pointer-events:none; }
  .mobile-photo-position i { font-size:.9rem; }
  .media-viewer[open] { width:100%; height:100dvh; grid-template-rows:auto minmax(0,1fr) auto; }
  .media-toolbar { min-width:0; flex-wrap:nowrap; padding:max(8px,env(safe-area-inset-top)) 8px 8px; }
  .media-stage,
  .media-canvas { min-width:0; min-height:0; width:100%; height:100%; }
  .media-image { width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; }
  .media-thumbs { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
}
@media (min-width:768px) { .mobile-photo-position { display:none; } }
