body {
    margin: 0;
    padding:0;
    background: #f6f6f6;
  }
  
  ul {
    display: flex;
    position: absolute;
    top: 50%;
    left: 43%;
    transform: translate(-50%, -50%);
  }
  
  ul li {
    list-style: none;
  }
  
  ul li a {
    width: 60px;
    height: 60px;
    background-color: #989898;
    text-align: center;
    line-height: 60px;
    font-size: 35px;
    margin: 0 0px;
    display: block;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    border: 3px solid #fff;
    z-index: 1;
  }
  
  ul li a .icon {
    position: relative;
    color: #000000;
    transition: .5s;
    z-index: 3;
  }
  
  ul li a:hover .icon {
    color: #fff;
    transform: rotateY(360deg);
  }
  
  ul li a:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f00;
    transition: .5s;
    z-index: 2;
  }
  
  ul li a:hover:before {
    top: 0;
  }
  

  
  
  ul li:nth-child(2) a:before{
    background: #ff0000;
  }
  
  ul li:nth-child(3) a:before {
    background: #000000;
  }
ul li:nth-child(1) a:before
    { width:100px; height:100px;
    background: #f09433; 
  background: -moz-linear-gradient(45deg, #f09433 0%, #e6683c 25%, #ff1538 50%, #cc2366 75%, #bc1888 100%); 
  background: -webkit-linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1818 100%); 
  background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%); 
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f09433', endColorstr='#bc1888',GradientType=1 );
    }
