.kv-mobile-app .kv-header { max-width: 540px; padding: 14px 18px; }
.kv-mobile-app .kv-nav { display: none; }
.kv-mobile-app .kv-hero { display: block; max-width: 540px; padding: 30px 18px 76px; }
.kv-mobile-app .kv-hero-copy { margin-bottom: 22px; }
.kv-mobile-app .kv-hero-copy h1 { max-width: 12ch; font-size: 40px; line-height: 1.04; }
.kv-mobile-app .kv-hero-copy > p { max-width: 34rem; }
.kv-mobile-app .kv-trust-row { display: grid; grid-template-columns: 1fr; gap: 8px; }
.kv-mobile-app .kv-workbench { width: 100%; }
.kv-mobile-app .kv-amount-row { grid-template-columns: minmax(0, 1fr) 148px; }
.kv-mobile-app .kv-how { padding: 54px 18px; }
.kv-mobile-app .kv-how-inner { max-width: 504px; }
.kv-mobile-app .kv-step-grid { grid-template-columns: 1fr; }
.kv-mobile-app .kv-footer { padding-bottom: calc(28px + env(safe-area-inset-bottom)); }
.kv-mobile-app .kv-primary { min-height: 54px; position: sticky; bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 3; }
.kv-mobile-app .kv-dialog-card { width: min(100%, 520px); max-height: 92dvh; border-radius: 8px 8px 0 0; margin: auto 0 0; }
.kv-mobile-app dialog { align-items: flex-end; padding: 0; }
@media (min-width: 768px) {
  .kv-mobile-app .kv-hero { max-width: 720px; padding-top: 52px; }
  .kv-mobile-app .kv-step-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
