:root {
    --green: #9ff1a5;
    --red: #ff9292;
    --dim: 62px;
}

* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box;
  font-family: 'Poppins', Open Sans, Arial, Helvetica, sans-serif;
  font-weight: 200;
  font-style: normal;
}

body {
    margin: 0;
    padding: 0;
    height: 100vh;
    background-color: #f8f994;
}

/* ===================================================== */

/* END OPENING ANIMATION */

.start-anim-bg {
    background-color: black;
	height: 100%;
	z-index: 10000;
    position: fixed;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}

/* ------------- FROM LEFT TO CENTER -------------- */

/* Animation to have any absolute element go from the right to left center */

@keyframes slide-from-left {
  from {
    right: 100%;
  }
  to {
    right: 45%;
  }
}

/* Element to be moved. Must have position: absolute */

.from-left {
    background-color: var(--green);
	background-image: url('../img/__doggie-zombie-factory-1.png');
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center;
    width: 25%;
    height: 50%;
	position: absolute;
	top: 10%;
	right: 45%;
	border-radius: 25px 0 0 25px;
	transform: translateX(-45%);
	animation-name: slide-from-left;
	animation-duration: 2s;
}

/* ------------- FROM RIGHT TO CENTER -------------- */

/* Animation to have any absolute element go from the right to center-right */

@keyframes slide-from-right {
  from {
    left: 100%;
  }
  to {
    left: 50%;
  }
}

/* Element to be moved. Must have position: absolute */

.from-right {
    background-color: #ffc107;
	background-image: url('../img/__zombie-doggie-factory-2-small.png');
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center;
    width: 25%;
    height: 50%;
	position: absolute;
	top: 10%;
	left: 50%;
	border-radius: 0 25px 25px 0;
	transform: translateX(-25%);
	animation-name: slide-from-right;
	animation-duration: 2s;
	text-align: center;
}
 
/* ------------- FROM TOP TO CENTER -------------- */

@keyframes slide-from-top {
  from {
    bottom: 100%;
  }
  to {
    bottom: 45%;
  }
}

.from-top {
	aspect-ratio: 1;
	background-color: transparent;
	background-image: url('../img/__zombie-doggie-gloves-small.png');
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: top;
    width: 250px;
    height: 200px;
    position: absolute;
	z-index: 10001;
    bottom: 45%;
    left: 43%;
    transform: translate(-45%, -45%);
	animation-name: slide-from-top;
	animation-duration: 5s;
	text-align: center !important;
	border: 0px solid black;
}

.from-top-text {
  position: absolute;
  bottom: 0;
  left: 20%;
  font-family: 'Righteous', Open Sans, Arial, Helvetica, sans-serif;
  font-size: 4vmin;
  font-weight: 200;
  font-style: normal;
  text-align: center;
  width: 150px !important;
  background-color: white;
  border: 1px solid black;
}

.fight {
  font-family: 'Righteous', Open Sans, Arial, Helvetica, sans-serif;
  font-size: 4vmin;
  font-weight: 200;
  font-style: normal;
  text-decoration: none;
  color: black;
}

/* END OPENING ANIMATION */

/* ===================================================== */

p {
    font-family: 'Raleway', sans-serif;
    font-size: 23px;
    font-weight: 400;
    color: #333; 
    margin: 10px;
}

.bold {
  font-weight: 900;
}

.center {
    position: relative;
    top: 20%;
    margin: 0;
}

.center1 {
    position: relative;
    margin: 30px;
	/*font-family: "Poppins", Open Sans, Arial, Helvetica, sans-serif;*/
    font-size: 6vmin;
    font-weight: 400;
    color: #333; 
    margin: 10px;
}

h1 {
  font-family: "Rubik Maps";
  font-weight: 400;
  font-style: normal;
  font-size: 6vmin;
  color: #555;
  letter-spacing: 0.05em;
  margin-top: 20px;
}		
		
.container {
    height: 100%;
    position: relative;
	background: url('../../img/web/bw-background.jpg') center center repeat !important; 
}

.game {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 590px;
    height: 690px;
    border-radius: 10px;
    background-color: #333;
    padding: 40px;
}

.game-box-inside {
	width: 510px;
	text-align: center;
}

