/* ----------------------------------------------
 *   submenu
 * ---------------------------------------------- */
.sub-title {
	border-bottom: 2px solid #888888;
}
.sub-title a {
	color: #555555;
}
.sub-title a:hover {
	color: #444444;
}
#sub-title-link {
	display: inline-block;
	margin-bottom: 1px;
	padding: 5px 8px 2px 6px;
	border-radius: 3px;
}
#sub-title-link:hover {
	background-color: #cccccc;
}
.sub-group {
	display: flex;
	justify-content: left;
	gap: 8px;
	margin-top: 15px;
}
#sub-gr1 {
	margin-top: 18px;
}
.sub-group a,
.sub-group a:hover {
	color: #ffffff;
}
.sub-btn {
	display: inline-block;
	padding: 8px;
	width: 100px;
	text-align: center;
	background-color: var(--color-prime);
	border-width: 1px;
	border-style: solid;
	border-color: #70bef9 #2d9df1 #2d9df1 #70bef9;
	border-radius: 4px;
}
.sub-btn:hover{
	background-color: var(--color-hover);
	border-color: #66b9f8 #2497ed #2497ed #66b9f8;
}
.sub-btn:active {
	background-color: var(--color-active);
	border-color: #2497ed #66b9f8 #66b9f8 #2497ed;
}
.sub-info {
	margin-top: 10px;
	padding-top: 5px;
	text-align: right;
}
.sub-info a {
	color: #555555;
}
.sub-info a:hover {
	color: #444444;
}
.sub-inf-link {
	display: inline-block;
	padding: 5px 8px 2px 6px;
	border-radius: 3px;
}
.sub-inf-link:hover {
	background-color: #cccccc;
}

/* ----------------------------------------------
 *   article
 * ---------------------------------------------- */
@media screen and (min-width: 1001px) {
	article {
		min-height: 800px;
	}
}
/* -- figure ---- */
figure {
	margin: 0;
	max-width: 500px;
}
figure img {
	width: 100%;
}
figcaption {
	font-size: 15px;
	text-align: center;
}

/* ----------------------------------------------
 *   aside snippets
 * ---------------------------------------------- */
#aside2,
#aside3 {
	line-height: 24px;
}
.line-separator {
	line-height: 10px;
}
.table-snippet td:first-child {
	width: 32%;
	padding-right: 5px;
}

/* ----------------------------------------------
 *   footer - sponsors logo
 * ---------------------------------------------- */
footer {
	display: block;					/* always visible */
	padding-bottom: 30px;
}
#ft-logo-container {
	/* -- flex setup ------- */
	display: flex;
	justify-content: center;		/* horizontal align */
	align-items: flex-start;		/* vertical align   */
	flex-wrap: wrap;
	gap: 45px;
	/* --------------------- */
	margin-top: 5px;
}
.ft-sponsor-logo {
	max-width: 200px;
	object-fit: contain;
}
#ft-logo-flexik    { height: 32px; }
#ft-logo-flex      { height: 25px; }
#ft-logo-poka      { height: 33px; }
#ft-logo-decathlon { height: 38px; }
#ft-logo-daikin    { height: 25px; }
#ft-logo-ngf       { height: 25px; }
#ft-logo-rotary    { height: 60px; margin-top: -10px;}
