.sticky-slide {
  background: hsl(265 100% 47%);
  color: white;
  
  height: 80vh;
  max-height: 40ex;
  border-radius: 1rem;
  overflow-y: auto;
}
  
  .sticky-slide > dl {
    margin: 0 0 1rem;
    display: grid;
    grid-template-columns: 5ex 1fr;
    align-items: center;
  }
  
  .sticky-slide > dl dt {
      position: -webkit-sticky;
      position: sticky;
      top: .5rem;
      left: .5rem;
      grid-column: 1;

      display: inline-flex;
      align-items: center;
      justify-content: center;
      
      height: 4ex;
      width: 4ex;
      border-radius: 50%;
      
      font-weight: bold;
      background: hsl(265 100% 27%);
      color: hsl(270 50% 80%);
      transition: 
        background-color .5s cubic-bezier(.5, 0, .5, 1),
        color .5s cubic-bezier(.5, 0, .5, 1);
    }
  
  .sticky-slide > dl dt.stuck {
        background: white;
        color: hsl(265 100% 27%);
      }
  
  .sticky-slide > dl dd {
      grid-column: 2;
      margin: 0;
      padding: .75rem;
    }
  
  .sticky-slide > dl:first-of-type > dd:first-of-type {
    margin-top: .25rem;
  }

.sentinal {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  width: 6ex;
  height: 6ex;
}

body {
  display: grid;
  place-items: center;
  min-height: 100vh;
  font-family: system-ui;
}