.cycle-scroll{position:relative}
.cycle-experience{position:sticky;top:105px;background:#e9eddf;padding-bottom:8px}
.cycle-experience:after{content:'';display:block;height:3px;background:#ac902f;transform-origin:left;transform:scaleX(var(--cycle-progress,0));margin-top:12px}
.cycle-stage{min-height:0;margin-top:18px}
.cycle-panel{height:clamp(340px,calc(100dvh - 265px),560px);min-height:0}
.cycle-panel figure{min-height:0;height:100%}
.cycle-copy{padding:30px 38px;align-self:center}
.cycle-copy h3{font-size:clamp(30px,3vw,46px)}
.cycle-copy p{font-size:18px;line-height:1.5}
.cycle-controls{margin-top:14px}
.timeline button{transform:translate(var(--mouse-x,0px),var(--mouse-y,0px));transition:transform .3s ease-out,color .3s,background .3s;border-radius:12px 12px 0 0}
.timeline button:hover,.timeline button:focus-visible{color:#153e2e;background:#dce4cd}
.timeline button:hover:after,.timeline button:focus-visible:after{box-shadow:0 0 0 8px #d0d9b9;background:#ab8a14}
@media(max-width:760px){
 .cycle-experience{top:83px}
 .cycle-tabs{gap:20px}.cycle-tabs button{font-size:15px;padding:10px 0}
 .cycle-panel{height:calc(100dvh - 225px);min-height:380px;grid-template-columns:1fr;grid-template-rows:32% 68%;border-radius:12px 55px 12px 12px}
 .cycle-panel figure{height:100%;min-height:0}.cycle-panel figcaption{font-size:20px;bottom:12px}
 .cycle-copy{padding:18px 22px;min-height:0}.cycle-copy h3{font-size:28px;margin:10px 0}.cycle-copy p{font-size:16px;line-height:1.4}.cycle-copy .eyebrow{font-size:10px}.cycle-line{display:none}
 .cycle-controls{margin-top:10px}.cycle-controls p{font-size:13px}
}
@media(max-height:640px) and (min-width:761px){.cycle-experience{top:85px}.cycle-panel{height:calc(100dvh - 220px);min-height:260px}.cycle-copy{padding:18px 25px}.cycle-copy h3{font-size:28px;margin:10px 0}.cycle-copy p{font-size:16px}.cycle-line{display:none}}
html[data-motion=reduced] .timeline button{transform:none!important}
