:root {
  font-size: 62.5%;
  font-family: "Lato", sans-serif;
}
body {
  font-size: 1.6rem;
}

p {
    font-size: 2ch; 
    line-height: 1.5;
    margin-bottom: 1em;
  }

/* BEGIN scroll-driven animations-------- */
/* progress bar effect that triggers as the user scrolls */
/*
		@keyframes grow-progress {
			from {
				transform: scaleX(0);
			}

			to {
				transform: scaleX(1);
			}
		}

		#progress {
			position: fixed;
			z-index: 10;
			left: 0;
			top: 0;
			width: 100%;
			height: 0.25em;
			transform-origin: 0 50%;
			background: #CC5500;
		}
*/
		/* Create scroll-timeline on the root */
/*
		html {
			scroll-timeline: --page-scroll block;
		}
*/
		/* attach animation using an anonymous Scroll Progress Timeline */
/*		#progress {
			animation: grow-progress auto linear;
			animation-timeline: --page-scroll;
		}
*/
/* END scroll-driven animations (progress bar)-------- */
            
body, html {
  height: 100%;
  margin: 0;
  color: #777;
}

.bgimg-1, .bgimg-2, .bgimg-3 {
  position: relative;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

}
/*
.bgimg-1 {
  background-image: image-set(
    url('../img/bg_top-banner.webp') type('image/webp'),
    url('../img/bg_top-banner.jpg') type('image/jpeg')
  );
}

.bgimg-2 {
  background-image: image-set(
    url('../img/bg_white-section_v2.webp') type('image/webp'),
    url('../img/bg_white-section_v2.jpg') type('image/jpeg')
  );
}

.bgimg-3 {
  background-image: image-set(
    url('../img/bg_mid-section.webp') type('image/webp'),
    url('../img/bg_mid-section.jpg') type('image/jpeg')
  );
}
*/

.bgimg-1 {
  background-image: url("../img/bg_top-banner.jpg");
}

.bgimg-2 {
padding: 0 15em;
  background-image: url("../img/bg_white-section_v2.jpg");
  min-height: 400px;
}

.bgimg-3 {
  background-image: url("../img/bg_mid-section.jpg");
  min-height: 400px;
}

body, html {
  background-color: #222;
  color: #fff;
}


.bgimg-3 p {background-color: transparent; color: #fff; font-size: 1.25em; text-shadow: 2px 2px 4px #000000;}
/* -- */

p.timestamp {
	font-size: 1.5ch;
	font-style: italic;
	line-height: 1.5;
	margin-bottom: 1em;
}

figure {
  margin: 1em 2em;
}

h2 {
  letter-spacing: 1px;
  text-transform: uppercase;
  font: 20px "Lato", sans-serif;
  color: #111;
  text-align: center;
  margin: 1em;
}

h3 {
  letter-spacing: 2px;
  text-transform: uppercase;
  font: 18px "Lato", sans-serif;
  color: #111;
  margin-bottom: 1em;
}

h4 {
  letter-spacing: 1px;
  text-transform: uppercase;
  font: 16px "Lato", sans-serif;
  color: #111;
  font-weight: bold;
  margin-bottom: 1em;
}
h4.reverse-contrast {
  color: #fff;
}

/* BEGIN default (body) links */
a:link,
a:visited,
a:hover,
a:focus {
  background-color: transparent;
  color: #008300;
  font-weight: bold;
  margin: 0;
}

a:visited {
  background-color: transparent;
  color: #333;
}

a:hover {
  outline:3px dotted #ff8000;
}

a:active {
  background-color: #008300;
  color: #fff;
}
/* END default (body) links */

/* BEGIN reverse-contrast links */
a.reverse-contrast:link,
a.reverse-contrast:visited,
a.reverse-contrast:focus {
  background-color: transparent;
  color: #ffc;
  font-weight: bold;
  margin: 0;
}

a.reverse-contrast:hover {
  background-color: #ffa500;
  color: #000;
}

a.reverse-contrast:active {
  background-color: #8b0000;
  color: #fff;
}
/* END reverse-contrast links */

/*.pdf-download*/
.bgimg-2, .caption {
  display: flex; justify-content: center; align-items: center; height: 200px;
}
.caption .reverse-contrast {padding-right: 1em;}

/* -- BEGIN topnav --*/
.bgimg-1 {
	position: relative;
	z-index: 2;
	background-position-y: -15em;
	opacity: 1;
	text-align: right;
	margin-top: 0;
	height: 15em;
}
.bgimg-1 p {
  line-height: 1.2;
  margin: 0 18em 0 0;
  font-size: 1.2em;
  font-weight: 400;
  font-style: italic;
}
.bgimg-1 {padding-top: 1em;}

.bgimg-1 a, .bgimg-1 p {color: #fff; text-shadow: 1px 1px 2px #000;}
.bgimg-1 a {text-decoration: none;}

.main-nav {
  background-color:#222;
  color:#ddd;
  padding:0;
  text-align:center;
  }
.main-nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.sub-nav ul {
  list-style-type: none;
  padding-bottom: 2em;
}
.sub-nav ul li{
  display: inline;
  padding: 0 0.5em;
}

a.skiptotop:link,
a.skiptotop:visited,
a.skiptotop:focus,
a.skiptotop:hover,
a.skiptotop:active {background-color:#000; color:#fff; font-size:1em; float:right; padding:0 2em;}
a.skiptotop:hover {text-decoration: underline;}

.new-header {
  background-color:#222;
  color:#ddd;
  display:inline-block;
  margin:0;
  padding:0;
  text-align:left;
}

.new-header h1{
  display:block;
  float:left;
  padding-right: 3em;
  margin:0.5em 0 0 0;
}

.new-header h1 a {
	color: #EEE1C6;
	padding-right: 0;
	padding-left: 0.1em;
	font-weight: 300;
	
	margin-top: -0.5em;
	padding-top: 0;
	text-decoration: none;
	font-size: 2em;
}
.main-nav-list__item {
  display: inline;
  padding: 0 1em 0 0;
}

.main-nav {
  padding-bottom: 0;
  margin: 0;
}
.new-header ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.main-nav-list {
  display: flex;
  flex-wrap: nowrap;
}

/* BEGIN skip-to-main */
#skipToMain {
  position:absolute;
  top: -40px;
  left: 0;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 0 0 1em 1em;
  width:1px;
  height:1px;
  overflow:hidden;
  padding: 1em;
  transition: top .5s ease-out;
}
#skipToMain:focus {
  position:static;
  width:auto;
  height:auto;
}
/* END skip-to-main */

.main-nav-list__item a {
  text-decoration: none;
  outline-color: transparent;
  
  line-height: 3;
  border-radius: 1em;
  margin-right: 0.5em;
  padding: 0.5em;
  color: black;
}

.main-nav-list__item a:link,
.main-nav-list__item a:visited,
.main-nav-list__item a:focus {
  background-color: #eee8aa;
  color: #000;
}

.main-nav-list__item a:hover {
  background-color: #ffa500;
}

.main-nav-list__item a:active {
  background-color: #8b0000;
  color: #fff;
}

/* BEGIN language links */
a.current-language {cursor: auto;}

a.change-language:link,
a.change-language:visited,
a.change-language:focus {
  background-color: transparent;
  color: #ffc;
  border: 2px solid #ccc;
  font-weight: bold;
  padding: 0.5em 1em;
  margin: 0;
}

a.change-language:hover {
  background-color: #ffa500;
  border: 2px solid #ffa500;
  color: #000;
}

a.change-language:active {
  background-color: #8b0000;
  color: #fff;
}

.main-nav-list__item a.current-language:link {
  background-color: transparent;
  border: 2px solid #ccc;
  border-top: 0;
  border-bottom: 0;
  color: #ccc;
  padding: 0.5em 1em;
  margin: 0;
}
/* END language links */
/* END topnav -- */

#article_git-add-msg {
  background-color:#282E34;
  color:#ddd;
  padding:50px 80px;
  text-align: justify;
}

