body {background-color:#333;}
.clearfix {clear:both;}
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
ul {width:400px; position:absolute; top:50%; left:50%; margin:-55px 0 0 -200px; }
ul li {list-style:none; float:left; }
.icon {color:#fff; margin: 0 0 0 30px; border-radius:50px; padding:10px; background-color:rgba(255,255,255,0); transition:all .5s ease;}
.icon a {width:32px; height:32px; display:block; position:relative; color:#fff;}
.icon a:after {box-sizing:content-box; border-radius:50%; content:""; height:100%; width:100%; box-shadow:0 0 0 1px #fff; padding:8px; position:absolute; top:-8px; left:-8px; opacity:1; transition:all .25s ease;}
.icon:hover {background-color:rgba(255,255,255,1);}
.icon:hover a {color:#333;}
.icon:hover a:after {padding:12px; left:-12px; top:-12px; box-shadow:0 0 0 2px #fff;}
.fa-home {font-size:32px}
.fa-envelope {font-size:26px; margin:2px 0 0 3px;}
.fa-gears {font-size:26px; margin:3px 0 0 1px;}
.fa-shopping-cart {font-size:28px; margin:2px 0 0 2px;}