/* Approved cutout composition, shared by the hero and the ride story. */
.landing-platform-link a { color: var(--mint); text-underline-offset: 4px; }
.landing .landing-footer nav { flex-wrap: wrap; }
@media(max-width:680px) {
    .landing-nav-links > a[href="/downloads"] { display: inline; margin-right: 16px; font-size: 12px; }
}
.landing-cutout .story-ride > img { object-fit: contain; height: 350px; border-radius: 0; }
.landing-cutout .story-ride .demo-telemetry { margin-top: 8px; }
.landing-cutout .landing-hero { gap: 32px; padding-block: 64px 80px; }
.landing-cutout .landing-mashup { height: 620px; padding: 0; }
.landing-cutout .landing-cyclist { position: absolute; bottom: 0; left: -176px; width: 112%; height: auto; border-radius: 0; object-fit: contain; filter: drop-shadow(0 24px 32px #0003); }
.landing-cutout .landing-mashup .landing-product { top: 0; bottom: auto; left: auto; right: -16px; width: 55%; z-index: 2; padding: 20px; transform: translateY(var(--card-y, 0px)) rotate(3deg); }
.landing-cutout .landing-mashup .landing-workout-head { gap: 12px; }
.landing-cutout .landing-mashup .landing-workout-head h2 { font-size: 23px; }
.landing-cutout .landing-mashup .landing-intervals { height: 64px; }
.landing-cutout .landing-mashup .landing-workout-stats strong { font-size: 12px; }
.landing-cutout .landing-mashup .landing-workout-stats span:not(:first-child) { padding-left: 8px; }
@media (max-width: 1100px) and (min-width: 901px) {
    .landing-cutout .landing-mashup .landing-product { width: 70%; right: 0; }
    .landing-cutout .landing-cyclist { width: 115%; left: -80px; }
}
@media (max-width: 900px) {
    .landing-cutout .landing-hero { padding-top: 24px; gap: 24px; }
    .landing-cutout .landing-mashup { grid-row: 1; height: 320px; max-width: 480px; }
    .landing-cutout .landing-cyclist { left: -64px; width: 92%; }
    .landing-cutout .landing-mashup .landing-product { width: 52%; right: 0; padding: 12px; }
    .landing-cutout .landing-mashup .landing-product-topline { font-size: 8px; letter-spacing: .03em; }
    .landing-cutout .landing-mashup .landing-workout-head { margin-top: 8px; gap: 8px; }
    .landing-cutout .landing-mashup .landing-workout-head h2 { font-size: 18px; }
    .landing-cutout .landing-mashup .landing-workout-head p { font-size: 10px; }
    .landing-cutout .landing-mashup .landing-score { font-size: 20px; line-height: 22px; }
    .landing-cutout .landing-mashup .landing-intervals { height: 44px; gap: 2px; margin: 12px 0 0; }
    .landing-cutout .landing-mashup .landing-intervals i { min-width: 2px; }
    .landing-cutout .landing-mashup .landing-workout-stats { display: none; }
}
@media (max-width: 480px) {
    .landing-cutout .landing-mashup { height: 264px; }
    .landing-cutout .landing-cyclist { width: 100%; left: -72px; }
    .landing-cutout .landing-mashup .landing-product { width: 52%; }
    .landing-cutout .landing-hero-copy .landing-kicker { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
    .landing-cutout .landing-mashup .landing-product { transform: none; }
}
