body
{
	font-family: sans-serif;
	color: #ffffff;
	margin: 0;
	background-color: #bbebfd;
}

header, nav, article
{
	display: block;
}

#header-wrapper
{
	position: fixed;
	top: 0;
	width: 100%;
	height: 4.8em;
}

#header
{
	height: 100%;
	
	/* Opera, IE9 */
	background: #2373a4 url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iZ3JhZGllbnQiIHgxPSIwJSIgeTE9IjAlIiB4Mj0iMCUiIHkyPSIxMDAlIj48c3RvcCBvZmZzZXQ9IjAlIiBzdHlsZT0ic3RvcC1jb2xvcjpyZ2JhKDEwMCwxNzMsMjE5LDEpOyIgLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0eWxlPSJzdG9wLWNvbG9yOnJnYmEoMjYsMTAwLDE0NiwxKTsiIC8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgZmlsbD0idXJsKCNncmFkaWVudCkiIGhlaWdodD0iMTAwJSIgd2lkdGg9IjEwMCUiIC8+PC9zdmc+);
	/* Firefox */
	background: -moz-linear-gradient( top, rgba(100,173,219,1), rgba(26,100,146,1) );
	/* Chrome & Safari */
	background: -webkit-gradient( linear, left top, left bottom, color-stop( 0, rgba(100,173,219,1) ), color-stop( 1, rgba(26,100,146,1) ) );
}

#nav
{
	height: 3.5em;
	border-top: 1px solid #2373a4;
}

#lang-bar
{
	text-align: right;
	height: 1.3em;
	background-color: #2b7bad;
}

#lang-bar ul
{
	display: none;
}

#lang-bar select
{
	margin-right: 0.6em;
}

#title-div
{
	height: 3.5em;
	float: left;
	margin: 0.15em 4em 0 0.5em;
}

h1#title > span
{
	display: none;
}
	
h1#title
{
	background: transparent url(../img/logo-small.png) no-repeat top left;
	width: 100px;
	height: 34px;
	margin: 0;
}

#subtitle
{
	display: inline;
	font-size: 0.8em;
	margin: 0;
}

#lang-bar a
{
	font-size: 0.8em;
	color: #FFFFFF;
	text-decoration: none;
}

#lang-bar a:hover
{
	text-decoration: underline;
}

/* Menu: */

#menu-wrapper
{
	display: inline;
}

#menu
{
	display: inline;
	padding: 0;
	margin: 0;
	height: 3.5em;
}

#menu li
{
	position: relative;
	list-style-type: none;
  float: left;
  min-width: 6em;
  /*border: 1px solid green;*/
  height: 3.5em;
  /*text-align: center;*/
  text-indent: 1em;
  padding: 0;
}

#menu li:hover
{
	background-color: #1a6492;
	border-radius: 3px 3px 0 0;
	-moz-border-radius: 3px 3px 0 0;
}

#menu li > h3
{
	display: block;
	cursor: default;
	font-size: 0.8em;
}

#menu li > ul
{
	display: none;
	position: absolute;
	top: 3.4em;
	left: 0;
	padding: 0;
	margin: 0;
	border-top: 1px solid #145c88;
	z-index: 1;
}

#menu li:hover > ul
{
	display: block;
}

#menu li > ul > li:last-child, #menu li > ul > li:hover:last-child
{
	border-radius: 0 0 3px 3px;
	-moz-border-radius: 0 0 3px 3px;
}

#menu li > ul > li
{
	background-color: #1a6492;
	display: block;
	height: 1.5em;
	text-align: left;
	width: 28em;
	font-size: 0.8em;
	font-family: sans-serif;
	font-weight: bold;
	padding: 0.6em 0 0.1em 0;
	text-indent: 1.2em;
}

#header, #menu li > ul > li
{
	box-shadow: 1px 1px 1px rgba(0,0,0,0.8);
	-moz-box-shadow: 1px 1px 1px rgba(0,0,0,0.8);
	-webkit-box-shadow: 1px 1px 1px rgba(0,0,0,0.8);
}

#menu li > ul > li a, #menu li > h3 a
{
	display: block;
	color: #ffffff;
	text-decoration: none;
}

#menu li > ul > li:hover
{
	background-color: #2373a4;
	border-radius: 0;
	-moz-border-radius: 0;
}

#installer
{
	float: right;
	margin: 1em 0.5em 0 0.5em;
	background-color: #ffffff;
}

a#install-link, .button-link
{
	color: #00A010;
	font-size: 1.2em;
	background-color: #ffffff;
	border-style: none;
	padding: 0.1em;
	text-decoration: none;
}

.button-link
{
	border: 1px solid #00A010;
	padding: 0.2em;
}

a#install-link:hover, .button-link:hover
{
	color: #1775b6;
	/*border-style: none;*/
}

a#install-link:active, .button-link:active
{
	color: #ff0000;
	/*border-style: none;*/
}

a#install-link, .button-link
{
	border-radius: 3px;
	-moz-border-radius: 3px;
	padding: 0.28em;
}



/* Content: */

#content-wrapper
{
	position: fixed;
	width: 100%;
	height: 100%;
	overflow: auto;
	top: 6.5em;
	text-align: center;
	z-index: -1;
}

