
body {
	background-color: #ffffff;
	margin: 0;
    padding: 0;
}


.outerGrid {
	display: flex;
	justify-content: left;
	align-items: center;
}


.info {
	border-radius: 3vmin;
	border: 1;
	background-color: #28ADE1;
	font-size: 90%;
	font-family: Arial;
	padding: 1vmin;
	margin: 3vw;
	
	width: 20%;
	height: 70%;
}


.info:hover {
	cursor: zoom-in;
	filter: drop-shadow(0 0 .5vw black);
}


.fourTileGrid {
	display: grid;
	grid-template-columns: repeat(2, 250px);
	margin-left: 2vw;
	margin-top: 2vw
}


.nineTileGrid {
	display: grid;
	grid-template-columns: repeat(3, 175px);
	margin-left: 2vw;
	margin-top: 2vw
}

.sixteenTileGrid {
	display: grid;
	grid-template-columns: repeat(4, 150px);
	margin-left: 2vw;
	margin-top: 2vw
}

.twentyFiveTileGrid {
	display: grid;
	grid-template-columns: repeat(5, 125px);
	margin-left: 2vw;
	margin-top: 2vw
}


button:hover {
	filter: drop-shadow(0 0 .3vw black);
}


.resetButton {
	font-size: 150%;
	background-color: #28ADE1;

	margin-left: 9vw;
	height: 8rem; 
	width: 8rem;
}


button {	
	font-family: Arial; /*OR IMPACT*/
	cursor: pointer;
	text-align: center;
	overflow: hidden;
	border-radius: 3vmin;
}

@media screen and (max-width: 950px) {
	
	.outerGrid {
		
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	
	.info {
		display: none;
	}
	

	.fourTileGrid {
		display: grid;
		grid-template-columns: repeat(2, 45vmin);
		margin-left: 2vw;
	}

	.nineTileGrid {
		display: grid;
		grid-template-columns: repeat(3, 30vmin);
		margin-left: 2vw;
	}

	.sixteenTileGrid {
		display: grid;
		grid-template-columns: repeat(4, 22.5vmin);
		margin-left: 2vw;
	}

	.twentyFiveTileGrid {
		display: grid;
		grid-template-columns: repeat(5, 15vmin);
		margin-left: 2vw;
	}
	
	button {
		display: none;
	}
	
}

.overlay {
	width: 100%;
    height: 100vh;
	display: none;
	position: fixed;
	top: 0;
    left: 0;
	z-index: 1;
	font-size: 130%;
	font-family: Arial;
	background-color: rgba(218, 179, 255, 0.97);
	border: .75vmin outset #ce99ff;
	border-radius: 20px;
	
	overflow: auto;
	justify-content: center;
	align-items: center;
	text-align: center;
	overflow-wrap: normal;
}

.overlay .closeButton {

	position: absolute;
	top: 0;
	right: 1%;
	font-size: 400%;
	font-family: arial;
	background-color: rgba(249, 173, 213, 0);
	border: 0;
}

.closeButton:hover {
	color: white;
}


.header {
	margin: 0;
	padding: 250px;
	background-color: #ffffff;
	background-image: url("images/SparQsupbanner.png");
	background-size: contain;
	background-repeat: no-repeat; 
}

.catGridImage {
	background-size: cover;
	width: 100%;
	padding-top:100%;
    cursor: pointer;

	/* Creates the rotation animation */
    transition: transform .35s ease-in-out;

	/* Prevents double tap to zoom in */
	touch-action: manipulation;
	
	/* There was a issue where when you would drag an image it would leave a trail.
	This seems to prevent it from showing up  */
	outline: rgba(255, 255, 255, 0) solid 25px;

	/* The things below also helped with this, but it created an issue with rotation */
	/* -webkit-transform: translateZ(0);
	transform: translateZ(0); */
}

.catGridImage:hover {
	filter: drop-shadow(0 0 .3vw black);
}

.solutionImage {
	background-size: cover;
	width: 100%;
	padding-top:100%;
}


/* classes for solutions in solutions.js */
.fourTileSolution {
	display: grid;
	grid-template-columns: repeat(2, 100px);
	margin-left: 2vw;
}

.nineTileSolution {
	display: grid;
	grid-template-columns: repeat(3, 100px);
	margin-left: 2vw;
}

.sixteenTileSolution {
	display: grid;
	grid-template-columns: repeat(4, 100px);
	margin-left: 2vw;
}

/* .twentyFiveTileSolution {
} */

.solutions {
	display: none
}

.passwordScreen {
	align-items: center;
	justify-content: center;
}