.video-container { background: var(--color-fog); > div { margin: calc(20 * var(--variable-px)) auto; width: 100%; max-width: 800px; } } #roadmap { width: 100%; text-align: center; } .roadmap { margin: auto; margin-top: 20px; padding: 0 16px; .feature-icons { flex-direction: column; gap: 0; width: 100%; margin-bottom: 0; .feature-icon { position: relative; padding-left: calc(16px + 8px); &::before { content: ""; position: absolute; left: 0; width: 4px; height: 100%; background: #ddd; } &:first-of-type::before { bottom: 0; height: 50%; } &:last-of-type::before { top: 0; height: 50%; } &::after { content: ""; position: absolute; left: calc((24px - 4px) / -2); width: 24px; height: 24px; border-radius: 24px; } &[data-year]::after { content: attr(data-year); width: auto; line-height: 1.4; text-indent: 28px; padding-right: 12px; } &.complete::after { background: var(--color-seaside); background-image: url('data:image/svg+xml,'); background-repeat: no-repeat; background-position: 4px center; } &.ongoing::after { background: var(--color-lemon); background-image: url('data:image/svg+xml,'); background-repeat: no-repeat; background-position: 4px center; } &:not(.complete, .ongoing)::after { background: #ddd; background-image: url('data:image/svg+xml,'); background-repeat: no-repeat; background-position: 4px center; } &.heading { background: none; h3 { width: 100%; text-align: center; } } } } }