/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: 'arial';
}

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0;
  font-weight: normal;
}

h2 {
  font-size: 30px;
  font-weight: normal;
  margin: 0;
  padding-bottom: 10px;
}

h3 {
  font-size: 1.17em;
  margin: 0;
  font-weight: normal;
}

h4 {
  font-size: 14px;
  margin: 1.33em 0;
  font-weight: normal;
  color: #FFF;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
  font-weight: normal;
}

h6 {
  font-size: 0.67em;
  margin: 2.33em 0;
}

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Address styling not present in IE 6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 0em 0;
}

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'arial', monospace;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none;
}

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 0em 0;
}

dd {
  margin: 0 0 0 40px;
}

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 0;
}

/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* Animation Sets */
/* move from / to  */
.pt-page-moveToLeft {
  -webkit-animation: moveToLeft .6s ease both;
  -moz-animation: moveToLeft .6s ease both;
  animation: moveToLeft .6s ease both;
}

.pt-page-moveFromLeft {
  -webkit-animation: moveFromLeft .6s ease both;
  -moz-animation: moveFromLeft .6s ease both;
  animation: moveFromLeft .6s ease both;
}

.pt-page-moveToRight {
  -webkit-animation: moveToRight .6s ease both;
  -moz-animation: moveToRight .6s ease both;
  animation: moveToRight .6s ease both;
}

.pt-page-moveFromRight {
  -webkit-animation: moveFromRight .6s ease both;
  -moz-animation: moveFromRight .6s ease both;
  animation: moveFromRight .6s ease both;
}

.pt-page-moveToTop {
  -webkit-animation: moveToTop .6s ease both;
  -moz-animation: moveToTop .6s ease both;
  animation: moveToTop .6s ease both;
}

.pt-page-moveFromTop {
  -webkit-animation: moveFromTop .6s ease both;
  -moz-animation: moveFromTop .6s ease both;
  animation: moveFromTop .6s ease both;
}

.pt-page-moveToBottom {
  -webkit-animation: moveToBottom .6s ease both;
  -moz-animation: moveToBottom .6s ease both;
  animation: moveToBottom .6s ease both;
}

.pt-page-moveFromBottom {
  -webkit-animation: moveFromBottom .6s ease both;
  -moz-animation: moveFromBottom .6s ease both;
  animation: moveFromBottom .6s ease both;
}

/* fade */
.pt-page-fade {
  -webkit-animation: fade .7s ease both;
  -moz-animation: fade .7s ease both;
  animation: fade .7s ease both;
}

/* move from / to and fade */
.pt-page-moveToLeftFade {
  -webkit-animation: moveToLeftFade .7s ease both;
  -moz-animation: moveToLeftFade .7s ease both;
  animation: moveToLeftFade .7s ease both;
}

.pt-page-moveFromLeftFade {
  -webkit-animation: moveFromLeftFade .7s ease both;
  -moz-animation: moveFromLeftFade .7s ease both;
  animation: moveFromLeftFade .7s ease both;
}

.pt-page-moveToRightFade {
  -webkit-animation: moveToRightFade .7s ease both;
  -moz-animation: moveToRightFade .7s ease both;
  animation: moveToRightFade .7s ease both;
}

.pt-page-moveFromRightFade {
  -webkit-animation: moveFromRightFade .7s ease both;
  -moz-animation: moveFromRightFade .7s ease both;
  animation: moveFromRightFade .7s ease both;
}

.pt-page-moveToTopFade {
  -webkit-animation: moveToTopFade .7s ease both;
  -moz-animation: moveToTopFade .7s ease both;
  animation: moveToTopFade .7s ease both;
}

.pt-page-moveFromTopFade {
  -webkit-animation: moveFromTopFade .7s ease both;
  -moz-animation: moveFromTopFade .7s ease both;
  animation: moveFromTopFade .7s ease both;
}

.pt-page-moveToBottomFade {
  -webkit-animation: moveToBottomFade .7s ease both;
  -moz-animation: moveToBottomFade .7s ease both;
  animation: moveToBottomFade .7s ease both;
}

.pt-page-moveFromBottomFade {
  -webkit-animation: moveFromBottomFade .7s ease both;
  -moz-animation: moveFromBottomFade .7s ease both;
  animation: moveFromBottomFade .7s ease both;
}

/* move to with different easing */
.pt-page-moveToLeftEasing {
  -webkit-animation: moveToLeft .7s ease-in-out both;
  -moz-animation: moveToLeft .7s ease-in-out both;
  animation: moveToLeft .7s ease-in-out both;
}

.pt-page-moveToRightEasing {
  -webkit-animation: moveToRight .7s ease-in-out both;
  -moz-animation: moveToRight .7s ease-in-out both;
  animation: moveToRight .7s ease-in-out both;
}

.pt-page-moveToTopEasing {
  -webkit-animation: moveToTop .7s ease-in-out both;
  -moz-animation: moveToTop .7s ease-in-out both;
  animation: moveToTop .7s ease-in-out both;
}

.pt-page-moveToBottomEasing {
  -webkit-animation: moveToBottom .7s ease-in-out both;
  -moz-animation: moveToBottom .7s ease-in-out both;
  animation: moveToBottom .7s ease-in-out both;
}

/********************************* keyframes **************************************/
/* move from / to  */
@-webkit-keyframes moveToLeft {
  to {
    -webkit-transform: translateX(-100%);
  }
}

@-moz-keyframes moveToLeft {
  to {
    -moz-transform: translateX(-100%);
  }
}

@keyframes moveToLeft {
  to {
    transform: translateX(-100%);
  }
}

@-webkit-keyframes moveFromLeft {
  from {
    -webkit-transform: translateX(-100%);
  }
}

@-moz-keyframes moveFromLeft {
  from {
    -moz-transform: translateX(-100%);
  }
}

@keyframes moveFromLeft {
  from {
    transform: translateX(-100%);
  }
}

@-webkit-keyframes moveToRight {
  to {
    -webkit-transform: translateX(100%);
  }
}

@-moz-keyframes moveToRight {
  to {
    -moz-transform: translateX(100%);
  }
}

@keyframes moveToRight {
  to {
    transform: translateX(100%);
  }
}

@-webkit-keyframes moveFromRight {
  from {
    -webkit-transform: translateX(100%);
  }
}

@-moz-keyframes moveFromRight {
  from {
    -moz-transform: translateX(100%);
  }
}

@keyframes moveFromRight {
  from {
    transform: translateX(100%);
  }
}

@-webkit-keyframes moveToTop {
  to {
    -webkit-transform: translateY(-100%);
  }
}

@-moz-keyframes moveToTop {
  to {
    -moz-transform: translateY(-100%);
  }
}

@keyframes moveToTop {
  to {
    transform: translateY(-100%);
  }
}

@-webkit-keyframes moveFromTop {
  from {
    -webkit-transform: translateY(-100%);
  }
}

@-moz-keyframes moveFromTop {
  from {
    -moz-transform: translateY(-100%);
  }
}

@keyframes moveFromTop {
  from {
    transform: translateY(-100%);
  }
}

@-webkit-keyframes moveToBottom {
  to {
    -webkit-transform: translateY(100%);
  }
}

@-moz-keyframes moveToBottom {
  to {
    -moz-transform: translateY(100%);
  }
}

@keyframes moveToBottom {
  to {
    transform: translateY(100%);
  }
}

@-webkit-keyframes moveFromBottom {
  from {
    -webkit-transform: translateY(100%);
  }
}

@-moz-keyframes moveFromBottom {
  from {
    -moz-transform: translateY(100%);
  }
}

@keyframes moveFromBottom {
  from {
    transform: translateY(100%);
  }
}

/* fade */
@-webkit-keyframes fade {
  to {
    opacity: 0.3;
  }
}

@-moz-keyframes fade {
  to {
    opacity: 0.3;
  }
}

@keyframes fade {
  to {
    opacity: 0.3;
  }
}

/* move from / to and fade */
@-webkit-keyframes moveToLeftFade {
  to {
    opacity: 0.3;
    -webkit-transform: translateX(-100%);
  }
}

@-moz-keyframes moveToLeftFade {
  to {
    opacity: 0.3;
    -moz-transform: translateX(-100%);
  }
}

@keyframes moveToLeftFade {
  to {
    opacity: 0.3;
    transform: translateX(-100%);
  }
}

@-webkit-keyframes moveFromLeftFade {
  from {
    opacity: 0.3;
    -webkit-transform: translateX(-100%);
  }
}

@-moz-keyframes moveFromLeftFade {
  from {
    opacity: 0.3;
    -moz-transform: translateX(-100%);
  }
}

@keyframes moveFromLeftFade {
  from {
    opacity: 0.3;
    transform: translateX(-100%);
  }
}

@-webkit-keyframes moveToRightFade {
  to {
    opacity: 0.3;
    -webkit-transform: translateX(100%);
  }
}

@-moz-keyframes moveToRightFade {
  to {
    opacity: 0.3;
    -moz-transform: translateX(100%);
  }
}

@keyframes moveToRightFade {
  to {
    opacity: 0.3;
    transform: translateX(100%);
  }
}

@-webkit-keyframes moveFromRightFade {
  from {
    opacity: 0.3;
    -webkit-transform: translateX(100%);
  }
}

@-moz-keyframes moveFromRightFade {
  from {
    opacity: 0.3;
    -moz-transform: translateX(100%);
  }
}

@keyframes moveFromRightFade {
  from {
    opacity: 0.3;
    transform: translateX(100%);
  }
}

@-webkit-keyframes moveToTopFade {
  to {
    opacity: 0.3;
    -webkit-transform: translateY(-100%);
  }
}

@-moz-keyframes moveToTopFade {
  to {
    opacity: 0.3;
    -moz-transform: translateY(-100%);
  }
}

@keyframes moveToTopFade {
  to {
    opacity: 0.3;
    transform: translateY(-100%);
  }
}

@-webkit-keyframes moveFromTopFade {
  from {
    opacity: 0.3;
    -webkit-transform: translateY(-100%);
  }
}

@-moz-keyframes moveFromTopFade {
  from {
    opacity: 0.3;
    -moz-transform: translateY(-100%);
  }
}

@keyframes moveFromTopFade {
  from {
    opacity: 0.3;
    transform: translateY(-100%);
  }
}

@-webkit-keyframes moveToBottomFade {
  to {
    opacity: 0.3;
    -webkit-transform: translateY(100%);
  }
}

@-moz-keyframes moveToBottomFade {
  to {
    opacity: 0.3;
    -moz-transform: translateY(100%);
  }
}

@keyframes moveToBottomFade {
  to {
    opacity: 0.3;
    transform: translateY(100%);
  }
}

@-webkit-keyframes moveFromBottomFade {
  from {
    opacity: 0.3;
    -webkit-transform: translateY(100%);
  }
}

@-moz-keyframes moveFromBottomFade {
  from {
    opacity: 0.3;
    -moz-transform: translateY(100%);
  }
}

@keyframes moveFromBottomFade {
  from {
    opacity: 0.3;
    transform: translateY(100%);
  }
}

/* scale and fade */
.pt-page-scaleDown {
  -webkit-animation: scaleDown .7s ease both;
  -moz-animation: scaleDown .7s ease both;
  animation: scaleDown .7s ease both;
}

