: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;
  }

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: 0;
}

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 */

a.inline_link:link {display:inline; font-size: 1.5rem; margin-right:1.5rem;}
/* ----------------------------------- */
/* BEGIN collapsible ------------------*/
input[type='checkbox'] { display: none; }
.collapsible_wrapper { margin: 1.2rem 0; }

.lbl-toggle { 
  display: block; 
  font-weight: bold;
  font-size: 1.2rem; 
  text-transform: uppercase;
  text-align: center; 
  padding: 1rem; 
  color: #222; 
  border-bottom: 1px solid #222;
  background-color: transparent;
} 

.collapsible_wrapper.anchor {text-align: left;}

.collapsible_content {box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);}

.collapsible_content .content-inner { 
  background-color:#eee8aa;
  padding: .5rem 1rem; 
} 
/* END collapsible --------------------*/
/* ----------------------------------- */
/* BEGIN TOC-modifications for collapsible */
#on-this-page {
	border-bottom: 1px solid #000;
	margin-bottom: 0.5rem;
	display: block;
	float: left;
	margin-right: 3rem;
}
/* horizontal nav (instead of vertical) */
#toc nav.contents ul {display:flex;}

#toc {
  background-color: transparent;
  display: block;
	padding: 0;
	margin: 0;
	line-height: 2;
}

/* display subnavs vertically */
#toc nav.contents ul li {padding: 0 1rem;}

#toc nav.contents ul li ul {display:block; border-left: 1px solid #777; padding: 0 2rem;}
#toc ul ul {margin-left:0;}

#toc nav ul li ul li {
  border-bottom: 1px solid #777;
  margin-left: -2rem;
  padding-left: 1rem;
}

/* docSkimmer - related projects */
#toc nav.contents ul li ul li ul {
  border:0;
  padding: 0 0 0 1rem;
}

/* END TOC-modifications for collapsible */

/* BEGIN anchor links */
.anchor,
a.anchor:link,
a.anchor:visited,
a.anchor:focus,
a.anchor:hover,
a.anchor:active {
  color: #000;
  font-weight: normal;
  position: relative; /* icon */
  text-decoration: none;
  display: block;
  width:100%;
}

a.anchor.reverse-contrast, 
a.anchor.reverse-contrast:visited,
a.anchor.reverse-contrast:focus {color: #fff;}

a.anchor.reverse-contrast:hover,
a.anchor.reverse-contrast:active {color: #000;}

.anchor::after {
  content: "📎"; /*emoji or SVG */
  visibility: hidden; /* default */
  margin-left: 0.3em; 
}

.anchor:hover::after {
  visibility: visible; /* show icon */
}

/* END anchor links */

/* BEGIN TOC */
.hamburger-icon {
    /*cursor: pointer;*/
    font-size: 2.25rem;
    margin-right: 0.5rem;
}

#on-this-page {
  border-bottom: 2px dotted #333;
  margin-bottom: 0.5rem;
}

a.anchor.anchor-1, a.anchor.anchor-category {
  font-weight: bold;
  text-align: left;
}
a.anchor-category2:link {font-weight:bold; margin-left: 0;}

#toc nav ul li ul li ul li {border-bottom: 1px solid #555; border-radius: 0; box-shadow: none;}
#toc nav ul li ul li ul li.last {border:0;}
/* END TOC */

/*.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: 0 -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; 
    padding:1em;
    border-radius: 1em;
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    z-index: 99;}
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;
}
#maincontent {
  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 a.anchor.anchor-category, .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 {padding: 0 2rem; font-size: 1.25rem;}
    p.timestamp, .footer__item, pre code, .inlineCode, h5 {font-size: 1.5rem;}
    pre code {white-space:pre;}
    #article_git-add-msg figure {margin-right:-8rem;}
    .pdf-download{box-sizing: border-box; display: block; padding:1rem; min-width: 12rem; /*width: 100%;*/ text-align:left;}
    .h-card, .p-note {font-style: normal; margin: 0;}
    .caption{display:block;padding-top:3rem;text-align:center;}
    img {max-width: 100%; height: auto;}
    
    /* BEGIN collapsible */
    #on-this-page, #sur-cette-page {
      display: none;
    }
    input[type='checkbox'] {display: none;}
    #toc nav.contents ul {display:block;}
    .collapsible_content {border-bottom: 1px solid #333; box-shadow: none;}
  } /* END phone-and-tablet */

  @media (width <= 868px) {
    .bgimg-1 p {
    	text-align: right;
    	text-wrap: wrap;
    	font-size: 1.5rem;
    	font-style: normal;
    	display: block;
    	margin: 0 1rem 0 0;
    }
    .new-header ul {display:block;}
    .main-nav-list__item {display:block; padding:0;}
    .main-nav-list__item a {
      white-space: nowrap;
      }
    .main-nav-list {
      flex-wrap: wrap;
    }
    h1 {
      float: none;
    }
    .bgimg-1 p {
      text-align: center;
    }
   }
  
  @media only screen and (min-width:520px){
    article  {width: auto; }
  }

/* phone-only */
  @media only screen and (max-width:599px) {
    .bgimg-1{background-position: 0 0;}
    .main-nav-list__item a:link, .main-nav-list__item a:visited, .main-nav-list__item a:focus {
    	background-color: transparent;
    	color: #fff;
    	padding: 0;
    	margin: 0 1rem 0 0;
    	display: block;
    	float: left;
    }
    .main-nav-list__item a.current-language:link {
    	border: 0;
    	text-decoration: underline;
    	display: block;
    	clear: both;
    }
    .main-nav-list__item a.change-language:link{padding: 0.5rem;}
    #article_git-add-msg figure {margin-right:-8rem;padding-right:2rem;margin-left:0;}
    /*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------- */