/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

@font-face {
  font-family: 'latobold';
  src: url("../fonts/lato-bold-webfont.eot");
  src: url("../fonts/lato-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-bold-webfont.woff2") format("woff2"), url("../fonts/lato-bold-webfont.woff") format("woff"), url("../fonts/lato-bold-webfont.ttf") format("truetype"), url("../fonts/lato-bold-webfont.svg#latobold") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'latoregular';
  src: url("../fonts/lato-regular-webfont.eot");
  src: url("../fonts/lato-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-regular-webfont.woff2") format("woff2"), url("../fonts/lato-regular-webfont.woff") format("woff"), url("../fonts/lato-regular-webfont.ttf") format("truetype"), url("../fonts/lato-regular-webfont.svg#latoregular") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'latoitalic';
  src: url("../fonts/lato-italic-webfont.eot");
  src: url("../fonts/lato-italic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-italic-webfont.woff2") format("woff2"), url("../fonts/lato-italic-webfont.woff") format("woff"), url("../fonts/lato-italic-webfont.ttf") format("truetype"), url("../fonts/lato-italic-webfont.svg#latoitalic") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'roboto_slabbold';
  src: url("../fonts/robotoslab-bold-webfont.eot");
  src: url("../fonts/robotoslab-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/robotoslab-bold-webfont.woff2") format("woff2"), url("../fonts/robotoslab-bold-webfont.woff") format("woff"), url("../fonts/robotoslab-bold-webfont.ttf") format("truetype"), url("../fonts/robotoslab-bold-webfont.svg#roboto_slabbold") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'roboto_slabregular';
  src: url("../fonts/robotoslab-regular-webfont.eot");
  src: url("../fonts/robotoslab-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/robotoslab-regular-webfont.woff2") format("woff2"), url("../fonts/robotoslab-regular-webfont.woff") format("woff"), url("../fonts/robotoslab-regular-webfont.ttf") format("truetype"), url("../fonts/robotoslab-regular-webfont.svg#roboto_slabregular") format("svg");
  font-weight: normal;
  font-style: normal; }
.hide {
  display: none; }

.block {
  display: block; }

.inline-block {
  display: inline-block; }

.left {
  float: left; }

.right {
  float: right; }

.clear {
  clear: both; }

.clearfix:after {
  content: "";
  display: table;
  clear: both; }

.center {
  margin-left: auto;
  margin-right: auto; }

.absolute-center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.full {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

* {
  box-sizing: border-box; }

body {
  font-family: "latoregular", sans-serif;
  font-size: 12px;
  min-width: 1024px;
  min-height: 720px;
  background-color: #032128;
  color: #fff; }

.full-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  min-width: 1024px;
  min-height: 720px;
  background-color: #76c5c2;
  color: #053641; }

.scroll-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto; }
  .scroll-frame:after {
    content: "";
    display: block;
    height: 50%; }

.card-container {
  -webkit-transition: height 700ms;
  -moz-transition: height 700ms;
  -o-transition: height 700ms;
  transition: height 700ms;
  position: relative;
  top: 50%; }

.view-all {
  position: absolute;
  bottom: 55px;
  right: 80px;
  width: 140px;
  height: 46px;
  border: 1px solid;
  border-radius: 23px;
  font-size: 16px;
  line-height: 44px;
  text-align: center;
  text-decoration: none;
  text-transform: lowercase;
  color: #053641;
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 350ms 0ms, visibility 0ms 0ms;
  -moz-transition: opacity 350ms 0ms, visibility 0ms 0ms;
  -o-transition: opacity 350ms 0ms, visibility 0ms 0ms;
  transition: opacity 350ms 0ms, visibility 0ms 0ms; }
  .view-all.fade {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    -moz-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    -o-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    transition: opacity 350ms 0ms, visibility 0ms 350ms; }

.card {
  -webkit-perspective: 2000;
  -moz-perspective: 2000;
  -o-perspective: 2000;
  perspective: 2000;
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  -o-transform-origin: center center;
  transform-origin: center center; }
  .card:before, .card:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 15px; }
  .card:before {
    -webkit-transform: translate(4px, 4px) rotateY(0deg);
    -moz-transform: translate(4px, 4px) rotateY(0deg);
    -o-transform: translate(4px, 4px) rotateY(0deg);
    transform: translate(4px, 4px) rotateY(0deg);
    background-color: rgba(0, 0, 0, 0.25);
    -webkit-transform-origin: top right;
    -moz-transform-origin: top right;
    -o-transform-origin: top right;
    transform-origin: top right; }
  .card:after {
    background-color: rgba(4, 53, 64, 0.4);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    -moz-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    -o-transition: opacity 350ms 0ms, visibility 0ms 350ms;
    transition: opacity 350ms 0ms, visibility 0ms 350ms; }

