/* Product-led applications, with the same source photos as the homepage. */
.applications-page .application-block{border-top:1px solid #e1e7ec;gap:70px;padding-top:68px;padding-bottom:68px}
.application-visual{container-type:inline-size;min-width:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e4e9ed;min-height:340px}
.application-visual>img{width:88%;height:300px;object-fit:contain;padding:15px}
.application-visual .series-image{--motor-base-width:min(300px,calc((100cqw - 34px)/1.733334));width:100%;height:330px;flex-basis:auto;align-items:center;padding:28px 12px 52px}
.application-visual .series-photo{max-width:none}
.application-proof{font-size:13px;line-height:1.8;color:#788692;margin:18px 0 22px}
.application-block .checks{margin:24px 0 18px;line-height:1.9}
.application-block .checks strong{font-weight:600;color:#26343f}
.application-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.application-block--treadmill{scroll-margin-top:108px;align-items:start}
.application-media{display:grid;gap:18px;min-width:0}
.application-training{margin:0;background:#0b1219;border:1px solid #26323d}
.application-training video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#080e14}
.application-training video:focus-visible{outline:3px solid #008dcc;outline-offset:3px}
.application-training figcaption{padding:15px 20px;color:#d7e3eb}
.application-training figcaption span{font-size:13px;letter-spacing:.03em}
.application-training figcaption p{margin:5px 0 0;color:#a3b1be;font-size:12px;line-height:1.7}
.application-block--treadmill .application-visual{min-height:0}
.application-block--treadmill .series-image{height:222px;padding:20px 12px 42px;--motor-base-width:min(230px,calc((100cqw - 34px)/1.733334))}
.application-block--treadmill h2{font-size:clamp(28px,3.2vw,44px);margin-top:12px;line-height:1.4}
.application-copy{min-width:0}
.application-block--strength,.application-block--home{scroll-margin-top:108px;align-items:start}
.application-sequence{margin:0;min-width:0;background:#fff;border:1px solid #e1e7ec}
.application-sequence-stage{position:relative;aspect-ratio:16/9;overflow:hidden;background:#fff}
.application-slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s ease}
.application-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.application-slide>img{display:block;width:100%;height:100%;object-fit:contain}
.application-slide-label{position:absolute;bottom:14px;left:16px;background:rgba(10,20,29,.83);color:#fff;font-size:12px;padding:6px 12px}
.application-motor-pair{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);align-items:center;gap:14px;height:100%;padding:16px 22px}
.application-motor-pair>div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;height:100%}
.application-motor-pair img{width:100%;height:58%;min-height:0;object-fit:contain}
.application-motor-pair strong{font-size:14px;color:#17232b;font-weight:600;margin-top:8px}
.application-motor-pair span{font-size:12px;color:#71808b;margin-top:3px}
.application-sequence-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid #e1e7ec;padding:12px 16px}
.application-sequence-controls button{font:inherit;font-size:13px;font-weight:600;border:0;border-bottom:2px solid transparent;padding:7px 0;background:transparent;color:#71808b;cursor:pointer}
.application-sequence-controls button[aria-pressed="true"]{color:#086e9e;border-bottom-color:#086e9e}
.application-sequence-controls .application-sequence-toggle{margin-left:auto;border:1px solid #cdd7df;padding:5px 12px;color:#23333f}
.application-sequence-controls button:focus-visible{outline:2px solid #008dcc;outline-offset:3px}
.application-sequence>figcaption{font-size:12px;line-height:1.7;color:#788692;padding:0 16px 14px}
@media(max-width:760px){.application-block--strength,.application-block--home{scroll-margin-top:92px}.application-motor-pair{gap:8px;padding:8px 12px}.application-motor-pair strong{font-size:12px}.application-motor-pair span{font-size:11px}.application-slide-label{font-size:11px;bottom:10px;left:10px}.application-sequence-controls{gap:12px;padding:10px 12px}.application-sequence>figcaption{padding:0 12px 12px}}
@media(prefers-reduced-motion:reduce){.application-slide{transition:none}}
@media(max-width:1000px) and (min-width:761px){.applications-page .application-block--treadmill{gap:38px}}
@media(max-width:760px){.applications-page .application-block{gap:28px;padding-top:44px;padding-bottom:44px}.application-visual{min-height:270px}.application-visual>img{height:260px}.application-visual .series-image{height:270px;padding-top:22px}.application-links{gap:16px}}
@media(max-width:760px){.application-block--treadmill{scroll-margin-top:92px}.application-training figcaption{padding:12px 15px}.application-block--treadmill .series-image{height:190px;padding:16px 12px 38px}.application-block--treadmill h2{font-size:28px}.application-media{gap:14px}}

/* Self-powered applications: exercise, the actual generator, then console power. */
.application-block--generator{align-items:start;scroll-margin-top:108px}
.generator-stage{aspect-ratio:1/1;background:#f1f3f4}
.generator-equipment-controls{display:flex;gap:0;background:#fff;border-bottom:1px solid #e1e7ec}
.generator-equipment-controls button{flex:1;border:0;border-bottom:2px solid transparent;padding:14px 8px;color:#697984;background:#fff;font:inherit;font-size:13px;cursor:pointer}
.generator-equipment-controls button[aria-pressed="true"]{color:#086e9e;border-bottom-color:#086e9e;background:#f5f9fc;font-weight:600}
.generator-equipment-controls button:focus-visible{outline:2px solid #008dcc;outline-offset:-4px}
.generator-equipment-photo{position:absolute;inset:0;overflow:hidden;background:#eef0f1}
.generator-equipment-photo img{position:absolute;left:var(--equipment-offset,0%);top:0;width:300%;max-width:none;height:100%;object-fit:cover}
.generator-scene-caption{position:absolute;left:0;right:0;bottom:0;padding:34px 24px 22px;background:linear-gradient(transparent,rgba(12,24,34,.9));color:#fff;display:flex;flex-direction:column;gap:5px}
.generator-scene-caption small{font-size:11px;letter-spacing:.09em;color:#b1d5e6}
.generator-scene-caption strong{font-size:22px;line-height:1.4;font-weight:600}
.generator-scene-caption span{font-size:13px;color:#bacbd6}
.generator-product{background:#fff}
.generator-product-photo{position:absolute;inset:0;overflow:hidden}
.generator-product-photo img{position:absolute;top:-3%;left:-40%;width:180%;max-width:none;height:auto}
.generator-product-name{position:absolute;top:22px;left:24px;color:#536575;font-size:12px;letter-spacing:.05em}
.generator-product .generator-scene-caption{background:linear-gradient(transparent,#fff 34%);color:#162c3a}
.generator-product .generator-scene-caption small{color:#086e9e}
.generator-energy-cue{position:absolute;right:27px;bottom:110px;display:flex;align-items:center;gap:5px}
.generator-energy-cue span{width:5px;height:22px;background:#1699c8;animation:generator-energy 1.4s ease infinite;animation-play-state:paused;opacity:.35}
.generator-energy-cue span:nth-child(2){height:32px;animation-delay:.2s}
.generator-energy-cue span:nth-child(3){height:42px;animation-delay:.4s}
.generator-output{background:radial-gradient(ellipse at 50% 38%,#183844,#09151c 70%)}
.generator-console{position:absolute;top:12%;left:19%;width:62%;padding:20px;border:7px solid #26343b;border-radius:18px;background:#06191c;color:#b7f0e9;box-shadow:0 18px 36px #0006;opacity:.35;transform:translateY(7px)}
.generator-output.is-active .generator-console{animation:generator-screen-on 1.2s ease forwards}
.generator-console-top{display:flex;justify-content:space-between;gap:8px;font:9px/1.5 Arial,sans-serif;letter-spacing:.06em;padding-bottom:14px;border-bottom:1px solid #244247}
.generator-console-status{color:#82d8ba}
.generator-console-main{padding:20px 0 17px;text-align:center}
.generator-console small{display:block;font:9px/1.3 Arial,sans-serif;color:#94b6b8;letter-spacing:.14em;margin-bottom:7px}
.generator-console-main strong{font:500 clamp(34px,4.6vw,55px)/1.1 'Arial',sans-serif;letter-spacing:.03em;color:#d0fff2}
.generator-console-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center;padding-bottom:15px}
.generator-console-stats strong{font:400 27px/1.2 Arial,sans-serif}
.generator-console-stats i{font:11px/1 Arial,sans-serif;color:#8badb4;font-style:normal}
.generator-console-bars{height:30px;display:flex;align-items:end;justify-content:center;gap:4px;overflow:hidden}
.generator-console-bars i{display:block;flex:1;max-width:12px;background:#74d4c2;height:40%;opacity:.55}
.generator-console-bars i:nth-child(3n){height:85%;opacity:.9}
.generator-console-bars i:nth-child(3n+1){height:65%}
.generator-console-bottom{text-align:center;font:8px/1.4 Arial,sans-serif;letter-spacing:.13em;color:#91c8c6;margin-top:15px;padding-top:12px;border-top:1px solid #244247}
.generator-output .generator-scene-caption{background:none}
.generator-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:28px 0 22px;gap:14px}
.generator-flow li{border-top:1px solid #cad7df;padding-top:16px;min-width:0}
.generator-flow li>span{display:block;font:12px/1.4 Arial,sans-serif;color:#0876a8;margin-bottom:12px}
.generator-flow strong{display:block;font-size:15px;color:#263a47;font-weight:600}
.generator-flow small{display:block;font-size:12px;line-height:1.6;color:#72818b;margin-top:7px}
.application-block--generator h2{font-size:clamp(30px,3.1vw,44px);line-height:1.4}
.generator-related{font-size:13px;margin:25px 0 0;color:#72818b}
.generator-related a{color:#075f91;text-decoration:underline;text-underline-offset:4px}
.generator-sequence[data-paused="true"] .generator-energy-cue span{animation-play-state:paused}
.generator-sequence[data-motion-running="true"] .generator-product.is-active .generator-energy-cue span{animation-play-state:running}
.generator-sequence[data-paused="true"] .generator-output.is-active .generator-console{animation:none;opacity:1;transform:none}
@keyframes generator-energy{50%{opacity:1}}
@keyframes generator-screen-on{0%{opacity:.2;transform:translateY(7px)}100%{opacity:1;transform:none}}
@media(max-width:1000px) and (min-width:761px){.applications-page .application-block--generator{gap:38px}.generator-console{padding:12px;border-width:5px;top:9%}.generator-console-top{font-size:7px}.generator-console-main{padding:12px 0}.generator-console-stats strong{font-size:21px}.generator-console-bars{height:23px}.generator-console-bottom{margin-top:9px;padding-top:8px}.generator-scene-caption{padding:25px 18px 18px}.generator-scene-caption strong{font-size:18px}}
@media(max-width:760px){.application-block--generator{scroll-margin-top:92px}.generator-equipment-controls button{padding:12px 6px;font-size:12px}.generator-sequence .application-sequence-controls{gap:12px}.generator-sequence .application-sequence-controls button{font-size:12px}.generator-scene-caption{padding:24px 18px 17px}.generator-scene-caption strong{font-size:20px}.generator-product-name{top:18px;left:18px;font-size:11px}.generator-energy-cue{right:20px;bottom:97px}.generator-console{padding:14px;border-width:5px;top:10%;left:17%;width:66%}.generator-console-top{font-size:8px;padding-bottom:10px}.generator-console-main{padding:15px 0 12px}.generator-console-main strong{font-size:38px}.generator-console-stats strong{font-size:23px}.generator-console-bars{height:23px}.generator-console-bottom{font-size:7px;margin-top:9px;padding-top:9px}.generator-flow{gap:12px;margin-top:22px}.generator-flow strong{font-size:14px}.generator-flow small{font-size:11px}.application-block--generator h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.generator-energy-cue span,.generator-output.is-active .generator-console{animation:none}.generator-output.is-active .generator-console{opacity:1;transform:none}}

/* Scale the console with its stage so the caption stays clear on small screens. */
.generator-stage{container-type:inline-size}
.generator-console{top:6%;left:19%;width:62%;height:58%;padding:3cqw;border-width:1cqw;border-radius:3cqw;display:flex;flex-direction:column}
.generator-console-top{font-size:1.65cqw;padding-bottom:2cqw;gap:1.5cqw}
.generator-console small{font-size:1.6cqw;margin-bottom:1cqw}
.generator-console-main{padding:2.2cqw 0}
.generator-console-main strong{font-size:9cqw}
.generator-console-stats{gap:3cqw;padding-bottom:2cqw}
.generator-console-stats strong{font-size:4.8cqw}
.generator-console-stats i{font-size:2cqw}
.generator-console-bars{height:4cqw;min-height:4cqw;gap:.8cqw}
.generator-console-bottom{font-size:1.3cqw;margin-top:auto;padding-top:1.6cqw}
@media(max-width:360px){.generator-console{top:5%;height:48%}}

/* Bike and rower use a photographed concept dial; elliptical keeps its console. */
.generator-output [hidden]{display:none}
.generator-knob-visual{position:absolute;inset:0}
.generator-knob-visual img{display:block;width:100%;height:100%;object-fit:contain}
.generator-sequence[data-output-kind="knob"] .generator-output .generator-scene-caption{background:linear-gradient(transparent,rgba(7,18,25,.93));padding-top:30px}
@media(max-width:760px){.generator-sequence[data-output-kind="knob"] .generator-output .generator-scene-caption{padding-top:24px}}

/* The bike clip plays once before the generator and dial stages. */
.generator-bike-visual{position:absolute;inset:0 0 clamp(76px,15cqw,100px);display:none;align-items:center;justify-content:center;background:#dadcdd}
.generator-bike-visual video{display:block;width:100%;height:100%;object-fit:contain}
.generator-bike-visual video[hidden]{display:none}
.generator-sequence[data-bike-video="true"] .generator-bike-visual{display:flex}
.generator-sequence[data-bike-video="true"] .generator-equipment-photo{visibility:hidden}

@media(prefers-reduced-motion:no-preference){.generator-sequence .application-slide{transition:opacity .35s ease}}