.box {
    height: 100px;
    width: 100px;
    float: left;
    margin: 0;
    padding: 0px;
    text-align: center;
    border-radius: 10px;
    border: 4px solid #333;
    background-color: #f1c97c;

    background-position: center;
    background-size: 70%;
    background-repeat: no-repeat;
}

.green {
    background-color: var(--green);
    animation-name: getIn;
    animation-duration: .3s;
    animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.doggie {
    background-image: url('../img/__doggie-zombie-factory-1.png');
}

.red {
    background-color: var(--red);
    animation-name: getIn1;
    animation-duration: .3s;
    animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.factory {
    background-image: url('../img/__zombie-doggie-factory-2-small.png');
}

.won, lose, .init, .init1 {
    z-index: 999;
    position: fixed;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    border: 8px solid #333;
    border-radius: 7px;
}

.won {
    background-color: var(--green);
    top: 100%;
    width: 650px;
    height: 350px;
}

.lose {
    background-color: crimson !important;
    top: 100%;
    width: 650px;
    height: 350px;
	color: white !important;
}

.lose h1 {
  color: white !important;
}

.init {
    background-color: var(--red);
    top: 25%;
    width: 650px;
    height: 350px;
}

.init1 {
    background-color: crimson !important;
	color: white !important;
    top: 25%;
    width: 650px;
    height: 350px;
}

.floating, .floating1 {
    position: relative;
    animation-name: floating;
    animation-iteration-count: infinite;
    animation-duration: 1.5s;
    animation-timing-function: ease-in-out;
    cursor: pointer;
    text-decoration: underline;
    text-decoration-color: #333;
	width: 175px;
	margin: 30px auto;
}

.levelUp {
  animation: levelUp 2.5s ease-in-out;
  animation-delay: 2s;
}

.hidden, .hidden1, .is-hidden {
  visibility: hidden;
}

.visible1 {
  visibility: visible !important;
}

/* ===================================================== */

/* button play -- https://codepen.io/alexandrevale/pen/ZMxQJp ( https://codepen.io/folaad/pen/YvmRpz -- https://codepen.io/kathykato/pen/rZRaNe ) */

.btn {
  padding: 15px;
  font-weight: 700;
  font-size: 2rem;
  text-decoration: none !important;
  text-align: center;
  transition: all .5s ease; 
}

.btn--play {
  color: #fff;
  padding-right: 0;
  background-color: orangered; //#c0392b;
  -webkit-clip-path: polygon(0% 0%, 100% 0, 100% 70%, 90% 100%, 0% 100%);
  clip-path: polygon(0 0, 100% 0, 100% 50%, 75% 100%, 0 100%);
  text-decoration: none !important;
}

.btn--play:hover { 
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 100% 100%, 0 100%);  
}

.btn--play:after {
  content: "\f04b";
  color: #fff;
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  position: relative;
  right: -55px;
  transition: all 0.2s ease;
}

.btn--play:hover:after {
  margin: -5px 15px;
  right: 0px;
}

.floating a {
  text-decoration: none !important;
 }

/* animation */

@keyframes won {
    from {top: 100%; transform: rotate(180deg);}
    to   {top: 30%; transform: rotate(0deg);}    
}

@keyframes start {
    from   {top: 30%; transform: rotate(0deg);}    
    to {top: 100%; transform: rotate(180deg);}
}

@keyframes floating {
    0% {top: 0px; transform: rotate(0deg);}
    25% {top: 5px; transform: rotate(3deg);}
    50% {top: -5px; transform: rotate(-3deg);}
    100%   {top: 0px; transform: rotate(0deg);}  
}

@keyframes getIn {
    from {background-size: 0%;}
    to   {background-size: 70%;}
}

@keyframes getIn1 {
    from {background-size: 0%;}
    to   {background-size: 70%;}
}

@keyframes levelUp {
    0% {opacity: 0; visibility: visible;}
    50% {opacity: 1;}
    100%   {opacity: 0; visibility: hidden;}  
}

@media (max-width: 500px) {
    h1 {
        font-size: 37px;
    }
  
    .game {
        width: 331px;
        height: 396px;
    }

    .box {
        width: var(--dim);
        height: var(--dim);
        border: 2.1px solid #333;
    }

    .won, .init {
        width: 300px;
        height: 400px;
    }
  
    .init {
        top: 10%;
    }
}