:root {
	--page-w: 980px;
	--menu-w: 11.5rem;
	--c-page: #586058;
	--c-content: #d3c9c6;
	--c-frame: #a99690;
	--c-link: #c13f13;
	--c-menu: #3f4754;
	--c-menu-accent: #4f658a;
	--c-menu-hover: #e3d058;
	--c-line: #424242;
}

* {
	margin: 0;
	padding: 0;
}

body {
	background: var(--c-page);
	color: #000;
	font-family: verdana, geneva, arial, helvetica, sans-serif;
	font-size: .97rem;
	line-height: 1.5;
}

h1 {
	font-size: 1.5rem;
	line-height: 1.25;
}

a:link,
a:visited {
	border-bottom: 1px dashed var(--c-link);
	color: var(--c-link);
	text-decoration: none;
}

a:hover,
a:focus,
a:active {
	border-bottom: 0;
	color: #655651;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
}

table {
	empty-cells: show;
}

input,
textarea {
	max-width: 100%;
	padding: .3em .4em;
	border: 1px solid #666;
	background-color: #e0e3e9;
	color: #000;
	font: inherit;
}

#page {
	display: grid;
	grid-template-columns: var(--menu-w) minmax(0, 1fr);
	grid-template-areas: "head head" "menu main";
	box-sizing: border-box;
	max-width: calc(var(--page-w) + 2rem);
	margin: 1rem auto;
	padding: 1rem;
	background: var(--c-frame);
	box-shadow: 0 0 1.6rem .3rem rgba(0, 0, 0, .5);
}

#page-head {
	grid-area: head;
	padding-bottom: .9rem;
	line-height: 0;
}

#page-head a:link,
#page-head a:visited,
#page-head a:hover {
	display: block;
	border: 0;
}

#page-head img {
	display: block;
	width: 100%;
	clip-path: inset(0 0 1.2px 0);
}

#wrapper {
	grid-area: main;
	background: var(--c-content);
}

#page-main {
	padding: 1.6rem 3rem 3rem 2.4rem;
	text-align: left;
	hyphens: auto;
}

#page-footer {
	display: none;
}

#page-main p {
	margin-bottom: 1em;
}

#page-main p + br {
	display: none;
}

#page-main ul,
#page-main ol {
	padding-left: 1.5rem;
}

#page-main li {
	padding-top: .3em;
}

#page-menu {
	grid-area: menu;
	background: linear-gradient(180deg, #4b566a 0%, var(--c-menu) 40%, #323945 100%);
	font-size: .9rem;
}

#page-menu ul {
	list-style-type: none;
}

#page-menu li a:link,
#page-menu li a:visited {
	display: block;
	padding: .8rem 1rem .8rem 1.1rem;
	border-left: .4rem solid var(--c-menu-accent);
	border-bottom: 1px solid rgba(255, 255, 255, .14);
	color: #fff;
	transition: background-color .15s, border-color .15s, color .15s;
}

#page-menu li a:hover,
#page-menu li a:active,
#page-menu li a:focus {
	border-left-color: var(--c-menu-hover);
	background: linear-gradient(90deg, rgba(227, 208, 88, .22), rgba(227, 208, 88, 0) 85%);
	color: darkorange;
}

table.content,
#page-main table[width] {
	width: 100%;
}

table.content {
	color: #000;
	text-align: left;
}

table.content td {
	background-color: inherit;
	color: #000;
	vertical-align: top;
}

table.content th {
	padding: 5px 5px 0;
	border-bottom: 1px solid var(--c-line);
	border-left: 1px solid var(--c-line);
	border-right: 1px solid var(--c-line);
	color: #202a34;
	font-size: 9px;
	font-weight: bold;
	text-align: left;
	height: 16px;
}

table.content .text {
	padding: 5px 5px 5px 2px;
	border-left: 1px solid var(--c-line);
	border-right: 1px solid var(--c-line);
	background-color: #e1e1e1;
	text-align: justify;
}

table.content .cell-left,
table.content .cell-right {
	padding: 2px;
	background-color: inherit;
}

table.content .cell-left {
	border-bottom: 1px solid var(--c-line);
}

table.content .cell-right {
	border-left: 1px solid var(--c-line);
	border-bottom: 1px solid var(--c-line);
}

table.content .cell-main {
	height: 25px;
	padding-left: 2px;
	border: 1px solid var(--c-line);
	border-top: 0;
	vertical-align: middle;
}

.row-a {
	background-color: #b5adab;
}

.row-b {
	background-color: #c3bdbc;
}

@media (max-width: 800px) {
	body {
		background: var(--c-content);
	}

	#page {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "head" "menu" "main";
		margin: 0;
		padding: 0;
		box-shadow: none;
	}

	#page-menu ul {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	#page-menu li a:link,
	#page-menu li a:visited {
		padding: .75rem .9rem;
	}

	#page-main {
		padding: 1.2rem 1rem 2rem;
	}

	#page-main table,
	#page-main tbody,
	#page-main tr,
	#page-main td,
	#page-main th {
		display: block;
		width: auto !important;
		max-width: 100%;
	}

	#page-main td {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#page-main input[type="text"],
	#page-main textarea {
		width: 100%;
		box-sizing: border-box;
	}
}