.pt-page-scaleUp {
  -webkit-animation: scaleUp .7s ease both;
  -moz-animation: scaleUp .7s ease both;
  animation: scaleUp .7s ease both;
}

.pt-page-scaleUpDown {
  -webkit-animation: scaleUpDown .5s ease both;
  -moz-animation: scaleUpDown .5s ease both;
  animation: scaleUpDown .5s ease both;
}

.pt-page-scaleDownUp {
  -webkit-animation: scaleDownUp .5s ease both;
  -moz-animation: scaleDownUp .5s ease both;
  animation: scaleDownUp .5s ease both;
}

.pt-page-scaleDownCenter {
  -webkit-animation: scaleDownCenter .4s ease-in both;
  -moz-animation: scaleDownCenter .4s ease-in both;
  animation: scaleDownCenter .4s ease-in both;
}

.pt-page-scaleUpCenter {
  -webkit-animation: scaleUpCenter .4s ease-out both;
  -moz-animation: scaleUpCenter .4s ease-out both;
  animation: scaleUpCenter .4s ease-out both;
}

/********************************* keyframes **************************************/
/* scale and fade */
@-webkit-keyframes scaleDown {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
  }
}

@-moz-keyframes scaleDown {
  to {
    opacity: 0;
    -moz-transform: scale(0.8);
  }
}

@keyframes scaleDown {
  to {
    opacity: 0;
    transform: scale(0.8);
  }
}

@-webkit-keyframes scaleUp {
  from {
    opacity: 0;
    -webkit-transform: scale(0.8);
  }
}

@-moz-keyframes scaleUp {
  from {
    opacity: 0;
    -moz-transform: scale(0.8);
  }
}

@keyframes scaleUp {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
}

@-webkit-keyframes scaleUpDown {
  from {
    opacity: 0;
    -webkit-transform: scale(1.2);
  }
}

@-moz-keyframes scaleUpDown {
  from {
    opacity: 0;
    -moz-transform: scale(1.2);
  }
}

@keyframes scaleUpDown {
  from {
    opacity: 0;
    transform: scale(1.2);
  }
}

@-webkit-keyframes scaleDownUp {
  to {
    opacity: 0;
    -webkit-transform: scale(1.2);
  }
}

@-moz-keyframes scaleDownUp {
  to {
    opacity: 0;
    -moz-transform: scale(1.2);
  }
}

@keyframes scaleDownUp {
  to {
    opacity: 0;
    transform: scale(1.2);
  }
}

@-webkit-keyframes scaleDownCenter {
  to {
    opacity: 0;
    -webkit-transform: scale(0.7);
  }
}

@-moz-keyframes scaleDownCenter {
  to {
    opacity: 0;
    -moz-transform: scale(0.7);
  }
}

@keyframes scaleDownCenter {
  to {
    opacity: 0;
    transform: scale(0.7);
  }
}

@-webkit-keyframes scaleUpCenter {
  from {
    opacity: 0;
    -webkit-transform: scale(0.7);
  }
}

@-moz-keyframes scaleUpCenter {
  from {
    opacity: 0;
    -moz-transform: scale(0.7);
  }
}

@keyframes scaleUpCenter {
  from {
    opacity: 0;
    transform: scale(0.7);
  }
}

/* rotate sides first and scale */
.pt-page-rotateRightSideFirst {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateRightSideFirst .8s both ease-in;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateRightSideFirst .8s both ease-in;
  transform-origin: 0% 50%;
  animation: rotateRightSideFirst .8s both ease-in;
}

.pt-page-rotateLeftSideFirst {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateLeftSideFirst .8s both ease-in;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateLeftSideFirst .8s both ease-in;
  transform-origin: 100% 50%;
  animation: rotateLeftSideFirst .8s both ease-in;
}

.pt-page-rotateTopSideFirst {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateTopSideFirst .8s both ease-in;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateTopSideFirst .8s both ease-in;
  transform-origin: 50% 100%;
  animation: rotateTopSideFirst .8s both ease-in;
}

.pt-page-rotateBottomSideFirst {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateBottomSideFirst .8s both ease-in;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateBottomSideFirst .8s both ease-in;
  transform-origin: 50% 0%;
  animation: rotateBottomSideFirst .8s both ease-in;
}

/* flip */
.pt-page-flipOutRight {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipOutRight .5s both ease-in;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipOutRight .5s both ease-in;
  transform-origin: 50% 50%;
  animation: flipOutRight .5s both ease-in;
}

.pt-page-flipInLeft {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipInLeft .5s both ease-out;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipInLeft .5s both ease-out;
  transform-origin: 50% 50%;
  animation: flipInLeft .5s both ease-out;
}

.pt-page-flipOutLeft {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipOutLeft .5s both ease-in;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipOutLeft .5s both ease-in;
  transform-origin: 50% 50%;
  animation: flipOutLeft .5s both ease-in;
}

.pt-page-flipInRight {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipInRight .5s both ease-out;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipInRight .5s both ease-out;
  transform-origin: 50% 50%;
  animation: flipInRight .5s both ease-out;
}

.pt-page-flipOutTop {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipOutTop .5s both ease-in;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipOutTop .5s both ease-in;
  transform-origin: 50% 50%;
  animation: flipOutTop .5s both ease-in;
}

.pt-page-flipInBottom {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipInBottom .5s both ease-out;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipInBottom .5s both ease-out;
  transform-origin: 50% 50%;
  animation: flipInBottom .5s both ease-out;
}

.pt-page-flipOutBottom {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipOutBottom .5s both ease-in;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipOutBottom .5s both ease-in;
  transform-origin: 50% 50%;
  animation: flipOutBottom .5s both ease-in;
}

.pt-page-flipInTop {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: flipInTop .5s both ease-out;
  -moz-transform-origin: 50% 50%;
  -moz-animation: flipInTop .5s both ease-out;
  transform-origin: 50% 50%;
  animation: flipInTop .5s both ease-out;
}

/* rotate fall */
.pt-page-rotateFall {
  -webkit-transform-origin: 0% 0%;
  -webkit-animation: rotateFall 1s both ease-in;
  -moz-transform-origin: 0% 0%;
  -moz-animation: rotateFall 1s both ease-in;
  transform-origin: 0% 0%;
  animation: rotateFall 1s both ease-in;
}

/* rotate newspaper */
.pt-page-rotateOutNewspaper {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: rotateOutNewspaper .5s both ease-in;
  -moz-transform-origin: 50% 50%;
  -moz-animation: rotateOutNewspaper .5s both ease-in;
  transform-origin: 50% 50%;
  animation: rotateOutNewspaper .5s both ease-in;
}

.pt-page-rotateInNewspaper {
  -webkit-transform-origin: 50% 50%;
  -webkit-animation: rotateInNewspaper .5s both ease-out;
  -moz-transform-origin: 50% 50%;
  -moz-animation: rotateInNewspaper .5s both ease-out;
  transform-origin: 50% 50%;
  animation: rotateInNewspaper .5s both ease-out;
}

/* push */
.pt-page-rotatePushLeft {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotatePushLeft .8s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotatePushLeft .8s both ease;
  transform-origin: 0% 50%;
  animation: rotatePushLeft .8s both ease;
}

.pt-page-rotatePushRight {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotatePushRight .8s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotatePushRight .8s both ease;
  transform-origin: 100% 50%;
  animation: rotatePushRight .8s both ease;
}

.pt-page-rotatePushTop {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotatePushTop .8s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotatePushTop .8s both ease;
  transform-origin: 50% 0%;
  animation: rotatePushTop .8s both ease;
}

.pt-page-rotatePushBottom {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotatePushBottom .8s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotatePushBottom .8s both ease;
  transform-origin: 50% 100%;
  animation: rotatePushBottom .8s both ease;
}

/* pull */
.pt-page-rotatePullRight {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotatePullRight .5s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotatePullRight .5s both ease;
  transform-origin: 100% 50%;
  animation: rotatePullRight .5s both ease;
}

.pt-page-rotatePullLeft {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotatePullLeft .5s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotatePullLeft .5s both ease;
  transform-origin: 0% 50%;
  animation: rotatePullLeft .5s both ease;
}

.pt-page-rotatePullTop {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotatePullTop .5s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotatePullTop .5s both ease;
  transform-origin: 50% 0%;
  animation: rotatePullTop .5s both ease;
}

.pt-page-rotatePullBottom {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotatePullBottom .5s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotatePullBottom .5s both ease;
  transform-origin: 50% 100%;
  animation: rotatePullBottom .5s both ease;
}

/* fold */
.pt-page-rotateFoldRight {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateFoldRight .7s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateFoldRight .7s both ease;
  transform-origin: 0% 50%;
  animation: rotateFoldRight .7s both ease;
}

.pt-page-rotateFoldLeft {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateFoldLeft .7s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateFoldLeft .7s both ease;
  transform-origin: 100% 50%;
  animation: rotateFoldLeft .7s both ease;
}

.pt-page-rotateFoldTop {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateFoldTop .7s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateFoldTop .7s both ease;
  transform-origin: 50% 100%;
  animation: rotateFoldTop .7s both ease;
}

.pt-page-rotateFoldBottom {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateFoldBottom .7s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateFoldBottom .7s both ease;
  transform-origin: 50% 0%;
  animation: rotateFoldBottom .7s both ease;
}

/* unfold */
.pt-page-rotateUnfoldLeft {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateUnfoldLeft .7s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateUnfoldLeft .7s both ease;
  transform-origin: 100% 50%;
  animation: rotateUnfoldLeft .7s both ease;
}

.pt-page-rotateUnfoldRight {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateUnfoldRight .7s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateUnfoldRight .7s both ease;
  transform-origin: 0% 50%;
  animation: rotateUnfoldRight .7s both ease;
}

.pt-page-rotateUnfoldTop {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateUnfoldTop .7s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateUnfoldTop .7s both ease;
  transform-origin: 50% 100%;
  animation: rotateUnfoldTop .7s both ease;
}

.pt-page-rotateUnfoldBottom {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateUnfoldBottom .7s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateUnfoldBottom .7s both ease;
  transform-origin: 50% 0%;
  animation: rotateUnfoldBottom .7s both ease;
}

/* room walls */
.pt-page-rotateRoomLeftOut {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateRoomLeftOut .8s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateRoomLeftOut .8s both ease;
  transform-origin: 100% 50%;
  animation: rotateRoomLeftOut .8s both ease;
}

.pt-page-rotateRoomLeftIn {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateRoomLeftIn .8s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateRoomLeftIn .8s both ease;
  transform-origin: 0% 50%;
  animation: rotateRoomLeftIn .8s both ease;
}

.pt-page-rotateRoomRightOut {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateRoomRightOut .8s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateRoomRightOut .8s both ease;
  transform-origin: 0% 50%;
  animation: rotateRoomRightOut .8s both ease;
}

.pt-page-rotateRoomRightIn {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateRoomRightIn .8s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateRoomRightIn .8s both ease;
  transform-origin: 100% 50%;
  animation: rotateRoomRightIn .8s both ease;
}

.pt-page-rotateRoomTopOut {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateRoomTopOut .8s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateRoomTopOut .8s both ease;
  transform-origin: 50% 100%;
  animation: rotateRoomTopOut .8s both ease;
}

