.box{ text-align: center; overflow: hidden; box-shadow: 0 0 3px rgba(0,0,0,0.3); position: relative; } .box:before, .box:after{ content: ""; width: 0; height: 0; background: rgba(0,0,0,0.5); position: absolute; top: 5%; left: 5%; transition: all 0.3s ease-in-out; } .box:after{ top: auto; left: auto; bottom: 5%; right: 5%; } .box:hover:before, .box:hover:after{ width: 90%; height: 90%; } .box img{ width: 100%; height: auto; } .box .box-content{ width: 100%; height: 100%; padding-top: 25%; position: absolute; top: 0; left: 0; opacity: 0; z-index: 2; transition: all 0.2s ease 0.3s; } .box:hover .box-content{ opacity: 1; } .box .box-content:before, .box .box-content:after{ content: ""; width: 85%; height: 85%; border: 2px solid transparent; position: absolute; top: 50%; left: 50%; z-index: -1; transform: translateY(-50%) translateX(-50%); transition: all 0.3s ease 0s; } .box .box-content:before{ width: 0; } .box .box-content:after{ height: 0; } .box:hover .box-content:before{ width: 85%; border-top: 2px solid #3dbbff; border-bottom: 2px solid #3dbbff; transition-delay: 0.4s; } .box:hover .box-content:after{ height: 85%; border-left: 2px solid #3dbbff; border-right: 2px solid #3dbbff; transition-delay: 0.4s; } .box .title{ font-size: 20px; font-weight: 700; color: #3dbbff; letter-spacing: 1px; text-transform:uppercase; margin: 0 0 10px; } .box .post{ display: block; font-size: 15px; font-style: italic; color: #fff; margin-bottom: 10px; } .box .icon{ list-style: none; padding: 0; margin: 0; z-index: 999; } .box .icon li{ display: inline-block; } .box .icon a{ display: block; width: 30px; height: 30px; line-height: 30px; border-radius: 15%; background: #fff; font-size: 15px; color: #2d2c2c; text-align: center; margin-right: 5px; transition: all 0.3s ease 0s; } .box .icon a:hover{ background: transparent; color: #3dbbff; border-radius: 50%; box-shadow: 1px 1px 3px #3dbbff, -1px -1px 3px #3dbbff; } @media only screen and (max-width:990px){ .box{ margin-bottom: 30px; } }