/* A shorter website rhythm. App dimensions and measured tab panels stay intact. */
body:not(.app-mode) main > .section-pad:not(.screens-static) {
  padding-top: 48px;
  padding-bottom: 48px;
}

/* Full-width section headings, without a second column of introductory copy. */
body:not(.app-mode) main :is(.split-heading, .tdv-heading, .section-kicker-row, .pilot-top) {
  display: block;
}
body:not(.app-mode) main > section .section-title {
  width: auto;
  max-width: none;
  min-width: 0;
  font-size: clamp(28px, 3.4vw, 48px);
  line-height: 1.14;
  text-wrap: wrap;
  overflow-wrap: break-word;
}
body:not(.app-mode) :is(#demo, #journey, #screens, #proof, #how, #employers, #talent, #people, #mentoreconomy, #belong, #pilot, #evidence, #regional, #partner) .section-title {
  max-width: none;
  font-size: clamp(28px, 3.4vw, 48px);
  line-height: 1.14;
}
body:not(.app-mode) #screens .section-title em { margin-left: 0; }
body:not(.app-mode) .section-heading-wide { grid-column: 1 / -1; min-width: 0; }
body:not(.app-mode) .section-heading-wide .section-title { margin: 12px 0 0; }
body:not(.app-mode) #employers,
body:not(.app-mode) #evidence.coaching-photo-section { row-gap: 24px; }
body:not(.app-mode) #employers .employer-points { margin-top: 0; }
body:not(.app-mode) #evidence .section-heading-wide .section-title { margin-bottom: 0; }
body:not(.app-mode) #mentoreconomy .mentorband-copy { max-width: none; }
body.lang-bn:not(.app-mode) :is(#demo, #journey, #screens, #proof, #how, #employers, #talent, #people, #mentoreconomy, #belong, #pilot, #evidence, #regional, #partner) .section-title {
  font-size: clamp(26px, 3vw, 44px);
  line-height: 1.3;
}
body:not(.app-mode) #top.hero {
  min-height: 0;
  padding-top: 28px;
  padding-bottom: 28px;
  row-gap: 22px;
}
body:not(.app-mode) #employers {
  padding-top: 44px;
  padding-bottom: 44px;
}
body:not(.app-mode) #people {
  padding-top: 36px;
  padding-bottom: 36px;
}
body:not(.app-mode) #partner {
  padding-top: 40px;
  padding-bottom: 40px;
}
body:not(.app-mode) main .split-heading {
  margin-top: 12px;
  gap: 24px;
}
body:not(.app-mode) #demo .demo-wrap { margin-top: 20px; }
body:not(.app-mode) #demo .game-entry-grid { gap: 14px; }
body:not(.app-mode) #demo .game-entry-grid > a {
  padding: 20px;
  gap: 8px;
}
body:not(.app-mode) #journey .journey-stops { margin-top: 20px; }
body:not(.app-mode) #journey .pj-panel { margin-top: 12px; }
body:not(.app-mode) #proof .practice-heading { margin-bottom: 20px; }
body:not(.app-mode) #proof .practice-agent { min-height: 0; }
body:not(.app-mode) #proof .practice-tile { min-height: 164px; }
body:not(.app-mode) #how .sequence-switch { margin-top: 22px; margin-bottom: 18px; }
body:not(.app-mode) #how .sequence-cards article { min-height: 0; }
body:not(.app-mode) #talent .tdv-heading { margin-bottom: 22px; }
body:not(.app-mode) #people .section-kicker-row { margin-bottom: 18px; }
body:not(.app-mode) #belong .economy-shell { margin-top: 20px; }
body:not(.app-mode) #pilot .pilot-grid { margin-top: 28px; }
body:not(.app-mode) #pilot .flow-strip { margin-top: 26px; }
body:not(.app-mode) #evidence.coaching-photo-section { gap: clamp(24px, 3.8vw, 52px); }
body:not(.app-mode) #evidence .coaching-photo-copy h2 { margin-bottom: 16px; }
body:not(.app-mode) #evidence .coaching-photo-copy > p { margin-bottom: 18px; }
body:not(.app-mode) #regional .ix { margin-top: 24px; }
body:not(.app-mode) #partner .asks { margin-top: 20px; }
body:not(.app-mode) #partner .closing { margin-top: 28px; padding-top: 22px; }

/* Let the mentor banner follow its text, rather than an oversized image ratio. */
body:not(.app-mode) #mentoreconomy {
  display: grid;
  min-height: clamp(310px, 27vw, 380px);
}
body:not(.app-mode) #mentoreconomy > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}
body:not(.app-mode) #mentoreconomy .mentorband-copy {
  position: relative;
  inset: auto;
  align-self: center;
  width: 100%;
  padding: 36px 7vw;
  gap: 12px;
}

@media (max-width: 980px) {
  body:not(.app-mode) main > .section-pad:not(.screens-static) {
    padding-top: 36px;
    padding-bottom: 36px;
  }
  body:not(.app-mode) main .split-heading { gap: 14px; }
  body:not(.app-mode) #employers { padding-top: 36px; padding-bottom: 36px; }
  body:not(.app-mode) #people { padding-top: 32px; padding-bottom: 32px; }
  body:not(.app-mode) #partner { padding-top: 34px; padding-bottom: 34px; }
  body:not(.app-mode) #mentoreconomy .mentorband-copy { padding: 32px 6vw; }
}

@media (max-width: 760px) {
  body:not(.app-mode) #evidence.coaching-photo-section { gap: 22px; }
}

@media (max-width: 720px) {
  body:not(.app-mode) main > .section-pad:not(.screens-static) {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  body:not(.app-mode) #top.hero { padding-top: 22px; padding-bottom: 24px; row-gap: 20px; }
  body:not(.app-mode) #employers { padding-top: 30px; padding-bottom: 30px; gap: 20px; }
  body:not(.app-mode) #people { padding-top: 28px; padding-bottom: 28px; }
  body:not(.app-mode) #partner { padding-top: 30px; padding-bottom: 30px; }
  body:not(.app-mode) main .split-heading { gap: 12px; margin-top: 10px; }
  body:not(.app-mode) #demo .game-entry-grid > a { padding: 18px; }
  body:not(.app-mode) #journey .journey-stops { margin-top: 18px; }
  body:not(.app-mode) #proof .practice-heading { margin-bottom: 18px; }
  body:not(.app-mode) #proof .practice-tile { min-height: 160px; }
  body:not(.app-mode) #talent .tdv-heading { gap: 14px; margin-bottom: 20px; }
  body:not(.app-mode) #people .section-kicker-row { margin-bottom: 16px; }
  body:not(.app-mode) #pilot .pilot-grid { margin-top: 22px; }
  body:not(.app-mode) #pilot .flow-strip { margin-top: 20px; }
  body:not(.app-mode) #regional .ix { margin-top: 20px; }
  body:not(.app-mode) #partner .asks { margin-top: 18px; }
  body:not(.app-mode) #mentoreconomy { min-height: 350px; }
  body:not(.app-mode) #mentoreconomy > img { object-position: 65% 45%; }
  body:not(.app-mode) #mentoreconomy .mentorband-copy {
    align-self: end;
    padding: 30px 6vw;
    gap: 10px;
  }
}
