<ol style="--length: 5" role="list">
<li style="--i: 1">
<h3>Discovery and assessment</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Adipiscing diam donec adipiscing tristique risus.</p>
</li>
<li style="--i: 2">
<h3>Information gathering and analysis</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Adipiscing diam donec adipiscing tristique risus.</p>
</li>
<li style="--i: 3">
<h3>Creating your claim</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Adipiscing diam donec adipiscing tristique risus.</p>
</li>
<li style="--i: 4">
<h3>Approvals and submission</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Adipiscing diam donec adipiscing tristique risus.</p>
</li>
<li style="--i: 5">
<h3>Receiving your benefit</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Adipiscing diam donec adipiscing tristique risus.</p>
</li>
</ol>
@import url("https://fonts.googleapis.com/css?family=Montserrat:400,700");
* {
box-sizing: border-box;
}
body {
--h: 212deg;
--l: 43%;
--brandColor: hsl(var(--h), 71%, var(--l));
font-family: Montserrat, sans-serif;
margin: 0;
background-color: whitesmoke;
}
p {
margin: 0;
line-height: 1.6;
}
ol {
list-style: none;
counter-reset: list;
padding: 0 1rem;
}
li {
position: relative;
counter-increment: list;
max-width: 45rem;
margin: 2rem auto;
padding: 2rem 1rem 1rem;
box-shadow: 0.1rem 0.1rem 1.5rem rgba(0, 0, 0, 0.3);
border-radius: 0.25rem;
overflow: hidden;
background-color: white;
}
li::before {
--stop: calc(100% / var(--length) * var(--i));
--l: 62%;
--l2: 88%;
--c1: hsl(var(--h), 71%, var(--l));
--c2: hsl(var(--h), 71%, var(--l2));
content: '';
display: block;
width: 100%;
height: 1rem;
position: absolute;
top: 0;
left: 0;
background: linear-gradient(to right, var(--c1) var(--stop), var(--c2) var(--stop));
}
h3 {
display: flex;
align-items: baseline;
margin: 0 0 1rem;
color: var(--brandColor);
}
h3::before {
display: flex;
justify-content: center;
align-items: center;
flex: 0 0 auto;
margin-right: 1rem;
width: 3rem;
height: 3rem;
content: counter(list);
padding: 1rem;
border-radius: 50%;
background-color: var(--brandColor);
color: white;
}
@media (min-width: 40em) {
li {
margin: 3rem auto;
padding: 3rem 2rem 2rem;
}
h3 {
font-size: 2.25rem;
margin: 0 0 2rem;
}
h3::before {
margin-right: 1.5rem;
}
}