/* Mechanical doll, generous control, no decorative captions. */
.hero-visual{height:620px}
.hero-visual .model-stage{inset:-18px -20px 73px}
.hero-visual .model-fallback{width:75%;max-width:360px;mix-blend-mode:normal}
.hero-visual .model-layers{display:none}
.hero-visual .model-toggle{position:relative;overflow:hidden;min-height:54px;padding:14px 24px;border:1px solid #809bda4f;border-radius:16px;background:linear-gradient(130deg,#1a2437dc,#111827ec);box-shadow:inset 0 1px #bcd0ff15,0 5px 25px #0002;color:#cfddf8;font-size:15px;font-weight:550;gap:14px}
.hero-visual .model-toggle svg{width:19px;height:19px}
.hero-visual .model-toggle:after{content:'';position:absolute;bottom:0;left:0;width:calc(var(--assembly-progress,0)*100%);height:2px;background:linear-gradient(90deg,#396de9,#6ddced,#c0a3ff);opacity:.75}
.hero-visual .model-toggle:hover{border-color:#8aaaff9c;background:linear-gradient(130deg,#233249,#172033);color:white}
.hero-visual .model-controls{bottom:17px}
@media(max-width:1100px){.hero-visual{height:535px}.hero-visual .model-stage{inset:-15px -22px 72px}}
@media(max-width:760px){.hero-visual{height:470px;margin:24px -5px 22px}.hero-visual .model-stage{inset:-5px -14px 72px}.hero-visual .model-fallback{width:64%;max-width:290px}.hero-visual .model-toggle{font-size:14px;min-height:52px;padding:13px 21px}.hero-visual .model-controls{bottom:15px}}
@media(max-width:380px){.hero-visual{height:425px}.hero-visual .model-stage{inset:-5px -13px 72px}}
@media(prefers-reduced-motion:reduce){.hero-visual .model-toggle{transition:none}}