h3.reverse-contrast {color:#fff;}
pre {
  margin: 1em 0;
}

pre code, .inlineCode {
  background-color: #fff;
  color:#000;
  display: block;
  font: normal 20px "Georgia", "Courier New", serif;
  line-height: 1.2;
}
.inlineCode {
  display: inline; 
  /*margin: 0 0.5em; */
  padding: 0 0.25em;
}

strong {font-weight: 700;}
em {font-style: italic;}

#contact {
  background-color:#282E34;
  color:#ddd;
  padding:50px 80px;
  text-align: center;
}
#main-content {
  background-color: #fff;
  color: #111;
  padding: 1em 0 0 0;
  text-align: justify;
}
article {padding: 0 15em; width: 70vw; line-height: 1.5; font-size: 1.8rem;}

p.last {
  border-bottom: 1px solid #ddd;
  padding-bottom: 2em;
}

/* faux bullet point */
h5, .listPoint {
  display: list-item;
  font-weight: bold;
  list-style-type: square;
  list-style-position: inside;
}

#related-projects section {
  border-bottom: 2px dotted #bbb;
  margin-bottom: 1em;
}
#related-projects section.last {
  border-bottom: 0;
}

/* BEGIN footer */
footer {
  color:#ddd;background-color:#282E34;padding:50px 0 0 0;position:relative;text-align: center;
  }
  
#copyright {background-color: #000; color:#fff; width: 100%; margin: 0; padding:2em 0;}
/* END footer */  


/* BEGIN MOBILE------- */
/* Turn off parallax scrolling for tablets and phones */
@media only screen and (max-width: 1024px) {
  .bgimg-1, .bgimg-2, .bgimg-3 {
    background-attachment: scroll;
  }
}

/* phone-and-tablet */
  @media only screen and (max-width:1199px) {
    article {width: auto; }
  } /* END phone-and-tablet */

  @media only screen and (min-width:520px){
    article  {width: auto; }
  }

/* phone-only */
  @media only screen and (max-width:599px) {
    article  {width: auto; }
  } /* END phone-only */

/* tablet-portrait-up */
  @media only screen and (min-width:600px) { 
    
  }

/* tablet-landscape-up */
  @media only screen and (min-width:900px) { 
  }

/* desktop-up */
  @media only screen and (min-width:1200px) {
    
  }

/* END MOBILE------- */
