/* R12: Bike training, connected classes and model-specific media. */
.page-bike .r7-split-image,.page-bike-pro .r7-split-image{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e9e7e1;min-height:400px}
.page-bike .r7-split-image .media,.page-bike-pro .r7-split-image .media{height:560px;max-height:560px;object-fit:contain}
.page-bike .r7-split-copy,.page-bike-pro .r7-split-copy{align-self:center}
.page-bike .r7-split .responsive-picture,.page-bike-pro .r7-split .responsive-picture{width:100%;height:100%}
.r12-feedback{padding:32px var(--gutter);background:#e9e7df;border-bottom:1px solid #d1d0c7}
.r12-feedback>.container{padding:0;max-width:1000px;margin:auto}
.r12-feedback p{font-size:clamp(18px,1.7vw,24px);line-height:1.55;letter-spacing:-.015em;margin:0 0 14px}
.r12-feedback small{font-size:12px;line-height:1.5;color:#5c6158}
.r12-heart{background:#f5f5f1}
.r12-ftp .r7-reading{margin-bottom:48px}
.r12-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;list-style:none;padding:0;margin:0}
.r12-steps li{border-top:1px solid #c7c9c1;padding-top:22px;min-width:0}
.r12-steps span{color:#bc2822;font-size:14px;font-weight:700;display:block;margin-bottom:22px}
.r12-steps h3,.r12-rank h3{font-size:25px;line-height:1.2;letter-spacing:-.025em;margin:0 0 16px;overflow-wrap:break-word}
.r12-steps p,.r12-rank p{font-size:17px;line-height:1.65;margin:0}
.r12-rank{display:grid;grid-template-columns:.8fr 1.3fr;gap:9%;padding-top:36px;margin-top:40px;border-top:1px solid #c7c9c1}
.r12-apps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;list-style:none;margin:30px 0 20px;padding:0}
.r12-apps li{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:13px;font-weight:600}
.r12-apps img{display:block;width:64px;height:64px;border-radius:14px;background:#fff}
.r12-race .button{margin-top:22px}
.r12-downloads{border-top:1px solid #d8dad4}
.r12-downloads>.container{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8%}
.r12-downloads h2{font-size:clamp(28px,2.8vw,40px);line-height:1.12;letter-spacing:-.035em;margin:0 0 20px}
.r12-downloads p{font-size:17px;line-height:1.7;max-width:780px}
.r12-downloads small{font-size:12px;color:#686d64}
.r12-download-actions{display:flex;flex-direction:column;gap:12px;max-width:340px}
.r12-download-actions .button-outline{border:1px solid #8d9488;color:#20251e}
.page-bike .r7-stat-strip strong,.page-bike-pro .r7-stat-strip strong{font-size:clamp(25px,2.8vw,42px)}
@media(max-width:1000px){.r12-downloads>.container{grid-template-columns:1fr;gap:24px}.r12-download-actions{max-width:100%}}
@media(max-width:760px){
 .page-bike .r7-split-image,.page-bike-pro .r7-split-image{min-height:0;height:390px}
 .page-bike .r7-split-image .media,.page-bike-pro .r7-split-image .media{height:390px;max-height:390px}
 .r12-feedback{padding:28px 24px}.r12-feedback p{font-size:18px}
 .r12-steps{grid-template-columns:1fr;gap:28px}.r12-steps span{margin-bottom:14px}.r12-steps h3,.r12-rank h3{font-size:24px}
 .r12-ftp .r7-reading{margin-bottom:30px}.r12-rank{grid-template-columns:1fr;gap:0;margin-top:30px;padding-top:28px}
 .r12-apps{gap:10px}.r12-apps img{width:54px;height:54px;border-radius:12px}.r12-apps li{font-size:12px}
 .page-bike .r7-stat-strip strong,.page-bike-pro .r7-stat-strip strong{font-size:24px}
}
