/* ── EUROPEAN CRIBS — MOBILE.CSS ── */

/* Properties page */
@media(max-width: 960px) {
  .page-header { grid-template-columns: 1fr; padding: 100px 24px 28px; gap: 8px; }
  .filter-bar { position: sticky; top: 68px; z-index: 200; display: grid !important; grid-template-columns: 1fr 1fr; overflow: visible !important; padding: 0 !important; height: auto; }
  .filter-group { min-width: 0 !important; padding: 0; border-right: none !important; border-bottom: 1px solid #e8edf2; position: relative; overflow: visible; }
  .filter-group:nth-child(odd) { border-right: 1px solid #e8edf2 !important; }
  .filter-summary { padding: 14px 16px !important; flex-direction: column; }
  .filter-clear { grid-column: 1/-1; padding: 13px 16px; justify-content: center; border-top: 1px solid #e8edf2; font-size: 11px; }
  .filter-dropdown { position: fixed !important; left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important; width: 100vw !important; max-height: 60vh; overflow-y: auto; border: none !important; border-top: 2px solid #5595b6 !important; border-radius: 16px 16px 0 0; box-shadow: 0 -8px 40px rgba(15,23,42,0.12); z-index: 9999 !important; }
  .dropdown-opt { padding: 18px 20px; font-size: 15px; min-height: 56px; }
  .listings-layout { padding: 24px 16px 64px; }
  .listing-row { grid-template-columns: 1fr; }
  .listing-card { border-right: none; }
  .load-more { padding: 40px 0 64px; }
}
@media(max-width: 480px) {
  .page-header { padding-top: 88px; }
}

/* Legal pages */
@media(max-width: 768px) {
  .legal-page { padding: 100px 20px 48px; }
}

/* Global */
@media(max-width: 960px) {
  body { overflow-x: hidden; }
}
@media(max-width: 480px) {
  html { -webkit-text-size-adjust: 100%; }
  * { max-width: 100%; box-sizing: border-box; }
  img { max-width: 100%; height: auto; }
}
