﻿body {
    margin: 0;
    padding: 0;
    background: #FFF;
}

.ring {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100px;
    height: 100px;
    background: transparent;
    border: 3px solid #FFF;
    border-radius: 50%;
    text-align: center;
    line-height: 100px;
    font-family: sans-serif;
    font-size: 20px;
    color: #045FC6;
    text-transform: uppercase;
    box-shadow: 0 0 20px rgba(0,0,0,.5);
}

    .ring:before {
        content: '';
        position: absolute;
        top: -3px;
        left: -3px;
        width: 100%;
        height: 100%;
        border: 3px solid transparent;
        border-top: 3px solid #045FC6;
        border-right: 3px solid #045FC6;
        border-radius: 50%;
        animation: animateC 2s linear infinite;
    }

span {
    display: block;
    position: absolute;
    top: calc(50% - 2px);
    left: 50%;
    width: 50%;
    height: 4px;
    background: transparent;
    transform-origin: left;
    animation: animate 2s linear infinite;
}

@keyframes animateC {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes animate {
    0% {
        transform: rotate(45deg);
    }

    100% {
        transform: rotate(405deg);
    }
}
