.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal; }

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal; }

* {
  padding: 0;
  margin: 0; }

a {
  color: #DA291C;
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

html {
  position: relative;
  font-size: 20px;
  font-family: "Poppins", sans-serif;
  background-color: #2e2e2e;
  max-width: 100rem; }

section {
  max-width: 80rem;
  margin: 0 auto; }

img {
  display: block; }

.noListDec {
  list-style: none; }

#pageHeader {
  width: 100%;
  background-color: #eeeeee;
  padding-top: 1rem; }
  #pageHeader #mainLogo {
    position: relative;
    left: -1rem;
    width: 90%;
    max-width: 12rem;
    margin: 1rem auto .5rem auto;
    padding: 1rem 0; }
  #pageHeader nav {
    position: fixed;
    bottom: 0;
    background-color: #DA291C;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: stretch;
    border-top: #eeeeee 0.125rem solid;
    z-index: 1000;
    overflow: hidden; }
    @media screen and (min-width: 52rem) {
      #pageHeader nav {
        justify-content: center;
        align-items: center;
        position: relative; } }
    #pageHeader nav a {
      display: flex;
      align-items: center;
      padding: .5rem;
      color: #eeeeee;
      flex: auto;
      /* flex-grow: 1, flex-shrink: 1, flex-basis: auto */
      text-align: center;
      text-decoration: none;
      display: flex;
      align-items: center;
      justify-content: center;
      border-right: #eeeeee solid 0.125rem;
      width: 33%; }
      @media screen and (min-width: 52rem) {
        #pageHeader nav a {
          max-width: 8rem; }
          #pageHeader nav a:first-child {
            border-left: #eeeeee solid 0.125rem; } }
      #pageHeader nav a:last-child {
        border: none; }
        @media screen and (min-width: 52rem) {
          #pageHeader nav a:last-child {
            border-right: #eeeeee solid 0.125rem; } }
  #pageHeader #socialIcons {
    vertical-align: middle;
    text-align: center;
    margin: .75rem .75rem 0 .75rem; }
    @media screen and (min-width: 52rem) {
      #pageHeader #socialIcons {
        position: absolute;
        top: 0;
        right: 0; } }
    #pageHeader #socialIcons a {
      display: block;
      margin: 0 .5rem; }
    #pageHeader #socialIcons img {
      display: inline-block;
      width: 1.5rem;
      margin: .25rem; }
    #pageHeader #socialIcons a.socialIcon {
      display: inline-block;
      width: 1.5rem;
      margin: .25rem;
      vertical-align: top;
      text-align: center; }
      #pageHeader #socialIcons a.socialIcon img {
        margin: 0; }

.pageBanner {
  position: relative;
  width: 100%;
  padding: 1rem 0;
  background-image: url("../img/banner.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top right;
  min-height: 7rem; }
  @media screen and (min-width: 52rem) {
    .pageBanner {
      min-height: 26rem; } }
  .pageBanner #callToAction {
    display: block;
    text-align: center;
    margin: .5rem auto;
    background-color: rgba(255, 255, 255, 0.9);
    padding: .5rem;
    border-radius: .5rem;
    width: 90%;
    max-width: 15rem; }
    @media screen and (min-width: 52rem) {
      .pageBanner #callToAction {
        margin: 4rem;
        padding: 1rem; } }
    .pageBanner #callToAction p {
      display: none; }
      @media screen and (min-width: 52rem) {
        .pageBanner #callToAction p {
          display: block; } }
    .pageBanner #callToAction a#fullbayButton {
      display: inline-block;
      margin: .5 auto;
      font-weight: bold;
      padding: .5rem;
      background-color: #000E62;
      border-radius: .5rem;
      color: #eeeeee;
      border: solid #eeeeee 0.125rem; }
      @media screen and (min-width: 52rem) {
        .pageBanner #callToAction a#fullbayButton {
          margin: 1rem auto; } }

#servicesList {
  text-align: center;
  margin: 1.5rem auto;
  width: 90%;
  margin: 4rem auto; }
  #servicesList h1 {
    margin: 1.5rem auto .5rem auto;
    color: #DA291C;
    background-color: #eeeeee;
    padding: .5rem 0;
    border-radius: 1rem; }
  @media screen and (min-width: 52rem) {
    #servicesList ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: center; } }
  @media screen and (min-width: 70rem) {
    #servicesList ul {
      justify-content: center; } }
  #servicesList ul li {
    position: relative;
    list-style: none;
    margin: 1rem auto;
    border: solid #eeeeee 0.125rem;
    border-radius: 1rem;
    overflow: hidden; }
    @media screen and (min-width: 52rem) {
      #servicesList ul li {
        flex-basis: 44%;
        margin: 2.5%; } }
    @media screen and (min-width: 70rem) {
      #servicesList ul li {
        flex-basis: 30%;
        margin: 1%; } }
    #servicesList ul li h2 {
      font-size: 1.25rem;
      position: absolute;
      top: 0;
      padding: .25rem 0;
      width: 100%;
      color: #000E62;
      background-color: rgba(255, 255, 255, 0.9); }
    #servicesList ul li a {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      background-color: rgba(255, 255, 255, 0.9);
      display: block;
      text-align: center;
      padding: .5rem 0; }

