header {
    background-image: linear-gradient(180deg, #2FCCFC 0%, #1D71F2 200%);
}

main {
    min-height: calc(100vh - 140px);
}

footer {
    position: relative;
    margin-top: 50px;
}

ol {
    list-style: none;
    counter-reset: mycounter;
}

ol > li {
    counter-increment: mycounter;
    position: relative;
    margin: 5px 0;
    font-size: 15px;
}

ol > li::before {
    content: counter(mycounter);
    --size: 25px;
    position: absolute;
    top: 0;
    left: -30px;
    background: white;
    width: var(--size);
    text-align: center;
    border-radius: var(--size);
    height: var(--size);
    line-height: var(--size);
    box-shadow: 0 0 5px -2px rgba(0,0,0,0.2);
  }

  ol > li > a {
    background: #27a5f7;
    color: #fff;
    padding: 2px 8px 2px 9px;
    margin: 1px 3px 1px -10px;
    display: inline-block;
    border-radius: 5px;
    border: none;
    transition: all 200ms ease;
}

ol > li > a:hover {
    padding-left: 15px;
}