/* Mobile type: keep copy unchanged, reduce oversized headings and orphan lines. */
.home-hero-grounded__headline-line { display: block; }

@media (max-width: 640px) {
  body.site-grounded {
    --type-section-title: clamp(1.375rem, 6.25vw, 1.625rem);
  }

  body.site-grounded main :is(h1, h2, h3) {
    text-wrap: balance;
    line-break: strict;
  }

  body.site-grounded main h1,
  body.site-grounded :is(.home-hero-grounded, .page-hero, .theme-detail-hero, .solutions-hero, .contact-page__intro, .mvv-showcase__mission, .diagnosis-hero) h1,
  body.site-grounded .page-hero .hero__copy h1,
  body.site-grounded .solution-guide-detail .theme-detail-hero h1 {
    font-size: clamp(1.75rem, 8.2vw, 2.125rem);
    line-height: 1.4;
    letter-spacing: -.015em;
  }

  body.site-grounded .home-hero-grounded__headline-line {
    word-break: keep-all;
    overflow-wrap: anywhere;
  }

  body.site-grounded .heading-phrase { display: inline-block; }
  body.site-grounded .home-scope__list dd { text-wrap: balance; }
  body.site-grounded .mvv-showcase__mission h1 {
    font-size: clamp(1.625rem, 7.5vw, 2rem);
  }
  body.site-grounded .mvv-principle .mvv-break-mobile { display: none; }

  body.site-grounded .section-heading h2,
  body.site-grounded .home-assessment h2,
  body.site-grounded .home-trust h2,
  body.site-grounded .home-hero-grounded__scope h2,
  body.site-grounded .mvv-principle h2 {
    font-size: var(--type-section-title);
    line-height: 1.5;
  }

  body.site-grounded .service-panel h3,
  body.site-grounded .solution-lane h2,
  body.site-grounded .cta-box h2 {
    font-size: clamp(1.25rem, 5.7vw, 1.5rem);
    line-height: 1.55;
  }

  /* Existing desktop line wrappers remain, but mobile may balance within them. */
  body.site-grounded .solution-lane__title-part {
    white-space: normal;
  }

  /* Compact mobile rhythm; retain the outer gutter and comfortable controls. */
  body.site-grounded .home-hero-grounded__intro { padding: 36px 0 36px; }
  body.site-grounded .page-hero .hero__copy,
  body.site-grounded .hero--copy-expanded .hero__copy,
  body.site-grounded .solutions-hero__inner,
  body.site-grounded .theme-detail-hero__inner { padding-block: 36px 40px; }

  body.site-grounded .section { padding-block: 48px; }
  body.site-grounded .section-heading {
    padding-top: 16px;
    gap: 16px;
    margin-bottom: 24px;
  }

  body.site-grounded .home-hero-grounded__scope {
    --scope-pad: 18px;
    margin-bottom: 24px;
  }
  body.site-grounded .home-hero-grounded__scope h2 { margin-bottom: 20px; }

  body.site-grounded .strength-item,
  body.site-grounded.home-grounded .strength-item--art {
    min-height: 0;
    padding: 24px 18px;
  }
  body.site-grounded .strength-item h3 { margin: 24px 0 12px; }

  body.site-grounded .service-panel,
  body.site-grounded .service-panel--dark {
    min-height: 0;
    gap: 24px;
    padding: 24px 18px;
  }
  body.site-grounded .service-panel h3 { margin: 18px 0 14px; }
  body.site-grounded .theme-group,
  body.site-grounded .theme-group--dark,
  body.site-grounded .solution-lane,
  body.site-grounded .solution-lane--dark { padding: 24px 18px; }

  body.site-grounded .mvv-section { padding-top: 36px; }
  body.site-grounded .mvv-showcase__mission-copy,
  body.site-grounded .mvv-principle { padding: 30px 18px; }

  body.site-grounded .contact-page { padding-block: 40px; }
  body.site-grounded .contact-page__intro { margin-bottom: 32px; }
  body.site-grounded .cta { padding-block: 40px; }
  body.site-grounded .cta-box { padding: 28px 18px; }
  body.site-grounded .site-footer { padding-top: 40px; }
}
