.story-timeline{padding-top:90px;padding-bottom:100px;border-top:1px solid var(--line);margin-top:60px}
.timeline-caption{display:flex;justify-content:space-between;gap:20px;margin-bottom:42px}
.story-timeline>h2{font-size:clamp(48px,8.5vw,112px);line-height:.98;max-width:900px;margin:0}
.story-timeline>h2>span{color:#354eff}
.timeline-intro{font-size:16px;line-height:1.8;color:#566384;max-width:530px;margin:28px 0 0}
.timeline-route{position:relative;border-top:1px solid var(--line);margin-top:50px;padding-top:65px;--route-length:calc(100% - 65px);--route-progress:0px}
.timeline-route ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:125px}
.timeline-track{position:absolute;top:75px;left:27px;width:1px;height:var(--route-length);background:#bdc9e5;overflow:hidden}
.timeline-fill{display:block;width:100%;height:var(--route-progress);background:linear-gradient(#28c9ff,#354eff)}
.story-milestone{position:relative;display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2.5fr);gap:38px;padding-left:100px}
.milestone-dot{position:absolute;left:20px;top:3px;width:15px;height:15px;border:1px solid #8495c0;border-radius:50%;background:#eef1fd;transition:background .4s,box-shadow .4s}
.milestone-dot:after{content:'';position:absolute;inset:4px;border-radius:50%;background:#96a7ce}
.story-milestone.is-reached .milestone-dot{border-color:#354eff;box-shadow:0 0 0 5px #354eff12}
.story-milestone.is-reached .milestone-dot:after{background:#354eff}
.milestone-date{display:flex;flex-direction:column;gap:12px;font:13px QixMono,monospace;letter-spacing:.08em;color:#344770;padding-top:2px}
.milestone-date span+span{font-size:11px;color:#7986a5}
.milestone-copy h3{font-size:clamp(32px,4vw,54px);line-height:1.06;margin:0 0 20px}
.milestone-copy p{font-size:16px;line-height:1.85;color:#566384;max-width:630px;margin:0 0 22px}
.milestone-copy .text-link{font-size:12px;gap:24px}
.milestone-copy .text-link:focus-visible{outline:2px solid #354eff;outline-offset:6px}
.timeline-qbit{position:absolute;left:27px;top:75px;z-index:2;pointer-events:none;transform:translate(-50%,calc(var(--route-progress) - 50%))}
.timeline-qbit-float{position:relative;width:62px;height:46px;border:1px solid #88c9ff;border-radius:18px;background:linear-gradient(145deg,#80ddff,#3868ff 48%,#542bd0);box-shadow:inset 0 3px 5px #ffffff80,0 8px 20px #354eff30;display:grid;place-items:center;animation:timeline-hover 3.4s ease-in-out infinite}
.timeline-qbit-face{width:44px;height:25px;border-radius:10px;background:#111e46;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:inset 0 2px 4px #040b22}
.timeline-qbit-face i{width:6px;height:9px;border-radius:4px;background:#77f1ff;box-shadow:0 0 8px #37d5ff}
.timeline-qbit-antenna{position:absolute;width:2px;height:10px;background:#597fff;top:-10px;left:30px}
.timeline-qbit-antenna:before{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:#5ee7ff;top:-4px;left:-2px;box-shadow:0 0 9px #35caff}
.timeline-qbit-beam{position:absolute;top:100%;left:5px;width:50px;height:65px;clip-path:polygon(30% 0,70% 0,100% 100%,0 100%);background:linear-gradient(#42c7ff33,transparent)}
#story-reader{scroll-margin-top:130px}
.qbit-intro h2{font-size:clamp(38px,4.5vw,62px);line-height:1.08;margin:20px 0}
.qbit-intro .story-context h3:not(:first-child){margin-top:24px}
.qbit-intro>.text-link{margin-top:28px;font-size:14px}
@keyframes timeline-hover{50%{transform:translateY(-7px) rotate(-4deg)}}
.motion-paused .timeline-qbit-float{animation-play-state:paused}
.timeline-route:not(.timeline-in-view) .timeline-qbit-float{animation-play-state:paused}
@media(max-width:760px){.story-timeline{padding-top:50px;padding-bottom:65px;margin-top:35px}.timeline-caption{margin-bottom:30px}.timeline-caption .section-label{font-size:9px}.timeline-route{padding-top:45px;margin-top:32px}.timeline-route ol{gap:66px}.story-milestone{grid-template-columns:1fr;gap:16px;padding-left:65px}.milestone-date{flex-direction:row;align-items:center;gap:15px}.milestone-copy h3{font-size:34px}.milestone-copy p{font-size:14px}.timeline-track{left:16px;top:55px}.milestone-dot{left:9px}.timeline-qbit{left:16px;top:55px}.timeline-qbit-float{width:42px;height:34px;border-radius:13px}.timeline-qbit-face{width:32px;height:19px;gap:7px}.timeline-qbit-face i{width:4px;height:7px}.timeline-qbit-antenna{left:20px}.timeline-qbit-beam{left:1px;width:40px;height:48px}}
@media(prefers-reduced-motion:reduce){.timeline-qbit{display:none}.milestone-dot{transition:none}}
