html, body {
  height: 100%;
  margin: 0 auto;
  padding: 0;
  background-color: #afafaf;
  color: #afafaf;
}

@font-face {
  font-family: CMUConcreteRoman;
  src: url("cmunorm.tff");
}

@font-face {
  font-family: CMUConcreteBold;
  src: url("cmunobx.tff");
}

@font-face {
  font-family: CMUSansSerif;
  src: url("cmunss.ttf");
}

@font-face {
  font-family: CMUSansSerifBold;
  src: url("cmunsx.ttf");
}

@font-face {
  font-family: CMUSansSerifBoldOblique;
  src: url("cmunso.ttf");
}

@font-face {
  font-family: RedHatDisplay;
  src: url("RedHatDisplay-VariableFont_wght.ttf");
}

a:link {
  text-decoration: none;
  color: inherit;
}

a:visited {
  text-decoration: none;
  color: inherit;
}

a:hover {
  text-decoration: none;
  color: inherit;
}

a:active {
  text-decoration: none;
  color: inherit;
}

h5 {
  display: block;
  font-size: .9em;
  margin-top: 0.67em;
  margin-bottom: 0.67em;
  margin-left: 0;
  margin-right: 0;
  font-weight: normal;
}

h6 {
  display: block;
  font-size: .7em;
  margin-top: 0.67em;
  margin-bottom: 0.67em;
  margin-left: 0;
  margin-right: 0;
  font-weight: normal;
}

.banner {
  width: 100%;
  padding-top: 0;
  background-color: #0f0f0f;
  color: #dfdfdf;
  width: 100%;
  min-width: 1200px;
}

.banner-content {
  font-family: CMUSansSerifBold;
  font-size: 32pt;
  width: 1200px;
  margin: 0 auto;
  padding: 24px 0 20px 0;
}

.content-wrapper {
  width: 100%;
  margin: 0 auto;
  vertical-align: top;
  padding-top: 0px;
  border-width: 0px;
  color: #000000;
  background-color: #5a5a5a;
}

.content {
  width: 1200px;
  margin: 0 auto;
  background-color: #373737;
}

.main-image {
  width: 100%;
}

.image-section {
  width: 100%;
  margin: 0 0 -5px 0;
  padding: 0px;
  display: block;
}

.black-section {
  background-color: #0f0f0f;
  margin: 0;
  color: #d2d2d2;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  height: 200px;
  padding: 50px 30px 70px 30px;
}

.grey-section {
  background-color: #999999;
  color: #0f0f0f;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 50px 30px 70px 30px;
}

.ultraviolet-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #20124d;
  color: #ffffff;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.blue-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #1c4587;
  color: #ffffff;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.green-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #38761d;
  color: #ffffff;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.yellow-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f1c232;
  color: #000000;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.orange-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #e69138;
  color: #000000;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.pink-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #e06666;
  color: #000000;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.black-subsection {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #0f0f0f;
  color: #d2d2d2;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 160px;
}

.grey-subsection {
  background-color: #999999;
  color: #0f0f0f;
  text-align: center;
  font-family: RedHatDisplay;
  font-size: 24px;
  align-items: center;
  position: relative;
  padding: 10px 10px 30px 10px;
  height: 100px;
}

.subsection-image {
  flex: 1;
  padding-top: 30px;
}

.subsection-text {
  flex: 5;
  text-align: left;
}

.software-stack-row {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: RedHatDisplay;
  align-items: center;
  position: relative;
  padding: 50px 0px 50px 0px;
}

.software-stack-cell
{
  flex: 1;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: .70em;
}

.menu-bar-wrapper {
  font-family: RedHatDisplay;
  font-size: 1.2em;
  background-color: #999999;
  color: #0f0f0f;
  padding: 0 0 0 0;
  border-width: 0px;
  height: 36px;
}

.menu-bar {
  margin: 0 auto;
  width: 1200px;
}

.menu-bar-item {
  float: right;
  height: 26px;
  vertical-align: middle;
  padding: 5px 15px 5px 15px;
  border-style: solid;
  border-color: #7d7d7d;
  border-width: 0 0 0 1px;
}

.menu-bar-item:hover {
  float: right;
  height: 26px;
  vertical-align: middle;
  padding: 5px 15px 5px 15px;
  background-color: #7d7d7d;
  border-style: solid;
  border-color: #7d7d7d;
  border-width: 0 0 0 1px;
}

.footer-bar-wrapper {
  font-family: RedHatDisplay;
  font-size: 1.2em;
  background-color: #999999;
  color: #0f0f0f;
  height: 26px;
  padding: 5px 0px 5px 0px;
  width: 100%;
  min-width: 1200px;
}

.footer-bar {
  width: 1200px;
  text-align: right;
  margin: 0 auto;
}

.footer-content-wrapper {
  font-family: RedHatDisplay;
  font-size: 0.9em;
  background-color: #0f0f0f;
  color: #d2d2d2;
  vertical-align: middle;
  padding: 0px 0px 0px 0px;
  width: 100%;
  min-width: 1200px;
}

.footer-content {
  width: 1200px;
  text-align: left;
  padding: 40px 20px 40px 20px;
  margin: 0 auto;
  box-sizing: border-box;
}
