/* TP Context — HOME04B: three ORIGINAL process cards, all visible above hero artwork.
   Mobile-only. No market changes or desktop visual changes. */
@media (max-width: 720px) {
  body.tpx-home-active .tpx-home-shell .tpx-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  /* The HOME04 region is moved from below the kicker to the top of the hero.
     Both text and original artwork remain below it. */
  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps.tpx-home04b-compact {
    display: block !important;
    order: -1 !important;
    position: relative !important;
    align-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 2px 0 10px !important;
    padding: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-home04-steps-track.tpx-process {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 1fr !important;
    flex-direction: row !important;
    align-items: stretch !important;
    column-gap: 7px !important;
    row-gap: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
    scrollbar-width: none !important;
    overscroll-behavior-x: auto !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    position: relative !important;
    flex: 0 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 116px !important;
    min-height: 116px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 9px 5px 8px !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
    border: 1px solid rgba(93, 166, 212, .32) !important;
    background: linear-gradient(170deg, rgba(17, 43, 63, .97), rgba(8, 24, 40, .97)) !important;
    box-shadow: inset 0 1px 0 rgba(146, 209, 245, .05) !important;
    scroll-snap-align: none !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-number {
    display: grid !important;
    place-items: center !important;
    position: absolute !important;
    top: 6px !important;
    right: 6px !important;
    left: auto !important;
    width: 19px !important;
    height: 19px !important;
    min-width: 19px !important;
    border-radius: 50% !important;
    font-size: 10px !important;
    line-height: 1 !important;
    background: #0d3048 !important;
    border: 1px solid rgba(85, 197, 255, .35) !important;
    color: #7ddaff !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-icon {
    display: grid !important;
    place-items: center !important;
    position: relative !important;
    inset: auto !important;
    flex: 0 0 29px !important;
    width: 29px !important;
    height: 29px !important;
    min-width: 29px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border-radius: 10px !important;
    background: rgba(29, 99, 139, .21) !important;
    color: #61cfff !important;
    font-size: 19px !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-card > div {
    display: flex !important;
    flex: 0 1 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-card h3 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(10px, 2.9vw, 12px) !important;
    font-weight: 690 !important;
    line-height: 1.17 !important;
    letter-spacing: -.02em !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: auto !important;
    color: #f0f6fb !important;
  }

  /* The three full explanations remain in their original source cards;
     the compact mobile header shows just the icon, number and title. */
  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-card p,
  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-process-arrow,
  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-home04-steps .tpx-home04-steps-hint {
    display: none !important;
  }

  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-hero-visual {
    order: 0 !important;
    margin-top: 0 !important;
  }
  body.tpx-home-active .tpx-home-shell .tpx-hero > .tpx-hero-copy {
    order: 1 !important;
  }
}
