.runyu-jump { display: inline-block; margin-top: 1.5rem; }
.runyu-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2.5rem 1.5rem; margin: 2rem 0 4rem; }
.runyu-card { min-width: 0; scroll-margin-top: 7rem; }
.runyu-media { position: relative; aspect-ratio: 9 / 16; background: #211b14; overflow: hidden; border-radius: 4px; }
.runyu-media button { position: absolute; inset: 0; padding: 0; border: 0; width: 100%; height: 100%; cursor: pointer; background: #211b14; color: #fff; }
.runyu-media img, .runyu-media video { width: 100%; height: 100%; object-fit: contain; display: block; margin: 0; }
.runyu-media [hidden], .runyu-card [hidden] { display: none; }
.runyu-media button > span { position: absolute; bottom: 1rem; left: 50%; transform: translateX(-50%); white-space: nowrap; padding: .7rem 1.1rem; background: #f9f5eb; color: #263d2d; border-radius: 2rem; font: 600 .95rem var(--sans); box-shadow: 0 2px 15px #0004; }
.runyu-media button:hover > span { background: #fff; }
.runyu-media button:focus-visible, .runyu-media video:focus-visible { outline: 3px solid #ed8c49; outline-offset: -4px; }
.fact-body .runyu-card h3 { font-size: 1.2rem; margin: .6rem 0; line-height: 1.5; }
.fact-body .runyu-card p { font-family: var(--sans); font-size: .88rem; line-height: 1.6; margin: .7rem 0 0; }
.runyu-card [role="status"]:empty { display: none; }
.runyu-grid--pilot { grid-template-columns: 1fr; max-width: 780px; }
.runyu-grid--pilot .runyu-media { aspect-ratio: 7 / 3; }
.runyu-home { display: grid; grid-template-columns: minmax(180px,300px) minmax(0,1fr); align-items: center; gap: clamp(2rem,6vw,6rem); padding-block: 3rem; border-top: 1px solid var(--line); }
.runyu-home img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; }
.runyu-home h2 { margin: 1rem 0; font-size: clamp(2.5rem,5vw,4.2rem); }
.runyu-home p:not(.eyebrow) { max-width: 36rem; color: var(--muted); margin-bottom: 1.5rem; }
@media (max-width: 780px) { .runyu-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem 1rem; } .runyu-grid--pilot { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .runyu-grid { grid-template-columns: 1fr; max-width: 340px; margin-inline: auto; } .runyu-grid--pilot { max-width: none; } .runyu-home { grid-template-columns: 110px minmax(0,1fr); gap: 1.25rem; } .runyu-home h2 { font-size: 2rem; } .runyu-home .eyebrow { font-size: .65rem; } }
