* {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
}

body {
  margin: 0;
  background: #ccc;
}

article {
  width: 210mm;
  height: 297mm;
  margin: 20px auto;
  position: relative;
}

address {
  position: absolute;
  bottom: 8mm;
  right: 20mm;
}

h1 {
  position: absolute;
  top: 12mm;
  left: 20mm;
  width: 128px;
  height: 128px;
  font-size: 20px;
  letter-spacing: 1px;
  text-align: center;
  padding: 44px 0;
  color: white;
  text-shadow: 1px 1px 1px black;
}

/* background images, border */

article {
  background: url(top-image.png) no-repeat left top;
  background: linear-gradient(to bottom, rgba(0,0,0,0.2), rgba(0,0,0,0) 20%, rgba(0,0,0,0) 80%, rgba(0,0,0,0.2)),
              url(top-image.png) no-repeat left top,
              url(bottom-image.png) no-repeat left bottom;
  background-color: white;
  border-top: 1mm solid red;
  border-bottom: 1mm solid red;
}

h1 {
  background-image: url(logo.png);
  /* filter: drop-shadow(3px 3px 3px black); */
  border-radius: 64px;
  box-shadow: 3px 3px 3px black;
}