#moduleArchitecture-header {
  height: 650px;
  z-index: 5;
  background: #005cb9;
}
#moduleArchitecture-header .content {
  height: 100%;
}
@media screen and (max-width: 1200px) and (min-height: 700px) {
  #moduleArchitecture-header .content {
    background-size: 100% auto;
  }
}
@media screen and (max-height: 700px) and (min-height: 601px) and (min-width: 1020px) {
  #moduleArchitecture-header .content {
    background-size: auto calc(100% - 190px);
  }
}
@media screen and (max-height: 700px) and (min-height: 601px) and (max-width: 1019px) {
  #moduleArchitecture-header .content {
    background-size: 100% auto;
  }
}
@media screen and (max-height: 600px) {
  #moduleArchitecture-header .content {
    background-size: auto calc(100% - 190px);
  }
}
#moduleArchitecture-header .content .videoHeader {
  margin-top: -90px;
}
#moduleArchitecture-header .content .videoHeader h2 {
  font-weight: bold;
}
#epcTimeline {
  height: 6400px;
  z-index: 4;
}
.epcContainer {
  height: 100%;
  width: 100%;
  max-width: 1200px;
  padding-top: 90px;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.epcContainer .epcContentInfo {
  width: 100%;
  height: 100px;
  position: relative;
  display: block;
  margin: 0 auto 20px;
}
.epcContainer .epcContentInfo .epcSectionHeaders {
  width: 45%;
  width: calc(50% - 50px);
  height: 100%;
  position: relative;
  vertical-align: top;
  display: inline-block;
  padding: 0 3% 0 50px;
  float: left;
}
.epcContainer .epcContentInfo .epcSectionHeaders h1 {
  font-size: 32px;
  line-height: 36px;
  font-weight: normal;
  margin: 0 0 0 -6px;
  padding: 0 6px;
  display: block;
  position: absolute;
  left: 50px;
  top: 29px;
}
.epcContainer .epcContentInfo .epcSectionHeaders h1:before {
  height: 100%;
  width: 6px;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/bracket-left-top.svg) no-repeat 0 0, url(../img/bracket-left-bottom.svg) no-repeat 0 100%;
  background-size: 100% auto;
}
.epcContainer .epcContentInfo .epcSectionHeaders h1:after {
  height: 100%;
  width: 6px;
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  background: url(../img/bracket-right-top.svg) no-repeat 0 0, url(../img/bracket-right-bottom.svg) no-repeat 0 100%;
  background-size: 100% auto;
}
@media screen and (max-width: 930px) {
  .epcContainer .epcContentInfo .epcSectionHeaders h1[data-epcHeader='1'] {
    width: 190px;
  }
}
@media screen and (max-width: 930px) {
  .epcContainer .epcContentInfo .epcSectionHeaders h1[data-epcHeader='2'] {
    width: 218px;
  }
}
@media screen and (max-width: 1005px) {
  .epcContainer .epcContentInfo .epcSectionHeaders h1[data-epcHeader='3'] {
    width: 260px;
  }
}
.epcContainer .epcContentInfo .calendar {
  height: 100px;
  width: 100px;
  position: relative;
  vertical-align: top;
  display: inline-block;
  float: left;
  padding-top: 39px;
  background: url(../img/epc-timeline/calendar.svg) no-repeat 50% 50%;
}
.epcContainer .epcContentInfo .calendar .dateHolder {
  width: 80px;
  height: 54px;
  margin: 0 auto;
  display: block;
  overflow: hidden;
  position: relative;
}
.epcContainer .epcContentInfo .calendar .dateHolder span {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  text-align: center;
  color: #ffffff;
  line-height: 54px;
  font-size: 46px;
  font-weight: 700;
}
.epcContainer .epcContentInfo .epcSectionText {
  width: 45%;
  width: calc(50% - 50px);
  min-height: 100%;
  position: relative;
  vertical-align: top;
  display: inline-block;
  float: left;
}
.epcContainer .epcContentInfo .epcSectionText .textContainer {
  width: 100%;
  padding: 0 50px 0 8%;
  position: absolute;
  left: 0;
  top: 29px;
}
.epcContainer .epcContentInfo .epcSectionText .textContainer p {
  font-size: 18px;
  line-height: 20px;
  margin: 0;
}
.epcContainer .epcContentInfo .epcSectionText .textContainer ul {
  margin: 6px 0 0;
  padding: 0;
}
.epcContainer .epcContentInfo .epcSectionText .textContainer ul li {
  font-size: 18px;
  line-height: 22px;
  margin: 0;
  position: relative;
  display: block;
  padding-left: 10px;
}
.epcContainer .epcContentInfo .epcSectionText .textContainer ul li:before {
  height: 4px;
  width: 4px;
  content: '';
  background: #575757;
  border-radius: 2px;
  position: absolute;
  left: 0;
  top: 9px;
}
.epcContainer .epcContent {
  width: 100%;
  position: relative;
  display: block;
  margin: 0 auto;
}
@media screen and (max-height: 700px) {
  .epcContainer .epcContent {
    height: 80%;
    height: -webkit-calc(100% - 190px);
    height: calc(100% - 190px);
  }
}
.epcContainer .epcContent .hiddenEPCImages {
  width: 100%;
  position: relative;
  display: block;
  visibility: hidden;
  margin: 0 auto;
}
@media screen and (max-height: 790px) {
  .epcContainer .epcContent .hiddenEPCImages {
    max-width: 1000px;
  }
}
@media screen and (max-height: 700px) {
  .epcContainer .epcContent .hiddenEPCImages {
    display: none;
  }
}
.epcContainer .epcContent .hiddenEPCImages img {
  width: 50%;
  float: left;
}
.epcContainer .epcContent .epcSection {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-height: 790px) {
  .epcContainer .epcContent .epcSection {
    max-width: 1000px;
  }
}
.epcContainer .epcContent .epcSection img {
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
}
.epcContainer .epcContent .epcSection img.epcImage {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.epcContainer .epcContent .epcSection.chartSection .leftSection,
.epcContainer .epcContent .epcSection.chartSection .rightSection {
  background: #ffffff;
}
.epcContainer .epcContent .epcSection .epcChart {
  height: 100%;
  width: 100%;
  position: relative;
}
.epcContainer .epcContent .epcSection .epcChart img {
  width: auto;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
}
.epcContainer .epcContent .epcSection .week26Slideout {
  height: 104px;
  width: 260px;
  position: absolute;
  bottom: 10%;
  overflow: hidden;
}
.epcContainer .epcContent .epcSection .leftSection {
  height: 100%;
  width: 50%;
  float: left;
  position: relative;
}
.epcContainer .epcContent .epcSection .leftSection .epcChart img {
  right: 50px;
}
.epcContainer .epcContent .epcSection .leftSection .week26Slideout {
  right: 2px;
}
.epcContainer .epcContent .epcSection .rightSection {
  height: 100%;
  width: 50%;
  float: right;
  position: relative;
}
.epcContainer .epcContent .epcSection .rightSection .epcChart img {
  left: 50px;
}
.epcContainer .epcContent .epcSection .rightSection .week26Slideout {
  left: 0;
}
h1.assemblyHeader {
  width: 100%;
  display: block;
  text-align: center;
  position: absolute;
  bottom: 50%;
  margin-bottom: 52px;
  font-size: 38px;
  line-height: 41px;
  font-weight: 700;
  color: #ef7700;
}
.epcHeader {
  height: 100%;
  width: 100%;
  max-width: 1200px;
  position: absolute;
  margin: 0 auto -41px;
  left: 0;
  right: 0;
  bottom: 50%;
  z-index: 1;
}
.epcHeader h1 {
  font-size: 38px;
  line-height: 41px;
  font-weight: normal;
  position: relative;
  margin: 0;
}
.epcHeader h1 span {
  font-weight: 700;
}
.epcHeader .drawLineTop {
  height: 100%;
  width: 2px;
  position: absolute;
  bottom: 46px;
  left: 50%;
  margin-left: -2px;
  background: #575757;
}
.epcHeader .drawLineTop:before,
.epcHeader .drawLineTop:after {
  height: 2px;
  width: 2px;
  content: '';
  background: #575757;
  border-radius: 1px;
  position: absolute;
  left: 0;
}
.epcHeader .drawLineTop:before {
  top: -1px;
}
.epcHeader .drawLineTop:after {
  bottom: -1px;
}
.epcHeader .epcEnclosureHeader {
  width: 100%;
  height: 41px;
  text-align: center;
  position: absolute;
  bottom: 0;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim {
  width: 240px;
  height: 41px;
  position: relative;
  display: inline-block;
  vertical-align: top;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim svg {
  height: 41px;
  width: 240px;
  position: absolute;
  top: 0;
  left: 0;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim svg line,
.epcHeader .epcEnclosureHeader .epcHeaderAnim svg path {
  fill: none;
  stroke: #DCDCDC;
  stroke-miterlimit: 10;
  stroke-width: 1.5;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim svg path {
  stroke-dasharray: 265;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim.leftEPC h1 {
  text-align: right;
}
.epcHeader .epcEnclosureHeader .epcHeaderAnim.rightEPC h1 {
  text-align: left;
}
.epcHeader .epcEnclosureHeader .lineBox {
  height: 41px;
  width: 12px;
  position: relative;
  display: inline-block;
  vertical-align: top;
  background: rgba(87, 87, 87, 0.8);
}
.epcHeader .epcEnclosureHeader .lineBox span {
  height: 16px;
  width: 16px;
  border: 4px solid #ffffff;
  border-radius: 8px;
  position: absolute;
  background: #575757;
}
.epcHeader .epcEnclosureHeader .lineBox.leftBox {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  margin-left: 3px;
}
.epcHeader .epcEnclosureHeader .lineBox.leftBox span {
  top: 11px;
  right: -8px;
}
.epcHeader .epcEnclosureHeader .lineBox.rightBox {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  margin-right: 3px;
}
.epcHeader .epcEnclosureHeader .lineBox.rightBox span {
  top: 14px;
  left: -8px;
}
.epcHeader .epcEnclosureHeader .drawLine {
  height: 2px;
  width: 34px;
  min-width: 34px;
  background: #575757;
  display: inline-block;
  vertical-align: top;
  position: relative;
}
.epcHeader .epcEnclosureHeader .drawLine:before,
.epcHeader .epcEnclosureHeader .drawLine:after {
  height: 2px;
  width: 2px;
  content: '';
  background: #575757;
  border-radius: 1px;
  position: absolute;
  top: 0;
}
.epcHeader .epcEnclosureHeader .drawLine:before {
  left: -1px;
}
.epcHeader .epcEnclosureHeader .drawLine:after {
  right: -1px;
}
.epcHeader .epcEnclosureHeader .drawLine.lineLeft {
  margin-left: 12px;
  margin-top: 18px;
  margin-right: 5px;
}
.epcHeader .epcEnclosureHeader .drawLine.lineRight {
  margin-left: 5px;
  margin-top: 21px;
  margin-right: 12px;
}
.epcHeader .epcEnclosureHeader img {
  display: inline-block;
  vertical-align: top;
}
