/** reset **/
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td, img {
  border: medium none;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

body, button, input, select, textarea {
  font-size: 14px;
  line-height: 1.5;
  color: #333;
  font-family: 'Microsoft Yahei';
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

input, button, img {
  border: none;
  background: none;
}

input[type="text"], input[type="password"], button {
  outline: none;
  -webkit-appearance: none;
}

em, i {
  font-style: normal;
}

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: #333;
}

a, a:hover, a:active, a:visited, a:link, a:focus {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent;
  outline: none;
  text-decoration: none;
  color: #333;
}

img {
  border: 0px;
  outline-width: 0px;
  vertical-align: top;
}

.clearfix {
  *zoom: 1;
}

.clearfix:before, .clearfix:after {
  display: table;
  line-height: 0;
  content: "";
}

.clearfix:after {
  clear: both;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.loader {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -mos-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center; /* disable selection and cursor changes */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default;
}

/* Text align it the center of screen and connect the looped animation for 2.5 seconds */
.loader .text {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 1.8em;
  left: 0;
  z-index: 5;
  font-size: 2em;
  text-transform: uppercase;
  text-align: center;
  color: #f2f2f2;
  font-family: 'Open Sans';
  -webkit-animation: text 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -moz-animation: text 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -ms-animation: text 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -o-animation: text 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  animation: text 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
}

/* Create a container for animation*/
.spinner {
  position: relative;
  width: 5em;
  height: 5em;
  color: #fff;
}

.spinner:before, .spinner:after {
  content: "";
  position: relative;
  display: block;
}

/* Create cube and set animation*/
.spinner:before {
  -webkit-animation: spinner 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -moz-animation: spinner 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -ms-animation: spinner 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -o-animation: spinner 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  animation: spinner 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  width: 10em;
  height: 10em;
  background-color: #DB2F00;
}

/* Create shadow and set animation*/
.spinner:after {
  -webkit-animation: shadow 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -moz-animation: shadow 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -ms-animation: shadow 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  -o-animation: shadow 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  animation: shadow 2.5s cubic-bezier(0.750, 0.000, 0.500, 1.000) infinite normal;
  position: relative;
  bottom: -1.75em;
  height: .25em;
  border-radius: 50%;
  background-color: #322b27;
}

/* Animation keys *//* from cube to circle */
@-webkit-keyframes spinner {
  50% {
    -webkit-border-radius: 50%;
    -webkit-transform: scale(.5) rotate(360deg);
    background-color: #13A3A5;
  }
  100% {
    -webkit-transform: scale(1) rotate(720deg);
    background-color: #DB2F00;
  }
}

@-moz-keyframes spinner {
  50% {
    -moz-border-radius: 50%;
    -moz-transform: scale(.5) rotate(360deg);
    background-color: #13A3A5;
  }
  100% {
    -moz-transform: scale(1) rotate(720deg);
    background-color: #DB2F00;
  }
}

@-mos-keyframes spinner {
50% {
  -mos-border-radius: 50%;
  -mos-transform: scale(.5) rotate(360deg);
  background-color: #13A3A5;
}  100% {
  -mos-transform: scale(1) rotate(720deg);
  background-color: #DB2F00;
}
} @-o-keyframes spinner {
    50% {
      -o-border-radius: 50%;
      -o-transform: scale(.5) rotate(360deg);
      background-color: #13A3A5;
    }
    100% {
      -o-transform: scale(1) rotate(720deg);
      background-color: #DB2F00;
    }
  }

@keyframes spinner {
  50% {
    border-radius: 50%;
    transform: scale(.5) rotate(360deg);
    background-color: #13A3A5;
  }
  100% {
    transform: scale(1) rotate(720deg);
    background-color: #DB2F00;
  }
}

/* animation shadow */
@-webkit-keyframes shadow {
  50% {
    -webkit-transform: scale(.5);
    background-color: #322b27;
  }
}

@-moz-keyframes shadow {
  50% {
    -moz-transform: scale(.5);
    background-color: #322b27;
  }
}

@-mos-keyframes shadow {
50% {
  -mos-transform: scale(.5);
  background-color: #322b27;
}
} @-o-keyframes shadow {
    50% {
      -o-transform: scale(.5);
      background-color: #322b27;
    }
  }

@keyframes shadow {
  50% {
    transform: scale(.5);
    background-color: #322b27;
  }
}

/* animation text */
@-webkit-keyframes text {
  0% {
    -webkit-transform: scale(1, 1);
  }
  50% {
    -webkit-transform: scale(.5, .5);
  }
  100% {
    -webkit-transform: scale(1, 1);
  }
}

@-moz-keyframes text {
  0% {
    -moz-transform: scale(1, 1);
  }
  50% {
    -moz-transform: scale(.5, .5);
  }
  100% {
    -moz-transform: scale(1, 1);
  }
}

@-mos-keyframes text {
0% {
  -mos-transform: scale(1, 1);
}  50% {
  -mos-transform: scale(.5, .5);
}  100% {
  -mos-transform: scale(1, 1);
}
} @-o-keyframes text {
    0% {
      -o-transform: scale(1, 1);
    }
    50% {
      -o-transform: scale(.5, .5);
    }
    100% {
      -o-transform: scale(1, 1);
    }
  }

@keyframes text {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(.5, .5);
  }
  100% {
    transform: scale(1, 1);
  }
}