/* Base */
  
html {
  margin: 0px;
  padding: 0px;
  -webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
}
body {
  box-sizing: border-box;
  color: #707070;  /* #9A9A9A; */
  background: #f4f4f4; /* #EAE8E8; */
  font-family: 'Roboto', sans-serif;
  font-size:1.1em;
  scroll-behavior: smooth;
}
.masthead {
  margin:0px;
  padding:0px;
}

.wrapper {
  margin: 40px auto;
  padding: 10px 40px;
  background-color: #f4f4f4;
  max-width: 1000px;
}
h1 {
  font-size: 32px;
  font-weight: 400;
  margin-top:10px;
}
h2 {
  font-size: 1.2em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  color:#707070;
  margin-top: 0px;
  margin-bottom: 4px;
}
.darken {
  color: #222;
}
h4 {
  font-size: 18px;
  font-weight: 100;
  color:#333333;
}
h5 {
  font-size: .9em;
  font-weight: 300;
  color:#333333;
  margin-top: 4px;
  margin-bottom: 36px;
}
ul {
  list-style: none;
}
.masthead {
  background-color: #ffffff;
  color: #222222;
  font-family: Oswald;
  font-weight: 100;

  margin: 0px;
  padding: 20px;
  padding-left: 40px;
  height: 60px;
}
.masthead h1 {
  font-size: 1.5em;
}
.masthead h2 {
  font-size: 0.75em;
}
.top {
  margin-bottom:0;
}
p {
  margin: 0 0 20px 0;  
}
.multi { 
column-count: 1;
}
img {
  width: 100%;
}
@media screen and (min-width: 520px) {
  .multi { 
  column-count: 2;
  }
}
@media screen and (min-width: 769px) {
  .multi { 
    column-count: 3;
  }
}
.red {
  color: #444; /*red   DD1C25*/
}
.bottomgap {
  margin-bottom: 300px;
}
.gap {
  min-height: 50px;
  height: 50px;
  display:block;
}
figure {
  margin: 0;
}

.topnav {
  overflow: hidden;
  background-color: #fff;
  position: fixed;
  left: 0;
  top: 0;
  min-width: auto;
  width: 100%;
  height: 60px;
  z-index: 1000;
}

.topnav a {
  float: left;
  display: block;
  color: #222222;
  text-align: left;
  padding: 14px 30px 12px 40px;
  text-decoration: none;
  font-size: 1.2em;
}
.fa {padding-top: 4px;}
@media screen and (min-width: 340px) {
  .topnav a {
    font-size: 1.em;
  }
}
.topnav .r {
    float: right;
    font-size: .7em;
    margin-top: 8px;
}
.topnav .r a {
    color: #9a9a9a;
}
.topnav .r a:hover {
  color: #444;
}

.topnav .icon {
  display: none;
}

@media screen and (max-width: 720px) {
  .topnav .r {display: none;}
  .topnav a.icon {
    float: right;
    display: block;
  }
  .topnav a.icon:hover {
    color: #444;
  }

  .topnav.responsive {
    position: fixed;
    height: 100vh;
    }
  .topnav.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .topnav.responsive .r {
    display: block; 
    float: left;
    margin-left: 24px;
    margin-top: 50px;
    }
  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
}
.nf {
  font-family: 'Oswald', sans-serif;
  font-weight: 300;    
}
hr {
  margin-top: 100px;
}
figcaption {
  font-size: .8em;
}
figcaption a:link {
  color: #9A9A9A;
  text-decoration: none;
}
figcaption a:visited {
  color: #9A9A9A;
  text-decoration: none;
}
figcaption a:hover {
  color: #444;
  text-decoration: none;  
}

.menuThing {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  width: calc(100% - 90px);
  height: 30px;
  border: none;
  outline: none;
  text-align: left;
  display: inline-block;
  padding: 13px 20px 4px 10px;
  margin: 0 30px 0 30px;
}
.menuThing:hover {
  background-color: #ddd;
}

.inner {
  text-align: left;
  vertical-align: bottom;
  font-size: .9em;
}

.spacer {
  padding: 0px;
}



/* Responsive card system */