.pt-page-rotateRoomTopIn {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateRoomTopIn .8s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateRoomTopIn .8s both ease;
  transform-origin: 50% 0%;
  animation: rotateRoomTopIn .8s both ease;
}

.pt-page-rotateRoomBottomOut {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateRoomBottomOut .8s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateRoomBottomOut .8s both ease;
  transform-origin: 50% 0%;
  animation: rotateRoomBottomOut .8s both ease;
}

.pt-page-rotateRoomBottomIn {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateRoomBottomIn .8s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateRoomBottomIn .8s both ease;
  transform-origin: 50% 100%;
  animation: rotateRoomBottomIn .8s both ease;
}

/* cube */
.pt-page-rotateCubeLeftOut {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateCubeLeftOut .6s both ease-in;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateCubeLeftOut .6s both ease-in;
  transform-origin: 100% 50%;
  animation: rotateCubeLeftOut .6s both ease-in;
}

.pt-page-rotateCubeLeftIn {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateCubeLeftIn .6s both ease-in;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateCubeLeftIn .6s both ease-in;
  transform-origin: 0% 50%;
  animation: rotateCubeLeftIn .6s both ease-in;
}

.pt-page-rotateCubeRightOut {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateCubeRightOut .6s both ease-in;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateCubeRightOut .6s both ease-in;
  transform-origin: 0% 50%;
  animation: rotateCubeRightOut .6s both ease-in;
}

.pt-page-rotateCubeRightIn {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateCubeRightIn .6s both ease-in;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateCubeRightIn .6s both ease-in;
  transform-origin: 100% 50%;
  animation: rotateCubeRightIn .6s both ease-in;
}

.pt-page-rotateCubeTopOut {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateCubeTopOut .6s both ease-in;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateCubeTopOut .6s both ease-in;
  transform-origin: 50% 100%;
  animation: rotateCubeTopOut .6s both ease-in;
}

.pt-page-rotateCubeTopIn {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateCubeTopIn .6s both ease-in;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateCubeTopIn .6s both ease-in;
  transform-origin: 50% 0%;
  animation: rotateCubeTopIn .6s both ease-in;
}

.pt-page-rotateCubeBottomOut {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateCubeBottomOut .6s both ease-in;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateCubeBottomOut .6s both ease-in;
  transform-origin: 50% 0%;
  animation: rotateCubeBottomOut .6s both ease-in;
}

.pt-page-rotateCubeBottomIn {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateCubeBottomIn .6s both ease-in;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateCubeBottomIn .6s both ease-in;
  transform-origin: 50% 100%;
  animation: rotateCubeBottomIn .6s both ease-in;
}

/* carousel */
.pt-page-rotateCarouselLeftOut {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateCarouselLeftOut .8s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateCarouselLeftOut .8s both ease;
  transform-origin: 100% 50%;
  animation: rotateCarouselLeftOut .8s both ease;
}

.pt-page-rotateCarouselLeftIn {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateCarouselLeftIn .8s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateCarouselLeftIn .8s both ease;
  transform-origin: 0% 50%;
  animation: rotateCarouselLeftIn .8s both ease;
}

.pt-page-rotateCarouselRightOut {
  -webkit-transform-origin: 0% 50%;
  -webkit-animation: rotateCarouselRightOut .8s both ease;
  -moz-transform-origin: 0% 50%;
  -moz-animation: rotateCarouselRightOut .8s both ease;
  transform-origin: 0% 50%;
  animation: rotateCarouselRightOut .8s both ease;
}

.pt-page-rotateCarouselRightIn {
  -webkit-transform-origin: 100% 50%;
  -webkit-animation: rotateCarouselRightIn .8s both ease;
  -moz-transform-origin: 100% 50%;
  -moz-animation: rotateCarouselRightIn .8s both ease;
  transform-origin: 100% 50%;
  animation: rotateCarouselRightIn .8s both ease;
}

.pt-page-rotateCarouselTopOut {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateCarouselTopOut .8s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateCarouselTopOut .8s both ease;
  transform-origin: 50% 100%;
  animation: rotateCarouselTopOut .8s both ease;
}

.pt-page-rotateCarouselTopIn {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateCarouselTopIn .8s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateCarouselTopIn .8s both ease;
  transform-origin: 50% 0%;
  animation: rotateCarouselTopIn .8s both ease;
}

.pt-page-rotateCarouselBottomOut {
  -webkit-transform-origin: 50% 0%;
  -webkit-animation: rotateCarouselBottomOut .8s both ease;
  -moz-transform-origin: 50% 0%;
  -moz-animation: rotateCarouselBottomOut .8s both ease;
  transform-origin: 50% 0%;
  animation: rotateCarouselBottomOut .8s both ease;
}

.pt-page-rotateCarouselBottomIn {
  -webkit-transform-origin: 50% 100%;
  -webkit-animation: rotateCarouselBottomIn .8s both ease;
  -moz-transform-origin: 50% 100%;
  -moz-animation: rotateCarouselBottomIn .8s both ease;
  transform-origin: 50% 100%;
  animation: rotateCarouselBottomIn .8s both ease;
}

/* sides */
.pt-page-rotateSidesOut {
  -webkit-transform-origin: -50% 50%;
  -webkit-animation: rotateSidesOut .5s both ease-in;
  -moz-transform-origin: -50% 50%;
  -moz-animation: rotateSidesOut .5s both ease-in;
  transform-origin: -50% 50%;
  animation: rotateSidesOut .5s both ease-in;
}

.pt-page-rotateSidesIn {
  -webkit-transform-origin: 150% 50%;
  -webkit-animation: rotateSidesIn .5s both ease-out;
  -moz-transform-origin: 150% 50%;
  -moz-animation: rotateSidesIn .5s both ease-out;
  transform-origin: 150% 50%;
  animation: rotateSidesIn .5s both ease-out;
}

/* slide */
.pt-page-rotateSlideOut {
  -webkit-animation: rotateSlideOut 1s both ease;
  -moz-animation: rotateSlideOut 1s both ease;
  animation: rotateSlideOut 1s both ease;
}

.pt-page-rotateSlideIn {
  -webkit-animation: rotateSlideIn 1s both ease;
  -moz-animation: rotateSlideIn 1s both ease;
  animation: rotateSlideIn 1s both ease;
}