#scrolling-content
{
	padding: 0.1em 0 0.1em 0;
	
	text-align: justify;
	color: #005A8E;
	background: #ffffff url(../img/bg-white.png) repeat;
	background-image: image-set(url(../img/bg-white.avif) type("image/avif"), url(../img/bg-white.png) type("image/png"));
	
	border-radius: 6px ;
	-moz-border-radius: 6px;
	
	box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
	-moz-box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
	-webkit-box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
}

#header, #scrolling-content
{
	margin: 0 auto 0 auto;
	width: 80%;
	min-width: 46em;
}

#content
{
	margin: 1em;
	font-size: 0.9em;
}

#content h1, #content h2, #content h3
{
	color: #003657;
	font-variant: small-caps;
}

#content > h1
{
	font-size: 1.2em;
}

#content > h2
{
	font-size: 1.1em;
}

#content > h3
{
	font-size: 1em;
}

#content img
{
	max-width: 95%;
}

#content div
{
	background-color: rgba(219,243,252,0.4);
	padding: 0.2em;
	border-radius: 6px;
	-moz-border-radius: 6px;
}

.ud
{
	text-decoration: underline;
}

.g, #content a:visited
{
	color: gray;
}

.bottom-round-border
{
	border-radius: 0 0 6px 6px;
	-moz-border-radius: 0 0 6px 6px;
}
/* ===================== Responsive (tablet/mobile) — 2026 retrofit ===================== */
/* Desktop layout (> 900px) is left untouched. Below 900px the fixed layout flows. */
#menu-toggle { display: none; }

#install-link.disabled,
#install-link.disabled:hover,
#install-link.disabled:active {
	color: #9a9a9a !important;
	cursor: not-allowed;
	pointer-events: none;
	opacity: 0.7;
}

@media (max-width: 900px) {
	body { overflow-x: hidden; }
	#header-wrapper { position: static; height: auto; }
	#content-wrapper {
		position: static; top: 0; left: 0;
		width: auto; height: auto !important;
		overflow: visible; z-index: auto;
	}
	#header, #scrolling-content { width: 100%; min-width: 0; box-sizing: border-box; }
	#header { border-radius: 0; }
	#scrolling-content { border-radius: 0; }
	#nav { height: auto; overflow: hidden; }
	#lang-bar { height: auto; padding: 0.25em 0.5em; }
	#title-div { float: left; height: auto; margin: 0.45em 0.5em; }
	#menu-toggle {
		display: block; float: right; margin: 0.5em 0.5em 0 0;
		background: #1a6492; color: #fff; border: 0; border-radius: 4px;
		font-size: 1.5em; line-height: 1; padding: 0.12em 0.42em; cursor: pointer;
	}
	#installer { float: right; margin: 0.6em 0.4em 0 0; }
	#menu { display: none; float: left; clear: both; width: 100%; height: auto; }
	#menu.open { display: block; }
	#menu > li {
		float: none; width: 100%; min-width: 0; height: auto;
		text-indent: 0; padding: 0; border-top: 1px solid #2373a4;
	}
	#menu li:hover { background: none; border-radius: 0; }
	#menu li > h3 { font-size: 1em; padding: 0.6em 0.9em; margin: 0; }
	#menu li > ul { display: block; position: static; top: auto; left: auto; border: 0; width: 100%; }
	#menu li > ul > li {
		float: none; width: 100%; height: auto; font-size: 0.95em;
		text-indent: 0; padding: 0.55em 0.9em 0.55em 1.8em;
	}
	#content { margin: 0.6em; font-size: 1em; text-align: left; }
	#content iframe { width: 100%; max-width: 100%; height: auto; aspect-ratio: 840 / 473; }
}

/* mobile: hide the (greyed) download + move language selector left, away from the hamburger */
@media (max-width: 900px) {
	#installer { display: none; }
	#lang-bar { text-align: left; }
	/* iOS notch/status-bar: extend the top blue bar (#2b7bad) under the status bar; keep content clear of the notch */
	#lang-bar { padding: calc(0.25em + env(safe-area-inset-top)) calc(0.5em + env(safe-area-inset-right)) 0.25em calc(0.5em + env(safe-area-inset-left)); }
}

/* semantic block elements (modernization) + small copyright footer */
main, footer { display: block; }
.copyright {
	font-size: 0.65em;
	text-align: center;
	margin: 2em 0 0.5em;
	opacity: 0.7;
}

/* breathing room around the FR/EN language switch link */
#lang-switch { margin-right: 1em; }
@media (max-width: 900px) {
	#lang-switch { margin-right: 0; margin-left: 1em; }
}

/* lazy video facade (click-to-load) — kills YouTube/Dailymotion JS+cookies until play */
.vid-facade { position: relative; width: 100%; max-width: 840px; margin: 0 auto; aspect-ratio: 840 / 473; background: #000 center / cover no-repeat; cursor: pointer; border-radius: 6px; }
.vid-facade .vid-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 68px; height: 48px; background: rgba(20,20,20,.65); border-radius: 14px; transition: background .2s; }
.vid-facade:hover .vid-play, .vid-facade:focus-visible .vid-play { background: #f00; }
.vid-facade .vid-play::before { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-40%,-50%); border-style: solid; border-width: 11px 0 11px 19px; border-color: transparent transparent transparent #fff; }
.vid-facade iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 6px; }

/* logo wordmark: keep "Net Gyver" readable by screen readers (gives the home link + h1 their accessible name) */
h1#title > span { display: block; position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* facade poster image (AVIF via <picture>, fills the click-to-play box) */
.vid-facade picture { display: block; }
.vid-facade img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 6px; }
