/* Laptop */
@media (max-width: 1280px) {
  .pillars-grid { grid-template-columns: repeat(4, 1fr); }
}

/* Tablet landscape */
@media (max-width: 1024px) {
  .pillars-layout { grid-template-columns: 1fr; }
  .pillars-intro__text { max-width: none; }
  .contact-layout { grid-template-columns: 1fr; }
  .pillar-body__grid-4 { grid-template-columns: repeat(2, 1fr); }
  .pillar-body__grid-3 { grid-template-columns: repeat(3, 1fr); }
}

/* Tablet portrait */
@media (max-width: 860px) {
  .site-nav { display: none; }
  .nav-toggle { display: block; }
  .hero__heading { font-size: var(--step-4); }
  .pillars-grid { grid-template-columns: repeat(2, 1fr); }
  .pillar-body__grid-3 { grid-template-columns: repeat(2, 1fr); }
  .pillar-hero__inner { max-width: 100%; }
}

/* Mobile */
@media (max-width: 600px) {
  :root { --header-h: 68px; }
  .hero { align-items: flex-end; }
  .hero__ctas { flex-direction: column; align-items: stretch; }
  .hero__ctas .btn { justify-content: center; }
  .pillars-grid { grid-template-columns: repeat(2, 1fr); }
  .pillar-body__grid-4 { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .pillar-body__grid-3 { grid-template-columns: 1fr; }
  .site-footer__top { flex-direction: column; }
  .tabs { gap: 1.25rem; }
}

@media (max-width: 400px) {
  .pillars-grid { grid-template-columns: 1fr 1fr; }
  .btn { width: 100%; justify-content: center; }
}

/* ---------- Listing pages (Realty / Art) ---------- */
@media (max-width: 1024px) {
  .artwork-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 860px) {
  .project-card { grid-template-columns: 1fr; }
  .project-card__body { padding: 0 1.25rem 1.5rem; }
  .project-card__facts { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .artwork-grid { grid-template-columns: 1fr; }
  .filter-bar__inner { justify-content: space-between; }
  .filter-bar__count { margin-left: 0; width: 100%; }
}

/* ---------- Homepage redesign ---------- */
@media (max-width: 1024px) {
  .featured-strip__layout { grid-template-columns: 1fr; }
  .featured-strip--reverse .featured-strip__layout { grid-template-columns: 1fr; }
  .featured-strip--reverse .featured-strip__text { order: 0; }
}
@media (max-width: 860px) {
  .world-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 220px; }
  .world-tile--wide { grid-column: span 2; }
}
@media (max-width: 600px) {
  .world-grid { grid-template-columns: 1fr; grid-auto-rows: 220px; }
  .world-tile--wide { grid-column: span 1; }
  .featured-strip__cards { grid-template-columns: repeat(2, 1fr); }
}
