@import url('https://fonts.googleapis.com/css?family=Anton|Buenard:400,700');

*,
*::after,
*::before {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

:root {
	--base-color: #2e4435;
	--text-color: #ffffea;
}

.noselect {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

body {
	margin: 0;
	font-family: 'Buenard', serif;
	width: 100%;
	height: 100vh;
	/* background-color: var(--base-color); */
	background-image: radial-gradient(#596657, #364435);
}

.loader {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 1000000;
	display: flex;
	align-items: center;
	justify-content: center;	
	/* background: var(--base-color); */
	background-image: radial-gradient(#596657, #364435);
}

.loader svg {
	position: relative;
	width: 50px;
	height: 50px;
	animation: loaderAnim 0.5s cubic-bezier(0.3, 0.6, 0.8, 0.9) infinite forwards alternate;
}
.loader svg circle {
	width: 100%;
	height: 100%;
	fill: var(--text-color);
	transform: translate(5px, 5px);
}
.block a{
	display: block;
	color: var(--text-color);
	text-decoration: none;
}

@keyframes loaderAnim {
	to {
		opacity: 1;
		transform: scale(2);
	}
}

.content {
	position: relative;
	height: 100%;
	display: grid;
	grid-template-columns: 1fr 3fr;
}
.side {
	text-align: center;
	margin: 1rem;
}
.side .knife {
	max-width: 100%;
}
.side h1 {
	font-weight: normal;
	font-size: 1.5rem;
	letter-spacing: 0.15rem;
	line-height: 1.25;
	font-family: 'Anton', sans-serif;
	color: var(--text-color);
}
.grid {
	/* background-color: rgb(60, 107, 72); */
	padding: 2rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.overlay {
	pointer-events: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	overflow: hidden;
}

.overlay--open {
	pointer-events: auto;
}

.overlay__reveal {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #000;
	position: absolute;
	z-index: 100;
	transform: translateX(100%);
}

.overlay__item {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	background: #ececec;
	opacity: 1;
}

.overlay__close {
	position: absolute;
	top: 0;
	right: 0;
	background: none;
	opacity: 0;
}

@media screen and (max-width: 80rem) {
	.content {
		grid-template-columns: 1fr;
	}
	.grid {
		grid-template-columns: repeat(3, 1fr);
	}
	.side {
		display: grid;
		grid-template-columns: 1fr 2fr;
	}
}
@media screen and (max-width: 60rem) {
	.grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 35rem) {
	.grid {
		grid-template-columns: 1fr;
	}
	.side {
		display: grid;
		grid-template-columns: 1fr;
	}
}
