/*
 * v1.5 Mobile M1 — Homepage core experience.
 *
 * Phone-only recomposition for Nav, Hero, Leadership Thesis, Featured Case,
 * and Selected Leadership Work. Desktop and the future 621–900 tablet band
 * remain locked; later Homepage and Case Detail surfaces are intentionally
 * outside this stylesheet.
 */

@media (max-width: 620px) {
  /* Nav: two compact 44px rows keep every direct destination available. */
  .masthead-inner {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding-block: 0;
  }

  .wordmark {
    min-height: 2.75rem;
  }

  .masthead nav,
  .masthead nav ul {
    width: 100%;
  }

  .masthead nav ul {
    gap: 0;
  }

  .masthead nav a {
    min-height: 2.75rem;
    padding-inline: 0;
    font-size: clamp(.7rem, 3.05vw, .75rem);
  }

  /* Hero: one semantic sequence, recomposed into a concise identity field. */
  .hero-copy {
    padding-block: 1.5rem 1rem;
  }

  .hero .section-marker,
  #thesis .section-marker,
  #cases .section-marker {
    font-size: .7rem;
  }

  .hero h1 {
    margin: .875rem 0 1rem;
    font-size: clamp(3rem, 14vw, 3.625rem);
    line-height: .88;
  }

  .hero-kicker {
    max-width: 15ch;
    font-size: clamp(2rem, 9.2vw, 2.5rem);
    line-height: .96;
  }

  .territory {
    margin-top: .875rem;
    font-size: .9375rem;
    line-height: 1.4;
  }

  .hero-explanation {
    max-width: 36rem;
    margin-top: .875rem;
    padding-top: .75rem;
    font-size: .9375rem;
    line-height: 1.45;
  }

  .hero-grid .portrait-wrap {
    width: calc(100% + 20px);
    height: clamp(20rem, 100vw, 26rem);
    min-height: 0;
  }

  .hero-grid .portrait-wrap img {
    object-position: 50% 50%;
    transform: scale(1.02);
  }

  /* Thesis: an editorial bridge, with Judgment carrying equal visual weight. */
  #thesis {
    padding-block: 6.25rem;
  }

  #thesis h2 {
    max-width: 10.5ch;
    margin: 1.75rem 0 0;
    font-size: clamp(2.75rem, 13vw, 3.25rem);
    line-height: .9;
  }

  #thesis h2 span {
    color: var(--ink);
  }

  /* Featured Case: preserve the complete proof while reducing traversal cost. */
  #featured-case {
    padding-block: 3.5rem;
  }

  #featured-case .preview-featured-header {
    gap: 1.25rem;
  }

  #featured-case .preview-featured-header h2 {
    max-width: 100%;
    margin-top: .9rem;
    font-size: clamp(2.25rem, 10vw, 2.65rem);
    line-height: .96;
  }

  #featured-case .goal24-featured-meta {
    gap: .35rem;
  }

  #featured-case .preview-marker,
  #featured-case .preview-meta,
  #featured-case .goal24-kicker,
  #featured-case .goal24-zone-label,
  #featured-case .goal24-question span,
  #featured-case .goal25-guardrails {
    font-size: .7rem;
  }

  #featured-case .goal24-confidentiality {
    font-size: .76rem;
  }

  #featured-case .goal24-featured-lead {
    gap: 1.5rem;
  }

  #featured-case .goal24-tension-text {
    margin-top: .75rem;
    font-size: clamp(1.65rem, 8vw, 1.95rem);
    line-height: 1.03;
  }

  #featured-case .goal24-context {
    margin-top: .85rem;
    font-size: .9375rem;
    line-height: 1.48;
  }

  #featured-case .goal24-question {
    grid-template-columns: minmax(5.5rem, .35fr) minmax(0, 1fr);
    gap: .75rem;
    align-items: start;
    padding-block: .75rem;
  }

  #featured-case .goal24-question-old {
    margin-top: .6rem;
  }

  #featured-case .goal24-question-old strong {
    color: var(--growth-stone);
  }

  #featured-case .goal24-question-new {
    border-bottom-color: var(--growth-rule);
  }

  #featured-case .goal24-question strong {
    font-size: 1.02rem;
    line-height: 1.24;
  }

  #featured-case .goal24-routing-artifact {
    margin-top: 2rem;
    padding-top: 1rem;
  }

  #featured-case .goal24-routing-grid {
    gap: 0;
  }

  #featured-case .goal24-routing-grid > section {
    padding-block: 1.15rem;
  }

  #featured-case .goal24-zone-title {
    margin-top: .85rem;
  }

  #featured-case .goal24-route-line {
    margin-top: 1.25rem;
    font-size: 1rem;
  }

  #featured-case .goal24-route-line span {
    display: inline;
    margin-inline: .35rem;
  }

  #featured-case .goal24-zone-note,
  #featured-case .goal24-evidence-note {
    margin-top: 1rem;
    font-size: .76rem;
    line-height: 1.42;
  }

  #featured-case .goal24-routing-evidence ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem 1rem;
    margin-top: 1rem;
  }

  #featured-case .goal24-routing-after ul {
    gap: .45rem;
    margin-top: 1rem;
  }

  #featured-case .goal24-routing-evidence li,
  #featured-case .goal24-routing-after li {
    padding-top: .55rem;
    font-size: .9375rem;
    line-height: 1.24;
  }

  #featured-case .goal25-lighter-route small {
    margin-top: .35rem;
    font-size: .75rem;
    line-height: 1.38;
  }

  #featured-case .goal25-lighter-route .goal25-guardrails {
    margin-top: .65rem;
    letter-spacing: .08em;
    line-height: 1.4;
  }

  #featured-case .goal24-validation-strip {
    margin-top: 1.15rem;
    padding-top: 1rem;
  }

  #featured-case .goal24-validation-chain {
    display: grid;
    grid-template-columns: max-content .5rem minmax(0, 1fr) .5rem minmax(0, 1fr);
    gap: .35rem;
    font-size: .7rem;
    letter-spacing: .08em;
    text-align: center;
  }

  #featured-case .goal24-validation-strip > p {
    margin-top: .7rem;
    font-size: .9375rem;
    line-height: 1.42;
  }

  #featured-case .goal24-validation-strip .goal24-boundary {
    font-size: .76rem;
  }

  #featured-case .goal24-featured-footer {
    margin-top: 1.5rem;
    padding-top: .75rem;
  }

  #featured-case .preview-cta {
    margin-top: 0;
  }

  /* Selected Work: three editorial rows, with proof reserved for Case 01 above. */
  #cases {
    padding-block: 3.5rem;
  }

  #cases .section-heading {
    gap: .85rem;
    margin-bottom: 2rem;
  }

  #cases .section-heading h2 {
    max-width: 13ch;
    font-size: clamp(2.5rem, 11vw, 3rem);
    line-height: .96;
  }

  #cases .case-item {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    gap: .75rem 1rem;
    padding-block: 1.5rem;
  }

  #cases .case-number {
    font-size: 2.4rem;
  }

  #cases .case-item h3 {
    font-size: clamp(1.4rem, 6.4vw, 1.65rem);
    line-height: 1.08;
  }

  #cases .case-category {
    margin-bottom: .55rem;
    font-size: .7rem;
  }

  #cases .case-item p {
    grid-column: 2;
    font-size: .9375rem;
    line-height: 1.5;
  }

  #cases .case-action {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
  }
}
