@media (min-width: 768px) {
  :root { --header-height: 70px; }
  body { padding-bottom: 0; }
  .container { width: min(100% - 48px, 1180px); }
  .section { padding: 64px 0; }
  .brand, .brand img { width: 132px; }
  .hero { padding: 44px 0 48px; }
  .hero-grid { grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr); align-items: center; gap: 28px; }
  .hero-copy { align-self: center; }
  .hero-visual { display: flex; }
  h1 { font-size: 2.8rem; }
  .estate-search-section { padding: 0 0 32px; }
  .estate-search-section .search-panel { margin-top: -20px; }
  .search-controls { grid-template-columns: 1fr auto; }
  .search-controls .button { min-width: 154px; }
  .popular-searches span { width: auto; }
  .action-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .estate-scroller { grid-auto-columns: min(38vw, 300px); }
  .marketing-card { grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr); align-items: center; padding: 38px; }
  .plan-grid, .article-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .benefit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
  .steps { grid-template-columns: repeat(3, 1fr); gap: 28px; }
  .steps li { grid-template-columns: 48px 1fr; min-height: 0; }
  .steps li:not(:last-child)::after { top: 20px; right: -28px; bottom: auto; left: 40px; width: calc(100% - 12px); height: 1px; }
  .cta-panel { grid-template-columns: 1fr auto auto; align-items: center; padding: 34px; }
  .cta-status { grid-column: 2 / -1; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
  .page-hero { padding-block: 48px; }
  .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .estate-grid, .offer-grid, .route-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .use-case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compact-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
  .contact-methods { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .form-field-full { grid-column: 1 / -1; }
  .lead-form { padding: 28px; }
  .legal-layout { padding-block: 48px 72px; }
  .mobile-sticky-cta { display: none; }
  .estate-hero { padding-block: 52px; }
  .estate-title-row { grid-template-columns: minmax(0, 1fr) auto; }
  .estate-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
  .offer-list, .related-estates { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .button-row { grid-template-columns: repeat(2, max-content); }
}

@media (min-width: 1024px) {
  :root { --header-height: 76px; }
  .menu-toggle, .menu-overlay { display: none !important; }
  .primary-nav, .primary-nav[hidden] { position: static; display: block; width: auto; height: auto; padding: 0; background: transparent; box-shadow: none; }
  .primary-nav ul { display: flex; gap: 2px; }
  .primary-nav a { min-height: 44px; padding: 8px 10px; border: 0; font-size: .83rem; }
  .primary-nav a:hover { color: var(--red); }
  .primary-nav a[aria-current="page"] { box-shadow: inset 0 -3px 0 var(--red); }
  .hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); gap: 46px; }
  h1 { font-size: 3.35rem; }
  .estate-search-section .search-panel { padding: 22px; }
  .estate-scroller { grid-auto-flow: initial; grid-auto-columns: initial; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; padding: 0; margin: 0; }
  .estate-card { min-height: 220px; }
  .benefit-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .benefit-grid article { border-bottom: 0; border-right: 1px solid var(--line); padding: 20px 22px 20px 0; }
  .benefit-grid article:last-child { border-right: 0; }
  .filter-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .use-case-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .legal-layout { display: grid; grid-template-columns: 190px minmax(0, 800px); gap: 48px; align-items: start; }
  .legal-nav { position: sticky; top: calc(var(--header-height) + 24px); display: grid; overflow: visible; margin: 0; }
  .legal-todo { grid-column: 2; }
  .legal-todo + .legal-content { grid-column: 2; }
  .offer-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .related-estates { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1280px) {
  .container { width: min(100% - 64px, 1180px); }
  .section { padding: 76px 0; }
  .primary-nav a { padding-inline: 13px; font-size: .88rem; }
  .hero { padding: 56px 0; }
  .hero-grid { gap: 64px; }
  .hero-visual { aspect-ratio: 16 / 10; }
  .marketing-card { padding: 46px; }
}
