.ninja-page .run-hero__image {object-position:75% 45%;}
.ninja-page .run-hero::before {background:linear-gradient(90deg,#07090deb, #07090d85 45%,#07090d08 80%),linear-gradient(0deg,#07090dfa,transparent 35%);}
.ninja-page .run-hero h1 {font-size:clamp(42px,5.3vw,82px);max-width:750px;overflow-wrap:normal;}
.ninja-page .run-hero__copy {min-height:570px;}
.ninja-page .run-hero__subtitle {max-width:360px;font-size:22px;}
.ninja-athlete {display:grid;grid-template-columns:.85fr 1fr;gap:9%;align-items:center;}
.ninja-athlete figure {margin:0;position:relative;}
.ninja-athlete img {display:block;width:100%;height:auto;max-height:620px;object-fit:cover;border-radius:var(--radius-lg);}
.ninja-athlete figcaption {position:absolute;bottom:20px;left:20px;right:20px;color:white;font-size:12px;padding:10px;background:#090909b0;border-radius:6px;}
.ninja-athlete .run-lead {margin-top:30px;}
.ninja-sessions {display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.ninja-session {display:flex;flex-direction:column;gap:28px;padding:30px 22px;border-top:2px solid var(--brand-red);background:var(--paper);color:var(--ink);text-decoration:none;border-radius:0 0 var(--radius-md) var(--radius-md);}
.ninja-session strong {font-size:clamp(32px,4vw,56px);font-weight:500;line-height:1;}
.ninja-session span:last-child {font-size:13px;color:var(--brand-red);}
.ninja-session:hover {background:#fcebed;}
.ninja-session:focus-visible {outline:3px solid var(--brand-red);outline-offset:4px;}
.ninja-page .run-field select {width:100%;min-height:54px;border:1px solid #ccc;border-radius:8px;padding:14px 12px;font:inherit;color:var(--ink);background:white;}
.ninja-page .run-field select:focus {outline:2px solid var(--brand-red);outline-offset:2px;}
.ninja-page .wc-event-widget {display:none;}
@media(max-width:900px){.ninja-sessions{grid-template-columns:repeat(2,1fr)}.ninja-athlete{gap:5%}.ninja-page .run-hero h1{font-size:clamp(40px,6vw,64px)}}
@media(max-width:680px){.ninja-page .run-hero__copy{min-height:590px;padding:28px 20px;display:flex;flex-direction:column;justify-content:flex-end}.ninja-page .run-hero h1{font-size:clamp(31px,7.4vw,50px)}.ninja-page .run-hero__image{object-position:61% top}.ninja-page .run-hero::before{background:linear-gradient(0deg,#07090d 5%,#07090dd9 38%,#07090d05 100%)}.ninja-page .run-hero__subtitle{font-size:18px}.ninja-page .run-tags{flex-wrap:wrap}.ninja-athlete{grid-template-columns:1fr;gap:32px}.ninja-athlete figure{max-width:420px}.ninja-session{padding:22px 16px;gap:22px}.ninja-session>span{font-size:14px}.ninja-sessions{gap:12px}}
