/* A short, ordinary scroll passage; the product stays inside its own section. */
.mechanism-section>.section{padding-block:70px 58px}
.mechanism-section .centered-heading{max-width:800px}
.mechanism-section .centered-heading h2{font-size:clamp(32px,3vw,44px)}
.mechanism-section .centered-heading .eyebrow{max-width:none;margin-inline:auto;margin-bottom:18px}
.mechanism-section .centered-heading>p:not(.eyebrow){margin-top:18px;max-width:650px;font-size:.95rem}
.assembly-figure{margin:20px auto 0}
.assembly-stage{position:relative;width:100%;height:clamp(300px,30vw,360px);overflow:hidden;isolation:isolate}
.assembly-stage model-viewer,.assembly-fallback{position:absolute;inset:0;display:block;width:100%;height:100%;background:transparent}
.assembly-stage model-viewer{opacity:0;pointer-events:none;--progress-bar-color:var(--orange);--poster-color:transparent}
.assembly-fallback{object-fit:contain;transition:opacity .15s}
.assembly-figure.is-ready model-viewer{opacity:1}
.assembly-figure.is-ready .assembly-fallback{opacity:0;visibility:hidden}
.assembly-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:900px;margin:0 auto;border-top:1px solid #45484b;padding-top:12px;font-size:.75rem;color:#c8cbd0;line-height:1.5}
.assembly-caption>div{display:flex;align-items:center;gap:15px}
.assembly-degree{color:#ff9a65;font-size:.78rem}
.assembly-toggle{background:transparent;color:#fff;border:0;border-bottom:1px solid #a4a8ad;padding:10px 0;min-height:44px;font-size:.74rem;white-space:nowrap}
.assembly-toggle:hover{color:#ffac83;border-color:#ffac83}
.assembly-note{font-size:.65rem;color:#9ca2a8;text-align:center;margin-top:12px}
.assembly-static{margin-top:24px;width:100%;height:auto}
.mechanism-summary{margin-top:26px;padding-top:24px;gap:60px}
.mechanism-summary h3{font-size:1.45rem}
.mechanism-summary p{font-size:.88rem}
@media(max-width:700px){
.mechanism-section>.section{padding-block:50px 44px}
.mechanism-section .centered-heading>p:not(.eyebrow){font-size:.91rem;line-height:1.65}
.assembly-figure{margin-top:12px}
.assembly-stage{height:200px}
.assembly-caption{align-items:start;gap:15px;font-size:.71rem}
.assembly-caption>div{gap:9px;padding-top:12px;max-width:195px}
.assembly-toggle{font-size:.7rem;white-space:normal;text-align:right;max-width:125px}
.assembly-note{font-size:.62rem;margin-top:13px}
.mechanism-summary{gap:15px;margin-top:22px;padding-top:22px}
.mechanism-summary h3{font-size:1.3rem}
}
@media(prefers-reduced-motion:reduce){.assembly-fallback{transition:none}}
