body {
  background-color: rgba(12, 29, 63, 1);
  color: rgba(221, 221, 221, 1);
  font-size: 24px;
  padding: 0;
  margin: 0;
  width: 100%;
}

p {
  line-height: 1.3;
}

  body > header {
    display: flex;
    flex-flow: row-reverse wrap-reverse;
    justify-content: space-around;
    align-items: center;

    margin-top: 0.75cm;
    width: 100%;
    overflow: hidden;

    min-height: 2.5cm;

    background-color: rgba(255,255,255, 0.75);

    color: rgba(42, 71, 23, 1);
  }

    body > header > * {
      margin-left: 0.5cm;
      margin-right: 0.5cm;

      margin-top: 0.25cm;
      margin-bottom: 0.25cm;
    }

      body > header > #logo {
        display: flex;
        flex-flow: row nowrap;

        justify-content: space-between;
        align-items: flex-end;

        height: auto;
        text-decoration: none;
        width: 8cm;

        order: 3;
      }

        body > header > #logo > img {
          height: 1.545cm;
          width: 1.545cm;
        }

        body > header > #logo > #tag-line {
          text-decoration: none;
          height: 100%;
          text-align: right;
        }

          body > header > #logo > #tag-line > p {
            margin: 0;
            margin-left: 0;

            font-family: 'Times New Roman';
            font-size: 0.5cm;
            color: rgba(42, 71, 23, 1);

            text-align: right;
          }

          body > header > #logo > #tag-line > p:first-child {
            text-align: right;

            margin-left: 0.5cm;

            font-size: 0.75cm;
            letter-spacing: 0.25cm;
          }


      body > header > nav {
        display: flex;
        flex-flow: row nowrap;
        justify-content: center;
        align-items: space-between;
        width: 8cm;
        order: 2;
      }

        body > header > nav > a:hover {
          border-color: rgba(42, 71, 24, 1);
          border-top: 2.5px solid;
          border-bottom: 2.5px solid;
        }

        body > header > nav > a:active {
          background-color: rgba(42, 71, 24, 0.25);
        }


        body > header > nav > a:first-child { margin-left: 0px; }
        body > header > nav > a:last-child { margin-right: 0px; }
        body > header > nav > a {
          box-sizing: border-box;

          /* This centering might be cleaner as padding */
          display: flex;
          flex-flow: row nowrap;
          justify-content: center;
          align-items: center;

          margin-left: 0.25cm;
          margin-right: 0.25cm;

          height: 1.545cm;
          width: 2.5cm;

          border: none;

          border-color: rgba(42, 71, 24, 0);

          color: rgba(42, 71, 24, 1);
          font-family: 'Times New Roman';
          text-decoration: none;
          text-align: center;
        }

        body > header > address {
            display: flex;
            flex-flow: column nowrap;
            align-items: flex-end;
            justify-content: space-between;
            height: 1.5cm;
            width: 8cm;
            order: 1;
        }

        body > header > address > a {
          color: rgba(42, 71, 23, 1);
          text-decoration: none;
          font-size: 24px;
          font-family: 'Times New Roman';
        }

        body > header > address > .email {
          font-size: 16px;
          font-family: 'Times New Roman';
          font-style: normal;
          padding-top: 0.25cm;
          padding-bottom: 0.25cm;
        }

#hero > img {
  position: absolute;
  bottom: 0;
  left: 50%;
  min-height: 20cm;
  min-width: 100%;

  transform: translate(-50%, 0);
}

#hero-fade {
  position: absolute;
  bottom: 0;
  height: 4cm;
  width: 100%;

  background-image: 
    linear-gradient(
       to bottom
      ,rgba(12, 29, 63, 0)
      ,rgba(12, 29, 63, 1) 2cm 
    );
}

#hero {
  height: 20cm;
  position: absolute;
  top: 0;
  width: 100%;
  overflow: hidden;
  z-index: -1;
}
