:root {
  --primary-color: #259A47;
  --secondary-color: #3791B5;
  --tertiary-color: #eee;
  
  --neutral-color: #595959;
  --dark-color: #292929;
  --light-color: #f9f9f9;
  
  --link-color: #3791B5;
  
  --content-width: 1200px;
}

body {
	height: 100%;
	background-color: #F7F9F9;
	margin: 0px;
	padding: 0px;
	font-family: "Arial";
	color: #595959;
	line-height: 1.4;
	text-align: justify;
}

a {
	text-decoration: none;
	font-weight: bold;
	color: var(--link-color);
}

a:hover {
	color: #595959;
}

h1, h2 {
	color: #444;
	font-weight: normal;
}

h1 {
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
	margin-bottom: 26px;
}

p {
	font-size: 18px;
}

/* BANNERS */

.banner {
	text-align: center;
	background-color: #222;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
	line-height: 100%;
	vertical-align: bottom;
	background-size: cover;
	background-position: center center;
}

.banner img {
	display: block;
	max-height: 340px;
	width: 100%;
	object-fit: contain;
	padding: 0px;
	margin: 0px;
}

.home-banner {
	background-color: #111;
	background-image: radial-gradient(ellipse at bottom, #333, transparent);
}

.hex-banner {
	background-color: #483E6D;
	background-image: linear-gradient(to bottom, #8F8AC1, transparent);
}

.hex-two-banner {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .1) 40%, rgba(0, 0, 0, .4)), url('../images/hex-two/hex-two-background.png');
}

.achromatic-banner {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .1) 40%, rgba(0, 0, 0, .4)), url('../images/achromatic/achromatic-background.png');
}

.sandwich-sudoku-banner {
	background-image: url('../images/sandwich-sudoku/background.png');
}

.thermo-sudoku-banner {
	background-image: url('../images/thermo-sudoku/background.png');
}

.chess-sudoku-banner {
	background-image: url('../images/chess-sudoku/background.png');
}

.classic-sudoku-banner {
	background-image: url('../images/classic-sudoku/background.png');
}

.miracle-sudoku-banner {
	background-image: url('../images/miracle-sudoku/background.png');
}


/* CONTENT */

.content-wrapper {
	margin: auto;
	text-align: left;
}

.content {
	max-width: var(--content-width);
	margin: auto;
	padding: 0px 20px;
}

.content-flex-horizontal {
	display: flex;
}

.background-neutral {
	background-color: #e6e6e6;
}

.background-dark {
	background-color: #141414;
}

.background-footer {
	background-color: #080808;
}

.horizontal-line {
	height: 1px;
	width: 100%;
	background-color: #ddd;
	margin: 40px 0px;
}

.game-links {
	text-align: left;
}

.game-links a img {
	height: 40px;
	color: black;
	opacity: .8;
}

.game-links a img:hover {
	opacity: 1;
}

.game-links a {
	text-decoration: none;
	padding: 4px;
}

.inner-content-left {
	width: 66%;
	box-sizing: border-box;
	margin-right: 18px;
}

.inner-content-right {
	width: 33%;
	box-sizing: border-box;
	margin-left: 18px;
}

.inner-content-left, .inner-content-right {
	margin-top: 4px;
	margin-bottom: 4px;
}

.video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
	margin-bottom: 26px;
}
.video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (max-width: 800px) {
	.content-flex-horizontal {
		display: flex;
		flex-direction: column;
	}
	
	.inner-content-left, .inner-content-right {
		width: 100%;
		margin: 0px;
	}
	
	.horizontal-line {
		margin: 20px 0px;
	}
}

.small-gap {
	height: 20px;
}

.large-gap {
	height: 40px;
}

.recent-games-title {
	font-size: 26px;
	text-align: center;
	color: #444;
	font-weight: normal;
	padding-bottom: 20px;
}

.framed {
	padding: 10px;
	border: 1px solid #bbb;
	border-radius: 5px;
	box-shadow: 0px 4px 8px 0px rgba(0,0,0,0.4);
	box-sizing: border-box;
	max-width: 100%;
	max-height: 360px;
}

.centered {
	margin: auto;
	display: block;
}