.loader-p
{
  height: 100%;
  display: flex;
  margin: auto;
}

.loader-c
{
  align-self: center;
  width: 100%;
  text-align: center;
}

.loader-con
{
  font-size: 5em;
}

.loader-msg
{
  font-weight: 400;
  margin-top: 3em;
}

.loading {
  display: block;
  text-align: center;
  perspective: 2em;
}

.loading i {
  display: inline-block;
  width: 1em;
  height: 1em;
  animation: windows 1.5s infinite;
  outline: 1px solid transparent;
  position: relative;
  transform-style: preserve-3d;
}

.loading i:before,
.loading i:after{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f5f5f5;
  backface-visibility: hidden;
}

.loading i:after {
  background: #455963;
  transform: rotateY(180deg)
}

@keyframes windows {
  0% {
    transform: rotateY(0deg) rotateX(0deg);
  }
  50% {
    transform: rotateY(180deg) rotateX(0deg);
  }
  100% {
    transform: rotateY(180deg) rotateX(180deg);
  }
}