#partsInquiry {
  text-align: center;
  margin: 1.5rem auto;
  width: 90%; }
  #partsInquiry h1 {
    margin: 1.5rem auto .5rem auto;
    color: #DA291C;
    background-color: #eeeeee;
    padding: .5rem 0;
    border-radius: 1rem; }
  #partsInquiry #partsForm {
    width: 90%;
    max-width: 20rem;
    margin: 1rem auto;
    background-color: #eeeeee;
    border-radius: 1rem;
    padding: .5rem; }
    #partsInquiry #partsForm .inputGroup label {
      display: block;
      padding: .25rem;
      text-align: left; }
    #partsInquiry #partsForm .inputGroup input {
      display: block;
      line-height: 1.2rem;
      width: 90%;
      margin-left: .25rem;
      padding: .25rem;
      font-size: 1rem;
      border-radius: .25rem; }
    #partsInquiry #partsForm .inputGroup textarea {
      resize: none;
      display: block;
      line-height: 1.2rem;
      width: 90%;
      margin-left: .25rem;
      padding: .25rem;
      font-size: 1rem;
      min-height: 4rem;
      border-radius: .25rem; }
    #partsInquiry #partsForm button {
      background-color: #000E62;
      color: #eeeeee;
      font-size: 1rem;
      padding: .5rem;
      border: solid #eeeeee 0.125rem;
      border-radius: .5rem;
      margin: 1rem auto; }

#scfeBanner {
  position: relative;
  text-align: center;
  background-image: url(../img/apparatus.jpg);
  background-position: 0;
  background-repeat: no-repeat;
  background-size: cover; }
  #scfeBanner .overlay {
    padding: 2rem 0;
    background-color: rgba(255, 255, 255, 0.9); }
    #scfeBanner .overlay h1 {
      position: relative;
      z-index: 10; }
      @media screen and (min-width: 52rem) {
        #scfeBanner .overlay h1 {
          font-size: 2rem; } }
    #scfeBanner .overlay img {
      width: 80%;
      max-width: 20rem;
      margin: .5rem auto;
      z-index: 1;
      position: relative; }
      @media screen and (min-width: 52rem) {
        #scfeBanner .overlay img {
          max-height: 8rem; } }
    #scfeBanner .overlay ul {
      position: relative;
      margin: 1rem; }
      #scfeBanner .overlay ul li {
        list-style: none; }

.classicPageList {
  position: relative;
  width: 95%;
  margin: 2rem auto 1rem auto;
  font-size: 1rem; }
  .classicPageList h2 {
    text-align: center; }
  .classicPageList li {
    position: relative;
    width: 100%;
    margin: 1rem auto;
    box-shadow: 0.125em 0.125em 1em 0.25em rgba(0, 0, 0, 0.3);
    list-style: none; }
    @media screen and (min-width: 52rem) {
      .classicPageList li {
        margin: 3rem 0;
        position: relative;
        width: 100%;
        list-style: none;
        box-shadow: none; }
        .classicPageList li:nth-child(even) {
          text-align: right; }
          .classicPageList li:nth-child(even) ul {
            border-left: 0.125rem #DA291C solid;
            left: 0; }
            .classicPageList li:nth-child(even) ul li {
              text-align: left; }
              .classicPageList li:nth-child(even) ul li p {
                text-align: left;
                margin: .5rem 0 0 -1rem; }
        .classicPageList li:nth-child(odd) ul {
          border-right: 0.125rem #DA291C solid;
          right: 0; }
          .classicPageList li:nth-child(odd) ul li {
            text-align: left; } }
    .classicPageList li img {
      display: block;
      width: 100%; }
      @media screen and (min-width: 52rem) {
        .classicPageList li img {
          display: inline-block;
          width: 80%; } }
      .classicPageList li img.badge {
        display: none; }
        @media screen and (min-width: 52rem) {
          .classicPageList li img.badge {
            display: none;
            position: absolute;
            width: 15%;
            bottom: .5rem;
            left: .5rem; } }
    .classicPageList li ul {
      position: relative;
      display: block;
      max-width: 100%;
      border-top: 0.125rem #DA291C solid;
      padding: .5rem;
      background-color: #eeeeee; }
      @media screen and (min-width: 52rem) {
        .classicPageList li ul {
          border-top: none;
          position: absolute;
          z-index: 101;
          width: 30%;
          top: 10%;
          bottom: 10%;
          padding: 0 2rem;
          box-shadow: 0.125em 0.125em 1em 0.25em rgba(0, 0, 0, 0.3);
          overflow-y: auto; } }
      .classicPageList li ul h2, .classicPageList li ul h3 {
        position: relative;
        font-size: 1.5rem;
        margin: .5rem; }
        @media screen and (min-width: 52rem) {
          .classicPageList li ul h2, .classicPageList li ul h3 {
            position: relative;
            font-size: 1.2rem;
            padding: .5rem 0;
            text-align: left;
            left: -1.1rem;
            text-shadow: none;
            color: #000E62; } }
      .classicPageList li ul li {
        width: 85%;
        margin: .25rem auto;
        list-style-type: disc;
        box-shadow: none; }
      @media screen and (min-width: 52rem) {
        .classicPageList li ul {
          list-style: disc;
          text-align: left;
          margin: .25rem 0; } }
      .classicPageList li ul a {
        color: #DA291C;
        text-decoration: none;
        text-align: right;
        display: block;
        width: 85%;
        margin: .5rem auto; }
        @media screen and (min-width: 52rem) {
          .classicPageList li ul a {
            position: absolute;
            bottom: .5rem;
            right: 1rem; } }
        .classicPageList li ul a:hover {
          text-decoration: underline; }

#teamList {
  text-align: center;
  margin: 1.5rem auto;
  width: 90%;
  max-width: 50rem;
  background-color: #eeeeee;
  border-radius: 1rem; }
  #teamList h1 {
    margin: 1.5rem auto .5rem auto;
    color: #DA291C;
    background-color: #eeeeee;
    padding: 2rem 0;
    border-radius: 1rem;
    font-size: 2rem; }
  #teamList li {
    list-style: none;
    margin: 1rem auto 3rem auto; }
    @media screen and (min-width: 52rem) {
      #teamList li {
        display: flex;
        align-items: center; } }
    #teamList li img {
      border-radius: 50%;
      width: 90%;
      margin: .5rem auto; }
      @media screen and (min-width: 52rem) {
        #teamList li img {
          display: block;
          max-width: 15rem;
          padding: 2rem; } }
    #teamList li div {
      background-color: #eeeeee;
      padding: .5rem;
      border-radius: .5rem; }
      @media screen and (min-width: 52rem) {
        #teamList li div {
          padding: 2rem; } }
    #teamList li h3 {
      color: #DA291C;
      font-weight: 400; }
    #teamList li p {
      margin: .5rem auto; }

