.timeline { list-style: none; padding: 20px 0 20px; position: relative; margin-top: 70px; } ul.timeline:before { display: none; } ul .timeline { max-width: 100%; } .timeline:before { top: 0; bottom: 0; position: absolute; content: ""; width: 3px; background-color: #d9d9d9; margin-left: -1.5px; left: 20px; } .timeline > li { position: relative; padding-left: 55px; margin-top: -30px; } .timeline > li:after, .timeline > li:after { content: ""; display: table; clear: both; } .timeline > li .panel { float: left; border-radius: 10px; overflow: hidden; position: relative; text-align: left; top: -40px; background-color: var(--bg-primary); padding: 25px; } .timeline > li > .panel > p { padding: 0 20px 10px; color: var(--text-secondary); } .timeline > li .panel summary { display: block; outline: none; padding: 20px; margin-bottom: 0; transition: all 600ms cubic-bezier(0.23, 1, 0.32, 1); transition-property: margin; font-weight: 600; font-size: 28px; } .timeline > li > .icon { color: #d9d9d9; width: 20px; height: 20px; line-height: 50px; font-size: 2.5em; text-align: center; position: absolute; left: 20px; margin-left: -10px; z-index: 2; border-radius: 50%; background-color: var(--bg-primary); border: 4px solid var(--theme-color-highlight); margin-top: 20px; } .timeline > li > .icon:before { content: ""; } @media (min-width: 800px) { .timeline:before { left: 50%; } .timeline > li { padding-left: 0; } .timeline > li .panel { width: 50%; } .timeline > li:not(:nth-child(even)) { padding-right: 90px; } .timeline > li:nth-child(even) { padding-left: 90px; } .timeline > li:nth-child(even) > :nth-child(even) { float: right; } .timeline > li > .icon { left: 50%; } }