*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}
body{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: #222;
}
.container{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    /* border: 1px solid red; */
    flex-wrap: wrap;
    gap: 40px;
}
.container .card{
        position: relative;
        width: 220px;
        height: 250px;
        background: #2a2a2a;
        display: flex;
        justify-content: center;
        align-items: center;
}
.container .card .percent{
    position: relative;
    width: 150px;
    height: 150px;
   
}
.container .card .percent svg{
    position: relative;
    width: 150px;
    height: 150px;
    transform: rotate(270deg);
}
.container .card .percent svg circle{
    width: 100%;
    height: 100%;
    fill: transparent;
    stroke-width: 2;
    stroke: #191919;
    transform: translate(5px,5px);
}
.container .card .percent svg circle:nth-child(2){
    stroke: var(--cir);
    stroke-dasharray: 440;
    stroke-dashoffset: calc(440 - (440 * var(--num))/ 100);
    animation: fadein 2s linear forwards;
    animation-delay: 2s;
    opacity: 0;
}
@keyframes fadein{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}
.dot{
    position: absolute;
    inset: 5px;
    z-index: 10;
    animation: animatedot 2s linear forwards;
}
@keyframes animatedot{
    0%{
       transform: rotate(0deg); 
    }
    100%{
        transform: rotate(calc(3.6deg * var(--num))); 
     }
}
.dot::before{
    content: '';
    position: absolute;
    top: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--cir);
    box-shadow: 0 0 10px var(--cir),
    0 0 30px var(--cir);
}
.number{
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    animation: fadein 2s linear forwards;
    animation-delay: 2.5s;
    opacity: 0;
}
.number h2{
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-weight: 700;
    font-size: 2.5em;
}
.number h2 span{
    font-weight: 300;
    color: #fff;
    font-size: 0.5em;
}
.number p{
    font-weight: 300;
    font-size: 0.99em;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgb(255, 255, 255,0.75);
}
