.timeline{--tl-gap:clamp(16px, 2vw, 28px);--tl-num-size:46px;--tl-rail-thickness:2px;--tl-rail-inset:14px;--tl-body-gap:18px;--tl-stack-gap:30px;--tl-num-font:1.0625rem;--tl-num-font-long:.8125rem;gap:var(--tl-gap);grid-auto-columns:1fr;grid-auto-flow:column;margin:0;padding:0;list-style:none;display:grid}.timeline>.timeline-step{position:relative}.timeline>.timeline-step:not(:last-child):after{content:"";top:calc(var(--tl-num-size) / 2 - var(--tl-rail-thickness) / 2);left:calc(var(--tl-num-size) + var(--tl-rail-inset));right:calc(var(--tl-rail-inset) - var(--tl-gap));height:var(--tl-rail-thickness);background:var(--border-strong);position:absolute}.timeline>.timeline-step>.timeline-num{width:var(--tl-num-size);height:var(--tl-num-size);border-radius:var(--radius-full);background:var(--color-blue);color:var(--color-white);font-weight:800;font-size:var(--tl-num-font);margin-bottom:var(--tl-body-gap);justify-content:center;align-items:center;display:flex}.timeline>.timeline-step>.timeline-num--long{font-size:var(--tl-num-font-long);letter-spacing:-.01em}.timeline>.timeline-step>.timeline-body>.timeline-title{color:var(--color-blue);margin:0 0 8px;font-size:1rem;font-weight:700;line-height:1.25}.timeline>.timeline-step>.timeline-body>.timeline-text{color:var(--color-body);font-size:.875rem;line-height:1.55}.timeline>.timeline-step>.timeline-body>.timeline-text p{margin:0 0 10px}.timeline>.timeline-step>.timeline-body>.timeline-text>:last-child{margin-bottom:0}.timeline>.timeline-step>.timeline-body>.timeline-text strong{color:var(--color-blue)}@media (width<=860px){.timeline{grid-auto-flow:row;gap:0}.timeline>.timeline-step{grid-template-columns:var(--tl-num-size) 1fr;column-gap:var(--tl-body-gap);padding-bottom:var(--tl-stack-gap);align-items:start;display:grid}.timeline>.timeline-step:last-child{padding-bottom:0}.timeline>.timeline-step:not(:last-child):after{top:var(--tl-num-size);left:calc(var(--tl-num-size) / 2 - var(--tl-rail-thickness) / 2);width:var(--tl-rail-thickness);height:auto;bottom:0;right:auto}.timeline>.timeline-step>.timeline-num{margin-bottom:0}.timeline>.timeline-step>.timeline-body{grid-column:2}}
