<a href="#">
 <svg height="0.8em" width="0.8em" viewBox="0 0 2 1" preserveAspectRatio="none">
  <polyline
        fill="none" 
        stroke="#777777" 
        stroke-width="0.1" 
        points="0.9,0.1 0.1,0.5 0.9,0.9" 
  />
</svg> Home
</a>
<div class="background-wrapper">
  <h1 id="visual">404</h1>
</div>
<p>The page you’re looking for does not exist.</p>
@import url('https://fonts.googleapis.com/css?family=Eczar:800');
@import url('https://fonts.googleapis.com/css?family=Poppins:600');


body {
  font-family: "Poppins";
  height: 100vh;
  background: #121212;
  padding: 1em;
  overflow: hidden;
}

.background-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  user-select: none;
  h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    font-family: "Eczar";
    font-size: 60vmax;
    color: #282828;
    letter-spacing: 0.025em;
    margin: 0;
    transition: 750ms ease-in-out;
  }
}

a {
  border: 2px solid #555;
  padding: 0.5em 0.8em;
  position: fixed;
  z-index: 1;
  color: #555;
  text-decoration: none;
  display: flex;
  align-items: center;
  transition: 150ms;
  svg > polyline {
    transition: 150ms;
  }
  &:hover {
    color: #333;
    background: #dadada;
    border-color:transparent;
    svg > polyline {
      stroke: #000;
    }
    + .background-wrapper > h1 {
      color: #dadada;
    }
  }
}

p {
  color: #dadada;
  font-size: calc(1em + 3vmin);
  position: fixed;
  bottom: 1rem;
  right: 1.5rem;
  margin: 0;
  text-align: right;
  text-shadow: -1px -1px 0 #121212, 1px 1px 0 #121212, -1px 1px 0 #121212, 1px -1px 0 #121212;
  @media screen and (min-width: 340px) {
    width: 70%;
  }
  @media screen and (min-width: 560px) {
    width: 50%;
  }
  @media screen and (min-width: 940px) {
    width: 30%;
  }
  @media screen and (min-width: 1300px) {
    width: 25%;
  }}
View Compiled
const visual = document.getElementById("visual")
const events = ['resize', 'load']

events.forEach(function(e){
  window.addEventListener(e, function(){
    const width = window.innerWidth
    const height = window.innerHeight
    const ratio = 45 / (width / height)
    visual.style.transform = "translate(-50%, -50%) rotate(-" + ratio + "deg)"
  });
});


External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.