/* Focused discovery refinements: grouped filters and quiet photo controls. */
#priceSuggestionHint { margin:2px 0 0; color:#56657a; font-size:12px; line-height:1.5; }
.price-suggestion-tiles button { align-content:center; min-height:54px; }
.price-suggestion-tiles strong { font-size:13px; line-height:1.4; font-weight:600; overflow-wrap:anywhere; }
.price-suggestion-tiles small { font-weight:450; line-height:1.4; color:#56657a; }
@media (max-width:420px) {
  .price-popover .price-suggestion-tiles { grid-template-columns:1fr; }
  .price-popover .price-suggestion-tiles button { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:10px 12px; }
  .price-popover .price-suggestion-tiles strong { overflow-wrap:normal; }
  .price-popover .price-input-field input[type="number"] { padding-inline:10px; -moz-appearance:textfield; }
  .price-popover input[type="number"]::-webkit-inner-spin-button,
  .price-popover input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
}
.detail-room-layout { margin:4px 0 14px; max-width:70ch; color:#56657a; font-size:14px; line-height:1.6; }
.search-form .compact-advanced-grid { display:block; }
.search-form .advanced-field-group { margin:0; padding:18px 0; border:0; border-bottom:1px solid #e8edf3; }
.search-form .advanced-field-group:first-child { padding-top:8px; }
.search-form .advanced-field-group:last-child { border-bottom:0; }
.search-form .advanced-group-title { margin:0 0 16px; font-size:16px; line-height:1.4; font-weight:650; color:#182638; }
.search-form .advanced-group-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 16px; align-items:start; }
.search-form .advanced-group-fields > * { min-width:0; }
.search-form .advanced-group-fields .check-row { display:flex; align-items:center; gap:8px; min-height:44px; padding:8px 0; }
.search-form .advanced-group-fields .check-row input { flex:0 0 auto; }
.search-form .advanced-group-fields .check-row span { white-space:normal; }
.search-form [data-filter-scope][hidden],.search-form [data-filter-group][hidden] { display:none !important; }
.detail-verification { display:grid; gap:6px; }
.detail-verification small { font-size:12px; line-height:1.5; color:#56657a; }
body .gallery-preview-image,body .gallery-outgoing-image {
  position:absolute !important; inset:0 !important; width:100% !important; height:100% !important;
  max-width:none !important; max-height:none !important; min-height:0 !important;
  border-radius:0 !important; margin:0 !important; opacity:1 !important;
  pointer-events:none; z-index:1; transition:none !important;
}
.gallery-swiping > img,.gallery-outgoing-image,.gallery-preview-image { will-change:transform; }
.card-gallery .card-photo-count,.detail-gallery-frame .detail-gallery-count { z-index:4; }
.gallery-image-loading::after {
  content:""; position:absolute; top:14px; left:14px; width:20px; height:20px;
  border:2px solid #ffffff80; border-top-color:#fff; border-radius:50%;
  z-index:5; animation:detail-image-spin 700ms linear infinite; pointer-events:none;
}
body #results .estate-card .gallery-step,
body .detail-gallery-frame .detail-gallery-nav,
body .detail-image-stage .detail-image-modal-nav {
  opacity:.16 !important;
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  text-shadow:0 1px 4px #000a;
  transition:opacity 160ms ease,background-color 160ms ease;
}
body #results .estate-card .gallery-step:focus-visible,
body .detail-gallery-frame .detail-gallery-nav:focus-visible,
body .detail-image-stage .detail-image-modal-nav:focus-visible {
  opacity:1 !important; background:#18263888 !important; outline:2px solid #fff; outline-offset:2px;
}
@media(hover:hover) {
  body #results .estate-card .gallery-step:hover,
  body .detail-gallery-frame .detail-gallery-nav:hover,
  body .detail-image-stage .detail-image-modal-nav:hover { opacity:.85 !important; background:#18263855 !important; }
}
@media(max-width:760px) {
  .search-form .advanced-group-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 12px; }
}
@media(max-width:360px) {
  .search-form .advanced-group-fields { grid-template-columns:minmax(0,1fr); }
}
@media(prefers-reduced-motion:reduce) {
  .gallery-step,.detail-gallery-nav,.detail-image-modal-nav { transition:none !important; }
}
