JSFiddle - React, Tailwind, and code Playground
HTML
<div class="wrap">
<div class="top"></div>
<div class="block"></div>
<div class="bottom"></div>
</div>
CSS
.wrap {
width: 300px;
height: 300px;
margin: 80px 0 0 80px;
-webkit-transition-duration: 5s;
-o-transition-duration: 5s;
-moz-transition-duration: 5s;
}
.wrap:hover {
-moz-transform: rotate(720deg);
-o-transform: rotate(720deg);
-webkit-transform: rotate(720deg);
transform: rotate(720deg);
}
.top, .block, .bottom {
width: 300px;
height: 100px;
box-shadow: 0px 0px 8px 2px #dfdfdf;
position: relative;
}
.top, .bottom {
width: 100px;
height: 100px;
margin-left: 100px;
}
.top::after, .bottom::after {
content: "";
position: absolute;
width: 100%;
height: 10px;
background: #fff;
bottom: -5px;
z-index: 5;
}
.bottom::after {
top: -5px;
}