@charset "utf-8";

/* -------- Tools -------- */

.group:after {
  content: "";
  display: table;
  clear: both;
}

/* -------- Theme -------- */

html {
    box-sizing: border-box;
	background-color: #9aa;
	background-color: #dfeefb;
	background-image: url("../images/pattern2.webp");
	background-size: 100%;
	-background-attachment: fixed;
	background-position: top left;
	background-repeat: repeat-y;
	overflow: auto;
	overflow-x: auto;
	overflow-y: scroll;
	cursor: default;
	font: normal normal 0px/0px arial, helvetica, geneva, verdana, sans-serif;
}

body {
	-box-shadow: #999 0 0 20px;
}

/* -------- Header -------- */

.header {
	background-color: #fff;
	position: relative;
}

.header .logo {
	width: 100%;
	aspect-ratio: 10 / 1;
	object-fit: contain;
	object-position: center;
}

.header .banner {
	width: 100%;
	aspect-ratio: 100 / 27;
	object-fit: cover;
	object-position: center;
}

/* -------- Menu -------- */

.menu {
	background-color: #dfeefb;
	font-size: 11pt;
	padding: 0 0.3em;
}

.menu-top ul {
	text-align: center;
}

.menu-bottom ul {
	text-align: center;
}

.menu li {
	text-align: left;
	position: relative;
	display: inline-block;
	background-color: #dfeefb;
}

.menu li:hover {
	background-color: #c44;
}

.menu li.menu-item-selected {
}

.menu li.menu-item-related {
}

.menu li:hover.menu-item-related {
	background-color: #c44;
}

.menu li > a {
	display: block;
	color: #000;
	line-height: 2.75em;
	white-space: pre;
	padding: 0 0.6em;
}

.menu ul ul {
	padding: 0;
	position: absolute;
	display: none;
	left: 0;
	top: 100%;
}

.menu ul ul ul {
	left: 100%;
	top: 0;
}

.menu ul ul li {
	display: block;
	padding: 0;
	margin: 0;
}

.menu li > ul {
	display: none;
	width: auto;
}

.menu li:hover > ul {
	display: block;
}

.menu li > ul.menu-open {
	display: block;
}

.menu li.menu-parent > a:after,
.menu li:hover.menu-parent > a:after {
	content: "";
    background-position: center center;
    background-size: 0.6em 0.6em;
    background-repeat: no-repeat;
    display:inline-block;
    width: 0.6em;
    height: 0.6em;
    vertical-align: middle;
    margin-left: 0.5em;	
}

.menu li.menu-parent > a:after {
	background-image: url("../images/arrow-down.png");
}

.menu li:hover.menu-parent > a:after {
}

.menu-top * {
	z-index: inherit;
}

.menu-top .menu {
	z-index: 1000;
}

.menu-top .menu .menu-parent .menu {
	z-index: 2000;
}

/* -------- Content -------- */

.content {
	font-size: 11pt;
	line-height: 1.5em;
	overflow: hidden;
}

.content > :first-child {
	margin-top: 0;
}

.content > :last-child {
	margin-bottom: 0;
}

.content h1,
.content h2,
.content h3,
.content h4 {
	font-family: montserrat;
	color: #000;
}

.content h1,
.content h2,
.content h3,
.content h4,
.content p,
.content form,
.content ul,
.content table {
}

.content h1 {
	font-size: 2.2em;
	font-weight: 700;
	line-height: 1.2em;
	margin: 0.5em 0;
}

.content h2 {
	font-size: 1.75em;
	font-weight: 600;
	line-height: 1.2em;
	margin: 0.5em 0;
}

.content h3 {
	font-size: 1.5em;
	font-weight: bold;
	margin: 0.8em 0;
}

.content h4 {
	font-style: italic;
	margin: 0.5em 0;
}

.content p,
.content ul,
.content table {
	margin-bottom: 1.2em;
	text-align: left;
	color: #000;
	word-break: break-word;
}

.content ul {
	list-style-type: disc;
	list-style-position: outside;
	list-style-image: none;
	padding-left: 30px;
}

.content ul li {
	padding-left: 10px;
}

.content strong {
	font-weight: 600;
}

.content em {
	font-style: italic;
}

.content a {
	color: #800;
}

.content a:hover {
	text-decoration: underline;
}

.content small {
	font-size: 11pt;
	line-height: 1.5em;
	vertical-align: middle;
}

.content hr {
	width: 100%;
	height: 1px;
	background-color: #ccc;
	margin: 1.5em 0;
}

.content img {
	display: inline-block;
	width: 100%;
	height: auto;
}

.content img.center {
	display: block;
	max-width: 100%;
	margin: 0 auto 1em auto;
}

.content img.left {
	float: left;
	margin: 0.35em 1em 1em 0;
}

.content img.right {
	float: right;
	margin: 0.35em 0 1em 1em;
}

.content table {
}

.content table td {
	padding-left: 15px;
}

.content table td:first-child {
	padding-left: 0;
}

.content video,
.content audio,
.content iframe {
	width: 100%;
	display: inline-block;
}

.content span.screenshot,
.content img.screenshot {
	border: 16px solid black;
	border-radius: 8px;
}

.content p.postinfo {
	margin-bottom: -0.25em;
}

.content q {
	font-style: italic;
}

.content .more-hidden {
	display: none;
}

.content .reveal {
	display: none;
}

.content .more {
	display: none;
}

.content .twocolumns {
	display: flex;
	flex-flow: row wrap;
	margin-bottom: 1.2em;
}

.content .twocolumns .left,
.content .twocolumns .right {
	flex: 0 0 50%;
	margin-top: 1.2em;
}

.content .twocolumns .left {
	padding-right: 12px;
}

.content .twocolumns .right {
	padding-left: 12px;
}

.content .twocolumns .left:first-child,
.content .twocolumns .left:first-child + .right {
	margin-top: 0;
}

.content .twocolumns .left > :first-child,
.content .twocolumns .right > :first-child {
	margin-top: 0;
}

.content .twocolumns .left > :last-child,
.content .twocolumns .right > :last-child {
	margin-bottom: 0;
}

.content .teampics {
	display: flex;
	flex-flow: row nowrap;
	column-gap: 8px;
	margin-bottom: 1.2em;
}

.content .teampics img {
	flex: 1 1 50%;
	width: 0;
}

/* -------- Follow -------- */

.content ul.follow {
	padding: 0;
	overflow: hidden;
}

.content ul.follow li {
	padding: 0;
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	font-size: 18pt;
	line-height: 1.5em;
	text-align: center;
	margin-right: 0.2em;
	overflow: hidden;
}

.content ul.follow li a {
	display: block;
	color: #fff;
}

.content ul.follow li a:hover {
	filter: brightness(135%);
}

.content ul.follow li.facebook a {
	background-color: #3b5998;
}

.content ul.follow li.twitter a {
	background-color: #55acee;
}

.content ul.follow li.instagram a {
	background-color: #d30071;
}

.content ul.follow li.youtube a {
	background-color: #cc181e;
}

.content ul.follow li.googleplus a {
	background-color: #d34836;
}

.content ul.follow li.rss a {
	background-color: #f79637;
}

/* -------- Footer -------- */

.footer {
	background-color: #000;
}

.footer p {
	font-size: 11pt;
	line-height: 3em;
	text-align: center;
	color: #fff;
}

