        /*
        * Mixins
        */
        * {
          -webkit-box-sizing: border-box;
             -moz-box-sizing: border-box;
                  box-sizing: border-box;
          margin: 0;
          padding: 0;
        }

        .html1, .body1 {
          width: 100%;
          height: 100%;
          font-family: 'Arial', Helvetica;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          color: #666663;
          overflow: hidden;
background-color: #ffffff;
        }

        .banner {
          margin: 0;
          padding: 0;
          border: 0;
          -webkit-box-shadow: 0;
                  box-shadow: 0;
          font-size: 1em;
          font-weight: normal;
          float: none;
          outline: none;
          -webkit-appearance: none;
          -webkit-border-radius: 0;
                  border-radius: 0;
          -webkit-box-sizing: border-box;
             -moz-box-sizing: border-box;
                  box-sizing: border-box;
          width: 100%;
          height: 100%;
          /*border: 2px dashed #448bd4;*/
          padding: 10px;
          font-size: 14px;
          display: -webkit-box;
          display: -webkit-flex;
          display: -moz-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -webkit-flex-direction: row;
             -moz-box-orient: horizontal;
             -moz-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-flex-wrap: nowrap;
              -ms-flex-wrap: nowrap;
                  flex-wrap: nowrap;
          -webkit-box-align: center;
          -webkit-align-items: center;
             -moz-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: justify;
          -webkit-justify-content: space-between;
             -moz-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          position: relative;
        }

        @media screen and (min-height: 160px) {
          .banner {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
               -moz-box-orient: vertical;
               -moz-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
               -moz-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
          }
        }

        @media screen and (max-height: 249px) and (max-width: 600px), (max-width: 200px) {
          .banner {
            padding: 5px;
            font-size: 12px;
          }
        }

        .logo {
          min-height: 66px;
          height: 100%;
          padding-top: 10px;
          padding-bottom: 10px;
          text-align: center;
        }

        @media screen and (max-height: 100px) and (max-width: 400px) {
          .logo {
            padding: 0;
            max-height: 66px;
          }
        }

        @media screen and (min-height: 100px) {
          .logo {
            max-height: 100px;
          }
        }

        @media screen and (min-height: 300px) {
          .logo {
            max-height: 100px;
          }
        }

        @media screen and (max-width: 200px) {
          .logo {
            padding: 0;
            max-width: 130px;
          }
        }

        .logo img {
          max-width: 100%;
          max-height: 100%;
        }

        a.button {
          text-align: center;
          -webkit-border-radius: 4px;
          border-radius: 4px;
          background: #448bd4;
          behavior: url(./border-radius.htc);
          padding: 0.85em 2.3em;
          color: #fff;
          text-decoration: none;
          font-size: 1.28em;
          text-transform: uppercase;
          font-weight: bold;
          display: none;
          -webkit-animation: shadow-pulse 1s infinite;
             -moz-animation: shadow-pulse 1s infinite;
               -o-animation: shadow-pulse 1s infinite;
                  animation: shadow-pulse 1s infinite;
        }

        a.button:hover {
          background-color: #2b72ba;
        }

        @media screen and (max-height: 249px) and (max-width: 600px), (max-width: 230px) {
          a.button {
            padding: 0.3em 1em;
            max-width: 130px;
          }
        }

        @media screen and (max-width: 160px) {
          a.button {
            padding-left: 0.5em;
            padding-right: 0.5em;
            font-size: 1em;
            max-width: 110px;
          }
        }

        @media screen and (max-height: 51px) {
          a.button {
            font-size: 0.85em;
          }
        }

        @media screen and (min-height: 60px) {
          a.button.desktop {
            display: inline-block;
          }
        }

        @media screen and (max-height: 51px) {
          a.button.mobile {
            display: inline-block;
          }
        }

        .info {
          text-align: left;
        }

        @media screen and (max-width: 200px) {
          .info {
            width: 100%;
          }
        }

        @media screen and (min-height: 100px) {
          .info {
            margin-top: 10px;
            margin-bottom: 10px;
          }
        }

        @media screen and (min-height: 300px) {
          .info {
            margin-top: 30px;
            margin-bottom: 30px;
          }
        }

        @media screen and (max-height: 249px) and (max-width: 600px) {
          .info {
            text-align: center;
          }
        }

        .info table {
          margin: 0;
          padding: 0;
          border: 0;
          -webkit-box-shadow: 0;
                  box-shadow: 0;
          font-size: 1em;
          font-weight: normal;
          float: none;
          outline: none;
          -webkit-appearance: none;
          -webkit-border-radius: 0;
                  border-radius: 0;
          -webkit-box-sizing: border-box;
             -moz-box-sizing: border-box;
                  box-sizing: border-box;
          width: 100%;
        }

        @media screen and (max-width: 200px) {
          .info table tr.file-name,
          .info table tr.file-size {
            margin-bottom: 10px;
            display: block;
          }
        }

        .info table th {
          font-weight: bold;
          color: #232323;
        }

        .info table th, .info table td {
          font-size: 1em;
        }

        @media screen and (max-width: 200px) {
          .info table th, .info table td {
            width: 100%;
            display: block;
            text-align: center;
          }
          .info table th.first, .info table td.first {
            padding: 0;
          }
        }

        .info table .first {
          padding-right: 20px;
        }

        .info .size-small {
          font-weight: 400;
          margin-left: 5px;
          color: #666663;
        }

        @media screen and (min-height: 60px) {
          .info .size-small {
            display: none;
          }
        }

        @media screen and (max-width: 350px) and (max-height: 80px) {
          .info tr.file-size,
          .info tr.downloads,
          .info tr.file-name th.first {
            display: none;
          }
        }

        @-webkit-keyframes shadow-pulse {
          0% {
            -webkit-box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
                    box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
          }
          100% {
            -webkit-box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
                    box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
          }
        }

        @-moz-keyframes shadow-pulse {
          0% {
            box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
          }
          100% {
            box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
          }
        }

        @-o-keyframes shadow-pulse {
          0% {
            box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
          }
          100% {
            box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
          }
        }

        @keyframes shadow-pulse {
          0% {
            -webkit-box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
                    box-shadow: 0 0 0 0px rgba(68, 139, 212, 0.5);
          }
          100% {
            -webkit-box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
                    box-shadow: 0 0 0 10px rgba(68, 139, 212, 0);
          }
        }