/********************************* keyframes **************************************/
/* rotate sides first and scale */
@-webkit-keyframes rotateRightSideFirst {
  40% {
    -webkit-transform: rotateY(15deg);
    opacity: .8;
    -webkit-animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-moz-keyframes rotateRightSideFirst {
  40% {
    -moz-transform: rotateY(15deg);
    opacity: .8;
    -moz-animation-timing-function: ease-out;
  }

  100% {
    -moz-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@keyframes rotateRightSideFirst {
  40% {
    transform: rotateY(15deg);
    opacity: .8;
    animation-timing-function: ease-out;
  }

  100% {
    transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-webkit-keyframes rotateLeftSideFirst {
  40% {
    -webkit-transform: rotateY(-15deg);
    opacity: .8;
    -webkit-animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-moz-keyframes rotateLeftSideFirst {
  40% {
    -moz-transform: rotateY(-15deg);
    opacity: .8;
    -moz-animation-timing-function: ease-out;
  }

  100% {
    -moz-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@keyframes rotateLeftSideFirst {
  40% {
    transform: rotateY(-15deg);
    opacity: .8;
    animation-timing-function: ease-out;
  }

  100% {
    transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-webkit-keyframes rotateTopSideFirst {
  40% {
    -webkit-transform: rotateX(15deg);
    opacity: .8;
    -webkit-animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-moz-keyframes rotateTopSideFirst {
  40% {
    -moz-transform: rotateX(15deg);
    opacity: .8;
    -moz-animation-timing-function: ease-out;
  }

  100% {
    -moz-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@keyframes rotateTopSideFirst {
  40% {
    transform: rotateX(15deg);
    opacity: .8;
    animation-timing-function: ease-out;
  }

  100% {
    transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-webkit-keyframes rotateBottomSideFirst {
  40% {
    -webkit-transform: rotateX(-15deg);
    opacity: .8;
    -webkit-animation-timing-function: ease-out;
  }

  100% {
    -webkit-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@-moz-keyframes rotateBottomSideFirst {
  40% {
    -moz-transform: rotateX(-15deg);
    opacity: .8;
    -moz-animation-timing-function: ease-out;
  }

  100% {
    -moz-transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

@keyframes rotateBottomSideFirst {
  40% {
    transform: rotateX(-15deg);
    opacity: .8;
    animation-timing-function: ease-out;
  }

  100% {
    transform: scale(0.8) translateZ(-200px);
    opacity: 0;
  }
}

/* flip */
@-webkit-keyframes flipOutRight {
  to {
    -webkit-transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipOutRight {
  to {
    -moz-transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@keyframes flipOutRight {
  to {
    transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipInLeft {
  from {
    -webkit-transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipInLeft {
  from {
    -moz-transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@keyframes flipInLeft {
  from {
    transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipOutLeft {
  to {
    -webkit-transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipOutLeft {
  to {
    -moz-transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@keyframes flipOutLeft {
  to {
    transform: translateZ(-1000px) rotateY(-90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipInRight {
  from {
    -webkit-transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipInRight {
  from {
    -moz-transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@keyframes flipInRight {
  from {
    transform: translateZ(-1000px) rotateY(90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipOutTop {
  to {
    -webkit-transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipOutTop {
  to {
    -moz-transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

@keyframes flipOutTop {
  to {
    transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipInBottom {
  from {
    -webkit-transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipInBottom {
  from {
    -moz-transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@keyframes flipInBottom {
  from {
    transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipOutBottom {
  to {
    -webkit-transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipOutBottom {
  to {
    -moz-transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@keyframes flipOutBottom {
  to {
    transform: translateZ(-1000px) rotateX(-90deg);
    opacity: 0.2;
  }
}

@-webkit-keyframes flipInTop {
  from {
    -webkit-transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

@-moz-keyframes flipInTop {
  from {
    -moz-transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

@keyframes flipInTop {
  from {
    transform: translateZ(-1000px) rotateX(90deg);
    opacity: 0.2;
  }
}

/* fall */
@-webkit-keyframes rotateFall {
  0% {
    -webkit-transform: rotateZ(0deg);
  }

  20% {
    -webkit-transform: rotateZ(10deg);
    -webkit-animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: rotateZ(17deg);
  }

  60% {
    -webkit-transform: rotateZ(16deg);
  }

  100% {
    -webkit-transform: translateY(100%) rotateZ(17deg);
  }
}

@-moz-keyframes rotateFall {
  0% {
    -moz-transform: rotateZ(0deg);
  }

  20% {
    -moz-transform: rotateZ(10deg);
    -moz-animation-timing-function: ease-out;
  }

  40% {
    -moz-transform: rotateZ(17deg);
  }

  60% {
    -moz-transform: rotateZ(16deg);
  }

  100% {
    -moz-transform: translateY(100%) rotateZ(17deg);
  }
}

@keyframes rotateFall {
  0% {
    transform: rotateZ(0deg);
  }

  20% {
    transform: rotateZ(10deg);
    animation-timing-function: ease-out;
  }

  40% {
    transform: rotateZ(17deg);
  }

  60% {
    transform: rotateZ(16deg);
  }

  100% {
    transform: translateY(100%) rotateZ(17deg);
  }
}

/* newspaper */
@-webkit-keyframes rotateOutNewspaper {
  to {
    -webkit-transform: translateZ(-3000px) rotateZ(360deg);
    opacity: 0;
  }
}

@-moz-keyframes rotateOutNewspaper {
  to {
    -moz-transform: translateZ(-3000px) rotateZ(360deg);
    opacity: 0;
  }
}

@keyframes rotateOutNewspaper {
  to {
    transform: translateZ(-3000px) rotateZ(360deg);
    opacity: 0;
  }
}

@-webkit-keyframes rotateInNewspaper {
  from {
    -webkit-transform: translateZ(-3000px) rotateZ(-360deg);
    opacity: 0;
  }
}

@-moz-keyframes rotateInNewspaper {
  from {
    -moz-transform: translateZ(-3000px) rotateZ(-360deg);
    opacity: 0;
  }
}

@keyframes rotateInNewspaper {
  from {
    transform: translateZ(-3000px) rotateZ(-360deg);
    opacity: 0;
  }
}

/* push */
@-webkit-keyframes rotatePushLeft {
  to {
    opacity: 0;
    -webkit-transform: rotateY(90deg);
  }
}

@-moz-keyframes rotatePushLeft {
  to {
    opacity: 0;
    -moz-transform: rotateY(90deg);
  }
}

@keyframes rotatePushLeft {
  to {
    opacity: 0;
    transform: rotateY(90deg);
  }
}

@-webkit-keyframes rotatePushRight {
  to {
    opacity: 0;
    -webkit-transform: rotateY(-90deg);
  }
}

@-moz-keyframes rotatePushRight {
  to {
    opacity: 0;
    -moz-transform: rotateY(-90deg);
  }
}

@keyframes rotatePushRight {
  to {
    opacity: 0;
    transform: rotateY(-90deg);
  }
}

@-webkit-keyframes rotatePushTop {
  to {
    opacity: 0;
    -webkit-transform: rotateX(-90deg);
  }
}

@-moz-keyframes rotatePushTop {
  to {
    opacity: 0;
    -moz-transform: rotateX(-90deg);
  }
}

@keyframes rotatePushTop {
  to {
    opacity: 0;
    transform: rotateX(-90deg);
  }
}

@-webkit-keyframes rotatePushBottom {
  to {
    opacity: 0;
    -webkit-transform: rotateX(90deg);
  }
}

@-moz-keyframes rotatePushBottom {
  to {
    opacity: 0;
    -moz-transform: rotateX(90deg);
  }
}

@keyframes rotatePushBottom {
  to {
    opacity: 0;
    transform: rotateX(90deg);
  }
}

/* pull */
@-webkit-keyframes rotatePullRight {
  from {
    opacity: 0;
    -webkit-transform: rotateY(-90deg);
  }
}

@-moz-keyframes rotatePullRight {
  from {
    opacity: 0;
    -moz-transform: rotateY(-90deg);
  }
}

@keyframes rotatePullRight {
  from {
    opacity: 0;
    transform: rotateY(-90deg);
  }
}

@-webkit-keyframes rotatePullLeft {
  from {
    opacity: 0;
    -webkit-transform: rotateY(90deg);
  }
}

@-moz-keyframes rotatePullLeft {
  from {
    opacity: 0;
    -moz-transform: rotateY(90deg);
  }
}

@keyframes rotatePullLeft {
  from {
    opacity: 0;
    transform: rotateY(90deg);
  }
}

@-webkit-keyframes rotatePullTop {
  from {
    opacity: 0;
    -webkit-transform: rotateX(-90deg);
  }
}

@-moz-keyframes rotatePullTop {
  from {
    opacity: 0;
    -moz-transform: rotateX(-90deg);
  }
}

@keyframes rotatePullTop {
  from {
    opacity: 0;
    transform: rotateX(-90deg);
  }
}

@-webkit-keyframes rotatePullBottom {
  from {
    opacity: 0;
    -webkit-transform: rotateX(90deg);
  }
}

@-moz-keyframes rotatePullBottom {
  from {
    opacity: 0;
    -moz-transform: rotateX(90deg);
  }
}

@keyframes rotatePullBottom {
  from {
    opacity: 0;
    transform: rotateX(90deg);
  }
}

/* fold */
@-webkit-keyframes rotateFoldRight {
  to {
    opacity: 0;
    -webkit-transform: translateX(100%) rotateY(90deg);
  }
}

@-moz-keyframes rotateFoldRight {
  to {
    opacity: 0;
    -moz-transform: translateX(100%) rotateY(90deg);
  }
}

@keyframes rotateFoldRight {
  to {
    opacity: 0;
    transform: translateX(100%) rotateY(90deg);
  }
}

@-webkit-keyframes rotateFoldLeft {
  to {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotateY(-90deg);
  }
}

@-moz-keyframes rotateFoldLeft {
  to {
    opacity: 0;
    -moz-transform: translateX(-100%) rotateY(-90deg);
  }
}

@keyframes rotateFoldLeft {
  to {
    opacity: 0;
    transform: translateX(-100%) rotateY(-90deg);
  }
}

@-webkit-keyframes rotateFoldTop {
  to {
    opacity: 0;
    -webkit-transform: translateY(-100%) rotateX(90deg);
  }
}

@-moz-keyframes rotateFoldTop {
  to {
    opacity: 0;
    -moz-transform: translateY(-100%) rotateX(90deg);
  }
}

@keyframes rotateFoldTop {
  to {
    opacity: 0;
    transform: translateY(-100%) rotateX(90deg);
  }
}

@-webkit-keyframes rotateFoldBottom {
  to {
    opacity: 0;
    -webkit-transform: translateY(100%) rotateX(-90deg);
  }
}

@-moz-keyframes rotateFoldBottom {
  to {
    opacity: 0;
    -moz-transform: translateY(100%) rotateX(-90deg);
  }
}

@keyframes rotateFoldBottom {
  to {
    opacity: 0;
    transform: translateY(100%) rotateX(-90deg);
  }
}

/* unfold */
@-webkit-keyframes rotateUnfoldLeft {
  from {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotateY(-90deg);
  }
}

@-moz-keyframes rotateUnfoldLeft {
  from {
    opacity: 0;
    -moz-transform: translateX(-100%) rotateY(-90deg);
  }
}

@keyframes rotateUnfoldLeft {
  from {
    opacity: 0;
    transform: translateX(-100%) rotateY(-90deg);
  }
}

@-webkit-keyframes rotateUnfoldRight {
  from {
    opacity: 0;
    -webkit-transform: translateX(100%) rotateY(90deg);
  }
}

@-moz-keyframes rotateUnfoldRight {
  from {
    opacity: 0;
    -moz-transform: translateX(100%) rotateY(90deg);
  }
}

@keyframes rotateUnfoldRight {
  from {
    opacity: 0;
    transform: translateX(100%) rotateY(90deg);
  }
}

@-webkit-keyframes rotateUnfoldTop {
  from {
    opacity: 0;
    -webkit-transform: translateY(-100%) rotateX(90deg);
  }
}

@-moz-keyframes rotateUnfoldTop {
  from {
    opacity: 0;
    -moz-transform: translateY(-100%) rotateX(90deg);
  }
}

@keyframes rotateUnfoldTop {
  from {
    opacity: 0;
    transform: translateY(-100%) rotateX(90deg);
  }
}

@-webkit-keyframes rotateUnfoldBottom {
  from {
    opacity: 0;
    -webkit-transform: translateY(100%) rotateX(-90deg);
  }
}

@-moz-keyframes rotateUnfoldBottom {
  from {
    opacity: 0;
    -moz-transform: translateY(100%) rotateX(-90deg);
  }
}

@keyframes rotateUnfoldBottom {
  from {
    opacity: 0;
    transform: translateY(100%) rotateX(-90deg);
  }
}

/* room walls */
@-webkit-keyframes rotateRoomLeftOut {
  to {
    opacity: .3;
    -webkit-transform: translateX(-100%) rotateY(90deg);
  }
}

@-moz-keyframes rotateRoomLeftOut {
  to {
    opacity: .3;
    -moz-transform: translateX(-100%) rotateY(90deg);
  }
}

@keyframes rotateRoomLeftOut {
  to {
    opacity: .3;
    transform: translateX(-100%) rotateY(90deg);
  }
}

@-webkit-keyframes rotateRoomLeftIn {
  from {
    opacity: .3;
    -webkit-transform: translateX(100%) rotateY(-90deg);
  }
}

@-moz-keyframes rotateRoomLeftIn {
  from {
    opacity: .3;
    -moz-transform: translateX(100%) rotateY(-90deg);
  }
}

@keyframes rotateRoomLeftIn {
  from {
    opacity: .3;
    transform: translateX(100%) rotateY(-90deg);
  }
}

@-webkit-keyframes rotateRoomRightOut {
  to {
    opacity: .3;
    -webkit-transform: translateX(100%) rotateY(-90deg);
  }
}

@-moz-keyframes rotateRoomRightOut {
  to {
    opacity: .3;
    -moz-transform: translateX(100%) rotateY(-90deg);
  }
}

@keyframes rotateRoomRightOut {
  to {
    opacity: .3;
    transform: translateX(100%) rotateY(-90deg);
  }
}

@-webkit-keyframes rotateRoomRightIn {
  from {
    opacity: .3;
    -webkit-transform: translateX(-100%) rotateY(90deg);
  }
}

@-moz-keyframes rotateRoomRightIn {
  from {
    opacity: .3;
    -moz-transform: translateX(-100%) rotateY(90deg);
  }
}

@keyframes rotateRoomRightIn {
  from {
    opacity: .3;
    transform: translateX(-100%) rotateY(90deg);
  }
}

@-webkit-keyframes rotateRoomTopOut {
  to {
    opacity: .3;
    -webkit-transform: translateY(-100%) rotateX(-90deg);
  }
}

@-moz-keyframes rotateRoomTopOut {
  to {
    opacity: .3;
    -moz-transform: translateY(-100%) rotateX(-90deg);
  }
}

@keyframes rotateRoomTopOut {
  to {
    opacity: .3;
    transform: translateY(-100%) rotateX(-90deg);
  }
}

@-webkit-keyframes rotateRoomTopIn {
  from {
    opacity: .3;
    -webkit-transform: translateY(100%) rotateX(90deg);
  }
}

@-moz-keyframes rotateRoomTopIn {
  from {
    opacity: .3;
    -moz-transform: translateY(100%) rotateX(90deg);
  }
}

@keyframes rotateRoomTopIn {
  from {
    opacity: .3;
    transform: translateY(100%) rotateX(90deg);
  }
}

@-webkit-keyframes rotateRoomBottomOut {
  to {
    opacity: .3;
    -webkit-transform: translateY(100%) rotateX(90deg);
  }
}

@-moz-keyframes rotateRoomBottomOut {
  to {
    opacity: .3;
    -moz-transform: translateY(100%) rotateX(90deg);
  }
}

@keyframes rotateRoomBottomOut {
  to {
    opacity: .3;
    transform: translateY(100%) rotateX(90deg);
  }
}

@-webkit-keyframes rotateRoomBottomIn {
  from {
    opacity: .3;
    -webkit-transform: translateY(-100%) rotateX(-90deg);
  }
}

@-moz-keyframes rotateRoomBottomIn {
  from {
    opacity: .3;
    -moz-transform: translateY(-100%) rotateX(-90deg);
  }
}

@keyframes rotateRoomBottomIn {
  from {
    opacity: .3;
    transform: translateY(-100%) rotateX(-90deg);
  }
}

/* cube */
@-webkit-keyframes rotateCubeLeftOut {
  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }

  100% {
    opacity: .3;
    -webkit-transform: translateX(-100%) rotateY(-90deg);
  }
}

@-moz-keyframes rotateCubeLeftOut {
  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }

  100% {
    opacity: .3;
    -moz-transform: translateX(-100%) rotateY(-90deg);
  }
}

@keyframes rotateCubeLeftOut {
  50% {
    animation-timing-function: ease-out;
    transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }

  100% {
    opacity: .3;
    transform: translateX(-100%) rotateY(-90deg);
  }
}

@-webkit-keyframes rotateCubeLeftIn {
  0% {
    opacity: .3;
    -webkit-transform: translateX(100%) rotateY(90deg);
  }

  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }
}

@-moz-keyframes rotateCubeLeftIn {
  0% {
    opacity: .3;
    -moz-transform: translateX(100%) rotateY(90deg);
  }

  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }
}

@keyframes rotateCubeLeftIn {
  0% {
    opacity: .3;
    transform: translateX(100%) rotateY(90deg);
  }

  50% {
    animation-timing-function: ease-out;
    transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }
}

@-webkit-keyframes rotateCubeRightOut {
  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }

  100% {
    opacity: .3;
    -webkit-transform: translateX(100%) rotateY(90deg);
  }
}

@-moz-keyframes rotateCubeRightOut {
  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }

  100% {
    opacity: .3;
    -moz-transform: translateX(100%) rotateY(90deg);
  }
}

@keyframes rotateCubeRightOut {
  50% {
    animation-timing-function: ease-out;
    transform: translateX(50%) translateZ(-200px) rotateY(45deg);
  }

  100% {
    opacity: .3;
    transform: translateX(100%) rotateY(90deg);
  }
}

@-webkit-keyframes rotateCubeRightIn {
  0% {
    opacity: .3;
    -webkit-transform: translateX(-100%) rotateY(-90deg);
  }

  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }
}

@-moz-keyframes rotateCubeRightIn {
  0% {
    opacity: .3;
    -moz-transform: translateX(-100%) rotateY(-90deg);
  }

  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }
}

@keyframes rotateCubeRightIn {
  0% {
    opacity: .3;
    transform: translateX(-100%) rotateY(-90deg);
  }

  50% {
    animation-timing-function: ease-out;
    transform: translateX(-50%) translateZ(-200px) rotateY(-45deg);
  }
}

@-webkit-keyframes rotateCubeTopOut {
  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }

  100% {
    opacity: .3;
    -webkit-transform: translateY(-100%) rotateX(90deg);
  }
}

@-moz-keyframes rotateCubeTopOut {
  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }

  100% {
    opacity: .3;
    -moz-transform: translateY(-100%) rotateX(90deg);
  }
}

@keyframes rotateCubeTopOut {
  50% {
    animation-timing-function: ease-out;
    transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }

  100% {
    opacity: .3;
    transform: translateY(-100%) rotateX(90deg);
  }
}

@-webkit-keyframes rotateCubeTopIn {
  0% {
    opacity: .3;
    -webkit-transform: translateY(100%) rotateX(-90deg);
  }

  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }
}

@-moz-keyframes rotateCubeTopIn {
  0% {
    opacity: .3;
    -moz-transform: translateY(100%) rotateX(-90deg);
  }

  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }
}

@keyframes rotateCubeTopIn {
  0% {
    opacity: .3;
    transform: translateY(100%) rotateX(-90deg);
  }

  50% {
    animation-timing-function: ease-out;
    transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }
}

@-webkit-keyframes rotateCubeBottomOut {
  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }

  100% {
    opacity: .3;
    -webkit-transform: translateY(100%) rotateX(-90deg);
  }
}

@-moz-keyframes rotateCubeBottomOut {
  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }

  100% {
    opacity: .3;
    -moz-transform: translateY(100%) rotateX(-90deg);
  }
}

@keyframes rotateCubeBottomOut {
  50% {
    animation-timing-function: ease-out;
    transform: translateY(50%) translateZ(-200px) rotateX(-45deg);
  }

  100% {
    opacity: .3;
    transform: translateY(100%) rotateX(-90deg);
  }
}

@-webkit-keyframes rotateCubeBottomIn {
  0% {
    opacity: .3;
    -webkit-transform: translateY(-100%) rotateX(90deg);
  }

  50% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }
}

@-moz-keyframes rotateCubeBottomIn {
  0% {
    opacity: .3;
    -moz-transform: translateY(-100%) rotateX(90deg);
  }

  50% {
    -moz-animation-timing-function: ease-out;
    -moz-transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }
}

@keyframes rotateCubeBottomIn {
  0% {
    opacity: .3;
    transform: translateY(-100%) rotateX(90deg);
  }

  50% {
    animation-timing-function: ease-out;
    transform: translateY(-50%) translateZ(-200px) rotateX(45deg);
  }
}

/* carousel */
@-webkit-keyframes rotateCarouselLeftOut {
  to {
    opacity: .3;
    -webkit-transform: translateX(-150%) scale(0.4) rotateY(-65deg);
  }
}

@-moz-keyframes rotateCarouselLeftOut {
  to {
    opacity: .3;
    -moz-transform: translateX(-150%) scale(0.4) rotateY(-65deg);
  }
}

@keyframes rotateCarouselLeftOut {
  to {
    opacity: .3;
    transform: translateX(-150%) scale(0.4) rotateY(-65deg);
  }
}

@-webkit-keyframes rotateCarouselLeftIn {
  from {
    opacity: .3;
    -webkit-transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@-moz-keyframes rotateCarouselLeftIn {
  from {
    opacity: .3;
    -moz-transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@keyframes rotateCarouselLeftIn {
  from {
    opacity: .3;
    transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@-webkit-keyframes rotateCarouselRightOut {
  to {
    opacity: .3;
    -webkit-transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@-moz-keyframes rotateCarouselRightOut {
  to {
    opacity: .3;
    -moz-transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@keyframes rotateCarouselRightOut {
  to {
    opacity: .3;
    transform: translateX(200%) scale(0.4) rotateY(65deg);
  }
}

@-webkit-keyframes rotateCarouselRightIn {
  from {
    opacity: .3;
    -webkit-transform: translateX(-200%) scale(0.4) rotateY(-65deg);
  }
}

@-moz-keyframes rotateCarouselRightIn {
  from {
    opacity: .3;
    -moz-transform: translateX(-200%) scale(0.4) rotateY(-65deg);
  }
}

@keyframes rotateCarouselRightIn {
  from {
    opacity: .3;
    transform: translateX(-200%) scale(0.4) rotateY(-65deg);
  }
}

@-webkit-keyframes rotateCarouselTopOut {
  to {
    opacity: .3;
    -webkit-transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

@-moz-keyframes rotateCarouselTopOut {
  to {
    opacity: .3;
    -moz-transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

@keyframes rotateCarouselTopOut {
  to {
    opacity: .3;
    transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

@-webkit-keyframes rotateCarouselTopIn {
  from {
    opacity: .3;
    -webkit-transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@-moz-keyframes rotateCarouselTopIn {
  from {
    opacity: .3;
    -moz-transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@keyframes rotateCarouselTopIn {
  from {
    opacity: .3;
    transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@-webkit-keyframes rotateCarouselBottomOut {
  to {
    opacity: .3;
    -webkit-transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@-moz-keyframes rotateCarouselBottomOut {
  to {
    opacity: .3;
    -moz-transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@keyframes rotateCarouselBottomOut {
  to {
    opacity: .3;
    transform: translateY(200%) scale(0.4) rotateX(-65deg);
  }
}

@-webkit-keyframes rotateCarouselBottomIn {
  from {
    opacity: .3;
    -webkit-transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

@-moz-keyframes rotateCarouselBottomIn {
  from {
    opacity: .3;
    -moz-transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

@keyframes rotateCarouselBottomIn {
  from {
    opacity: .3;
    transform: translateY(-200%) scale(0.4) rotateX(65deg);
  }
}

/* sides */
@-webkit-keyframes rotateSidesOut {
  to {
    opacity: 0;
    -webkit-transform: translateZ(-500px) rotateY(90deg);
  }
}

@-moz-keyframes rotateSidesOut {
  to {
    opacity: 0;
    -moz-transform: translateZ(-500px) rotateY(90deg);
  }
}

@keyframes rotateSidesOut {
  to {
    opacity: 0;
    transform: translateZ(-500px) rotateY(90deg);
  }
}

@-webkit-keyframes rotateSidesIn {
  from {
    opacity: 0;
    -webkit-transform: translateZ(-500px) rotateY(-90deg);
  }
}

@-moz-keyframes rotateSidesIn {
  from {
    opacity: 0;
    -moz-transform: translateZ(-500px) rotateY(-90deg);
  }
}

@keyframes rotateSidesIn {
  from {
    opacity: 0;
    transform: translateZ(-500px) rotateY(-90deg);
  }
}

/* slide */
@-webkit-keyframes rotateSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
  }

  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
  }
}

@-moz-keyframes rotateSlideOut {
  25% {
    opacity: .5;
    -moz-transform: translateZ(-500px);
  }

  75% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(-200%);
  }

  100% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(-200%);
  }
}

@keyframes rotateSlideOut {
  25% {
    opacity: .5;
    transform: translateZ(-500px);
  }

  75% {
    opacity: .5;
    transform: translateZ(-500px) translateX(-200%);
  }

  100% {
    opacity: .5;
    transform: translateZ(-500px) translateX(-200%);
  }
}

@-webkit-keyframes rotateSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
  }
}

@-moz-keyframes rotateSlideIn {
  0%, 25% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(200%);
  }

  75% {
    opacity: .5;
    -moz-transform: translateZ(-500px);
  }

  100% {
    opacity: 1;
    -moz-transform: translateZ(0) translateX(0);
  }
}

@keyframes rotateSlideIn {
  0%, 25% {
    opacity: .5;
    transform: translateZ(-500px) translateX(200%);
  }

  75% {
    opacity: .5;
    transform: translateZ(-500px);
  }

  100% {
    opacity: 1;
    transform: translateZ(0) translateX(0);
  }
}

/* animation delay classes */
.pt-page-delay100 {
  -webkit-animation-delay: .1s;
  -moz-animation-delay: .1s;
  animation-delay: .1s;
}

.pt-page-delay180 {
  -webkit-animation-delay: .180s;
  -moz-animation-delay: .180s;
  animation-delay: .180s;
}

.pt-page-delay200 {
  -webkit-animation-delay: .2s;
  -moz-animation-delay: .2s;
  animation-delay: .2s;
}

.pt-page-delay300 {
  -webkit-animation-delay: .3s;
  -moz-animation-delay: .3s;
  animation-delay: .3s;
}

.pt-page-delay400 {
  -webkit-animation-delay: .4s;
  -moz-animation-delay: .4s;
  animation-delay: .4s;
}

.pt-page-delay500 {
  -webkit-animation-delay: .5s;
  -moz-animation-delay: .5s;
  animation-delay: .5s;
}

.pt-page-delay700 {
  -webkit-animation-delay: .7s;
  -moz-animation-delay: .7s;
  animation-delay: .7s;
}

.pt-page-delay1000 {
  -webkit-animation-delay: 1s;
  -moz-animation-delay: 1s;
  animation-delay: 1s;
}

/********* SASS FUNCTION *********/
@font-face {
  font-family: 'Cubano';
  font-style: normal;
  font-weight: normal;
  src: url("../font/cubano-regular-webfont.eot");
  src: url("../font/cubano-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../font/cubano-regular-webfont.woff") format("woff"), url("../font/cubano-regular-webfont.ttf") format("truetype"), url("../cubano-regular-webfont.svg") format("svg");
}

.sprites-sprite, .sprites-cursor, .sprites-left_arrow, .sprites-loften_county_002_03, .sprites-loften_county_002_06, .sprites-loften_county_002_09, .sprites-loften_county_650, .sprites-right_arrow, .sprites-scroll_button, .sprites-scroll_button_min, .sprites-slider-element_03, .sprites-slider-element_07, .sprites-slider-element_10, .sprites-slider-left-arrow, .sprites-slider-right-arrow, .scroll-button, .slider-b__left-arrow, .slider-b__left-arrow span, .slider-b__right-arrow, .slider-b__right-arrow span, .b-recipe__left-arrow, .b-recipe__left-arrow span, .b-recipe__right-arrow, .b-recipe__right-arrow span, .nutritional-facts-button, .control-b-buttons__item a .yell-btn, .control-b-buttons__item input, .lightbox-close, .send-button, .contacts-phone:before, .contacts-mail:before {
  background: url('../img/sprites-s5f0339e606.png') no-repeat;
}

.sprites-cursor {
  background-position: 0 -1124px;
}

.sprites-left_arrow {
  background-position: 0 -607px;
}

.sprites-loften_county_002_03 {
  background-position: 0 -139px;
}

.sprites-loften_county_002_06 {
  background-position: 0 -794px;
}

.sprites-loften_county_002_09 {
  background-position: 0 -780px;
}

.sprites-loften_county_650 {
  background-position: 0 0;
}

.sprites-right_arrow {
  background-position: 0 -671px;
}

.sprites-scroll_button {
  background-position: 0 -443px;
}

.sprites-scroll_button_min {
  background-position: 0 -369px;
}

.sprites-slider-element_03 {
  background-position: 0 -548px;
}

.sprites-slider-element_07 {
  background-position: 0 -735px;
}

.sprites-slider-element_10 {
  background-position: 0 -813px;
}

.sprites-slider-left-arrow {
  background-position: 0 -988px;
}

.sprites-slider-right-arrow {
  background-position: 0 -852px;
}

/********* COMMON *********/
* {
  text-decoration: none;
}

html, body {
  width: 100%;
  height: 100%;
}

h1, h2, h3, h4, h5 {
  font-weight: normal;
}

body {
  display: block;
  background: #fff;
}

input, textarea, button {
  border: none;
}

input:focus, textarea:focus, button:focus {
  outline: none;
}

ul li {
  list-style: none;
}

#wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  overflow-y: hidden;
  overflow-x: scroll;
}

section {
  height: 100%;
  position: relative;
  min-width: 600px;
}

#container {
  position: relative;
  margin: 0 auto;
  height: 100%;
}

.copyright-wrap {
  font-size: 12px;
  color: #fff;
  margin: 95px 30px 0 30px;
  position: fixed;
  right: -10px;
  bottom: 6px;
  z-index: 9002;
}

a.copyright .icon {
  display: block;
  width: 17px;
  height: 17px;
  position: relative;
  top: -2px;
  margin-left: 10px;
  border-radius: 17px;
  background-color: #f99d1c;
  background-image: url(../img/36.png);
  background-repeat: no-repeat;
  background-position: 3px 3px;
}

.inlineWrap > *, .inline {
  display: -moz-inline-box;
  display: inline-block;
  vertical-align: top;
  list-style: none;
}

a.copyright .icon span {
  display: block;
  position: absolute;
  width: 0px;
  height: 0px;
  border-radius: 17px;
  left: 8px;
  top: 8px;
  background-color: #8b0101;
  background-image: url(../img/36.png);
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  z-index: 9002;
}

.t {
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: 9002;
}

a.copyright:hover .icon {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  background-position: -20px -20px;
}

a.copyright:hover .icon span {
  left: 0px;
  top: 0px;
  width: 17px;
  height: 17px;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

/********* HEADER PAGE *********/
.header-page {
  background: #fff;
  width: 100%;
}

.header-page-header-b {
  background: url(../img/bg1_01.png);
  height: 214px;
}
.header-page-header-a {
  background: url(../img/bg1_01.png);
  height: 44px;
  position: relative;
  z-index: 1;
}

.main {
  text-align: center;
}

nav.main-menu {
  position: absolute;
  top: -40px;
  width: 100%;
  text-align: center;
  z-index: 999;
}
nav.main-menu ul {
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  margin-right: -29px;
}
nav.main-menu li {
  float: left;
  margin-right: 29px;
  overflow: hidden;
}
nav.main-menu a {
  font: 18px "Cubano", "Arial Black", serif;
  color: #333333;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-transition: color 1s ease;
  -moz-transition: color 1s ease;
  -o-transition: color 1s ease;
  -ms-transition: color 1s ease;
  transition: color 1s ease;
}
nav.main-menu a.active {
  color: #8b0101;
}

nav.yellow-menu {
  position: absolute;
  top: -40px;
  z-index: 999;
}
nav.yellow-menu li {
  float: left;
  margin-right: 29px;
  overflow: hidden;
}
nav.yellow-menu a {
  font: 18px "Cubano", "Arial Black", serif;
  color: #fff;
  text-transform: uppercase;
  cursor: pointer;
}
nav.yellow-menu a.active {
  color: #f99d1c;
}

.header-page {
  background-repeat: no-repeat;
  background-size: cover;
  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.myBackground.jpg', sizingMethod='scale');
  -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='myBackground.jpg', sizingMethod='scale')";
}

.logo-layout {
  width: 500px;
  margin: 0 auto;
}

.logo {
  z-index: 200;
  position: absolute;
  top: 20px;
  left: 50%;
  margin-left: -107px;
  height: 230px;
  width: 215px;
  display: block;
  img {
    width: 100%;
    height: auto;
  }
}

.image-container {
  height: 600px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.header-page-title-b {
  text-align: center;
}

.header-page-title-b__title {
  font: 18px "Cubano", "Arial Black", serif;
  font-size: 103px;
  line-height: 1.1;
  color: #fff;
  padding-top: 24px;
  padding-bottom: 10px;
}
@media screen and (max-width: 1100px) {
  .header-page-title-b__title {
    font-size: 56px;
  }
}

.header-page-title-b__descript a {
  font: 18px "Cubano", "Arial Black", serif;
  font-size: 22px;
  line-height: 1.1;
  border-bottom: 2px solid #f99d1c;
  color: #fff;
  letter-spacing: 2px;
  transition: all 0.3s linear;
}
.header-page-title-b__descript a:hover {
  color: #f99d1c;
}

img.header-page-img-b {
  position: absolute;
}

.header-page-img-b {
  position: absolute;
  top: 202px;
  left: 0;
  right: 0;
  bottom: 0;
  background: url(../img/header_soc_02.jpg) no-repeat;
  background-size: cover;
  text-align: center;
  background-position: center center;
}

.scroll-button {
  position: absolute;
  width: 99px;
  height: 105px;
  top: -300px;
  left: 50%;
  margin-left: -50px;
  background-position: 0 -443px;
  background-repeat: no-repeat;
  border: 0;
  font: 18px "Cubano", "Arial Black", serif;
  color: #fff;
  font-size: 22px;
  padding-top: 38px;
  cursor: pointer;
}

.headers-block {
  padding-top: 40px;
  padding-bottom: 30px;
  background: url(../img/page1_title_bg.png);
  text-align: center;
  position: relative;
  z-index: 2;
  box-shadow: 0 3px 3px 2px rgba(5,5,5, .3);
}

.drop-btn {
  top: 140px;
}

.fly-title {
  margin-right: 0;
}

.fly-descript {
  margin-left: 0;
}

.scroll-button {
  -webkit-transition: top, 1s, ease, 0.5s;
  -moz-transition: top, 1s, ease, 0.5s;
  -o-transition: top, 1s, ease, 0.5s;
  transition: top, 1s, ease, 0.5s;
}

.header-page-title-b__title {
  -webkit-transition: all, 0.4s, ease, 0.3s;
  -moz-transition: all, 0.4s, ease, 0.3s;
  -o-transition: all, 0.4s, ease, 0.3s;
  transition: all, 0.4s, ease, 0.3s;
}

.header-page-title-b__descript {
  -webkit-transition: all, 0.7s, ease, 0.3s;
  -moz-transition: all, 0.7s, ease, 0.3s;
  -o-transition: all, 0.7s, ease, 0.3s;
  transition: all, 0.7s, ease, 0.3s;
}

.main-menu {
  -webkit-transition: top, 1s, ease, 0.2s;
  -moz-transition: top, 1s, ease, 0.2s;
  -o-transition: top, 1s, ease, 0.2s;
  transition: top, 1s, ease, 0.2s;
}

nav.main-menu-hide {
  top: -40px;
}

.pt-page-current .header-page-title-b__descript {
  margin-left: 0;
}

.pt-page-current .header-page-title-b__title {
  margin-right: 0;
}

.pt-page-current .scroll-button {
  top: 140px;
}

.pt-page-current nav.yellow-menu {
  top: 11px;
}


/********* CONTACT PAGE *********/
input, textarea {
  height: 50px;
  background: #d4c8b8;
  line-height: 50px;
  border-radius: 3px;
  font: 18px "Cubano", "Arial Black", serif;
  color: #333333;
  font-size: 20px;
  padding: 0 20px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.contact-form-layout {
  width: 100%;
  position: relative;
  padding-bottom: 130px;
  box-shadow: 0 3px 3px 2px rgba(5,5,5, .2);
}

.contact {
  padding: 0 20px;
}

.contact-form {
  max-width: 720px;
  margin: 0 auto;
}
.contact-form p {
  color: #fff;
  margin: 40px auto;
}

.row {
  margin-bottom: 32px;
  height: 50px;
}

.contact-form-layout {
  height: 100%;
  text-align: center;
  background: url(../img/about-page_bottom_bg.png);
}



.contact-form-b__name input, .contact-form-b__name,
.contact-form-b__phone input, .contact-form-b__phone,
.contact-form-b__email input, .contact-form-b__email {
  width: 100%;
}

.contact-form-b__textarea textarea {
  width: 100%;
  max-width: 715px;
  height: 189px;
  resize: none;
  padding-top: 20px;
  padding-bottom: 20px;
}

.contact-form-b__textarea {
  width: 100%;
  height: 189px;
}

@media screen and (min-width: 768px) {
  .contact-form-b__name {
    float: left;
    max-width: 715px;
  }
  .contact-form-b__name input {
    max-width: 715px;
  }

  .contact-form-b__phone input {
    max-width: 340px;
  }
  .contact-form-b__phone {
    float: left;
    max-width: 340px;
  }

  .contact-form-b__email input {
    max-width: 340px;
    margin-right: 4px;
  }
  .contact-form-b__email {
    float: right;
    max-width: 340px;
  }
  .contact-form-b__textarea {
    float: left;
    max-width: 715px;
  }
}

.send-button {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 105px;
  background-position: 0 -443px;
  border: 0;
  font: 18px "Cubano", "Arial Black", serif;
  color: #fff;
  font-size: 22px;
  cursor: pointer;
}

.form::after {
  content: '';
  display: table;
  clear: both;
}

::-webkit-input-placeholder {
  color: #333333;
}

:-moz-placeholder {
  color: #333333;
}

::-moz-placeholder {
  color: #333333;
}

:-ms-input-placeholder {
  color: #333333;
}

.bottom-b {
  background: #fff;
  text-align: center;
  width: 100%;
  padding: 12px 20px;
}

.bottom-b__title {
  font: 18px "Cubano", "Arial Black", serif;
  color: #333333;
  font-size: 20px;
  padding-top: 30px;
  word-wrap: normal;
}

.contacts-phone, .contacts-mail {
  font-family: Arial;
  font-size: 20px;
  color: #333333;
  padding-top: 17px;
  padding-right: 20px;
  display: inline-block;
  *display: inline;
  zoom: 1;
}

.contacts-phone:before {
  content: "";
  float: left;
  width: 14px;
  height: 19px;
  margin: 2px 8px 0 0;
  background-position: 0 -794px;
  background-repeat: no-repeat;
}

.contacts-mail:before {
  content: "";
  float: left;
  width: 22px;
  height: 14px;
  margin: 5px 4px 0 0;
  background-position: 0 -780px;
  background-repeat: no-repeat;
}

a.diluigi-logo {
  display: inline-block;
}

.company-logo {
  margin-top: 17px;
  margin-bottom: 23px;
  height: 65px;
}

.contact-page__title {
  font: 18px "Cubano", "Arial Black", serif;
  font-size: 60px;
  color: #f99d1c;
  padding-top: 56px;
  padding-bottom: 17px;
}

.contact-page__title {
  -webkit-transition: margin-right, 0.4s, ease, 0.1s;
  -moz-transition: margin-right, 0.4s, ease, 0.1s;
  -o-transition: margin-right, 0.4s, ease, 0.1s;
  transition: margin-right, 0.4s, ease, 0.1s;
}

.contact-page__title-hide {
  margin-right: -2000px;
}

.contact-form-b__name input {
  -webkit-transition: margin-left, 0.4s, ease, 0.2s;
  -moz-transition: margin-left, 0.4s, ease, 0.2s;
  -o-transition: margin-left, 0.4s, ease, 0.2s;
  transition: margin-left, 0.4s, ease, 0.2s;
}

.contact-form-b__phone input {
  -webkit-transition: margin-left, 0.6s, ease, 0.4s;
  -moz-transition: margin-left, 0.6s, ease, 0.4s;
  -o-transition: margin-left, 0.6s, ease, 0.4s;
  transition: margin-left, 0.6s, ease, 0.4s;
}

.contact-form-b__email input {
  -webkit-transition: margin-right, 0.6s, ease, 0.4s;
  -moz-transition: margin-right, 0.6s, ease, 0.4s;
  -o-transition: margin-right, 0.6s, ease, 0.4s;
  transition: margin-right, 0.6s, ease, 0.4s;
}

.contact-form-b__email-hide {
  margin-right: -2000px;
}

.contact-form-b__textarea textarea {
  -webkit-transition: margin-right, 0.6s, ease, 0.8s;
  -moz-transition: margin-right, 0.6s, ease, 0.8s;
  -o-transition: margin-right, 0.6s, ease, 0.8s;
  transition: margin-right, 0.6s, ease, 0.8s;
}

/* hide the honeypot */
.contact-form-b__website {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0px, 0px, 0px, 0px);
  height: 1px;
  width: 1px;
  left: 5px;
  top: 1px;
  border: 0px none;
  padding: 0px;
}

.contact-form-b__textarea-hide {
  right: 4px;
}

.send-span {
  display: block;
  margin-top: 37px;
}

.ie8 .control-b-buttons__item a .yell-btn {
  display: none;
}

.ie8 .slider__button:hover .yell-btn {
  display: block;
}

.ie8 .control-b-buttons__item a span.active {
  display: block;
}

.send-button:hover span {
  -webkit-animation: toTopFromBottom 0.4s forwards;
  -moz-animation: toTopFromBottom 0.4s forwards;
  animation: toTopFromBottom 0.4s forwards;
}

@-webkit-keyframes toTopFromBottom {
  49% {
    -webkit-transform: translateY(-140%);
  }

  50% {
    opacity: 0;
    -webkit-transform: translateY(130%);
  }

  51% {
    opacity: 1;
  }
}

@-moz-keyframes toTopFromBottom {
  49% {
    -moz-transform: translateY(-140%);
  }

  50% {
    opacity: 0;
    -moz-transform: translateY(130%);
  }

  51% {
    opacity: 1;
  }
}

@keyframes toTopFromBottom {
  49% {
    transform: translateY(-140%);
  }

  50% {
    opacity: 0;
    transform: translateY(130%);
  }

  51% {
    opacity: 1;
  }
}

.send-button {
  -webkit-transition: margin-top, 0.6s, ease, 1.5s;
  -moz-transition: margin-top, 0.6s, ease, 1.5s;
  -o-transition: margin-top, 0.6s, ease, 1.5s;
  transition: margin-top, 0.6s, ease, 1.5s;
}

.send-button-hide {
  margin-top: -2000px;
}

.bottom-b {
  -webkit-transition: height, 0.4s, ease, 1.5s;
  -moz-transition: height, 0.4s, ease, 1.5s;
  -o-transition: height, 0.4s, ease, 1.5s;
  transition: height, 0.4s, ease, 1.5s;
}

.bottom-b-hide {
  height: 0;
}

.tooltip-inner {
  max-width: 200px;
  min-width: 80px;
  padding: 7px 10px;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background-color: #9f2027;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
}

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 1px;
  margin-top: -12px;
  border-width: 12px 0 12px 12px;
  border-left-color: #9f2027;
}

.tooltip.right {
  width: 205px;
}

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 1px;
  margin-top: -12px;
  border-width: 12px 12px 12px 0;
  border-right-color: #9f2027;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.tooltip-inner {
  position: absolute;
  top: -16px;
  right: 13px;
}

.tooltip.right .tooltip-inner {
  left: 13px;
}

:-moz-placeholder {
  color: #000;
}

.pt-page-current .contact-page__title {
  margin-right: 0;
}

.pt-page-current .contact-form-b__name input {
  margin-left: 0;
}

.pt-page-current .contact-form-b__phone input {
  margin-left: 0;
}

.pt-page-current .contact-form-b__email input {
  margin-right: 4px;
}

.pt-page-current .contact-form-b__textarea textarea {
  margin-right: 0;
}

.pt-page-current .send-button {
  margin-top: 200px;
}

.pt-page-current .bottom-b {
  height: 200px;
}

.pt-page-current .tooltip {
  display: block;
  position: absolute;
  right: 0;
  left: auto;
  top: 24px;
}

.row {
  position: relative;
}

.tooltip {
  position: absolute;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s ease-out;
}
.tooltip.right {
  right: 0;
}
.tooltip.fade {
  opacity: 1;
  visibility: visible;
}

.ie8 input {
  padding-top: 10px;
}

/********* IE FIX *********/
/**.lt-ie9 .contact-form-b__name {width:695px;}
 .ie7          .contact-form-b__phone {width: 300px; margin-right: 31px;}
  .ie7 .contact-form-layout {height: 682px;}
  .lt-ie9 input {line-height: 50px;}
  .ie7          .contact-form {margin-left: -215px;}
  .ie7          .send-button {margin-left: -183px;}
  .lt-ie9       .contact-form-b__email {width: 320px;}
    .lt-ie9     .contact-form-b__textarea {width:695px;float: left; position: relative; resize:none; padding-top: 0; padding-bottom: 20px;}
.lt-ie9 .header-page-title-b .header-page-title-b__title {margin-bottom: -34px;}
.lt-ie9 .about-page-info-b {width:800px; padding-right: 90px; }
.lt-ie9 .about-page-info-b__title {margin-bottom: -57px;}
.lt-ie9 .title-b__title {text-transform: uppercase;}
.lt-ie9 .contact-form {width: 700px;}

.lt-ie9 .lightbox-close {display: block;}
 .lt-ie9 .list-block__layout  {width: 900px; display: block;}
.slider-anim {    -webkit-animation: scaleDown .7s ease both;
    -moz-animation: scaleDown .7s ease both;
    animation: scaleDown .7s ease both; } **/
@media screen and (max-height: 870px) {
  /********* Navigation *********/
  nav.main-menu a {
    font-size: 15px;
  }

  nav.main-menu-contact-page a {
    font-size: 16px;
  }

  .main-menu-contact-page {
    margin-left: -180px;
  }

  /********* HEADER PAGE *********/
  .header-page {
    min-width: 800px;
  }

  .header-page-header-b {
    height: 175px;
  }

  .header-page-title-b {
    top: 175px;
  }

  .header-page-title-b__title {
    margin-bottom: -22px;
    min-width: 0;
    font-size: 72px;
    min-width: 400px;
    padding-top: 4px;
  }

  .header-page-img-b {
    top: 141px;
  }

  .headers-block {
    height: 142px;
  }

  .logo {
    background-position: 0 0;
    background-repeat: no-repeat;
    top: 20px;
    margin-left: -69px;
    width: 130px;
    height: 139px;
  }

  .scroll-button {
    background-position: 0 -369px;
    background-repeat: no-repeat;
    width: 72px;
    height: 74px;
    font-size: 17px;
    margin-left: -35px;
    padding-top: 25px;
    top: -230px;
  }

  .header-page-title-b__descript {
    font-size: 49px;
    min-width: 400px;
  }

  .drop-btn {
    top: 98px;
  }

  .pt-page .scroll-button {
    top: 98px;
  }

  /********* ABOUT PAGE *********/
  .about-page {
    min-width: 800px;
  }

  .about-page-info-b__title {
    font-size: 42px;
    margin-top: 62px;
    margin-bottom: -34px;
  }

  .about-page-info-b__title-yellow {
    font-size: 72px;
  }

  .about-page-img-cont {
    background: url(../img/about_img_mini.jpg) no-repeat;
    width: 382px;
    height: 429;
    bottom: -60px;
  }

  .about-page-info-b {
    width: 440px;
    margin-top: -390px;
  }

  .differences-list-left__item {
    font-size: 13px;
    margin-left: 20px;
  }

  .differences-list-right__item {
    font-size: 13px;
    width: 200px;
  }

  .about-page-info-b__descript {
    font-size: 12px;
    line-height: 23px;
    padding-top: 23px;
    width: 452px;
  }

  .block__title {
    font-size: 19px;
    padding-top: 25px;
  }

  .block__list__item {
    font-size: 13px;
  }

  .about-page-benefits-b__blocks {
    width: 960px;
    display: block;
  }

  .about-page-info-b__differences-list-left {
    width: 200px;
  }

  .about-page-info-b__differences-list-right {
    width: 200px;
  }

  .about-page-benefits-section {
    height: 0;
  }

  .list-slide {
    width: 411px;
  }

  .hide-bottom-b {
    height: 200px;
  }

  .pt-page-current .about-page-benefits-section {
    height: 200px;
  }

  .pt-page-current .list-block__layout {
    width: 440px;
  }

  .ie8 .about-page-info-b__differences-list-right {
    white-space: nowrap;
  }

  .ie8 .about-page-info-b__differences-list-right {
    width: 290px;
  }

  .ie8 .about-page-info-b__differences-list-left {
    width: 260px;
  }

  /********* PRODUCT PAGE *********/
  .product-page {
    min-width: 800px;
  }

  .title-b__title {
    font-size: 35px;
    margin-top: -280px;
  }

  .ie8 .title-b__title {
    font-size: 35px;
    margin-top: -290px;
  }

  .slide {
    margin-top: 3000px;
    margin-left: -312px;
  }

  .slide img {
    height: 425px;
  }

  .control-b {
    bottom: -51px;
  }

  .slide-show-mini {
    margin-top: -212px;
  }

  .pt-page-current .slide {
    margin-top: -212px;
  }

  .control-b-buttons {
    padding-top: 0;
    margin-top: 0px;
  }

  .slide-tool-tip {
    bottom: 125px;
  }

  .brochure-download {
    top: 76px;
  }

  /********* CONTACT PAGE *********/

  .contact-page__title {
    margin-top: 35px;
    padding-bottom: 20px;
    font-size: 42px;
  }

  .contact-form {
    width: 501px;
    margin-left: -252px;
    font-size: 15px;
    margin-top: -368px;
  }

  .contact-form-b__name input {
    width: 501px;
    height: 35px;
    margin-bottom: 22px;
    font-size: 15px;
  }

  .contact-form-b__name {
    width: 501px;
  }

  .contact-form-b__phone input {
    width: 238px;
    height: 35px;
    margin-bottom: 22px;
    margin-right: 20px;
    font-size: 15px;
    top: 219px;
  }

  .contact-form-b__phone {
    width: 238px;
  }

  .contact-form-b__email input {
    width: 238px;
    height: 35px;
    margin-bottom: 22px;
    font-size: 15px;
    top: 219px;
  }

  .contact-form-b__email {
    width: 238px;
  }

  .contact-form-b__textarea textarea {
    width: 100%;
    height: 132px;
    font-size: 15px;
  }

  .contact-form-b__textarea {
    width: 501px;
  }

  .bottom-b__title {
    font-size: 14px;
    padding-top: 15px;
    min-width: 600px;
  }

  .pt-page-current .send-button {
    background-position: 0 -369px;
    background-repeat: no-repeat;
    width: 70px;
    height: 74px;
    font-size: 17px;
    margin-left: -35px;
    margin-top: 90px;
  }

  .pt-page-current .bottom-b {
    height: 140px;
  }

  .bottom-b img {
    width: 101px;
    height: 55px;
    margin-top: 10px;
  }

  .bottom-b a {
    font-size: 15px;
    padding-top: 11px;
  }

  .send-button-hide {
    margin-top: -2000px;
  }

  .bottom-b-hide {
    height: 0;
  }

  .row {
    margin-bottom: 7px;
  }

  .tooltip.left .tooltip-arrow {
    margin-top: -21px;
  }

  .tooltip-inner {
    max-width: 142px;
    min-width: 80px;
    padding: 7px 10px;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    background-color: #9f2027;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    font-size: 12px;
  }

  .tooltip.right .tooltip-arrow {
    margin-top: -14px;
    left: 2px;
  }

  .pt-page-current .tooltip {
    top: 19px;
  }

  .tooltip.right {
    width: 170px;
  }

  .copyright-wrap {
    font-size: 10px;
  }

  .copyright-wrap p {
    float: left;
  }

  .send-span {
    margin-top: 26px;
  }

  /****** IE MEDIAQUERIES *******/
  .ie8 .list-block__layout {
    width: 900px;
  }

  .ie8 .pt-page {
    display: none;
  }

  .ie8 .pt-page-current {
    display: block;
  }

  .ie8 input {
    padding-top: 5px;
  }

  .ie8 .about-page-info-b__descript {
    width: 552px;
  }

  .ie8 .about-page-info-b__title {
    margin-bottom: -37px;
  }

  .ie8 .control-b {
    bottom: -62px;
  }

  .ie8 .contact-form {
    width: 501px;
    margin-left: -252px;
    font-size: 15px;
  }
}
.QOverlay {
  background-color: #8b0101;
  z-index: 9999;
}

.QLoader {
  background-color: #f99d1c;
  height: 4px;
}

*, *:after, *:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

/*
.pt-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-perspective: 1200px;
  -moz-perspective: 1200px;
  perspective: 1200px;
}
.pt-page {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.pt-page-current, .no-js .pt-page {
  visibility: visible;
  z-index: 9000;
}*/

.no-js body {
  overflow: auto;
}

/* Page Styles */
.pt-page-ontop {
  z-index: 999;
}

/******** For tablet landscape mode *********/
@media screen and (min-height: 870px) and (max-width: 1200px) {
  .block__list {
    padding-right: 70px;
    max-width: 360px;
  }

  .about-page-info-b {
    width: 500px;
    margin-left: -100px;
  }
}
/******** Recipes page *********/
.b-recipes-page {
  background: #e3d9c8;
}

.b-recipes-page__headers {
  background: url(../img/page1_title_bg.png);
  text-align: center;
  margin-top: 45px;
  position: relative;
  z-index: 2000;
}

.b-headers__header_white {
  margin-bottom: -24px;
  font-size: 60px;
}

.b-headers__header_yellow {
  font-size: 58px;
  margin-bottom: 0;
}

.b-recipes-page__recipes-list {
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -o-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: -webkit-transform 500ms ease;
  -webkit-transition-delay: 1000ms;
  -moz-transition: -moz-transform 500ms ease 1000ms;
  -o-transition: -o-transform 500ms ease 1000ms;
  transition: transform 500ms ease 1000ms;
}

.pt-page-current .b-recipes-page__recipes-list {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}

.b-recipes-lists__list {
  margin: 0 auto;
  max-width: 1000px;
  padding-bottom: 30px;
  text-align: center;
  overflow: hidden;
  *zoom: 1;
}

.b-recipes-list {
  width: 33.3333%;
  float: left;
}

.b-recipes-list_left {
  text-align: left;
  padding-left: 50px;
}

.b-recipes-list_center {
  text-align: center;
}

.b-recipes-list_right {
  text-align: right;
  padding-right: 50px;
}

.b-recipes-list__item {
  padding: 3px 0;
}

.l-recipe-link {
  display: inline-block;
  font: 18px "Cubano", "Arial Black", serif;
  font-size: 20px;
  color: #993333;
  -webkit-transition: all 300ms ease-in;
  -moz-transition: all 300ms ease-in;
  -o-transition: all 300ms ease-in;
  transition: all 300ms ease-in;
}
.l-recipe-link:hover {
  color: white;
}

.l-recipe-link_active {
  color: #f99d1c;
}

.slide_recipes {
  height: 100% !important;
  top: 0 !important;
  height: auto;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: 3000px;
  visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.b-slide-content {
  display: table-cell;
  vertical-align: middle;
  padding-bottom: 10px;
  padding-top: 15px;
}

.slider-b_recipes {
  height: auto;
  top: 332px;
  bottom: 0;
  margin-top: 0;
  font-family: Helvetica;
}

.b-slide-content__layout {
  display: table;
  height: 100%;
  width: 756px;
  margin: 0 auto;
}

.pt-page-current .slide_recipes {
  margin-top: 0 !important;
}

.b-slide-content__title {
  text-align: center;
  font: 18px "Cubano", "Arial Black", serif;
  font-size: 35px;
  color: #8b0101;
}

.b-ingredients {
  text-align: center;
}

.b-ingredients__ingredient {
  font-size: 19px;
  padding: 3px;
  list-style: disc inside;
}

.b-slide-content__instructions {
  margin-top: 5px;
}

.b-inctructions__paragraph {
  padding: 6px;
  font-size: 16px;
  line-height: 2;
}

.b-inctructions__paragraph_strong {
  font: 18px "Cubano", "Arial Black", serif;
  text-transform: uppercase;
}

.b-button-tooltip {
  text-align: center;
  position: absolute;
  bottom: 50%;
  margin-bottom: 63px;
  background: #8b0101;
  color: #fff;
  width: 118px;
  border-radius: 6px;
  font-weight: bold;
  font-size: 12px;
  padding: 8px 0;
  display: none;
  z-index: 9999;
  padding: 8px 3px;
}
.b-button-tooltip span {
  position: absolute;
  bottom: -12px;
  left: 48px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 12px 11.5px 0 11.5px;
  border-color: #8b0101 transparent transparent transparent;
}

.b-button-tooltip_left {
  left: 30px;
}
.b-button-tooltip_left span {
  left: 20px;
}

.b-button-tooltip_right {
  right: 30px;
}
.b-button-tooltip_right span {
  left: 78px;
}

@media screen and (max-height: 870px) {
  .b-headers__header_white {
    font-size: 50px;
    margin-bottom: -18px;
  }

  .b-headers__header_yellow {
    font-size: 48px;
  }

  .l-recipe-link {
    font-size: 17px;
  }

  .b-recipes-lists__list {
    padding-bottom: 15px;
  }

  .slider-b_recipes {
    top: 282px;
  }
}
/******** Recipe page *********/
.c-recipe-page {
  overflow: auto;
}

.b-recipe-page {
  background: url('../img/page1_title_bg.png') repeat;
  width: 100%;
  padding: 10px 20px 10px 20px;
  font-size: 17px;
  color: #fff;
  font-weight: 700;
  font: 18px "Cubano", "Arial Black", serif;
}
.b-recipe-page .logo {
  position: static;
  margin: 0 auto 20px;
}
.b-recipe-page .b-headers .b-headers__header_white, .b-recipe-page .b-headers__header_yellow {
  font-size: 40px;
  min-width: 0;
}
.b-recipe-page .b-recipe-page__links {
  padding-bottom: 30px;
}
.b-recipe-page .b-recipe-page__links > li {
  margin-bottom: 5px;
  list-style-position: outside;
  margin-left: 20px;
  position: relative;
}
.b-recipe-page .b-recipe-page__links > li:before {
  content: '*';
  font-size: 22px;
  color: #f99d1c;
  font-weight: 700;
  position: absolute;
  left: -20px;
  top: -1px;
}
.b-recipe-page .b-recipe-page__links > li > a {
  font-size: 21px;
  color: #f99d1c;
  font-weight: 700;
}
.b-recipe-page .b-recipe-page__recipe-box {
  margin-bottom: 30px;
}
.b-recipe-page .b-recipe-page__recipe-box .b-recipe-box__ingredient-list {
  padding-bottom: 10px;
}
.b-recipe-page .b-recipe-page__recipe-box .b-recipe-box__ingredient-list li {
  list-style: disc;
  list-style-position: outside;
  margin-left: 20px;
}
.b-recipe-page .b-recipe-page__recipe-box h2 {
  font-size: 21px;
  font-weight: 700;
  color: #f99d1c;
  padding-bottom: 6px;
}
.b-recipe-page .b-recipe-page__recipe-box p {
  padding-bottom: 30px;
}

.grecaptcha-badge {
  bottom: 48px !important;
}
