/* Phone layout: one column, 90% usable width, touch-size controls. */
@media (max-width: 767px) {
  .page > * { padding: 8% 5% !important; gap: 28px !important; }
  .page > header { padding-block: 20px !important; }
  [data-layer="Навигация / строка"] { gap: 16px !important; }
  [data-layer="Логотип и разделы"] { width: 100% !important; gap: 24px !important; }
  [data-layer="Логотип и разделы"] > a:first-child { margin-right: auto; }
  header [data-layer="Обращение"], header [data-layer="Обращение"] > a { width: 100% !important; }
  .columns, .project-grid { grid-template-columns: minmax(0, 1fr); gap: 24px !important; }
  .services-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .content-card { padding: 24px !important; }
  .service-card { min-height: 0; }
  .ui-button { width: 100% !important; }
  [data-layer^="Вопрос /"] { gap: 12px !important; }
  .project-grid { row-gap: 36px !important; }
  h1 { font-size: clamp(32px, 7.8vw, 44px) !important; }
  h2 { font-size: 30px !important; }
  .content-banner { padding: 24px; }
  .content-banner > a { width: 100% !important; min-width: 0; }
  #inquiry-form { padding: 20px !important; }
  [data-layer="Подвал / строка"] { flex-direction: column; align-items: flex-start !important; }
  [data-layer="Подвал / строка"] > :last-child { margin-left: 0; text-align: left !important; }
}
