@font-face {
  font-family: 'Archer';
  src: url("../assets/Archer-Medium.woff");
  font-weight: normal;
}

body {
  margin: 0;
  overflow: hidden;
  font-family: 'Archer', times, serif;
  text-rendering: optimizeLegibility;
}

#wrapper {
  width: 300px;
  height: 600px;
  border: 1px solid black;
  background-color: #0078c1;
  box-sizing: border-box;
  position: relative;
  display: block;
  overflow: hidden;
  color: white;
}

#wrapper:hover .cta {
  background-color: white;
  color: #0078c1;
}

.imageGrid img {
  position: absolute;
}

.imageGrid img.out {
  opacity: 0;
}

.topLeftImages {
  position: absolute;
  top: 150px;
  left: 0;
}

.topRightImages {
  position: absolute;
  top: 150px;
  left: 150px;
}

.bottomLeftImages {
  position: absolute;
  top: 310px;
  left: 0;
}

.bottomRightImages {
  position: absolute;
  top: 310px;
  left: 150px;
}

.text {
  position: absolute;
  opacity: 0;
  left: 50%;
  transform: translateX(-50%);
  top: 500px;
}

.text.in {
  opacity: 1;
}

.logo {
  width: 238px;
  height: 88px;
  position: absolute;
  top: 32px;
  left: 30px;
}

.cta {
  font-size: 16px;
  padding: 4px 8px;
  border: 1px solid white;
  font-weight: 900;
  position: absolute;
  bottom: 25px;
  left: 92px;
}

.topBlueBackground {
  position: absolute;
  top: 122px;
  background-color: #0078c1;
  width: 100%;
  height: 0;
  transition: height .5s ease-in-out;
}

.topBlueBackground.in {
  height: 297px;
}

.finalFrame {
  position: absolute;
  bottom: 70px;
  background-color: #0078c1;
  width: 100%;
  height: 0;
  transition: height .5s ease-in-out;
  overflow: hidden;
  text-align: center;
}

.finalFrame .finalWrap {
  position: absolute;
  width: 100%;
  top: 27px;
  transition: bottom .5s ease-in-out;
}

.finalFrame.in {
  height: 380px;
}

.finalFrame .award {
  position: absolute;
  top: 15px;
  left: 35px;
  opacity: 0;
}

.finalFrame .award.in {
  opacity: 1;
}

.finalFrame .text {
  top: 214px;
}
