.runner-banner, .runner-banner:visited {display:flex;align-items:center;gap:24px;padding:24px 30px;margin:28px 0 36px;background:linear-gradient(110deg,#173b83,#2563eb);border-radius:22px;color:#fff;text-decoration:none;box-shadow:0 10px 28px rgba(37,99,235,.16);transition:transform .2s ease,box-shadow .2s ease;box-sizing:border-box;width:100%;}
.runner-banner:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(37,99,235,.24)}
.runner-banner .runner-icon{width:100px;height:100px;object-fit:contain;flex-shrink:0;border-radius:20px}
.runner-banner .runner-info{flex:1;min-width:0}
.runner-banner .runner-info h2{margin:0 0 8px;color:#fff;font-size:clamp(20px,2vw,28px);line-height:1.25;text-decoration:none}
.runner-banner .runner-info p{margin:0;color:#dbeafe;font-size:16px;line-height:1.5;text-decoration:none}
.runner-banner .runner-play{display:inline-block;background:#fff;color:#2563eb;padding:13px 23px;border-radius:12px;font-weight:700;white-space:nowrap;text-decoration:none}
.runner-banner:focus-visible{outline:3px solid #facc15;outline-offset:4px}
@media(max-width:700px){.runner-banner{flex-wrap:wrap;padding:20px;gap:14px}.runner-banner .runner-icon{width:72px;height:72px}.runner-banner .runner-play{width:100%;text-align:center}}
