.thumbnail { width: 100%; max-width: 300px; overflow: hidden; position: relative; .image { width: 100%; padding-bottom: 100%; position: relative; background-repeat: no-repeat; background-color: $grey; background-position: 50% 50%; background-size: cover; border-radius: 3px; } .zoom { @include animate(); display: none; position: absolute; bottom: 5px; right: 5px; z-index: 1; padding: 6px; border-radius: 100%; background: rgba(0,0,0,0.4); font-size: 10px; cursor: pointer; color: #FFFFFF; &:hover { background: #000000; } } &.small { max-width: 50px; } &.circle { .image { border-radius: 50%; } .zoom { bottom: 0; right: 0; } } &:hover { .zoom { display: block; } } } .parallax { height: 50vh; width: 100%; overflow: hidden; background: $dark_grey; position: relative; canvas { width: 110%; height: 110%; opacity: 0; position: absolute; top: -5%; left: -5%; &.loaded { opacity: 1; } } &.blur { canvas { @include blur(); } } }