#wrapper {
  display: grid;
  /*grid-auto-flow: dense;*/
  grid-template-columns: 1fr;
  padding-left: 20px;
  padding-right: 20px;
}
.titlerole {
  font-family:'Roboto', sans-serif;
  font-size: 10.5px;
  letter-spacing: 2.3px;
}
.intro {
  padding: 20px 40px 10px 40px;
}
@media(min-width:640px){
  #wrapper {
    grid-template-columns: 1fr 1fr;
  }
  .titleBox {
    grid-column-end: span 2;
  }
  @supports not (display: grid) {
    #wrapper {
      column-count: 1;
    }
    .card {
      -webkit-break-inside: avoid;
      break-inside: avoid;
    }
  }
}
@media(min-width:700px){
  .intro, .mainp {
    max-width: 650px; /* avoid long line lengths */
  }
}
@media(min-width:960px){
  #wrapper {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .titleBox {
    grid-column-end: span 3;
  }
}
@media(min-width:1280px){
  #wrapper {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .titleBox {
    grid-column-end: span 4;
  }
}
@media(min-width:1600px){
  #wrapper {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .titleBox {
    grid-column-end: span 5;
  }
}
@media(min-width:1920px){
  #wrapper {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
  .titleBox {
    grid-column-end: span 6;
  }
}
.card {
  /*display: inline-block;
  break-inside: avoid;
  width: 43vw;*/
  padding: 10px;
  margin: 10px 10px 30px 10px;
  background-color: #efefef; /*#eee;*/
  color: #6b6b6b;
  font-size: 1.1em;
  xborder: 1px #ddd solid;
  box-shadow: 1px 1px 1px 0 rgba(0,0,0, 0.1);
}
.boldDesc {
  color: #000;
  font-weight: 400;
}
.card img {
  max-width: 100%;
  padding-bottom: 20px;
}
.titleBox {
  color: #222;
  font-family: Oswald;
  font-weight: 100;
  padding: 80px 10px 10px 10px;
  margin: 10px;
  background-color: #f4f4f4;
  font-size: 1.5em;
  /*box-shadow: 1px 2px 14px 0 rgba(0,0,0, 0.2);*/
}
p {
  font-weight: 300;
}
a {
  text-decoration: none;
}
a:link {
  color: #222;
  border-bottom: 1px dotted;
}
a:visited {
  color: #222;
}
.topnav a:link {
  border-bottom: none;
}
/*a:visited {
  color: #999;
}*/
a:hover {
  color: #444;
  /*text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-color: #222;*/
}
.mainp {
  padding: 0px 40px 0px 40px;
}
.circular {
  /*border-top-right-radius : 25%;
  border-bottom-left-radius : 25%;*/
  /*border-radius : 50%;*/
  margin-left: 40px;
  width: 75px;
}
.pushme {
  margin-left: 40px;
  padding-top: 30px;
  padding-bottom: 70px;
}
.dfgh {
  color: #000;
  font-weight: 400;
}
.drop {
  position : relative;
  color: #000;
  font-size: 5em;
  float: left;
  font-family: Oswald;
  line-height: 60px;
  padding-top: 4px;
  padding-right: 8px;
  padding-left: 3px;
  top: .04em;
}
a.menuThing {
  border-bottom: none;
  margin-bottom: 2px;
  max-width: 650px;
}
a.menuThing:after {
  content: '>';
  color: #777;
  /*font-weight: bold;*/
  float: right;
  margin-left: 0;
  padding: 0;
}

/* Accordion system */
.contrib {
  padding: 10px;
  font-size: .6em;
  max-width: 650px;
  font-family: Roboto;
}
.accordion:after {
  content: '\002B';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 0;
  padding: 0;
}

.emph {
  font-weight: 400;
  color: #000;
}
.accordion {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  margin: 10px 30px 0 30px;
  padding: 18px 10px 18px 10px;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
  width: calc(100% - 60px);
  max-width: 650px;
}
.accordion:hover {
  background-color: #ccc;
}
.panel {
  margin: 0 30px;
  max-width: 650px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  background-color: #eee;
  border: 1px #ddd solid;
  box-shadow: 1px 2px 14px 0 rgba(0,0,0, 0.15);
}
pre {
  font-size: 0.7em;
}
a.icons {
  border-bottom: none;
  color: #bbb;
  font-size: 1.5em;
  padding-right: 20px;
}
a.icons:hover {
  color: #444;
}
.poj {
  width: 2em;
  display: inline-block;
  padding-bottom: 10px;
}
#smlinks {
  margin-left: 40px;
  margin-right: 40px;
}
#logo {
  width: 167px;
}