/* Timeline Styles
   --------------------------------------------------- */
 
/* Global Styling */
 
.timeline-list { grid-gap:2rem 4rem; clear:both; display:grid; margin-bottom:2rem; margin-top:2rem; position:relative; z-index:2; }
 
.timeline-list:before { border-left:3px solid var(--red); bottom:0; content:""; display:block; left:0; position:absolute; top:0; transform:translateX(-50%); }
 
.timeline-list:after { background:var(--red); content:""; display:block; height:3px; left:-.375em; position:absolute; width:.75em; }
 
.timeline-item { margin-left:2em; position:relative; }
 
/*.timeline-item::before { content:''; position:absolute; display:block; top:2rem; left:-2rem; width:1rem; height:1rem; border-radius:1rem; background:var(--red); transform:translateX(-50%) translateY(-50%); }*/
 
.timeline-item .card-image { background:#000; overflow:hidden; }
 
.timeline-item .card-image img { opacity:.95; transition:transform .6s ease; }
 
.timeline-item:after { border-top:5px dotted var(--red); content:""; display:block; height:5px; left:-2rem; position:absolute; right:100%; top:1.9rem; z-index:-1; }
 
.timeline-item .card-body { padding:2em; }
 
.timeline-date { background:#fff; color:#333; display:inline-block; font-size:1.325rem; margin-bottom:.75rem; padding:.25rem .75rem; }
 
.card-body .timeline-date { display:block; margin-bottom:.25rem; margin-top:-3rem; position:absolute; z-index:5; }
 
.card-wrapper { background:var(--warm-white); }
 
.card-title { color:#0c2340; font-size:1.8rem; margin-top:.25rem; }
 
@media print,screen and (min-width:48em) {
  .timeline-list { grid-template-columns:repeat(2, minmax(0,50%)); }
}
 
/* Larger Screens and Print */
 
@media print,screen and (min-width:60em) {
  .timeline-list:before { left:50%; }
  .timeline-list:after { left:50%; transform:translateX(-50%); }
  
  .timeline-item { margin-left:0; }
    .timeline-item:nth-of-type(odd):before { left:auto; right:-3rem; }
    .timeline-item:nth-of-type(odd):after { left:100%; right:-2rem; }
    
  .timeline-item:nth-of-type(2n) { margin-top:3rem; }
}
 
/* 1280 */
 
@media screen and (min-width:80em) {
  .timeline-list { grid-gap:2rem 10rem; margin-top:3rem; }
  .timeline-item:after,.timeline-item:before { left:-5rem; }
  .timeline-item:nth-of-type(2n) { margin-top:5rem; }
  .timeline-item:nth-of-type(odd):before { left:auto; right:-6rem; }
  .timeline-item:nth-of-type(odd):after { left:100%; right:-5rem; }
}