/* Special Thanks to Kevin Powell */
:root {
  --level-one: translateZ(3rem);
  --level-two: translateZ(6rem);
  --level-three: translateZ(9rem);
  --clr: #80B3FD;
}

.cardf {
	margin: 20px;
}

.card__content {
  text-align: center;
  position: relative;
  padding: 15em 5em;
  -webkit-transition: -webkit-transform 3s;
  transition: -webkit-transform 3s;
  transition: transform 3s;
  transition: transform 3s, -webkit-transform 3s;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.cardf:hover .card__content {
  -webkit-transform: rotateY(0.5turn);
          transform: rotateY(0.5turn);
}

.card__front,
.card__back {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 5em 3em;
  border-radius: 7px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  display: grid;
  align-content: center;
}

.card__front {
  background-color: var(--clr);
  background-size: cover;
  background-position: center;
  color: #222;
}

.card__front::before {
  content: '';
  position: absolute;
  --spacer: 1em;
  top: var(--spacer);
  bottom: var(--spacer);
  left: var(--spacer);
  right: var(--spacer);
  border-radius: 7px;
  border: 3px solid currentColor;
  -webkit-transform: var(--level-one);
          transform: var(--level-one);
}

.card__title {
  font-family: 'Univia Bold', sans-serif;
  font-size: 1.7rem;
  -webkit-transform: var(--level-three);
          transform: var(--level-three);
  -webkit-box-ordinal-group: 3;
          order: 2;
	text-shadow: 1px 1px 0 #ddd;
}

.card__subtitle {
  -webkit-transform: var(--level-two);
          transform: var(--level-two);
  text-transform: uppercase;
  font-family: 'Univia Bold';
  letter-spacing: 1px;
  font-size: .78rem;
	color: #0E3D83;
	text-shadow: 1px 1px 0 #eee;
}

.card__body {
  -webkit-transform: var(--level-two);
          transform: var(--level-two);
  font-size: 1.5rem;
  line-height: 1.6;
}

.card__back {
  -webkit-transform: rotateY(0.5turn);
          transform: rotateY(0.5turn);
  color: var(--clr);
  background: #333;
}
