@font-face {
	font-family: 'Apercu Condensed Bold Pro';
	src: url('./fonts/apercu-condensed-bold-pro.woff');
}

:root {
	--font-stack: 'Apercu Condensed Bold Pro', Helvetica, sans-serif;
	--red: #d43631;
	--yellow: #ffca2e;
	--blue: #1471d2;
	--tan: #f1e8d7;
	--brown-1: #bb5400;
	--brown-2: #944000;
	--brown-3: #8d2f18;
	--gray-1: #e6e6e6;
	--gray-2: #9d9d9d;
	--gray-3: #535353;
}

*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	height: 100vh;
	font-family: var(--font-stack);
	text-align: center;
	background: url('./images/bg.jpg') no-repeat center/contain;
}

.logo {
	position: relative;
	width: 100%;
	height: 1080px;
}

.logo img {
	display: block;
	position: absolute;
	top: 10px;
	left: 50%;
	width: 2100px;
	transform: translateX(-50%);
}

.base {
	display: inline-block;
	margin: 0 auto;
	padding: 210px 170px 105px;
	background: var(--tan);
	border-radius: 50px;
	box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.5);
}

.shelves {
	display: inline-block;
	position: relative;
}

.shelves::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 215px;
	height: 1900px;
	background: url('./images/shelves-left.png') no-repeat center/contain;
	transform: translate(-106%, -50%);
}

.shelves::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	width: 215px;
	height: 1900px;
	background: url('./images/shelves-right.png') no-repeat center/contain;
	transform: translate(106%, -50%);
}

#snake {
	background: #f2ebdb;
	border-radius: 50px;
}

.smilies {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	padding-top: 220px;
	width: 97%;
}

.smilies img {
	width: 185px;
}

.lightbox {
	position: fixed;
	z-index: 99999;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.5);
}

.modal {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	z-index: 999999;
	top: 50%;
	left: 50%;
	width: 1550px;
	padding: 160px;
	text-transform: uppercase;
	background: var(--red);
	border-radius: 40px;
	box-shadow: 4px 8px 24px rgba(0, 0, 0, 0.6);
	transform: translate(-50%, -50%);
	animation: expandOpen 1.2s ease-out;
}

.modal .message {
	display: inline-block;
	margin-bottom: 20px;
	font-size: 220px;
	color: var(--yellow);
}

.modal .score {
	display: inline-block;
	margin-bottom: 75px;
	font-size: 110px;
	color: #fff;
}

.modal .btn-start,
.modal .btn-home,
#close-help {
	padding: 50px 100px;
	font-family: var(--font-stack);
	text-transform: uppercase;
	font-size: 90px;
	color: var(--red);
	background: var(--yellow);
	border: 0;
	border: 10px solid var(--red);
	border-radius: 100px;
}

.modal .btn-home {
	margin-top: 50px;
	color: var(--yellow);
	background: var(--red);
	border: 10px solid var(--yellow);
}

@keyframes expandOpen {
	0% {
		transform: translate(-50%, -50%) scale(1.8);
	}
	50% {
		transform: translate(-50%, -50%) scale(0.95);
	}
	80% {
		transform: translate(-50%, -50%) scale(1.05);
	}
	90% {
		transform: translate(-50%, -50%) scale(0.98);
	}
	100% {
		transform: translate(-50%, -50%) scale(1);
	}
}

@-webkit-keyframes expandOpen {
	0% {
		-webkit-transform: translate(-50%, -50%) scale(1.8);
	}
	50% {
		-webkit-transform: translate(-50%, -50%) scale(0.95);
	}
	80% {
		-webkit-transform: translate(-50%, -50%) scale(1.05);
	}
	90% {
		-webkit-transform: translate(-50%, -50%) scale(0.98);
	}
	100% {
		-webkit-transform: translate(-50%, -50%) scale(1);
	}
}
