/* Font definitions */
@font-face {
	font-family: 'runescape_smallregular';
	src: url('fonts/runescape_small-webfont.woff2') format('woff2'),
		url('fonts/runescape_small-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;

}

@font-face {
	font-family: 'runescape_quillregular';
	src: url('fonts/runescape-quill-webfont.woff2') format('woff2'),
		url('fonts/runescape-quill-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

p {
	font-family: 'runescape_smallregular', Verdana, Tahoma, sans-serif;
	font-size: 32px;
	color: #995EFF;
	line-height: 80%;
}

h1 {
	font-family: 'runescape_quillregular', Tahoma, Verdana, sans-serif;
	font-size: 48px;
	color: #995EFF;
	margin-top: 0px;
	margin-bottom: 0px;
}

li {
	font-family: 'runescape_smallregular', Tahoma, Verdana, sans-serif;
	font-size: 32px;
	color: #995EFF;
}

body {
	background-image: url("images/background.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	background-attachment: fixed;
}

/* Invisible box holding all site content */
#site-container {
	margin: auto;
	width: 1280px;
	background-color: rgba(249, 250, 255, 0);
}

/* Header div containing site banner */
#site-header {
	padding: 25px;
	display: flex;
	justify-content: center;
}

/* Header image */
#site-header img {
	width: 1280px;
	height: 256px;
	max-width: 400px;
	height: auto;
}

/* Main content area, holding all the subsequent site contents */
#main-container {
	background-color: rgba(241, 233, 245, 0);
}

/* Each sub-container is a distinct "block" on the site */
.sub-container {
	background-color: rgba(16, 6, 21, 0.9);
	border-style: dotted;
	border-color: #995EFF;
	border-width: 4px;
	margin: 8px 8px;
	padding: 15px;
}

/* Set up each main block */
#nav-block {
	min-height: 400px;
	margin-bottom: 0px;
	width: 21%;
	order: 1;
}

#center-block {
	margin-bottom: 0px;
	width: 58%;
	order: 2;
}

#status-block {
	min-height: 400px;
	margin-bottom: 0px;
	width: 21%;
	order: 3;
}

#footer-holder {
	margin-bottom: 0px;
	margin: auto;
	margin-top: 12px;
	width: 55%;
}

/* Set up the flex container */
#content-flex-container {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}

/* Define appearance of all clickable link buttons */
a.link-button {
	display: block;
	background-color: #2B184499;
	padding: 4px 6px;

	text-decoration: none;
	font-family: 'runescape_smallregular', Verdana, Tahoma, sans-serif;
	font-size: 32px;
	color: #995EFF;
	line-height: 85%;

	border-style: solid;
	border-color: #995EFF;
	border-width: 1px;
}

a.link-button:hover {
	background-color: #995EFF;
	border-color: white;
	color: white;
}

/* link-list displays a grid of link buttons, vertical by default */
.link-list {
	display: grid;
	grid-template-columns: auto;
	column-gap: 4px;
	row-gap: 4px;
}

/* Adjust margin of side block headers */
#nav-block h1,
#status-block h1 {
	margin-bottom: 10px;
}

/* Use a media query to add a breakpoint: */
@media screen and (max-width: 1290px) {
	#site-container {
		/* When viewport is below 1280px, set width to full */
		width: 100%;
	}
}

/* Change flex layout for small screens */
@media screen and (max-width: 850px) {
	#content-flex-container {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-left: 24px;
		margin-right: 24px;
	}

	#nav-block {
		width: 100%;
		max-width: 100%;
		min-height: 50px;
	}

	#center-block {
		width: 100%;
		max-width: 100%;
	}

	#status-block {
		width: 100%;
		max-width: 100%;
		min-height: 50px;
	}

	#footer-holder {
		width: 100%;
		max-width: 100%;
	}

	/* Adjust the navbar's link-list grid layout */
	#nav-block .link-list {
		grid-template-columns: 1fr 1fr 1fr;
	}
}