.timeline__heading{margin-bottom:3rem}.timeline__layout{align-items:start;display:grid;gap:4rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.timeline--image-right .timeline__media{order:2}.timeline__media{position:sticky;top:calc(var(--toc-offset, 0px) + 2rem)}.timeline__media-inner{aspect-ratio:1/1;margin:0 auto;max-height:calc(100vh - var(--toc-offset, 0px) - 4rem);position:relative}.timeline__image{filter:grayscale(1) contrast(1.15);height:100%;inset:0;object-fit:contain;opacity:0;position:absolute;transform:scale(1.06);transition:opacity .6s cubic-bezier(.7,0,.3,1),transform .6s cubic-bezier(.7,0,.3,1),filter .6s ease;width:100%}.timeline__image.is-active{filter:none;opacity:1;transform:none}.timeline__steps{list-style:none;margin:0;padding:0 0 0 2.5rem;position:relative}.timeline__step{min-height:55vh;padding-bottom:4rem;position:relative}.timeline__step:last-child{padding-bottom:0}.timeline__step:not(:last-child):before{background:var(--navy);bottom:-.6rem;content:"";left:calc(-2.5rem + 6px);position:absolute;top:.6rem;width:2px}.timeline__dot{background:var(--white);border:2px solid var(--navy);height:12px;left:calc(-2.5rem + 1px);position:absolute;top:.35rem;transform:rotate(45deg);transition:background .3s ease,transform .3s ease;width:12px}.timeline__step.is-active .timeline__dot{background:var(--main);border-color:var(--main);transform:rotate(45deg) scale(1.35)}.timeline__content>:last-child{margin-bottom:0}.timeline__content .timeline-step-number{color:var(--main);font-size:.75rem;font-weight:600;letter-spacing:.12em;margin-bottom:.5rem;text-transform:uppercase}.timeline.is-ready .timeline__step{opacity:.4;transition:opacity .4s ease}.timeline.is-ready .timeline__step.is-active{opacity:1}.timeline__mobile-image{display:none}@media (prefers-reduced-motion:reduce){.timeline.is-ready .timeline__step,.timeline__dot,.timeline__image{transition:none}}@media (max-width:767px){.timeline__layout{grid-template-columns:minmax(0,1fr)}.timeline__media{display:none}.timeline__step{min-height:0;padding-bottom:3rem}.timeline.is-ready .timeline__step{opacity:1}.timeline__mobile-image{display:block;height:auto;margin-bottom:1.25rem;width:70%}}