Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URL's added here will be added as <link>s in order, and before the CSS in the editor. You can use the CSS from another Pen by using it's URL and the proper URL extention.

+ add another resource

JavaScript

Babel includes JSX processing.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Packages

Add Packages

Search for and use JavaScript packages from npm here. By selecting a package, an import statement will be added to the top of the JavaScript editor for this package.

Behavior

Save Automatically?

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <div class="timeline">
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1520013817300-1f4c1cb245ef?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1987&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">January</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quod amet voluptatum alias reiciendis ex ea voluptatem vel quas, dicta sequi dolorum fugit porro totam facere, omnis dolore. Fuga, pariatur velit.</p>
      <p>Unde, dolorum enim et aperiam quo ipsum animi cupiditate quibusdam soluta quis ea quae, alias maiores consequuntur necessitatibus distinctio inventore aspernatur nisi deserunt? Debitis ipsa neque eum perspiciatis dicta aut!</p>
      <p>Mollitia accusantium necessitatibus tempora quasi magnam quis aliquam aperiam quos, laboriosam, id esse quaerat! Excepturi expedita obcaecati, sunt, blanditiis ipsam debitis consequuntur recusandae sint est, laudantium modi nam nihil totam.</p>
      <p>Consequuntur recusandae aspernatur in voluptatem? Quasi natus sint rem itaque assumenda odit temporibus tempora facere vel iusto nam reiciendis placeat quisquam, in voluptatum fugiat blanditiis earum. Sequi odio cumque commodi.</p>
      <p>Ab natus et maiores sunt labore mollitia libero rerum magni officia possimus culpa doloribus hic minima consequuntur ipsum numquam facilis suscipit, tempora nobis voluptas? Accusamus labore corrupti eius iusto odit.</p>
      <p>Vitae molestiae ullam quas! Totam ad aut molestiae, tempore nulla provident quis maiores neque accusamus consectetur obcaecati praesentium labore aperiam, non laudantium exercitationem magnam quibusdam officia rerum vero ipsum alias!</p>
      <p>Excepturi porro id ipsa, repudiandae perferendis incidunt in dolorem repellat repellendus at voluptatem est quasi eligendi nulla, nobis a voluptate quisquam blanditiis cum ratione voluptatibus quis saepe vel consectetur. Hic.</p>
      <p>Quae incidunt ipsam numquam hic est velit necessitatibus. Distinctio unde illum qui dolorem dolores culpa optio! Asperiores ex dolorem repellat, placeat non perferendis mollitia aut pariatur illum id nostrum rem?</p>
      <p>Corporis ea accusantium tempore blanditiis suscipit adipisci ipsam. Tenetur animi quia necessitatibus, nihil quod sed nisi blanditiis corporis, ratione, quibusdam aperiam maxime debitis. Facilis enim ipsum earum tempora id est.</p>
      <p>In nostrum deserunt est velit quaerat libero quo ullam hic maxime, numquam alias eius cumque doloremque expedita aut quam, amet accusantium culpa, nihil atque corrupti ipsa modi obcaecati. Nesciunt, modi?</p>
      <p>Ullam, perspiciatis? Velit ipsum nemo commodi numquam consectetur aspernatur ab facilis, ut delectus recusandae suscipit, aut et. Earum reprehenderit neque, dolor tempore, iste asperiores hic ipsam necessitatibus nam assumenda impedit!</p>
      <p>A nostrum doloremque vero! Obcaecati quod ipsam temporibus aspernatur mollitia odio doloribus veniam, blanditiis ducimus reprehenderit, officiis nisi placeat at maiores, molestias quibusdam! Pariatur quia magnam, magni ad molestiae qui!</p>
      <p>Placeat nemo sunt mollitia est minima in ullam, voluptates modi nostrum repudiandae earum, exercitationem atque commodi eum necessitatibus, quaerat omnis nulla rem dolores veritatis perspiciatis saepe corporis quas! Earum, reiciendis.</p>
      <p>Repellendus facere, ullam laudantium numquam aut facilis molestiae dolores at, libero ut iste, cum nemo corporis vitae? Quae, ipsum aspernatur ab officiis nulla, soluta nobis laudantium sapiente sint ut reprehenderit!</p>
      <p>Optio animi cum eum modi illum sunt dolores veniam vel harum, fuga perspiciatis eius? Qui, ducimus cum sit et non reiciendis, velit nihil veritatis fuga veniam commodi nesciunt nulla architecto.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1502622796232-e88458466c33?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">February</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1481349518771-20055b2a7b24?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2909&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">March</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1472289065668-ce650ac443d2?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2850&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">April</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1494438639946-1ebd1d20bf85?ixlib=rb-1.2.1&auto=format&fit=crop&w=2847&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">May</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1543363127-e668c16b7b91?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=3025&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">June</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1502741126161-b048400d085d?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">July</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1459411552884-841db9b3cc2a?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1009&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">August</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1523992038393-d5ab874a077e?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2850&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">September</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1528475422887-f47817e10712?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1601&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">October</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1517816428104-797678c7cf0c?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1950&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">November</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
  <div class="timeline-item">
    <div class="timeline-photo">
      <img src="https://images.unsplash.com/photo-1525278083600-68f228a0e0eb?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2851&q=80" />
      <button class="timeline-cta">READ MORE</button>
    </div>
    <div class="timeline-headline">
      <p class="timeline-subtitle">2019</p>
      <h2 class="timeline-title">December</h2>
      <p class="timeline-excerpt">Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
    </div>
    <div class="timeline-content">
      <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae dicta officiis culpa dolor fugiat facilis dolorum atque, eum explicabo at iste iure, repellendus distinctio aliquam praesentium consequuntur. In, quaerat doloribus!</p>
      <p>Eveniet quas dolor, ratione similique cupiditate quae fugiat unde nesciunt consectetur explicabo obcaecati, tempore architecto odit harum dolorum fugit delectus minus, distinctio soluta. Optio accusamus, nihil nesciunt magni et aspernatur.</p>
      <p>Voluptates consequatur officia voluptatibus magnam pariatur, consequuntur quas recusandae perferendis dignissimos inventore asperiores eveniet, eos ipsum saepe quibusdam, deserunt iure. Fugit enim expedita voluptatum harum eligendi suscipit perferendis,
        voluptates voluptate.</p>
      <p>Reiciendis repudiandae porro unde et voluptatum nesciunt ipsum atque assumenda est, iusto corrupti illum dignissimos quis exercitationem. Quia, cumque! Voluptates obcaecati sequi aliquid tenetur voluptas, dicta error laudantium quos facere.</p>
      <p>Illo omnis sit explicabo ipsum. Vel illo eius nesciunt, ipsum voluptatibus atque. Alias laboriosam eius quo cupiditate eaque in, soluta ex, dolorum consequatur expedita cum, velit rerum doloremque enim deleniti!</p>
      <p>Rerum qui accusantium corporis repellendus. Sed necessitatibus temporibus accusamus at! Saepe totam doloribus eveniet modi perspiciatis, neque nesciunt quos, obcaecati suscipit aliquid iste nihil dignissimos atque? Consequatur quidem alias voluptas.</p>
      <p>Architecto enim magni non ab quas, vel vitae illum dolor corrupti excepturi dolorem consequuntur voluptatem iure cupiditate veritatis, suscipit alias quaerat quam eligendi aliquam officia perferendis omnis? At, deserunt quo?</p>
      <p>Ad tempora quas, maiores laudantium, blanditiis recusandae saepe doloribus sit consequuntur unde voluptate officiis commodi architecto ipsa laboriosam pariatur neque? Enim laboriosam molestias soluta autem debitis error necessitatibus blanditiis
        delectus!</p>
      <p>Tenetur eveniet ipsum dignissimos deserunt consequuntur tempora odio quisquam suscipit expedita provident, beatae ipsam! Dolorem sit modi voluptate, distinctio eveniet unde sunt dolorum. Maiores incidunt iste, quisquam minima veritatis inventore!</p>
      <p>Illum rerum ipsum numquam voluptates libero suscipit officia quisquam quae beatae expedita ipsam hic voluptatibus, doloremque accusantium sequi vero rem necessitatibus nemo non aspernatur, reprehenderit totam iusto. Amet, illo ipsum.</p>
      <p>Fugiat illo doloremque aut vero tenetur enim sapiente aspernatur expedita? Voluptatibus, quos. Repellat dignissimos corporis alias pariatur aliquid ullam magnam quia soluta dolor? Excepturi, fugit deleniti? Similique architecto exercitationem libero!</p>
      <p>Quidem assumenda distinctio nostrum iste minima laborum, ipsam, sequi esse eligendi harum facere eius blanditiis hic repellat ab laudantium ullam eaque ut sit animi fuga corrupti. Quaerat quasi aliquid amet!</p>
      <p>In eum accusamus, necessitatibus a corrupti inventore quidem molestiae sint eaque tempore quo ducimus expedita dicta deserunt impedit amet doloremque fugit. Earum illo nam maxime sint quas maiores enim sunt.</p>
      <p>Pariatur deserunt eveniet quae error. Debitis sapiente tempora neque dolores modi voluptatem architecto dicta illum molestias nobis dolorum sint vitae totam, nihil nisi iusto reiciendis ad quam a suscipit repellat?</p>
      <p>Aut unde sed sit ab iure officiis suscipit magni laborum tempore ea quaerat, illo dolorum quisquam, necessitatibus totam est tenetur provident voluptates alias eveniet consequatur ullam magnam. Sapiente, illum in.</p>
    </div>
  </div>
