@font-face {
    font-family: 'HelveticaNeueLTStd-HvIt';
    src: url('../fonts/HelveticaNeueLTStd-HvIt.eot?#iefix') format('embedded-opentype'),  url('../fonts/HelveticaNeueLTStd-HvIt.otf')  format('opentype'),
    url('../fonts/HelveticaNeueLTStd-HvIt.woff') format('woff'), url('../fonts/HelveticaNeueLTStd-HvIt.ttf')  format('truetype'), url('../fonts/HelveticaNeueLTStd-HvIt.svg#HelveticaNeueLTStd-HvIt') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Technology-Regular';
    src: url('../fonts/Technology-Regular.eot?#iefix') format('embedded-opentype'),  url('../fonts/Technology-Regular.woff') format('woff'), url('../fonts/Technology-Regular.ttf')  format('truetype'),
    url('../fonts/Technology-Regular.svg#Technology-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

html {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background: url("../images/grass.jpg");
    position: relative;
}
h3 {
    font-family: 'HelveticaNeueLTStd-HvIt', Arial, sans-serif;
    color: #bc0000;
    font-size: 3.5rem;
    text-shadow: 1px 1px 1px #626262;
    line-height: 1;
    text-transform: uppercase;
}
p {
    font-family: 'HelveticaNeueLTStd-HvIt', Arial, sans-serif;
    color: #fff;
    font-size: 2rem;
    text-shadow: 1px 1px 1px #626262;
    line-height: 1.2;
}
.container {
    width: 640px;
}
a.btn, a.btn:hover, a.btn:active, a.btn:focus {
    outline: none;
    box-shadow: none;
}
.btn-default {
    font-family: 'HelveticaNeueLTStd-HvIt', Arial, sans-serif;
    background: url('../images/btn-bg.png') no-repeat center;
    font-size: 2rem;
    color: #fff;
    padding: 15px 0 10px 10px;
    text-align: center;
    cursor: pointer;
    text-transform: uppercase;
    width: 100%;
    position: relative;
    z-index: 999;
}
.btn-default a, .btn-default a:hover {
    color: #fff;
    text-decoration: none;
}
a.btn-default, a.btn-default:hover {
    color: #fff;
    text-decoration: none;
}
a.btn-default.btn-fb, a.btn-default.btn-fb:hover {
    font-size: 1rem;
    color: #0098ff;
    padding: 25px 0 20px 10px;
}
a.btn.btn-terms {
    font-family: 'HelveticaNeueLTStd-HvIt', Arial, sans-serif;
    text-shadow: -2px 1px 2px #fff;
    color: #bc0000;
    padding: 10px 0 0 0;
    font-size: 1rem;
    position: relative;
    z-index: 999;
}
.btn.btn-sm.btn-default {
    font-size: 1rem;
    padding: 30px 0 25px 10px;
}
.fb-share-button {
    position: relative;
    z-index: 999;
}

/*Landing page*/
.shadow-of-man {
    position: fixed;
    bottom: 0;
    right: 0;
}
.shadow-of-man img {
    opacity: 0.2;
}
.landing-page p {
    padding-top: 15px;
    font-size: 1rem;
    line-height: 1.5;
}

/*Tutorial Page*/

.tutorial-carousel.owl-carousel button.owl-dot span {
    width: 15px;
    height: 15px;
    margin: 5px 8px;
}
.tutorial-carousel.owl-carousel button.owl-dot.active span {
    background: #fff;
}


/*Ranking Page and Replay Page*/
.ranking-page p, .play-again-page p {
    font-size: 1.5rem;
}

.neon {
    text-shadow: 0 0 1vw #bc0000, 0 0 1vw #bc0000, 0 0 1vw #bc0000;
    color: #fff;
}

.neon {
    animation: neon 1s ease infinite;
    -moz-animation: neon 1s ease infinite;
    -webkit-animation: neon 1s ease infinite;
}

@keyframes neon {
    0%,
    25% {
        text-shadow: 0 0 1vw #bc0000, 0 0 1vw #bc0000, 0 0 1vw #bc0000;
        color: #fff;
    }
    50% {
        text-shadow: 0 0 1vw #bc0000, 0 0 1vw #bc0000, 0 0 1vw #bc0000;
        color: #fff;
    }
}

/* Game */
.countdown-container {
    position: relative;
    height: 85vh;
}

.countdown-container #countdown {
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    font-family: 'HelveticaNeueLTStd-HvIt', Arial, sans-serif;
    color: #fff;
    text-shadow: 1px 1px 1px #626262;
}

.countdown-container #countdown span.big {
    font-size: 5rem;
    line-height: 1;
}
.countdown-container #countdown span.small {
    font-size: 2em;
}





/*
 * Styles for the deck of cards
 */
.deck {
    width: 100%;
    padding: 0;
    border-radius: 4px;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    height: 80vh;
    font-size: 0;
    position: relative;
    z-index: 999;
}

