body, html {
	height: 100%;
	margin: 0;
	font-family: "Trebuchet MS","Arial", sans-serif;
	color: #fff;
	font-size: 16pt;
	background-color: #000;
}

html, body, #app {
	scroll-snap-type: y;
}

/* panel: a part with a background image and some content */

.panel {
	padding: 8ex 5ex;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.bgimg-pcb      { background-image: url("images/yogesh-phuyal-mjwGKmwkDDA-unsplash_darkbg.jpg"); }
.bgimg-network1 { background-image: url("images/nathan-dumlao-kEOLkJksbc8-unsplash_darkbg.jpg"); }
.bgimg-network2 { background-image: url("images/jordan-harrison-40XgDxBfYXM-unsplash_darkbg.jpg"); }
.bgimg-antenna  { background-image: url("images/ajai-arif-E0xYIH27JIg-unsplash_darkbg.jpg"); }
.bgimg-instr    { background-image: url("images/blaz-erzetic-uf4luctGaXI-unsplash_darkbg.jpg"); }
.bgimg-code     { background-image: url("images/kevin-ku-w7ZyuGYNpRQ-unsplash_darkbg.jpg"); }
.bgimg-synth    { background-image: url("images/adi-goldstein-u0BVH8IOTUk-unsplash_darkbg.jpg"); }

.panel h1 {
	text-align: center;
	color: #fff;
	letter-spacing: 0.8ex;
}

.panel h3 {
	color: #fff;
	letter-spacing: 0.6ex;
	text-shadow: 0px 0px 10x #fff;
	margin-top: 6ex;
}
.panel h3:first-child {
	margin-top: 0;
}

.panel a.ref {
	color: #fff;
	text-decoration: underline;
}

.panel a.ref:hover, .panel a.ref:active {
	color: #fff;
	text-decoration: none;
}

.panel a.download {
	display: inline-block;
	color: #eee;
	background: rgba(255,255,255,0.1);
	padding: 1.5ex;
	text-decoration: none;
	min-width: 20em;
	margin: 1ex 0ex;
}

.panel a.download:hover, .panel a.download:active {
	color: #eee;
	background: rgba(226,0,1,0.5);
    transition: background-color 0ms;
	text-decoration: none;
}

.panel a.download .grid {
	display: inline-grid;
	vertical-align: center;
	grid-gap: 0px;
}

.panel a.download .grid > .lt {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.2ex;
	margin: 0px;
	font-size: 70%;
	min-width: 8ex;
}

.panel a.download .grid > .lb {
	grid-column: 1;
	grid-row: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.2ex;
	margin: 0px;
	font-size: 70%;
}

.panel a.download .grid > .r {
	grid-column: 2;
	grid-row: 1 / span 2;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1ex 3ex;
	margin: 0px;
}

.panel .footnote {
	margin-top: 6ex;
	font-size: 85%;
	color: #aaa;
}


/* spacer: a short stripe with just a title */

.spacer {
	background-color: rgba(226,0,1,1.0);
	background-color: rgba(226,0,1,1.0);
	color: #000;
	text-align: left;
	padding: 50px 80px;
	scroll-snap-stop: always;
	scroll-snap-align: start;
}

.spacer h2 {
	text-align: left;
	text-transform: uppercase;
}

.spacer p {
	text-align: left;
}


/* menu: an always-visible menu */

.menu {
	position: fixed;
	right: 0;
	left: 0;
	width: 5ex;
	text-align: center;
	padding: 0.9ex;                 
	background: rgba(226,0,1,0.25);
	color: rgba(255,255,255,0.8);
}

.menu a {
	text-align: center;
	color: rgba(255,255,255,0.5);
	text-decoration: none;
}
.menu a:hover, .menu a:active {
	color: rgba(255,255,255,1.0);
	text-decoration: none;
}


/* mobile devices */
@media only screen and (max-device-width: 1024px) {*/

	body, html {
		/* use a bit smaller fonts */
		font-size: 14pt;
	}
	
	.panel a.download {
		/* display the download buttons as blocks */
		display: block;
		min-width: auto;
	}

}