.flipper {
  -webkit-transform: translate(0, 0) rotateY(0deg);
  -moz-transform: translate(0, 0) rotateY(0deg);
  -o-transform: translate(0, 0) rotateY(0deg);
  transform: translate(0, 0) rotateY(0deg);
  position: relative;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform-origin: center right;
  -moz-transform-origin: center right;
  -o-transform-origin: center right;
  transform-origin: center right;
  -webkit-transition: all 1000ms ease-in-out;
  -moz-transition: all 1000ms ease-in-out;
  -o-transition: all 1000ms ease-in-out;
  transition: all 1000ms ease-in-out; }

.face {
  width: 360px;
  height: 500px;
  border-radius: 15px;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden; }
  .face.face--front {
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
    transform: rotateY(0deg);
    position: relative;
    padding: 30px;
    background-color: #fdf9ed;
    background-image: url("../img/frame.svg");
    background-repeat: no-repeat;
    background-position: center center; }
    .face.face--front img {
      display: block;
      margin-left: auto;
      margin-right: auto; }
  .face.face--back {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg);
    position: absolute;
    top: 0;
    left: 0;
    background-color: #043540;
    color: #fdf9ed; }
  .face .close-reference {
    overflow: hidden;
    position: absolute;
    top: 25px;
    right: 23px;
    width: 30px;
    height: 30px;
    text-indent: 110%;
    white-space: nowrap;
    background-image: url("../img/icon_close.svg"); }
  .face .content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 42px;
    font-family: "latoitalic", sans-serif;
    font-size: 17px;
    line-height: 1.4; }
    .face .content p {
      margin-bottom: 1.8em; }
      .face .content p:last-child {
        margin-bottom: 0; }
    .face .content strong {
      display: block;
      font-family: "latobold", sans-serif;
      margin-top: 0.2em; }
  .face .label {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    padding: 0 30px;
    font-family: "roboto_slabbold", sans-serif;
    font-size: 22px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap; }
    .face .label.label--symbol {
      top: 198px; }
    .face .label.label--meaning {
      top: 400px; }
  .face .reference {
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
    -webkit-transform: translate(14px, 0);
    -moz-transform: translate(14px, 0);
    -o-transform: translate(14px, 0);
    transform: translate(14px, 0);
    position: absolute;
    left: 0;
    bottom: 33px;
    display: block;
    width: 100%;
    padding: 0 50px;
    font-family: "roboto_slabregular", sans-serif;
    font-size: 17px;
    line-height: 18px;
    text-align: center;
    white-space: nowrap;
    position: absolute;
    color: #ed5f5f; }
    .face .reference .view-reference {
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity 350ms 0ms, visibility 0ms 350ms;
      -moz-transition: opacity 350ms 0ms, visibility 0ms 350ms;
      -o-transition: opacity 350ms 0ms, visibility 0ms 350ms;
      transition: opacity 350ms 0ms, visibility 0ms 350ms; }

.view-reference {
  overflow: hidden;
  display: inline-block;
  width: 18px;
  height: 20px;
  margin-left: 5px;
  text-indent: 110%;
  vertical-align: bottom;
  white-space: nowrap;
  background-image: url("../img/icon_reference.svg");
  background-size: contain;
  background-position: center center; }

/*
##############################################
### CARD STATE CLASSES AND PSEUDO-CLASSES: ###
##############################################

[no-class]
----------
- Cards are naturally centered (top: 50vh; left: 50%;)
- Natural z-index

.stacked
--------
- Keeps track of the card state
- Expects cards to be translated via an '.offset_xx' class
- Highlighted card is the top one with an explicit z-index, no translate and same scale as the others

.offset_XX
----------
- Should be used together with .stacked
- Translates cards (4px, 4px) so they create a perspective impression

:nth-child(X)
-------------
- Sets the delay for the transitions
- Reversed order (highlighted card first, than last to first)
- Do not delay too much or there will be a big gap when the highlighted card were supposed to go

.sorted
-------
- Keeps track of the card state
- Card translate must be calculated via JS
- Wrapper height must be calculated via JS

.gallery
--------
- Keeps track of the card state

.dragging
---------
- Sets highlighted card transition and delay to zero

.left-stash and .right-stash
----------------------------
- Sets translate to left or right by a fixed amount
- Sets card opacity to zero

.top-card
---------
- Used together with '.left-stash' or '.right-stash'
- Sets the card opacity to 1
- Sets the '::after' pseudo-element's opacity to 1
- Sets the '::after' pseudo-element's visibility to visible
- Delays z-index' to the end of the other transitions (from .highlight to .top-card)

.highlight
-----------
- Sets explicit z-index (e.g. 1)
- When used together with '.gallery', sets the card scale to 1
- When used together with '.gallery', displays the reference link (and translates its parent to zero)
- Is always the first to make transitions, with a zero delay

*/
.card {
  -webkit-transform: translate(-50%, -50%) scale(0.85);
  -moz-transform: translate(-50%, -50%) scale(0.85);
  -o-transform: translate(-50%, -50%) scale(0.85);
  transform: translate(-50%, -50%) scale(0.85);
  position: absolute;
  top: 0;
  left: 50%;
  opacity: 1;
  -webkit-transition: all 700ms;
  -moz-transition: all 700ms;
  -o-transition: all 700ms;
  transition: all 700ms; }
  .card.flipped .flipper {
    -webkit-transform: translate(-100%, 0) rotateY(180deg);
    -moz-transform: translate(-100%, 0) rotateY(180deg);
    -o-transform: translate(-100%, 0) rotateY(180deg);
    transform: translate(-100%, 0) rotateY(180deg); }
  .card.flipped:before {
    -webkit-animation: anim_shadow 1000ms;
    animation: anim_shadow 1000ms; }
  .card.flipBack:before {
    -webkit-animation: anim_shadow 1000ms reverse !important;
    animation: anim_shadow 1000ms reverse !important; }
  .card.stacked.offset_1 {
    -webkit-transform: translate(calc( 3px - 50% ), calc( 3px - 50% )) scale(1);
    -moz-transform: translate(calc( 3px - 50% ), calc( 3px - 50% )) scale(1);
    -o-transform: translate(calc( 3px - 50% ), calc( 3px - 50% )) scale(1);
    transform: translate(calc( 3px - 50% ), calc( 3px - 50% )) scale(1); }
  .card.stacked.offset_2 {
    -webkit-transform: translate(calc( 6px - 50% ), calc( 6px - 50% )) scale(1);
    -moz-transform: translate(calc( 6px - 50% ), calc( 6px - 50% )) scale(1);
    -o-transform: translate(calc( 6px - 50% ), calc( 6px - 50% )) scale(1);
    transform: translate(calc( 6px - 50% ), calc( 6px - 50% )) scale(1); }
  .card.stacked.offset_3 {
    -webkit-transform: translate(calc( 9px - 50% ), calc( 9px - 50% )) scale(1);
    -moz-transform: translate(calc( 9px - 50% ), calc( 9px - 50% )) scale(1);
    -o-transform: translate(calc( 9px - 50% ), calc( 9px - 50% )) scale(1);
    transform: translate(calc( 9px - 50% ), calc( 9px - 50% )) scale(1); }
  .card.stacked.offset_4 {
    -webkit-transform: translate(calc( 12px - 50% ), calc( 12px - 50% )) scale(1);
    -moz-transform: translate(calc( 12px - 50% ), calc( 12px - 50% )) scale(1);
    -o-transform: translate(calc( 12px - 50% ), calc( 12px - 50% )) scale(1);
    transform: translate(calc( 12px - 50% ), calc( 12px - 50% )) scale(1); }
  .card.stacked.offset_5 {
    -webkit-transform: translate(calc( 15px - 50% ), calc( 15px - 50% )) scale(1);
    -moz-transform: translate(calc( 15px - 50% ), calc( 15px - 50% )) scale(1);
    -o-transform: translate(calc( 15px - 50% ), calc( 15px - 50% )) scale(1);
    transform: translate(calc( 15px - 50% ), calc( 15px - 50% )) scale(1); }
  .card.stacked.offset_6 {
    -webkit-transform: translate(calc( 18px - 50% ), calc( 18px - 50% )) scale(1);
    -moz-transform: translate(calc( 18px - 50% ), calc( 18px - 50% )) scale(1);
    -o-transform: translate(calc( 18px - 50% ), calc( 18px - 50% )) scale(1);
    transform: translate(calc( 18px - 50% ), calc( 18px - 50% )) scale(1); }
  .card.stacked.offset_7 {
    -webkit-transform: translate(calc( 21px - 50% ), calc( 21px - 50% )) scale(1);
    -moz-transform: translate(calc( 21px - 50% ), calc( 21px - 50% )) scale(1);
    -o-transform: translate(calc( 21px - 50% ), calc( 21px - 50% )) scale(1);
    transform: translate(calc( 21px - 50% ), calc( 21px - 50% )) scale(1); }
  .card.stacked.offset_8 {
    -webkit-transform: translate(calc( 24px - 50% ), calc( 24px - 50% )) scale(1);
    -moz-transform: translate(calc( 24px - 50% ), calc( 24px - 50% )) scale(1);
    -o-transform: translate(calc( 24px - 50% ), calc( 24px - 50% )) scale(1);
    transform: translate(calc( 24px - 50% ), calc( 24px - 50% )) scale(1); }
  .card.stacked.offset_9 {
    -webkit-transform: translate(calc( 27px - 50% ), calc( 27px - 50% )) scale(1);
    -moz-transform: translate(calc( 27px - 50% ), calc( 27px - 50% )) scale(1);
    -o-transform: translate(calc( 27px - 50% ), calc( 27px - 50% )) scale(1);
    transform: translate(calc( 27px - 50% ), calc( 27px - 50% )) scale(1); }
  .card.stacked.offset_10 {
    -webkit-transform: translate(calc( 30px - 50% ), calc( 30px - 50% )) scale(1);
    -moz-transform: translate(calc( 30px - 50% ), calc( 30px - 50% )) scale(1);
    -o-transform: translate(calc( 30px - 50% ), calc( 30px - 50% )) scale(1);
    transform: translate(calc( 30px - 50% ), calc( 30px - 50% )) scale(1); }
  .card.stacked.offset_11 {
    -webkit-transform: translate(calc( 33px - 50% ), calc( 33px - 50% )) scale(1);
    -moz-transform: translate(calc( 33px - 50% ), calc( 33px - 50% )) scale(1);
    -o-transform: translate(calc( 33px - 50% ), calc( 33px - 50% )) scale(1);
    transform: translate(calc( 33px - 50% ), calc( 33px - 50% )) scale(1); }
  .card.stacked.highlight {
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    z-index: 2; }
  .card.gallery.highlight {
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    z-index: 2; }
    .card.gallery.highlight.rising {
      z-index: 3; }
    .card.gallery.highlight.dragging {
      -webkit-transition: all 0ms 0ms;
      -moz-transition: all 0ms 0ms;
      -o-transition: all 0ms 0ms;
      transition: all 0ms 0ms; }
    .card.gallery.highlight .reference {
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }
      .card.gallery.highlight .reference .view-reference {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 350ms 0ms, visibility 0ms 0ms;
        -moz-transition: opacity 350ms 0ms, visibility 0ms 0ms;
        -o-transition: opacity 350ms 0ms, visibility 0ms 0ms;
        transition: opacity 350ms 0ms, visibility 0ms 0ms; }
  .card.gallery.stash-left, .card.gallery.stash-right {
    opacity: 0;
    -webkit-transition-delay: 0ms;
    -moz-transition-delay: 0ms;
    -o-transition-delay: 0ms;
    transition-delay: 0ms; }
    .card.gallery.stash-left:after, .card.gallery.stash-right:after {
      opacity: 1;
      visibility: visible;
      -webkit-transition: opacity 700ms 0ms, visibility 0ms 0ms;
      -moz-transition: opacity 700ms 0ms, visibility 0ms 0ms;
      -o-transition: opacity 700ms 0ms, visibility 0ms 0ms;
      transition: opacity 700ms 0ms, visibility 0ms 0ms; }
  .card.gallery.stash-left {
    -webkit-transform: translate(calc( -270px - 50% ), -50%) scale(0.85);
    -moz-transform: translate(calc( -270px - 50% ), -50%) scale(0.85);
    -o-transform: translate(calc( -270px - 50% ), -50%) scale(0.85);
    transform: translate(calc( -270px - 50% ), -50%) scale(0.85); }
  .card.gallery.stash-right {
    -webkit-transform: translate(calc(  270px - 50% ), -50%) scale(0.85);
    -moz-transform: translate(calc(  270px - 50% ), -50%) scale(0.85);
    -o-transform: translate(calc(  270px - 50% ), -50%) scale(0.85);
    transform: translate(calc(  270px - 50% ), -50%) scale(0.85); }
  .card.gallery.top-card {
    opacity: 1;
    z-index: 1;
    -webkit-transition: -webkit-transform 700ms, opacity 700ms, z-index 0ms 700ms;
    -moz-transition: -moz-transform 700ms, opacity 700ms, z-index 0ms 700ms;
    -o-transition: -o-transform 700ms, opacity 700ms, z-index 0ms 700ms;
    transition: transform 700ms, opacity 700ms, z-index 0ms 700ms; }
  .card.highlight {
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    z-index: 1;
    -webkit-transition-delay: 0ms;
    -moz-transition-delay: 0ms;
    -o-transition-delay: 0ms;
    transition-delay: 0ms; }
  .card.sorted:nth-child(1) {
    -webkit-transition-delay: 100ms;
    -moz-transition-delay: 100ms;
    -o-transition-delay: 100ms;
    transition-delay: 100ms; }
  .card.sorted:nth-child(2) {
    -webkit-transition-delay: 200ms;
    -moz-transition-delay: 200ms;
    -o-transition-delay: 200ms;
    transition-delay: 200ms; }
  .card.sorted:nth-child(3) {
    -webkit-transition-delay: 300ms;
    -moz-transition-delay: 300ms;
    -o-transition-delay: 300ms;
    transition-delay: 300ms; }
  .card.sorted:nth-child(4) {
    -webkit-transition-delay: 400ms;
    -moz-transition-delay: 400ms;
    -o-transition-delay: 400ms;
    transition-delay: 400ms; }
  .card.sorted:nth-child(5) {
    -webkit-transition-delay: 500ms;
    -moz-transition-delay: 500ms;
    -o-transition-delay: 500ms;
    transition-delay: 500ms; }
  .card.sorted:nth-child(6) {
    -webkit-transition-delay: 600ms;
    -moz-transition-delay: 600ms;
    -o-transition-delay: 600ms;
    transition-delay: 600ms; }
  .card.sorted:nth-child(7) {
    -webkit-transition-delay: 700ms;
    -moz-transition-delay: 700ms;
    -o-transition-delay: 700ms;
    transition-delay: 700ms; }
  .card.sorted:nth-child(8) {
    -webkit-transition-delay: 800ms;
    -moz-transition-delay: 800ms;
    -o-transition-delay: 800ms;
    transition-delay: 800ms; }
  .card.sorted:nth-child(9) {
    -webkit-transition-delay: 900ms;
    -moz-transition-delay: 900ms;
    -o-transition-delay: 900ms;
    transition-delay: 900ms; }
  .card.sorted:nth-child(10) {
    -webkit-transition-delay: 1000ms;
    -moz-transition-delay: 1000ms;
    -o-transition-delay: 1000ms;
    transition-delay: 1000ms; }
  .card.sorted:nth-child(11) {
    -webkit-transition-delay: 1100ms;
    -moz-transition-delay: 1100ms;
    -o-transition-delay: 1100ms;
    transition-delay: 1100ms; }

@keyframes anim_shadow {
  0% {
    -webkit-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -moz-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -o-transform: translate(4px, 4px) scale(1) skewY(0deg);
    transform: translate(4px, 4px) scale(1) skewY(0deg);
    opacity: 1; }
  25% {
    -webkit-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    -moz-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    -o-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    opacity: 0; }
  80% {
    -webkit-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    -moz-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    -o-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    opacity: 0; }
  100% {
    -webkit-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -moz-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -o-transform: translate(4px, 4px) scale(1) skewY(0deg);
    transform: translate(4px, 4px) scale(1) skewY(0deg);
    opacity: 1; } }
@-webkit-keyframes anim_shadow {
  0% {
    -webkit-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -moz-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -o-transform: translate(4px, 4px) scale(1) skewY(0deg);
    transform: translate(4px, 4px) scale(1) skewY(0deg);
    opacity: 1; }
  25% {
    -webkit-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    -moz-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    -o-transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    transform: translate(calc( 4px - 2% ), 4px) scale(1.02) skewY(-2deg);
    opacity: 0; }
  80% {
    -webkit-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    -moz-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    -o-transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    transform: translate(calc( 4px + 2% ), calc( 4px + 2%)) scale(1.02) skewY(2deg);
    opacity: 0; }
  100% {
    -webkit-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -moz-transform: translate(4px, 4px) scale(1) skewY(0deg);
    -o-transform: translate(4px, 4px) scale(1) skewY(0deg);
    transform: translate(4px, 4px) scale(1) skewY(0deg);
    opacity: 1; } }