</div>
<div class="timeline-overlay"></div>
<button class="timeline-back">
  <svg viewBox="0 0 24 24"><path fill="none" stroke-width="2" d="M6,12.4 L18,12.4 M12.6,7 L18,12.4 L12.6,17.8" transform="matrix(-1 0 0 1 24 0)"></path></svg>
</button>
              
            
!

CSS

              
                @import url('https://fonts.googleapis.com/css?family=Jura:400,500,600');
@import url('https://fonts.googleapis.com/css?family=K2D:400,500,600');


* { box-sizing: border-box; }
html, body { height: 100%; }

body {
  background-color: #3a3a3a;
  font-family: 'K2D', sans-serif;
}

.timeline {
  width: 100%;
  margin: auto;
  max-width: 760px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  padding-bottom: 100px;
  position: relative;
  
  &:before {
    position: absolute;
    left: 50%;
    height: 100%;
    width: 1px;
    background-color: rgba(255,255,255,.2);
    transition: .6s 1.5s;
    content: "";
  }

  &-overlay {
    width: 100%;
    background-color: darken(#3a3a3a, 5%);
    height: 0;
    position: fixed; 
    top: 0;
    z-index: 5;
    left: 0;
  }
    
  &-headline {
    color: #fff;
    position: absolute;
    display: flex;
    letter-spacing: .4px;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    left: 0;
    width: 100%;
    top: 100%;
    font-size: calc(.2vw + 10px);
    padding: 20px 0 0 0;
  }
  
  &-content {
    display: none;
    position: relative;
    color: #929292;
    padding: 4% 10%;
    font-size: calc(12px + .4vw);
    width: 100%;
    margin: auto;
    line-height: 1.5;
    background-color: darken(#3a3a3a, 5%);
  }
  
  &-title {
    font-family: 'Jura', serif;
    margin: 0;
    font-weight: normal;
    font-size: 2em;
    color: #fff;
    white-space: nowrap;
  }
  
  &-excerpt {
    font-size: 1.1em;
    padding: 0 10px;
    line-height: 1.4;
    font-weight: normal;
    margin-top: 8px;
    font-family: 'K2D';
    color: #929292;
  }
  
  &-item {
    height: 30vh;
    width: 45%;
    position: relative;
    margin: 40px 0;
    &:nth-child(even) { align-self: flex-end; }
  }
  
  &-photo {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 5px;
    position: relative;
    box-shadow: 0 10px 30px rgba(0,0,0, .2);
  }
  
  &-cta {
    position: absolute;
    bottom: 10%;
    left: 50%;
    border: 0;
    pointer-events: none;
    transform: translateX(-50%);
    background: none;
    font-family: 'K2D', sans-serif;
    padding: 6px 10px;
    outline: none;
    cursor: pointer;
    font-size: 12px;
    letter-spacing: 1px;
    opacity: 0;
    color: #fff;
    background-color: rgba(#3a3a3a, .6);
    border-radius: 4px;
  }

  &-photo > img {
    overflow: hidden;
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  
  &-subtitle {
    margin: 0 0 6px 0;
    font-family: 'Jura', sans-serif;
    font-weight: normal;
    font-size: 1em;
    letter-spacing: 2px;
    color: rgba(255,255,255,.3);
  }
 
  &-back { 
    position: fixed;
    right: 20px;
    top: 10px;
    opacity: 0;
    visibility: hidden;
    z-index: 4;
    padding: 5px 10px;
    border: 1px solid rgba(255,255,255,.2);
    background-color: rgba(#3a3a3a, .4);
    border-radius: 4px;
    outline: none;
    display: flex;
    cursor: pointer;
    transition: .4s;
    
    &.is-active {
      opacity: 1;
      top: 26px;
      visibility: visible;
      transition-delay: 2.4s;
    }
  
    &:hover { background-color: rgba(#3a3a3a, .8); }

    & > svg {
      width: 28px;
      stroke: #fff;
    }
  }
  &.is-expanded &-item:not(.is-active) { pointer-events:none; }
  &.is-expanded:before { transition-delay: 0s; opacity: 0; }
  &:not(.is-expanded) &-item:not(.is-active) { cursor: pointer; }
}


              
            
!

JS

              
                let selectedItem,
  itemTL,
  overlayTL,
  scrollTL,
  isExpanded = false;

const timeline = document.querySelector(".timeline");
const items = document.querySelectorAll(".timeline-item");
const itemImages = document.querySelectorAll(
  ".timeline-item > .timeline-photo"
);
const itemHeadlines = document.querySelectorAll(
  ".timeline-item > .timeline-headline"
);
const overlay = document.querySelector(".timeline-overlay");
const backButton = document.querySelector(".timeline-back");

for (item of items) {
  const randomId = Math.random()
    .toString(36)
    .replace(/[^a-z]+/g, "")
    .substr(2, 10);
  item.setAttribute("data-timeline", randomId);

  item.addEventListener("click", e => {
    handleItemClick(randomId);
  });

  item.addEventListener("mouseover", e => {
    if (!isExpanded && e.target.tagName === "IMG") {
      e.target.parentNode.children.length > 1 &&
        TweenMax.fromTo(
          e.target.parentNode.children[1],
          1,
          { opacity: 0, scaleX: 0.5, scaleY: 0.1, y: -70 },
          { opacity: 1, scaleX: 1, scaleY: 1, y: -5, ease: Back.easeOut }
        );
      TweenMax.to(e.target, 30, { scale: 2 });
      TweenMax.to(e.target.parentNode, 4, {
        boxShadow: "0 30px 70px rgba(0,0,0,.45)"
      });
    }
  });

  item.addEventListener("mouseout", e => {
    if (!isExpanded && e.target.tagName === "IMG") {
      e.target.parentNode.children.length > 1 &&
        TweenMax.to(
          e.target.parentNode.children[1],
          1,
          { opacity: 0, scaleX: 1, scaleY: 1, y: 100 }
        );
      TweenMax.to(e.target, 1, { scale: 1 });
      TweenMax.to(e.target.parentNode, 1, {
        boxShadow: "0 10px 30px rgba(0,0,0,.2)"
      });
    }
  });
}

function handleItemClick(id) {
  if (overlayTL !== undefined) {
    overlayTL.progress(0);
    overlayTL.pause();
  }

  if (!isExpanded) {
    isExpanded = true;
    const item = document.querySelector(`[data-timeline=${id}]`);
    const itemHeadline = item.querySelector(".timeline-headline");
    const itemSubTitle = item.querySelector(".timeline-subtitle");
    const itemContent = item.querySelector(".timeline-content");
    const itemPhoto = item.querySelector(".timeline-photo");
    const itemCTA = item.querySelector(".timeline-cta");
    const itemExcerpt = item.querySelector(".timeline-excerpt");
    const itemChildContents = document.querySelectorAll(
      `[data-timeline=${id}] .timeline-content > *`
    );
    const itemPhotoImg = itemPhoto.querySelector("img");
    const unSelectedItems = document.querySelectorAll(
      `[data-timeline]:not([data-timeline=${id}])`
    );
    const unSelectedChildItems = document.querySelectorAll(
      `[data-timeline]:not([data-timeline=${id}]) > *:not(.timeline-photo)`
    );
    const itemOffsetTop = item.getBoundingClientRect().y * -1;
    selectedItem = item;
    TweenMax.to(itemPhotoImg, 1, { scale: 1 });
    
    TweenMax.to(itemCTA, .5, { opacity: 0 });
    TweenMax.to(itemPhoto, 1, { boxShadow: "0 10px 30px rgba(0,0,0, .2)" });

    for (_i of items) {
      _i.classList.remove("is-active");
    }

    timeline.classList.add("is-expanded");
    item.classList.add("is-active");
    backButton.classList.add("is-active");

    itemTL = new TimelineMax({ paused: false });

    itemTL
      .set(timeline, { maxWidth: 760 })
      .set(items, { clearProps: "all" })
      .set(itemSubTitle, { clearProps: "all" })
      .set(itemPhoto, { clearProps: "all" })
      .set(itemHeadline, { clearProps: "all" })
      .to(unSelectedChildItems, 0.3, { y: 40, opacity: 0 })
      .to(
        itemHeadline,
        0.5,
        {
          opacity: 0,
          left: 0,
          top: "30vh",
          width: "100%",
          textAlign: "center"
        },
        "-=.35"
      )
      .set(itemExcerpt, { display: "none" })
      .to(unSelectedItems, 0.2, { opacity: 0 }, "-=.35")
      .add("itemExpand")
      .to(timeline, 0.5, { maxWidth: "100%" }, "itemExpand")
      .to(
        item,
        0.8,
        { y: itemOffsetTop, width: "100%", height: "60vh" },
        "itemExpand"
      )
      .to(itemHeadline, 1, { top: 0, height: "100vh", padding: 0 }, "-=.3")
      .to(itemPhoto, 1, { borderRadius: 0, height: "100vh" }, "itemExpand")
      .add("resize")
      .to(
        itemHeadline,
        1,
        {
          height: 100,
          opacity: 1,
          fontSize: "calc(.4vw + 10px)",
          backgroundColor: "rgba(45, 45, 45, 0.8)"
        },
        "resize"
      )
      .to(itemPhoto, 1, { height: 100 }, "resize")
      .set(itemPhoto, { height: 100, position: "fixed", top: 0 })
      .set(itemHeadline, { position: "fixed", top: 0 })
      .set(item, {
        y: 0,
        height: "auto",
        marginTop: 0,
        clearProps: "transform"
      })
      .set(unSelectedItems, { display: "none" })
      .set(timeline, { paddingBottom: 0 })
      .set(itemContent, { display: "block", top: 100 })
      .set(window, { scrollTo: { y: 0 } })
      .fromTo(itemContent, 0.4, { opacity: 0, y: 70 }, { opacity: 1, y: 0 })
      .staggerFromTo(
        itemChildContents,
        0.7,
        { opacity: 0, y: 20 },
        { opacity: 1, y: 0 },
        0.1,
        "-=.3"
      );
  }
}

backButton.addEventListener("click", () => {
  if (isExpanded) {
    timeline.classList.remove("is-expanded");
    selectedItem.classList.remove("is-active");
    backButton.classList.remove("is-active");
    overlayTL = new TimelineMax({
      paused: false,
      onComplete: () => {
        itemTL.progress(0);
        itemTL.pause();
        TweenMax.staggerFromTo(
          items,
          0.9,
          { opacity: 0, y: 30 },
          { opacity: 1, y: 0 },
          0.04,
          () => {
            isExpanded = false;
          }
        );
        TweenMax.set(itemHeadlines, { clearProps: "all" });
      }
    });

    overlayTL
      .to(selectedItem, 0.3, { opacity: 0 })
      .to(overlay, 0.6, { height: "110vh", ease: Expo.easeOut }, "+=.2")
      .to(overlay, 0.6, { height: 0, top: "100%", ease: Expo.easeOut });
  }
});

              
            
!
999px

Console