@media (max-width: 980px) {
  .home-grid, .view-grid { grid-template-columns: 1fr; }
  .hero { min-height: auto; }
  .phone { position: static; max-width: 430px; }
}

@media (max-width: 640px) {
  .shell { width: min(1220px, calc(100% - 28px)); }
  .topbar { min-height: 62px; }
  .nav a { display: none; }
  h1 { font-size: clamp(2.7rem, 13.8vw, 4.65rem); line-height: 0.91; }
  .action-grid, .meta-grid, .crm-grid, .gallery { grid-template-columns: 1fr; }
  .crm-editor-grid, .source-raster, .content-block, .page-section, .builder-toolbar, .section-fields.two, .inline-add, .flow-strip, .public-stats, .public-module-grid, .public-section, .public-feature-grid, .public-story-grid { grid-template-columns: 1fr; }
  .crm-card.sticky-preview { position: static; }
  .public-profile { padding-top: 14px; }
  .public-nav { justify-content: flex-start; overflow-x: auto; }
  .profile-cover { min-height: 520px; }
  .profile-summary { grid-template-columns: 82px minmax(0, 1fr) auto; gap: 10px; padding-inline: 14px; }
  .public-avatar { width: 82px; height: 82px; margin-top: -41px; }
  .profile-bio strong { font-size: 1.05rem; }
  .primary-actions { grid-template-columns: 1fr; padding-inline: 14px; }
  .legacy-links { padding-inline: 14px; }
  .advanced-panel { margin-inline: 14px; }
  .advanced-grid { grid-template-columns: 1fr; }
  .result-preview-grid { grid-template-columns: 1fr; }
  .result-qr-grid { grid-template-columns: 1fr; }
  .source-card { grid-template-columns: 88px minmax(0, 1fr); }
  .source-card .platform-logo.large { width: 88px; height: 100%; font-size: 1.8rem; }
  .source-card .platform-logo.facebook.large { font-size: 3rem; }
  .owner-login-grid { grid-template-columns: 1fr; }
  .owner-help-box.show {
    position: fixed;
    right: 24px;
    bottom: 24px;
    left: 24px;
    z-index: 70;
    max-height: min(45dvh, 300px);
    overflow: auto;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.25);
  }
  textarea { min-height: 156px; font-size: 0.9rem; }
  .create-modal.form textarea { min-height: 116px; }
  .create-modal.form #sourceUrls { font-size: 0.82rem; line-height: 1.28; }
  .meta-item { border-right: 0; }
  .target-nav { min-height: 58px; padding-inline: 16px; }
  .target-cover { min-height: auto; grid-template-columns: 1fr; padding: 52px 18px 18px; }
  .target-cover h1 { font-size: clamp(3.4rem, 18vw, 5.5rem); }
  .target-cover-media, .target-cover-media img { min-height: 62svh; }
  .target-story, .target-claim { min-height: 100svh; grid-template-columns: 1fr; align-content: center; padding: 78px 20px; }
  .target-story h2, .target-claim h2 { font-size: clamp(3rem, 15vw, 5rem); }
  .target-claim { gap: 54px; }
  .target-identity { grid-template-columns: 1fr; }
  .template-card { min-height: 206px; grid-template-rows: 124px auto 1fr; }
  .template-preview { height: 124px; }
  .phone { min-height: 0; padding: 9px; }
  .screen { min-height: 610px; }
  .create-overlay { padding: 14px; }
  .create-modal { gap: 12px; border-radius: 14px; padding: 16px; }
  .create-modal.ready { width: min(760px, 100%); }
  .build-mark { width: 64px; height: 64px; border-radius: 18px; font-size: 1.65rem; box-shadow: inset 0 0 0 6px #fff, 0 14px 28px rgba(0, 0, 0, 0.16); }
  .build-copy h2 { font-size: 1.85rem; }
  .build-copy p { font-size: 0.95rem; }
  .build-pills { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .build-pill { min-height: 36px; font-size: 0.72rem; }
  .create-modal .progress-card { padding: 12px; }
  .create-modal .progress-steps { font-size: 0.84rem; }
  #crmLoginForm h1 { font-size: clamp(2.35rem, 11vw, 3.3rem); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}
