.thumbnail { width: 100%; max-width: 300px; overflow: hidden; position: relative; .image { width: 100%; padding-bottom: 100%; position: relative; background-repeat: no-repeat; background-color: lighten(colour(dark_grey), 2%); background-position: 50% 50%; background-size: cover; border-radius: 3px; .light-theme & { background-color: colour(faint_grey); } } .zoom { @include animate(); display: none; position: absolute; bottom: 5px; right: 5px; z-index: 1; padding: 10px; border-radius: 100%; background: rgba(0,0,0,0.4); font-size: 12px; cursor: pointer; color: #FFFFFF; border: 0; &:hover { background: colour(black); } } &.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: colour(dark_grey); position: relative; canvas { width: 110%; height: 110%; opacity: 0; position: absolute; top: -5%; left: -5%; &.loaded { opacity: 1; } } &.blur { canvas { @include blur(); } } .light-theme & { background: colour(white); } }