body {
background-color:#eee;
}
* {
margin:0;
padding:0;
font-family:"HPE";
}
.wrap {
margin:0 auto;
width:1000px;
max-width:1000px;
}
.tile {
width:400px;
height:300px;
margin:20px;
background-color:#99aeff;
display:inline-block;
background-size:cover;
position:relative;
cursor:pointer;
transition:all 0.4s ease-out;
box-shadow:0px 35px 77px -17px rgba(0,0,0,0.44);
overflow:hidden;
color:white;
}
.tile img {
height:100%;
width:100%;
position:absolute;
top:0;
left:0;
z-index:0;
transition:all 0.4s ease-out;
}
.tile .text {
z-index:99;
position:absolute;
padding:30px;
height:calc(100% - 60px);
}
.tile h1 {
font-weight:300;
text-shadow:2px 2px 10px rgba(0,0,0,0.3);
}
.tile h2 {
font-weight:100;
margin-top:20px;
font-style:italic;
transform:translateX(200px);
}
.tile p {
font-weight:300;
margin-top:20px;
line-height:25px;
transform:translateX(-200px);
transition-delay:0.2s;
}
.animate-text {
opacity:0;
transition:all 0.6s ease-in-out;
}
.tile:hover {
box-shadow:0px 35px 77px -17px rgba(0,0,0,0.64);
transform:scale(1.05);
}
.tile:hover img {
opacity:0.2;
}
.tile:hover .animate-text {
transform:translateX(0);
opacity:1;
}
.dots {
position:absolute;
bottom:20px;
right:30px;
margin:0 auto;
width:30px;
height:30px;
color:currentColor;
display:flex;
flex-direction:column;
align-items:center;
justify-content:space-around;
}
.dots span {
width:5px;
height:5px;
background-color:currentColor;
border-radius:50%;
display:block;
opacity:0;
transition:transform 0.4s ease-out,opacity 0.5s ease;
transform:translateY(30px);
}
.tile:hover span {
opacity:1;
transform:translateY(0px);
}
.dots span:nth-child(1) {
transition-delay:0.05s;
}
.dots span:nth-child(2) {
transition-delay:0.1s;
}
.dots span:nth-child(3) {
transition-delay:0.15s;
}