.partner-logo-card--centered {
      width: 100%;
    }

    .ecosystem-simple-band {
      background:
        radial-gradient(circle at 10% 24%, rgba(var(--cta-rgb), 0.14), transparent 16rem),
        linear-gradient(180deg, rgba(var(--secondary-rgb), 0.99), rgba(255, 255, 255, 0.96));
      box-shadow: 0 0.85rem 1.8rem rgba(var(--primary-rgb), 0.05);
    }

    .ecosystem-simple-band::before {
      display: none;
    }

    .ecosystem-simple-layout {
      display: grid;
      gap: 1.1rem;
      align-items: start;
    }

    .ecosystem-simple-head {
      min-width: 0;
      display: block;
      max-width: none;
      margin-bottom: 0;
    }

    .ecosystem-simple-head h2 {
      max-width: 16ch;
      font-size: clamp(1.95rem, 4.4vw, 2.85rem);
      line-height: 1;
      letter-spacing: -0.045em;
      text-wrap: pretty;
    }

    .ecosystem-simple-head p:last-child {
      max-width: 35rem;
      margin-top: 0.72rem;
      line-height: 1.64;
    }

    .ecosystem-simple-frame {
      min-width: 0;
      display: grid;
      gap: 0.9rem;
      padding: 1.1rem;
      border: 1px solid rgba(var(--primary-rgb), 0.09);
      border-radius: 1.35rem;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(var(--secondary-rgb), 0.92)),
        linear-gradient(135deg, rgba(var(--cta-rgb), 0.1), rgba(var(--secondary-rgb), 0));
      box-shadow: 0 0.7rem 1.6rem rgba(var(--primary-rgb), 0.04);
    }

    .ecosystem-simple-frame-top {
      display: grid;
      gap: 0.45rem;
    }

    .ecosystem-simple-frame-kicker {
      color: rgba(var(--primary-rgb), 0.6);
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .ecosystem-simple-frame-top p {
      max-width: 28rem;
      margin: 0;
      color: var(--muted);
      line-height: 1.54;
    }

    .ecosystem-simple-duo {
      display: grid;
      gap: 0.85rem;
    }

    .ecosystem-simple-card {
      position: relative;
      display: grid;
      gap: 0.38rem;
      padding: 1.05rem;
      border: 1px solid rgba(var(--primary-rgb), 0.08);
      border-radius: 1rem;
      background: rgba(255, 255, 255, 0.9);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
    }

    .ecosystem-simple-card::before {
      content: "";
      width: 2.5rem;
      height: 0.24rem;
      border-radius: 999px;
      background: var(--primary-blue);
      opacity: 0.88;
    }

    .ecosystem-simple-card-support::before {
      width: 3.1rem;
      background: rgba(var(--primary-rgb), 0.56);
    }

    .ecosystem-simple-card .pill {
      width: fit-content;
      margin-top: 0.1rem;
    }

    .ecosystem-simple-card h3 {
      max-width: 17ch;
      margin: 0;
      font-size: 1.1rem;
      line-height: 1.15;
      color: var(--text);
    }

    .ecosystem-simple-card p {
      max-width: 27rem;
      margin: 0;
      line-height: 1.58;
      color: var(--muted);
    }

    .mission-simple-band {
      background:
        radial-gradient(circle at 88% 18%, rgba(var(--cta-rgb), 0.24), transparent 15rem),
        linear-gradient(180deg, rgba(var(--secondary-rgb), 0.99), rgba(255, 255, 255, 0.95));
      box-shadow: 0 0.95rem 2rem rgba(var(--primary-rgb), 0.05);
    }

    .mission-simple-band::before {
      inset: auto 1.5rem 1.4rem auto;
      width: 8.5rem;
      height: 8.5rem;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(var(--cta-rgb), 0.16), transparent 70%);
      opacity: 0.9;
    }

    .mission-simple-layout {
      display: grid;
      gap: 1rem;
      align-items: start;
    }

    .mission-simple-head {
      min-width: 0;
      display: block;
      max-width: none;
      margin-bottom: 0;
    }

    .mission-simple-head h2 {
      max-width: 12.8ch;
      font-size: clamp(2rem, 5vw, 3.1rem);
      line-height: 0.98;
      letter-spacing: -0.045em;
    }

    .mission-simple-head p:last-child {
      max-width: 37rem;
      margin-top: 0.75rem;
    }

    .mission-simple-panel {
      min-width: 0;
      position: relative;
      display: grid;
      gap: 0.85rem;
      padding: 1rem;
      border: 1px solid rgba(var(--primary-rgb), 0.1);
      border-radius: 1.25rem;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(var(--secondary-rgb), 0.92)),
        linear-gradient(135deg, rgba(var(--cta-rgb), 0.12), rgba(var(--secondary-rgb), 0));
      box-shadow: none;
    }

    .mission-simple-panel::before {
      content: "";
      position: absolute;
      top: 1.2rem;
      bottom: 1.2rem;
      left: 1.75rem;
      width: 1px;
      background: linear-gradient(180deg, rgba(var(--primary-rgb), 0.2), rgba(var(--primary-rgb), 0.06));
    }

    .mission-simple-step {
      position: relative;
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 0.9rem;
      align-items: start;
      padding: 0.15rem 0;
    }

    .mission-simple-step-index {
      position: relative;
      z-index: 1;
      display: grid;
      place-items: center;
      width: 2rem;
      height: 2rem;
      border-radius: 50%;
      background: var(--primary-blue);
      color: #fff;
      font-size: 0.78rem;
      font-weight: 800;
      box-shadow: 0 0 0 0.25rem rgba(var(--secondary-rgb), 0.94);
    }

    .mission-simple-step-copy {
      display: grid;
      gap: 0.38rem;
      padding-top: 0.05rem;
    }

    .mission-simple-step-copy .pill {
      width: fit-content;
    }

    .mission-simple-step-copy h3 {
      max-width: 18ch;
      margin: 0;
      font-size: 1.12rem;
      line-height: 1.15;
      color: var(--text);
    }

    .mission-simple-step-copy p {
      max-width: 29rem;
      margin: 0;
      line-height: 1.58;
      color: var(--muted);
    }

    @media (min-width: 32rem) and (max-width: 63.99rem) {
      .partner-logo-card--centered {
        grid-column: 1 / -1;
        justify-self: center;
        max-width: min(100%, 24rem);
      }
    }

    @media (min-width: 60rem) {
      .ecosystem-simple-layout {
        grid-template-columns: minmax(18rem, 0.92fr) minmax(0, 1.08fr);
        gap: 1.35rem 2rem;
        align-items: center;
      }

      .ecosystem-simple-head {
        display: block;
        order: 2;
      }

      .ecosystem-simple-frame {
        order: 1;
      }

      .ecosystem-simple-head h2 {
        max-width: 15.2ch;
      }

      .ecosystem-simple-head p:last-child {
        max-width: 29rem;
      }

      .mission-simple-layout {
        grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.92fr);
        gap: 1.2rem 1.6rem;
      }

      .mission-simple-head {
        display: block;
      }

      .mission-simple-head h2 {
        max-width: 11ch;
      }

      .mission-simple-head p:last-child {
        max-width: 26rem;
      }
    }

    @media (min-width: 48rem) {
      .ecosystem-simple-duo {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (min-width: 64rem) {
      .partner-logo-card--centered {
        grid-column: 2;
      }
    }

.hero-usages {
      background:
        radial-gradient(circle at 78% 24%, rgba(var(--secondary-rgb), 0.14), transparent 18rem),
        radial-gradient(circle at 18% 82%, rgba(var(--cta-rgb), 0.16), transparent 24rem),
        linear-gradient(180deg, var(--primary-blue) 0%, #06186f 100%);
    }

    .hero-usages::before {
      top: auto;
      right: 7vw;
      bottom: 2.8rem;
      width: 9.5rem;
      height: 9.5rem;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(var(--cta-rgb), 0.48), transparent 66%);
      opacity: 0.32;
      animation: story-orb-float 11.8s ease-in-out infinite;
    }

    .hero-usages::after {
      top: -3rem;
      right: -5rem;
      width: 22rem;
      height: 16rem;
      border-bottom-left-radius: 9rem;
      background: linear-gradient(135deg, rgba(var(--secondary-rgb), 0.12), rgba(var(--secondary-rgb), 0.03));
      animation: story-corner-drift 14.2s ease-in-out infinite;
    }

    .hero-usages .hero-grid {
      position: relative;
      gap: clamp(1.35rem, 3.4vw, 2.8rem);
      align-items: center;
    }

    .hero-usages .hero-copy {
      display: grid;
      gap: 1.05rem;
      align-content: start;
      max-width: min(41rem, 100%);
      padding: clamp(1.1rem, 2.2vw, 2rem) 0;
    }

    .hero-usages .hero-copy h1 {
      max-width: 13.8ch;
      font-size: clamp(2.8rem, 5vw, 4.55rem);
      line-height: 0.92;
      letter-spacing: -0.05em;
      text-wrap: balance;
    }

    .hero-usages .hero-intro {
      max-width: 37rem;
      margin-top: 0;
      font-size: clamp(1rem, 1.08vw, 1.08rem);
      line-height: 1.72;
    }

    .hero-usages .button-row {
      gap: 0.8rem;
      margin-top: 0.2rem;
    }

      .hero-usages .button-row .button {
        min-width: 11.5rem;
      }

      .hero-usages .hero-visual-usages {
      display: flex;
      justify-content: flex-end;
      align-items: stretch;
    }

    .hero-story-stage {
      position: relative;
      display: grid;
      grid-template-rows: auto 1fr;
      gap: 1.1rem;
      width: min(100%, 36rem);
      min-height: clamp(24.5rem, 42vw, 32rem);
      padding: 1.35rem;
      border: 1px solid rgba(var(--secondary-rgb), 0.3);
      border-radius: 1.65rem;
      overflow: hidden;
      background:
        radial-gradient(circle at 18% 18%, rgba(var(--secondary-rgb), 0.72), transparent 20%),
        linear-gradient(180deg, rgba(var(--secondary-rgb), 0.985), rgba(var(--cta-rgb), 0.94));
      box-shadow: 0 1.4rem 3rem rgba(3, 11, 48, 0.24);
      isolation: isolate;
      transform-origin: center;
    }

    .hero-story-stage::before {
      content: "";
      position: absolute;
      inset: 1.15rem;
      border-radius: 1.2rem;
      background:
        radial-gradient(circle at 76% 68%, rgba(var(--primary-rgb), 0.11), transparent 24%),
        repeating-linear-gradient(0deg, transparent 0 3.1rem, rgba(var(--primary-rgb), 0.04) 3.1rem 3.18rem),
        repeating-linear-gradient(90deg, transparent 0 3.1rem, rgba(var(--primary-rgb), 0.035) 3.1rem 3.18rem);
      opacity: 0.82;
      pointer-events: none;
      z-index: 0;
      animation: story-grid-drift 16.5s linear infinite;
    }

    .hero-story-stage::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.18), transparent 36%),
        linear-gradient(180deg, transparent 58%, rgba(var(--primary-rgb), 0.04));
      pointer-events: none;
      z-index: 0;
      animation: story-sheen-drift 12.8s ease-in-out infinite;
    }

    .hero-story-stage-glow,
    .hero-story-stage-link,
    .hero-story-stage-echo {
      position: absolute;
      pointer-events: none;
    }

    .hero-story-stage-glow {
      border-radius: 50%;
      filter: blur(52px);
      opacity: 0.88;
      z-index: 0;
    }

    .hero-story-stage-glow-a {
      top: -2rem;
      right: -1rem;
      width: 12rem;
      height: 12rem;
      background: rgba(var(--secondary-rgb), 0.4);
      animation: story-glow-a 11.6s ease-in-out infinite;
    }

    .hero-story-stage-glow-b {
      left: -2.5rem;
      bottom: -2rem;
      width: 14rem;
      height: 14rem;
      background: rgba(var(--cta-rgb), 0.3);
      animation: story-glow-b 12.8s ease-in-out infinite;
    }

    .hero-story-stage-link {
      display: none;
      height: 2px;
      border-radius: 999px;
      background: linear-gradient(90deg, rgba(var(--primary-rgb), 0.08), rgba(var(--primary-rgb), 0.3), rgba(var(--primary-rgb), 0.08));
      transform-origin: left center;
      z-index: 1;
    }

    .hero-story-stage-link-a {
      top: 13.9rem;
      left: 9rem;
      width: 10.8rem;
      transform: rotate(10deg);
    }

    .hero-story-stage-link-b {
      top: 20.25rem;
      left: 24.4rem;
      width: 4.8rem;
      transform: rotate(86deg);
    }

    .hero-story-stage-echo {
      right: -2.8rem;
      bottom: -3.2rem;
      width: 16rem;
      height: 16rem;
      border: 1px solid rgba(var(--primary-rgb), 0.12);
      border-radius: 50%;
      background:
        radial-gradient(circle at 50% 50%, rgba(var(--secondary-rgb), 0.32), transparent 50%),
        radial-gradient(circle at 50% 50%, transparent 0 39%, rgba(var(--primary-rgb), 0.1) 39.4% 40.2%, transparent 40.6%),
        radial-gradient(circle at 50% 50%, transparent 0 56%, rgba(var(--primary-rgb), 0.08) 56.4% 57.2%, transparent 57.6%);
      opacity: 0.9;
      z-index: 0;
      transform-origin: center;
      animation: story-echo-breathe 14.5s ease-in-out infinite;
    }

    .hero-story-signature,
    .hero-story-flow,
    .hero-story-node {
      position: relative;
      z-index: 2;
    }

    .hero-story-signature {
      display: flex;
      align-items: center;
      gap: 0.8rem;
      padding: 0.72rem 0.82rem;
      border: 1px solid rgba(var(--primary-rgb), 0.12);
      border-radius: 1.1rem;
      background: rgba(var(--secondary-rgb), 0.88);
      box-shadow: 0 0.9rem 1.8rem rgba(var(--primary-rgb), 0.08);
      max-width: 18.5rem;
      transform-origin: left top;
    }

    .hero-story-signature-avatars {
      display: flex;
      align-items: center;
      flex: 0 0 auto;
    }

    .hero-story-avatar-mini {
      width: 2.8rem;
      height: 2.8rem;
      border: 2px solid rgba(255, 255, 255, 0.9);
      border-radius: 50%;
      object-fit: cover;
      box-shadow: 0 0.45rem 0.9rem rgba(var(--primary-rgb), 0.12);
    }

    .hero-story-avatar-mini + .hero-story-avatar-mini {
      margin-left: -0.8rem;
    }

    .hero-story-signature-copy {
      display: grid;
      gap: 0.15rem;
    }

    .hero-story-signature-copy strong {
      color: var(--primary-blue);
      font-family: "Montserrat", sans-serif;
      font-size: 0.82rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      line-height: 1.15;
    }

    .hero-story-signature-copy span {
      color: rgba(var(--primary-rgb), 0.74);
      font-size: 0.82rem;
      font-weight: 600;
      line-height: 1.32;
    }

    .hero-story-flow {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      grid-template-areas:
        "origin trajectory"
        "support support";
      align-items: start;
      align-content: start;
      gap: 1rem;
      padding: 0.35rem 0 0;
    }

    .hero-story-node {
      display: grid;
      gap: 0.42rem;
      min-height: 0;
      padding: 0.9rem 0.95rem 0.95rem;
      border: 1px solid rgba(var(--primary-rgb), 0.12);
      border-radius: 1.1rem;
      background: rgba(var(--secondary-rgb), 0.9);
      box-shadow: 0 0.9rem 1.8rem rgba(var(--primary-rgb), 0.08);
      transform-origin: center;
    }

    .hero-story-node::before {
      content: "";
      position: absolute;
      top: 1rem;
      left: 0.95rem;
      width: 0.72rem;
      height: 0.72rem;
      border: 2px solid rgba(var(--secondary-rgb), 0.9);
      border-radius: 50%;
      background: var(--primary-blue);
      box-shadow: 0 0 0 0.22rem rgba(var(--primary-rgb), 0.08);
    }

    .hero-story-node-step {
      display: inline-flex;
      align-items: center;
      width: fit-content;
      min-height: 1.7rem;
      margin-left: 1.2rem;
      padding: 0 0.58rem;
      border-radius: 999px;
      background: rgba(var(--primary-rgb), 0.08);
      color: rgba(var(--primary-rgb), 0.74);
      font-size: 0.68rem;
      font-weight: 800;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }

    .hero-story-node strong {
      color: var(--primary-blue);
      font-family: "Montserrat", sans-serif;
      font-size: 1.04rem;
      font-weight: 700;
      line-height: 1.08;
    }

    .hero-story-node p {
      margin: 0;
      color: rgba(var(--primary-rgb), 0.84);
      font-size: 0.88rem;
      font-weight: 600;
      line-height: 1.45;
    }

    .hero-story-node-origin {
      grid-area: origin;
    }

    .hero-story-node-trajectory {
      grid-area: trajectory;
    }

    .hero-story-node-support {
      grid-area: support;
      max-width: none;
      justify-self: stretch;
    }

    .hero-usages .hero-visual.is-visible .hero-story-stage {
      animation: hero-panel-in 0.92s cubic-bezier(0.18, 0.92, 0.2, 1) 0.14s both, story-stage-drift 13.8s ease-in-out 1.1s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-signature {
      animation: hero-panel-in 0.84s cubic-bezier(0.18, 0.92, 0.2, 1) 0.3s both, story-signature-float 10.8s ease-in-out 1.24s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-origin {
      animation: hero-panel-in 0.82s cubic-bezier(0.18, 0.92, 0.2, 1) 0.44s both, story-node-float 8.8s ease-in-out 1.4s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-trajectory {
      animation: hero-panel-in 0.82s cubic-bezier(0.18, 0.92, 0.2, 1) 0.56s both, story-node-float 9.4s ease-in-out 1.56s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-support {
      animation: hero-panel-in 0.82s cubic-bezier(0.18, 0.92, 0.2, 1) 0.68s both, story-node-float 10s ease-in-out 1.72s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-origin::before {
      animation: story-node-signal 6.6s ease-in-out 1.3s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-trajectory::before {
      animation: story-node-signal 7.2s ease-in-out 1.55s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-support::before {
      animation: story-node-signal 7.8s ease-in-out 1.8s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-origin .hero-story-node-step {
      animation: hero-chip-in 0.68s cubic-bezier(0.22, 0.9, 0.2, 1) 0.5s both, story-step-pulse 6.8s ease-in-out 1.5s infinite;
    }

    .hero-usages .hero-visual.is-visible .hero-story-node-trajectory .hero-story-node-step {
      animation: hero-chip-in 0.68s cubic-bezier(0.22, 0.9, 0.2, 1) 0.62s both, story-step-pulse 7.2s ease-in-out 1.66s infinite;
    }

      .hero-usages .hero-visual.is-visible .hero-story-node-support .hero-story-node-step {
        animation: hero-chip-in 0.68s cubic-bezier(0.22, 0.9, 0.2, 1) 0.74s both, story-step-pulse 7.6s ease-in-out 1.82s infinite;
      }

      @keyframes story-orb-float {
        0%,
        100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.28;
      }

      50% {
        transform: translate3d(-0.45rem, -0.35rem, 0) scale(1.08);
        opacity: 0.4;
      }
    }

    @keyframes story-corner-drift {
      0%,
      100% {
        transform: translate3d(0, 0, 0) rotate(0deg);
        opacity: 1;
      }

      50% {
        transform: translate3d(-0.8rem, 0.45rem, 0) rotate(-2deg);
        opacity: 0.82;
      }
    }

    @keyframes story-stage-drift {
      0%,
      100% {
        transform: translate3d(0, 0, 0) scale(1);
        box-shadow: 0 1.4rem 3rem rgba(3, 11, 48, 0.24);
      }

      50% {
        transform: translate3d(0, -0.32rem, 0) scale(1.006);
        box-shadow: 0 1.75rem 3.35rem rgba(3, 11, 48, 0.28);
      }
    }

    @keyframes story-grid-drift {
      0%,
      100% {
        transform: translate3d(0, 0, 0) scale(1);
      }

      50% {
        transform: translate3d(-0.5rem, 0.28rem, 0) scale(1.02);
      }
    }

    @keyframes story-sheen-drift {
      0%,
      100% {
        transform: translate3d(0, 0, 0);
        opacity: 0.92;
      }

      50% {
        transform: translate3d(0.55rem, -0.35rem, 0);
        opacity: 1;
      }
    }

    @keyframes story-glow-a {
      0%,
      100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.76;
      }

      50% {
        transform: translate3d(-0.4rem, 0.45rem, 0) scale(1.08);
        opacity: 0.94;
      }
    }

    @keyframes story-glow-b {
      0%,
      100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.66;
      }

      50% {
        transform: translate3d(0.55rem, -0.3rem, 0) scale(1.06);
        opacity: 0.84;
      }
    }

    @keyframes story-echo-breathe {
      0%,
      100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.78;
      }

      50% {
        transform: scale(1.07) rotate(8deg);
        opacity: 0.96;
      }
    }

    @keyframes story-signature-float {
      0%,
      100% {
        transform: translate3d(0, 0, 0) rotate(0deg);
      }

      50% {
        transform: translate3d(0.1rem, -0.22rem, 0) rotate(-0.6deg);
      }
    }

    @keyframes story-node-float {
      0%,
      100% {
        transform: translateY(0);
      }

      50% {
        transform: translateY(-0.24rem);
      }
    }

    @keyframes story-node-signal {
      0%,
      100% {
        transform: scale(1);
        box-shadow: 0 0 0 0.22rem rgba(var(--primary-rgb), 0.08);
      }

      50% {
        transform: scale(1.12);
        box-shadow: 0 0 0 0.34rem rgba(var(--primary-rgb), 0.12);
      }
    }

    @keyframes story-step-pulse {
      0%,
      100% {
        transform: translateY(0);
        background: rgba(var(--primary-rgb), 0.08);
      }

      50% {
        transform: translateY(-0.12rem);
        background: rgba(var(--primary-rgb), 0.12);
      }
    }

    @media (min-width: 64rem) {
      .hero-usages .hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.98fr);
      }
    }

    @media (min-width: 72rem) {
      .hero-usages .hero-copy {
        max-width: 43rem;
      }

      .hero-usages .hero-copy h1 {
        max-width: 14.6ch;
        font-size: clamp(2.95rem, 3.95vw, 4.65rem);
      }

      .hero-usages .hero-intro {
        max-width: 38rem;
      }

      .hero-story-stage {
        width: min(100%, 36.2rem);
      }
    }

    @media (max-width: 63.99rem) {
      .hero-usages .hero-grid {
        gap: 1.1rem;
      }

      .hero-usages .hero-copy {
        max-width: none;
      }

      .hero-usages .hero-copy h1 {
        max-width: 13.1ch;
        font-size: clamp(2.4rem, 6.7vw, 3.75rem);
      }

      .hero-usages .hero-intro {
        max-width: none;
        font-size: 0.98rem;
        line-height: 1.64;
      }

      .hero-story-stage {
        width: 100%;
        min-height: 24rem;
      }

      .hero-story-flow {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-areas:
          "origin trajectory"
          "support support";
        gap: 0.8rem 0.9rem;
      }

      .hero-story-node-support {
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 47.99rem) {
      .ecosystem-simple-head h2 {
        max-width: none;
        font-size: clamp(1.95rem, 8.8vw, 2.65rem);
        line-height: 1.02;
      }

      .hero-usages {
        overflow: clip;
      }

      .hero-usages .hero-copy h1 {
        max-width: 13.1ch;
        font-size: clamp(2.3rem, 11vw, 3.3rem);
        line-height: 0.95;
      }

      .hero-usages .button-row .button {
        min-width: 0;
      }

      .hero-story-stage {
        min-height: auto;
        padding: 1rem;
        display: grid;
        gap: 0.9rem;
      }

      .hero-story-stage::before {
        inset: 0.9rem;
      }

      .hero-story-stage-glow-a {
        width: 9.5rem;
        height: 9.5rem;
      }

      .hero-story-stage-glow-b {
        width: 10.5rem;
        height: 10.5rem;
      }

      .hero-story-signature {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        width: 100%;
        max-width: none;
      }

      .hero-story-flow {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        padding-top: 0;
      }

      .hero-story-signature {
        padding: 0.72rem 0.78rem;
      }

      .hero-story-signature-copy strong,
      .hero-story-signature-copy span {
        font-size: 0.78rem;
      }

      .hero-story-node {
        gap: 0.38rem;
        padding: 0.82rem 0.86rem 0.88rem 1rem;
      }

      .hero-story-node::before {
        top: 1.05rem;
        left: 0.5rem;
        width: 0.56rem;
        height: 0.56rem;
      }

      .hero-story-node strong {
        font-size: 0.98rem;
      }

      .hero-story-node p {
        font-size: 0.84rem;
        line-height: 1.42;
      }

      .hero-story-stage-link-a,
      .hero-story-stage-link-b,
      .hero-story-stage-echo {
        display: none;
      }

      .hero-story-node-origin,
      .hero-story-node-trajectory,
      .hero-story-node-support {
        grid-column: auto;
        grid-row: auto;
        max-width: none;
        justify-self: stretch;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .hero-usages::before,
      .hero-usages::after,
      .hero-story-stage::before,
      .hero-story-stage::after,
      .hero-story-stage-glow-a,
      .hero-story-stage-glow-b,
      .hero-story-stage-echo,
      .hero-usages .hero-visual.is-visible .hero-story-stage,
      .hero-usages .hero-visual.is-visible .hero-story-signature,
      .hero-usages .hero-visual.is-visible .hero-story-node,
      .hero-usages .hero-visual.is-visible .hero-story-node::before,
      .hero-usages .hero-visual.is-visible .hero-story-node-step {
        animation: none !important;
        transform: none !important;
      }
    }

