/* Mobile editorial layout: reference viewport 390 × 844 CSS pixels. */
@media (max-width: 640px) {
  html { scrollbar-width: none; -webkit-text-size-adjust: 100%; }
  html::-webkit-scrollbar { display: none; }
  .header { min-height: 80px; padding: 18px 20px; gap: 12px; }
  .header .brand { min-height: 44px; gap: 10px; font-size: 15px; }
  .motion-toggle { min-width: 98px; min-height: 44px; padding: 10px 0 10px 10px; font-size: 12px; }
  .intro { padding-top: 20px; }
  .intro h1 { font-size: clamp(37px, 11.8cqw, 64px); line-height: .9; }
  .intro h1 span { white-space: nowrap; }
  .intro-deck { font-size: 18px; line-height: 1.15; margin-top: 26px; }
  .intro-note { font-size: 19px; line-height: 1; margin-top: 30px; }
  .intro-arrow { top: auto; bottom: calc(60cqw - 50px); width: 36cqw; }
  .intro-arrow.left { left: 17%; }
  .intro-arrow.right { right: 12%; }
  .hero-picture { margin-top: 38px; }
  .characters { padding-top: 48px; }
  .section-heading { margin-inline: 20px; }
  .section-heading h2 { font-size: clamp(46px, 14.36cqw, 76px); line-height: .9; }
  .section-heading > p { max-width: 330px; font-size: 20px; line-height: 1.25; margin-top: 24px; }
  .section-heading > p br { display: none; }
  .person-copy { font-size: 20px; line-height: 1.3; }
  .person-copy .hand { font-size: 25px; line-height: 1; }
  .irina { margin-top: 40px; }
  .irina .person-copy { margin-inline: 20px; max-width: 310px; }
  .irina .person-copy .hand { margin-bottom: 24px; }
  .person .portrait { width: 66.67cqw; max-width: 320px; }
  .irina .portrait { margin-top: 24px; }
  .person-arrow { top: auto; bottom: 34cqw; left: 9%; width: 28cqw; }
  .kostya .person-copy { margin: 40px 20px 0 52px; }
  .kostya .person-copy .hand { margin-bottom: 24px; }
  .kostya .portrait { width: 64cqw; margin-top: 24px; }
  .kostya .person-arrow { top: auto; bottom: 36cqw; left: 62%; }
  .statement { font-size: clamp(28px, 8.2cqw, 44px); line-height: 1.05; margin: 48px 20px 20px; }
  .burnout { padding-inline: 20px; }
  .burnout h2 { font-size: clamp(44px, 13.85cqw, 72px); line-height: .9; }
  .burnout-lead { font-size: clamp(28px, 8.2cqw, 42px); line-height: 1.05; margin-top: 32px; }
  .stages { gap: 72px; padding-top: 48px; padding-bottom: 24px; }
  .stage { width: 80%; font-size: 20px; line-height: 1.3; }
  .stage h3 { font-size: 26px; line-height: 1; margin-bottom: 16px; }
  .stage:not(:last-child)::after { content: ''; position: absolute; width: 100px; height: 68px; bottom: -66px; background: url('assets/curve.png') -50px -95px / 240px 240px no-repeat; opacity: .9; }
  .stage.one::after { left: -32px; transform: rotate(-28deg); }
  .stage.two::after { right: -32px; transform: scaleX(-1) rotate(-28deg); }
  .stage.three::after { left: 28px; transform: rotate(-65deg); }
  .boom-label { margin-top: 28px; font-size: 30px; }
  .explosion { width: calc(100% + 40px); margin-left: -20px; }
  .hope { padding-top: 40px; padding-bottom: 40px; }
  .hope h2 { font-size: clamp(36px, 11.6cqw, 62px); line-height: .93; }
  .hope h2 span { white-space: nowrap; }
  .hope-copy { margin-top: 36px; margin-left: 28px; font-size: 20px; line-height: 1.3; }
  .hope-copy p + p { margin-top: 24px; }
  .hope .statement { margin-top: 36px; font-size: clamp(27px, 7.7cqw, 40px); line-height: 1.05; }
  .conversation { padding-top: 132px; }
  .conversation h2 { font-size: clamp(41px, 12.8cqw, 66px); line-height: .93; }
  .conversation h2 span { white-space: nowrap; }
  .conversation-copy { margin-top: 32px; margin-left: 28px; font-size: 20px; line-height: 1.3; }
  .article-card { margin-top: 40px; gap: 24px; }
  .article-card h3 { font-size: 28px; line-height: 1; }
  .article-card h3 br { display: none; }
  .article-card p { font-size: 20px; line-height: 1.3; }
  .article-link { min-height: 44px; font-size: 20px; margin-top: 20px; padding-block: 8px; }
  .ending { padding-top: 72px; padding-bottom: 64px; }
  .ending p { font-size: clamp(35px, 10.5cqw, 56px); line-height: 1; }
  .ending span { white-space: nowrap; }
  .footer-inner { padding-bottom: max(24px, env(safe-area-inset-bottom)); gap: 14px 10px; }
  .footer-inner a { min-height: 44px; display: flex; align-items: center; }
  .back-top { width: 44px; height: 44px; right: 16px; bottom: max(16px, env(safe-area-inset-bottom)); }
}