.deck .card {
    max-height: 120px;
    margin: 0;
    background: url('../images/trolley.png') no-repeat center;
    font-size: 0;
    color: #000;
    border-radius: 0;
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border: 5px solid transparent;
    background-size: contain;
}

.deck .card img {
    width: 0;
    height: 0;
}

.deck .card.open {
    transform: rotateY(0);
    cursor: default;
    animation-name: flipInY;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    animation-duration: .75s;
    margin-bottom: -100px;
}

.deck .card.open img {
    border: 3px solid #fff;
    margin: 0;
    border-radius: 8px;
}

.deck .card.show {
    z-index: 99999;
}

.deck .card.show img {
    width: auto;
    height: auto;
}

.deck .card.match {
    cursor: default;
    border: 5px solid transparent;
    font-size: 33px;
    animation-name: rubberBand;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    animation-duration: .75s;
    margin-bottom: -100px;

}

.deck .card.match img {
    width: auto;
    height: auto;
}

.deck .card.unmatched {
    animation-name: pulse;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    animation-duration: .75s;
}

.deck .card.unmatched img {
    border: 3px solid #ea212d;
    margin: 0;
    border-radius: 8px;
}

.deck .card.disabled {
    pointer-events: none;
    opacity: 0.9;
}


/*
 * Styles for the Score/Timer Panel
 */
.score-panel {
    text-align: center;
}

.timer {
    font-family: 'Technology-Regular', sans-serif;
    text-shadow: 1px 1px 1px #626262;
    display: inline-block;
    color: #fff;
    font-size: 5rem;
    margin: 20px 0 5px 0;
    line-height: 1;
}

.open.show {
    visibility: visible !important;
    opacity: 100 !important;
}

.teal-nav{
    background-color: #00a9a2;
    color: white;
}

/* animations */
@keyframes flipInY {
    from {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        animation-timing-function: ease-in;
        opacity: 0;
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        animation-timing-function: ease-in;
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    }

    to {
        transform: perspective(400px);
    }
}

@keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1);
    }

    30% {
        transform: scale3d(1.1, 0.6, 0.85);
    }

    40% {
        transform: scale3d(0.6, 1.1, 0.85);
    }

    50% {
        transform: scale3d(1, 0.7, 0.85);
    }

    65% {
        transform: scale3d(.8, 0.9, 0.85);
    }

    75% {
        transform: scale3d(0.9, .8, 0.85);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

@keyframes pulse {
    from {
        transform: scale3d(1, 1, 1);
    }

    50% {
        transform: scale3d(1.12, 1.12, 1.12);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}


/****** Media queries
***************************/
@media (max-width: 640px) {

    .timer {
        margin: 25px 0 5px 0;
    }
    .deck {
        height: 70vh;
    }
    .deck .card {
        max-height: 115px;
    }
    .deck .card img {
        max-height: 115px;
    }
}
@media (max-width: 576px) {

    .container {
        width: unset;
    }
}
@media (max-width: 420px) {

    .deck .card {
        max-height: 100px;
    }
    .deck .card img {
        max-height: 100px;
    }

}

@media (max-width: 360px) {

    .deck .card {
        max-height: 90px;
    }
    .deck .card img {
        max-height: 90px;
    }

}

@media (max-width: 320px) {

    .timer {
        margin: 25px 0 5px 0;
        font-size: 2rem;
    }
    .deck .card {
        max-height: 75px;
    }
    .deck .card img {
        max-height: 75px;
    }
    .deck .card.open img {
        border: 2px solid #fff;
        border-radius: 6px;
    }
    .deck .card.unmatched img {
        border: 2px solid #ea212d;
        border-radius: 4px;
    }
    .deck .card.match {
        margin-bottom: -60px;
    }
    .liquorshop-logo-game {
        width: 280px;
        margin: 0 auto;
    }
}


/* For Tablets and larger scre ens
****************/

@media (min-width: 768px) {

}

/* Width and Height */
@media (max-height: 567px)and (min-width: 540px) {
    .deck .card {
        max-height: 60px;
    }
    .deck .card img {
        max-height: 60px;
    }
    .timer {
        margin: 25px 0 5px 0;
        font-size: 2rem;
    }
    .deck .card.open img {
        border: 2px solid #fff;
        border-radius: 6px;
    }
    .deck .card.unmatched img {
        border: 2px solid #ea212d;
        border-radius: 4px;
    }
    .deck .card.match {
        margin-bottom: -45px;
    }
}

/* Nokia 8110 4G*/
@media (max-width: 320px) and (max-height: 320px) {
    .timer {
        margin: 10px 0 0 0;
        font-size: 2rem;
    }
    .deck .card {
        max-height: 45px;
    }
    .deck .card img {
        max-height: 45px;
    }
    .deck .card.open img {
        border: 1px solid #fff;
        border-radius: 2px;
    }
    .deck .card.unmatched img {
        border: 1px solid #ea212d;
        border-radius: 2px;
    }
}
