/* ============================================================
   REGOLE RESPONSIVE - mobile first override
   ============================================================ */

@media (max-width: 1024px) {
  .archive-layout { grid-template-columns: 1fr; }
  .filters-panel { position: static; display: none; }
  .filters-panel.open { display: block; }
  .filters-toggle-btn { display: inline-flex; margin-bottom: 20px; }

  .property-detail-grid { grid-template-columns: 1fr; }
  .about-flex { grid-template-columns: 1fr; }
  .cta-split { grid-template-columns: 1fr; padding: 34px; }
}

@media (max-width: 880px) {
  .main-nav {
    position: fixed; top: var(--header-height); left: 0; right: 0; bottom: 0;
    background: var(--surface-color); transform: translateX(100%); transition: transform .25s ease;
    overflow-y: auto; padding: 20px; z-index: 850;
  }
  .main-nav.open { transform: translateX(0); }
  .main-nav ul { flex-direction: column; align-items: flex-start; gap: 4px; }
  .main-nav ul li { width: 100%; }
  .main-nav ul li a { display: block; padding: 14px 6px; border-bottom: 1px solid var(--border-color); width: 100%; }

  .hamburger { display: block; flex-shrink: 0; }
  .header-phone, .header-whatsapp { display: none; }
  .header-eval-btn { padding: 8px 12px; font-size: .78rem; }
  .header-actions { gap: 8px; }

  .search-form { margin-top: 24px; padding: 16px; }
  .search-form-row { flex-direction: column; align-items: stretch; }
  .search-field, .search-field-grow { flex: 1 1 auto; }

  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .hero { padding: 60px 0 100px; }
  .section { padding: 46px 0; }
  .footer-grid { grid-template-columns: 1fr; }
  .property-header { flex-direction: column; }
  .property-header .price-block { text-align: left; }
  .form-row { grid-template-columns: 1fr; }

  .mobile-action-bar {
    display: flex; position: fixed; bottom: 0; left: 0; right: 0; background: #fff;
    box-shadow: 0 -4px 14px rgba(0,0,0,.08); z-index: 700; padding: 10px 14px; gap: 10px;
  }
  .mobile-action-bar a { flex: 1; text-align: center; padding: 12px 6px; border-radius: var(--border-radius-sm); font-size: .82rem; font-weight: 700; }
  .mobile-action-bar .call { background: var(--primary-color); color: #fff; }
  .mobile-action-bar .whatsapp { background: #25D366; color: #fff; }
  .mobile-action-bar .info { background: var(--cta-color); color: #fff; }
  .property-detail-page main { padding-bottom: 70px; }
  .whatsapp-float { bottom: 84px; }
}