#pageFooter {
  padding: 1rem 0 5rem 0; }
  @media screen and (min-width: 52rem) {
    #pageFooter {
      padding: 1rem 0 0rem 0; } }
  #pageFooter .copyright {
    font-size: .75rem;
    display: block;
    text-align: center;
    padding: .2rem;
    color: #eeeeee; }

.serviceGroup {
  background-color: #eeeeee;
  padding: 1rem;
  width: 80%;
  max-width: 60rem;
  margin: 2rem auto;
  border-radius: 1rem; }
  .serviceGroup h1 {
    text-align: center;
    color: #DA291C;
    font-size: 2rem; }

.pageList {
  width: 90%;
  margin: 1rem auto; }
  @media screen and (min-width: 52rem) {
    .pageList {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      vertical-align: middle; } }
  @media screen and (min-width: 52rem) {
    .pageList li {
      flex-basis: 30%;
      margin: .5rem 1rem .5rem .5rem; } }
  .pageList li img {
    max-height: 10rem; }

.imageRibbon {
  width: 100%;
  display: flex;
  overflow: hidden; }
  .imageRibbon img {
    display: block; }
    @media screen and (min-width: 52rem) {
      .imageRibbon img {
        width: 25%; } }

.pageHeader {
  margin: 1.5rem auto .5rem auto;
  color: #DA291C;
  background-color: #eeeeee;
  padding: .5rem 0;
  border-radius: 1rem;
  width: 90%;
  text-align: center; }

#jobListings {
  width: 80%;
  margin: 2rem auto;
  max-width: 40rem;
  padding: 1rem;
  background-color: #eeeeee;
  border-radius: 1rem; }
  #jobListings li {
    list-style: none;
    margin: 2rem auto 4rem auto; }
    #jobListings li h1 {
      color: #000E62;
      font-size: 1.5rem; }
    #jobListings li h2 {
      color: #DA291C;
      font-size: 1rem;
      font-weight: 400; }
    #jobListings li * {
      margin: .5rem auto; }
  #jobListings ul.markedList {
    position: relative; }
    #jobListings ul.markedList li {
      list-style: circle;
      margin-left: .5rem;
      margin-right: .5rem;
      position: relative;
      left: .5rem; }

#locationsList {
  text-align: center;
  padding: 1rem 0;
  margin: 1.5rem auto;
  width: 90%;
  max-width: 50rem;
  background-color: #eeeeee;
  border-radius: 1rem; }
  @media screen and (min-width: 52rem) {
    #locationsList ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-around; } }
  #locationsList ul h2 {
    flex-basis: 100%;
    text-align: center; }
  #locationsList ul li {
    flex-basis: 40%;
    padding: .5rem;
    list-style: none; }
    #locationsList ul li h3 {
      font-weight: bold; }
    #locationsList ul li p {
      font-weight: normal; }
    #locationsList ul li iframe {
      width: 90%;
      margin: 0 1rem;
      height: 10rem; }
      @media screen and (min-width: 52rem) {
        #locationsList ul li iframe {
          width: 100%; } }

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