a {
    position: relative;
    display: inline-block;

    text-decoration: none;
    color: inherit;

    transition:
        opacity .55s cubic-bezier(.22,1,.36,1);
}

a::after{
    content:"";

    position:absolute;

    left:50%;
    bottom:-3px;

    width:0;
    height:1px;

    background:currentColor;

    opacity:.45;

    transition:
        width .55s cubic-bezier(.22,1,.36,1),
        left .55s cubic-bezier(.22,1,.36,1);
}

a:hover{
    opacity:.75;
}

a:hover::after{
    width:100%;
    left:0;
}

a:active{
    opacity:.45;
}

a{
    cursor:none;
}
