@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v34/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVc.ttf) format('truetype');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v34/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVc.ttf) format('truetype');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v34/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0B4gaVc.ttf) format('truetype');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v34/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1x4gaVc.ttf) format('truetype');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v34/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVc.ttf) format('truetype');
}
/* -----------------  basics  ----------------- */
html {
  position: relative;
  min-height: 100%;
  height: auto!important;
}
body {
  margin: 0 0 75px;
  font-family: 'Open Sans', 'Arial', sans-serif;
  position: static!important;
  min-height: 0!important;
  box-sizing: border-box;
  background-color: #f4f8fb;
}
/* -----------------  header area  ----------------- */
div#header {
  min-height: 180px;
  background-color: white;
  background-image: url("banner.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-origin: center;
  color: white;
}
div#header p.title {
  font-size: 32px;
  font-weight: bold;
  margin-top: -4px;
  margin-bottom: -6px;
  padding: 0;
}
div#header p.subtitle {
  margin-top: 0px;
  font-size: 20px;
}
div#header .links {
  clear: both;
  padding-top: 25px;
  text-align: right;
  font-family: sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
}
div#header .links a {
  color: white;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  margin-left: 10px;
  margin-right: 10px;
}
div#header .links a:hover {
  border-bottom: 2px solid orange;
  color: orange;
}
div#header_inner {
  width: calc(100% - 10px);
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  padding-left: 5px;
  padding-right: 5px;
  padding-top: 55px;
}
div#header_logo {
  float: left;
  margin-right: 20px;
}
div#header_logo_small {
  float: left;
  padding-top: 12px;
  padding-bottom: 8px;
  padding-left: 10px;
  box-sizing: content-box;
}
div#header_logo_small a {
  text-decoration: none;
  color: #808080;
  font-size: 18px;
}
/* -----------------  top bar below the header  ----------------- */
div#topbar {
  position: relative;
  width: 100%;
  color: #808080;
  background-color: #090a0b;
}
div#topbar_inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}
div#topbar_inner p.title {
  float: left;
  margin-top: 18px;
}
div#topbar_inner div.links {
  margin: 0;
  line-height: 1.2em;
  margin-top: 7px;
  margin-bottom: 5px;
  margin-left: 30px;
  padding-top: 15px;
  padding-bottom: 15px;
  float: left;
}
div#topbar_inner div.links a {
  color: #909090;
  text-decoration: none;
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  text-transform: uppercase;
  font-size: 14px;
}
div#topbar_inner div.links a:hover {
  color: white;
}
@media only screen and (max-width: 479px) {
  div#topbar_inner div.links {
    float: left;
  }
}
/* -----------------  footer  ----------------- */
div#footer {
  position: absolute;
  left: 0;
  bottom: 0;
  min-height: 75px;
  width: 100%;
  color: #808080;
  font-family: 'Open Sans', 'Arial', sans-serif;
  font-size: 10pt;
}
div#footer a {
  text-transform: uppercase;
}
div#footer_inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 5px;
  padding-right: 5px;
  border-top: 1px solid #c0c0c0;
  text-align: center;
}
div#footer_inner div.links {
  margin: 0;
  line-height: 1.2em;
  margin-top: 5px;
  margin-bottom: 5px;
}
div#footer_inner div.links a {
  color: #909090;
  text-decoration: none;
}
div#footer_inner div.links a:hover {
  color: black;
}
/* -----------------  main content  ----------------- */
div#main {
  height: auto;
  overflow: auto;
}
div.content {
  box-sizing: border-box;
  width: 100%;
  max-width: 1000px;
  font-family: 'Open Sans', 'Arial', sans-serif;
  color: #404040;
  margin: 0 auto;
  margin-top: 20px;
  position: relative;
  padding-bottom: 50px;
}
div.content a {
  color: #404040;
}
@media only screen and (max-width: 979px) {
  div.content {
    padding-left: 20px;
    padding-right: 20px;
  }
}
/* -----------------  project links  ----------------- */
div.projectLinks {
  text-align: center;
}
div.projectLinks a {
  font-family: 'Open Sans', 'Arial', sans-serif;
  color: #909090;
  text-decoration: none;
  padding-left: 10px;
  padding-right: 10px;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: normal;
  display: inline-block;
}
div.projectLinks a:hover {
  color: black;
}
div.projectLinks ul {
  margin: 0;
  padding: 0;
}
div.projectLinks li {
  display: inline-block;
  list-style: none;
  padding: 0;
  margin: 0;
}
div.projectLinks li ul {
  display: none;
  padding-top: 5px;
  padding-bottom: 5px;
  border: solid 1px #808080;
  background: white;
  box-shadow: 0px 0px 18px #888888;
}
div.projectLinks li ul li {
  display: block;
  text-align: left;
  padding-left: 10px;
  padding-right: 10px;
}
div.projectLinks li ul li a {
  text-transform: none;
}
div.projectLinks li:hover ul {
  display: block;
  position: absolute;
}
div.projectLinks li ul li:hover {
  background: #F0F0F0;
}
div.projectLinks li:hover {
  color: white;
}
/* -----------------  document formatting  ----------------- */
div.document div.banner {
  width: 1000px;
  height: 300px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-origin: center;
}
@media only screen and (min-width: 980px) {
  div.document > h1,
  div.document > h2,
  div.document > h3,
  div.document > h4,
  div.document > pre,
  div.document > ul,
  div.document > ol,
  div.document > dl,
  div.document > div.grid table,
  div.document > p {
    margin-left: 120px;
    margin-right: 120px;
  }
}
div.document pre {
  font-size: 16px;
}
div.document li {
  line-height: 1.5em;
}
div.document p {
  line-height: 1.5em;
}
div.document code {
  background-color: #f0f0f0;
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
div.document pre code {
  background: none;
}
div.document p,
div.document li {
  font-size: 18px;
}
@media only screen and (min-width: 768px) {
  div.document h1 {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 0px;
    font-size: 30pt;
    font-weight: bold;
    color: #404040;
    letter-spacing: -3px;
  }
}
@media only screen and (max-width: 767px) {
  div.document {
    word-wrap: break-word;
  }
  div.document h1 {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 0px;
    font-size: 26pt;
    font-weight: bold;
    color: #404040;
    letter-spacing: -2px;
  }
}
div.document h1 a {
  text-decoration: none;
}
div.document h2.subtitle {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 50px;
  font-size: 20pt;
  font-weight: normal;
  color: #404040;
  letter-spacing: -1px;
  text-transform: none;
}
div.document h2 {
  margin-top: 70px;
  margin-bottom: 0px;
  font-size: 22px;
  font-weight: bold;
  color: #404040;
  letter-spacing: -1px;
}
div.document h2 code {
  font-size: 22px;
}
div.document h3 code {
  font-size: 18px;
}
div.document pre {
  background-color: #f6f8fa;
  padding: 10px;
  margin-top: 30px;
  margin-bottom: 30px;
  overflow-x: auto;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
}
div.document div.figure {
  text-align: center;
}
@media only screen and (min-width: 980px) {
  div.document div.figure {
    margin-left: 120px;
    margin-right: 120px;
  }
}
div.document div.figure > img {
  max-width: 100%;
  height: auto;
}
h3 {
  margin-top: 40px;
  margin-bottom: -10px;
}
time {
  font-size: 12px;
  color: #c0c0c0;
}
div.document p.articleContinuation {
  font-family: 'Open Sans', 'Arial', sans-serif;
  text-align: center;
  font-size: 12pt;
  color: #808080;
  margin-top: 40px;
  margin-bottom: 40px;
}
/* =================  Home Page Blocks ================= */
div.box {
  margin-bottom: 70px;
  background-color: white;
  border-radius: 8px;
  box-shadow: 0px 0px 50px #ddd;
}
div.box div.textArea {
  padding: 0 20px 20px 20px;
}
div.box div.textArea h2 {
  font-size: 1.3em;
}
div.box div.bannerClipper {
  width: 100%;
  margin-bottom: 20px;
  border: solid 1px silver;
  position: relative;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
}
div.box div.banner {
  width: 100%;
  height: 100%;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-origin: center;
}
div.box div.banner:hover {
  transform: scale(1.05);
}
a.hiddenLink {
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  div.homeBlocks {
    width: 100%;
    min-height: 384px;
    position: relative;
    /* -----------------  main block at top ----------------- */
    /* -----------------  following blocks in rows of three ----------------- */
  }
  div.homeBlocks div.box:nth-child(1) {
    width: 100%;
    min-height: 354px;
    position: relative;
  }
  div.homeBlocks div.box:nth-child(1) div.bannerClipper {
    width: calc((100% - 40px)*2/3 + 20px);
    height: 354px;
    float: left;
    margin-right: 20px;
    border: solid 1px silver;
    border-radius: 8px 0 0 8px;
    padding: 0;
  }
  div.homeBlocks div.box:nth-child(1) div.textArea {
    padding: 5px 20px 20px 0;
  }
  div.homeBlocks div.box:nth-child(n+2) {
    width: calc((100% - 40px)/3);
    position: relative;
    float: left;
    margin-right: 20px;
  }
  div.homeBlocks div.box:nth-child(3n-1) {
    clear: both;
  }
  div.homeBlocks div.box:nth-child(n+2) {
    margin-right: 20px;
  }
  div.homeBlocks div.box:nth-child(3n+1) {
    margin-right: 0px;
  }
  div.homeBlocks div.box:nth-child(n+2) div.bannerClipper {
    height: 175px;
  }
  div.homeBlocks div.box:nth-child(n+2) > h2 {
    margin-top: 0;
    font-size: 28px;
  }
  div.homeBlocks div.box:nth-child(n+2) > p {
    margin-top: 5px;
  }
  div.relatedPages {
    width: 100%;
    min-height: 384px;
    position: relative;
    margin-top: 60px;
    padding-top: 40px;
    border-top: solid 1px silver;
    /* -----------------  following blocks in rows of three ----------------- */
  }
  div.relatedPages > h2 {
    text-align: center;
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 40px;
  }
  div.relatedPages div.box {
    width: calc((100% - 40px)/3);
    position: relative;
    float: left;
    margin-right: 20px;
  }
  div.relatedPages div.box:nth-child(3n+1) {
    margin-right: 0px;
  }
  div.relatedPages div.box div.bannerClipper {
    height: 175px;
  }
  div.relatedPages div.box > h2 {
    margin-top: 0;
    font-size: 28px;
  }
  div.relatedPages div.box > p {
    margin-top: 5px;
  }
}
@media only screen and (max-width: 767px) {
  div.homeBlocks {
    width: 100%;
    min-height: 384px;
    position: relative;
  }
  div.homeBlocks div.box {
    width: 100%;
    position: relative;
    margin-right: 20px;
    margin-top: 40px;
  }
  div.homeBlocks div.box:last-child {
    border-bottom: none;
  }
  div.homeBlocks div.box div.bannerClipper {
    height: 125px;
  }
  div.homeBlocks div.box > h2 {
    margin-top: 0;
    font-size: 28px;
  }
  div.homeBlocks div.box > p {
    margin-top: 5px;
  }
  div.relatedPages {
    width: 100%;
    min-height: 384px;
    position: relative;
    margin-top: 60px;
    padding-top: 60px;
    border-top: solid 1px silver;
  }
  div.relatedPages h2 {
    text-align: center;
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 40px;
  }
  div.relatedPages div.box {
    width: 100%;
    position: relative;
    margin-right: 20px;
    margin-top: 40px;
    border-bottom: solid 1px silver;
  }
  div.relatedPages div.box:last-child {
    border-bottom: none;
  }
  div.relatedPages div.box div.bannerClipper {
    height: 125px;
  }
  div.relatedPages div.box > h2 {
    margin-top: 0;
    font-size: 28px;
  }
  div.relatedPages div.box > p {
    margin-top: 5px;
  }
}
/* ----------------- Misc -----------------*/
div.pageBanner > img {
  width: 100%;
  height: 364px;
  margin-bottom: 20px;
  object-fit: cover;
  border: solid 1px silver;
}
div.clear {
  clear: both;
}
/* ----------------- grid tables -----------------*/
div.grid {
  position: relative;
  width: calc(100% - 240px);
}
div.grid table,
table.grid {
  border-color: silver;
  border-width: 0 0 1px 1px;
  border-style: solid;
  border-collapse: collapse;
  width: 100%;
}
div.grid table th,
table.grid th,
div.grid table td,
table.grid td {
  border-color: silver;
  border-width: 1px;
  border-style: solid;
  margin: 0;
  padding: 4px;
}
div.grid table th,
table.grid th {
  background: #f8f8f8;
  text-align: left;
  font-weight: normal;
}
div.video {
  text-align: center;
}
div.subscribe-form h2 {
  text-align: center;
}

/*# sourceMappingURL=styles.css.map */