html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

img {
  max-width: 100%;
  width: 100%; }

.button {
  display: inline-block;
  margin: 0 0 20px 0;
  padding: 8px 12px;
  border: 1px solid #d11515;
  border-radius: 3px;
  -webkit-transition: all 0.15s ease;
  transition: all 0.15s ease;
  background: none;
  color: #d11515;
  -webkit-transition: color 0.15s linear;
  transition: color 0.15s linear;
  font-weight: 600; }
  .button:hover {
    background: rgba(209, 21, 21, 0.1); }

form label {
  display: block; }
form input[type="text"] {
  display: block;
  width: 100%;
  margin-bottom: 12px;
  margin-top: 4px;
  padding: 4px; }
  form input[type="text"].phone-input {
    display: inline-block;
    margin-right: 4px;
    width: 80px; }

body {
  font-family: 'Lato', 'Helvetica', sans-serif; }

h1 {
  font-size: 28px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.9;
  margin-bottom: 0px;
  color: #1e1e1e; }

h2 {
  font-size: 24.75px;
  font-weight: 400;
  line-height: 1.3;
  text-transform: uppercase; }
  h2.long {
    font-size: 18px;
    line-height: 1.3;
    text-transform: none;
    margin-top: 10px;
    margin-bottom: 30px; }

h3 {
  text-transform: uppercase;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.2;
  margin: 10px 0 10px 0; }
  h3:before {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }

h4 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px; }
  h4 small {
    margin-top: 4px;
    display: block;
    font-size: 15px; }
  h4.alt {
    color: #0D5495;
    text-align: center;
    font-size: 21px; }

h5 {
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 15px; }

p, li {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400; }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    p, li {
      font-weight: 400; } }

ul {
  margin-bottom: 20px;
  padding-left: 12px; }
  ul.inline {
    margin: 0px 0 5px 0; }

li {
  list-style: disc outside none;
  padding-left: -18px;
  margin-left: 18px;
  margin-bottom: 2px;
  margin-top: 5px;
  font-weight: 400; }

p {
  margin: 5px 0 14px 0; }
  p + ul {
    margin-top: -12px; }

.row > * p:last-child {
  margin-bottom: 0; }

a {
  text-decoration: none;
  color: #C30A0A;
  -webkit-transition: color 0.05s linear;
  transition: color 0.05s linear;
  font-weight: 700; }
  a:hover {
    color: #920808; }
  a.backToTop {
    font-weight: 400;
    text-transform: uppercase; }
    @media only screen and (max-width: 640px) {
      a.backToTop {
        visibility: hidden; } }

img {
  display: block; }
  @media only screen and (max-width: 728px) {
    img {
      margin-bottom: 10px; } }

strong {
  font-weight: 700; }

strong.caps {
  text-transform: uppercase; }

em {
  font-style: italic; }

cite {
  color: #0D5495;
  font-size: 11px; }

hr {
  border-top: 2px solid #d11515;
  margin: 25px 0;
  border-bottom: none; }

body {
  background: #e9e9e9; }

.main {
  max-width: 960px;
  margin: 25px auto 0px auto;
  padding: 0 25px; }
  .main a {
    text-decoration: underline; }

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  margin: 0 -15px 24px; }
  @media only screen and (max-width: 728px) {
    .row {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; } }
  .row + p {
    margin-top: 24px; }

.grid-block, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  padding: 0 15px; }

.col-1 {
  -ms-flex-preferred-size: 8.33333%;
      flex-basis: 8.33333%; }
  @media only screen and (max-width: 728px) {
    .col-1 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-1:last-child {
        margin-bottom: 0; } }

.col-2 {
  -ms-flex-preferred-size: 16.66667%;
      flex-basis: 16.66667%; }
  @media only screen and (max-width: 728px) {
    .col-2 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-2:last-child {
        margin-bottom: 0; } }

.col-3 {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%; }
  @media only screen and (max-width: 728px) {
    .col-3 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-3:last-child {
        margin-bottom: 0; } }

.col-4 {
  -ms-flex-preferred-size: 33.33333%;
      flex-basis: 33.33333%; }
  @media only screen and (max-width: 728px) {
    .col-4 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-4:last-child {
        margin-bottom: 0; } }

.col-5 {
  -ms-flex-preferred-size: 41.66667%;
      flex-basis: 41.66667%; }
  @media only screen and (max-width: 728px) {
    .col-5 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-5:last-child {
        margin-bottom: 0; } }

.col-6 {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%; }
  @media only screen and (max-width: 728px) {
    .col-6 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-6:last-child {
        margin-bottom: 0; } }

.col-7 {
  -ms-flex-preferred-size: 58.33333%;
      flex-basis: 58.33333%; }
  @media only screen and (max-width: 728px) {
    .col-7 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-7:last-child {
        margin-bottom: 0; } }

.col-8 {
  -ms-flex-preferred-size: 66.66667%;
      flex-basis: 66.66667%; }
  @media only screen and (max-width: 728px) {
    .col-8 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-8:last-child {
        margin-bottom: 0; } }

.col-9 {
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%; }
  @media only screen and (max-width: 728px) {
    .col-9 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-9:last-child {
        margin-bottom: 0; } }

.col-10 {
  -ms-flex-preferred-size: 83.33333%;
      flex-basis: 83.33333%; }
  @media only screen and (max-width: 728px) {
    .col-10 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-10:last-child {
        margin-bottom: 0; } }

.col-11 {
  -ms-flex-preferred-size: 91.66667%;
      flex-basis: 91.66667%; }
  @media only screen and (max-width: 728px) {
    .col-11 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-11:last-child {
        margin-bottom: 0; } }

.col-12 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }
  @media only screen and (max-width: 728px) {
    .col-12 {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 12px; }
      .col-12:last-child {
        margin-bottom: 0; } }

.row .row {
  margin: 0 -7.5px; }
  .row .row .col-1 {
    padding: 0 7.5px; }
  .row .row .col-2 {
    padding: 0 7.5px; }
  .row .row .col-3 {
    padding: 0 7.5px; }
  .row .row .col-4 {
    padding: 0 7.5px; }
  .row .row .col-5 {
    padding: 0 7.5px; }
  .row .row .col-6 {
    padding: 0 7.5px; }
  .row .row .col-7 {
    padding: 0 7.5px; }
  .row .row .col-8 {
    padding: 0 7.5px; }
  .row .row .col-9 {
    padding: 0 7.5px; }
  .row .row .col-10 {
    padding: 0 7.5px; }
  .row .row .col-11 {
    padding: 0 7.5px; }
  .row .row .col-12 {
    padding: 0 7.5px; }

header {
  background: url(/img/bg/dots-bg.jpg) no-repeat #e9e9e9;
  background-size: cover;
  width: 100%; }
  header > div {
    margin: 0 auto;
    padding: 0px 25px 0; }
    header > div:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0; }
  header div.subnav {
    width: 100%;
    max-width: none;
    padding: 0 0 15px 0;
    background-color: #6c6c6c; }
    header div.subnav > div {
      max-width: 960px;
      margin: 0 auto;
      padding: 5px 25px 0; }
      header div.subnav > div nav {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
      header div.subnav > div a {
        padding: 12px 0;
        margin-right: 40px;
        -webkit-transition: all 0.25s linear;
        transition: all 0.25s linear;
        opacity: 1;
        height: 35px;
        color: #ffffff;
        border-bottom: solid 2px transparent; }
        header div.subnav > div a.active, header div.subnav > div a:hover {
          color: #ffffff;
          border-bottom-color: #ffffff; }
    @media only screen and (max-width: 740px) {
      header div.subnav {
        display: none; } }
  header #subpageHeader {
    max-width: 960px;
    min-height: 221px;
    margin: 0 auto 25px;
    padding-top: 70px;
    padding-bottom: 15px;
    color: #e9e9e9; }
    @media only screen and (max-width: 640px) {
      header #subpageHeader {
        min-height: 10px; } }
    header #subpageHeader.navspace {
      min-height: 255px; }
    header #subpageHeader h1 {
      font-size: 40px;
      font-weight: 100;
      text-transform: uppercase;
      line-height: 1.1;
      margin: 0 0 10px 0;
      color: #ffffff;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #ffffff; }
      header #subpageHeader h1 > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        header #subpageHeader h1 {
          font-size: 30px;
          padding-top: 20px; } }
    header #subpageHeader h2 {
      font-size: 16px;
      font-weight: 400;
      text-transform: none;
      line-height: 1.2;
      margin: 0;
      color: #ffffff;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #ffffff; }
      header #subpageHeader h2 > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        header #subpageHeader h2 {
          font-size: 14px;
          padding-bottom: 20px; } }
  header div.anchornav {
    width: 100%;
    max-width: none;
    background: #e9e9e9; }
    header div.anchornav > div {
      max-width: 910px;
      margin: 0 auto;
      padding: 5px 0px 0; }
      header div.anchornav > div nav {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
      header div.anchornav > div a {
        padding: 5px 0;
        white-space: nowrap;
        margin-right: 34px;
        margin-top: 5px;
        -webkit-transition: all 0.25s linear;
        transition: all 0.25s linear;
        opacity: 1;
        color: #6c6c6c;
        border-bottom: solid 2px transparent; }
        header div.anchornav > div a.active, header div.anchornav > div a:hover {
          color: #1e1e1e;
          border-bottom-color: #d11515; }
        header div.anchornav > div a.anchorbutton {
          background-color: #C30A0A;
          color: #fff;
          border: none;
          padding: 5px 10px;
          border-radius: 4px;
          text-decoration: none; }
  header #anchornav.fixnav {
    position: fixed;
    display: block;
    width: 100%;
    top: 54px;
    background: #e9e9e9;
    opacity: 0.95;
    -webkit-box-shadow: 2px 0px 5px #888;
            box-shadow: 2px 0px 5px #888;
    padding: 0 0 10px 0;
    z-index: 99; }
    header #anchornav.fixnav > nav {
      max-width: 960px;
      margin: 0 auto;
      padding: 5px 25px 0; }
    @media only screen and (max-width: 740px) {
      header #anchornav.fixnav {
        display: none; } }
  header #subpageTitle {
    color: #e9e9e9; }
    header #subpageTitle h1 {
      font-size: 28px;
      font-weight: 700;
      text-transform: uppercase;
      line-height: 0.9;
      padding: 10px 0;
      color: #1e1e1e;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #1e1e1e; }
      header #subpageTitle h1 > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        header #subpageTitle h1 {
          font-size: 28px; } }
    header #subpageTitle h2 {
      font-size: 14px;
      font-weight: 400;
      text-transform: none;
      line-height: 1.43;
      color: #1e1e1e;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #1e1e1e; }
      header #subpageTitle h2 > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        header #subpageTitle h2 {
          font-size: 14px; } }
  header #mainnav {
    background: url(/img/bg/dots-bg.jpg) no-repeat #e9e9e9;
    background-size: cover;
    position: fixed;
    display: block;
    width: 100%;
    height: 54px;
    top: 0;
    z-index: 99; }
    header #mainnav > nav {
      max-width: 1030px;
      padding: 0px 25px 0;
      margin: 0 auto; }
    header #mainnav.fixmainnav {
      height: 54px; }
  header #subnav.fixnav {
    position: fixed;
    display: block;
    width: 100%;
    top: 54px;
    opacity: 0.95;
    padding: 0 0 10px 0;
    z-index: 99; }
    header #subnav.fixnav > nav {
      max-width: 960px;
      margin: 0 auto;
      padding: 5px 25px 0; }
  header div.top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  header #logo {
    margin-bottom: 0px;
    width: 150px;
    line-height: 25px; }
    header #logo span {
      text-indent: -9999px;
      display: block;
      padding-top: 0px;
      letter-spacing: 3.6px;
      font-size: 11px;
      color: #ffffff;
      background: url(/img/logos/shape.png);
      background-size: contain;
      background-repeat: no-repeat; }
    header #logo sub {
      /* Remove to show tagline */
      display: none;
      /* end */
      color: #d11515;
      font-size: 14px;
      font-weight: 400;
      text-transform: uppercase; }
  header top {
    height: 1em;
    clear: both;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    header top a#mobileMenu {
      visibility: hidden;
      display: block;
      color: #fff;
      text-transform: uppercase;
      font-size: 15px;
      padding: 10px 20px;
      margin: 10px 0 0 0;
      border: solid 1px rgba(255, 255, 255, 0.3);
      border-radius: 2px;
      -ms-flex-item-align: start;
          align-self: flex-start; }
      header top a#mobileMenu:hover {
        color: #d11515; }
      @media only screen and (max-width: 740px) {
        header top a#mobileMenu {
          visibility: visible; } }
    header top a#mobileLogo {
      visibility: hidden;
      letter-spacing: 3.6px;
      display: block;
      color: transparent;
      text-transform: uppercase;
      font-size: 24px;
      font-weight: 400;
      line-height: 14px;
      padding: 25px 0 0 0;
      margin: 20px 0 0 0;
      background: url(/img/logos/shape.png);
      background-size: contain;
      background-repeat: no-repeat; }
      @media only screen and (max-width: 740px) {
        header top a#mobileLogo {
          visibility: visible; } }
  header nav {
    clear: both;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    header nav a {
      display: block;
      color: #ffffff;
      text-transform: uppercase;
      font-size: 14px;
      font-weight: 400;
      line-height: 18px;
      padding: 5px 0 0 0;
      height: 29px; }
      header nav a:hover {
        color: #d11515; }
      header nav a.active {
        color: #ffffff;
        border-bottom: 2px solid #d11515;
        font-weight: 700;
        cursor: default; }
        header nav a.active:hover {
          color: #ffffff; }
    @media only screen and (max-width: 740px) {
      header nav {
        display: none; } }

.contacttag {
  background: url(/img/bg/bottom-tag-bg.png) no-repeat center;
  background-size: cover;
  margin: 2px auto 0;
  padding: 15px 0 30px 0;
  color: #e9e9e9; }
  .contacttag div {
    max-width: 960px;
    margin: 10px auto 0px auto;
    padding: 0 25px; }
    .contacttag div h2 {
      font-size: 32px;
      font-weight: 100; }
    .contacttag div p {
      line-height: 32px; }
    .contacttag div a {
      text-decoration: none;
      text-transform: uppercase;
      font-size: 14px;
      font-weight: 400;
      background-color: #C30A0A;
      color: #fff;
      border: none;
      padding: 5px 10px;
      border-radius: 4px; }

#bottomtag {
  background: url(/img/bg/bottom-tag-bg.png) no-repeat center;
  background-size: cover;
  margin: 0 auto;
  padding: 15px 0 30px 0;
  color: #e9e9e9; }
  #bottomtag div {
    max-width: 960px;
    margin: 10px auto 0px auto;
    padding: 0 25px; }
    #bottomtag div h2 {
      font-size: 32px;
      font-weight: 100; }
    #bottomtag div p {
      line-height: 32px; }
    #bottomtag div a {
      text-decoration: none;
      text-transform: uppercase;
      font-size: 14px;
      font-weight: 400;
      background-color: #C30A0A;
      color: #fff;
      border: none;
      padding: 5px 10px;
      border-radius: 4px; }

footer {
  background-color: #0c0c0c;
  margin: 0px;
  padding: 0 25px 40px 25px; }
  footer nav {
    max-width: 980px;
    margin: 0 auto;
    padding: 25px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media only screen and (max-width: 740px) {
      footer nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap; } }
    footer nav h5, footer nav h5 a {
      color: #5b5b5b;
      font-weight: 400;
      text-decoration: underline; }
    footer nav a {
      color: #e9e9e9;
      font-weight: 300;
      -webkit-transition: all 0.15s ease;
      transition: all 0.15s ease; }
      footer nav a:hover, footer nav a:active {
        color: #d11515; }
    footer nav section {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 10%;
          -ms-flex: 10% 0 18.1%;
              flex: 10% 0 18.1%;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column nowrap;
              flex-flow: column nowrap; }
      @media only screen and (max-width: 740px) {
        footer nav section {
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%; }
          footer nav section h5 {
            margin-bottom: 0; }
          footer nav section:first-child h5 a {
            border-top: none; } }
      footer nav section h5 a {
        font-size: 13px; }
        footer nav section h5 a:hover {
          color: #d11515; }
        @media only screen and (max-width: 740px) {
          footer nav section h5 a {
            display: block;
            padding: 15px 0;
            font-size: 15px;
            border-top: 1px solid rgba(255, 255, 255, 0.1); } }
      footer nav section > a {
        font-size: 13px;
        margin-bottom: 5px;
        padding-right: 20px;
        line-height: 1.3;
        display: block; }
        @media only screen and (max-width: 740px) {
          footer nav section > a {
            padding: 10px 0 10px 0;
            font-size: 15px; } }
      footer nav section #footerlogo {
        margin-bottom: 0px; }
        footer nav section #footerlogo span {
          padding-top: 0;
          margin-top: 4px;
          text-indent: -9999px;
          display: block;
          width: 100px;
          height: 20px;
          background: url(/img/logos/shape-logo-blue.png);
          background-size: contain;
          background-repeat: no-repeat; }
  footer .copyright-social {
    max-width: 980px;
    margin: 0 auto;
    padding: 25px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 11px;
    color: #666666; }
    footer .copyright-social .social {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap;
      text-indent: -9999px; }
      footer .copyright-social .social a {
        width: 20px;
        height: 20px;
        margin: 0 10px; }
      footer .copyright-social .social #twitter {
        background: url(/img/logos/twitter-logo.png) no-repeat center;
        background-size: 17px auto; }
      footer .copyright-social .social #medium {
        background: url(/img/logos/medium-logo.png) no-repeat center;
        background-size: 17px auto; }
      footer .copyright-social .social #youtube {
        background: url(/img/logos/youtube-logo.png) no-repeat center;
        background-size: 17px auto; }
      footer .copyright-social .social #linkedin {
        background: url(/img/logos/linkedin-logo.png) no-repeat center;
        background-size: 17px auto; }

#homepage {
  background: #060606; }
  #homepage header #mainnav {
    background: url("") no-repeat #060606; }
  #homepage footer {
    background: #0c0c0c; }
    @media only screen and (min-height: 1500px) {
      #homepage footer {
        position: absolute;
        bottom: 0;
        width: 100%; } }
  #homepage bottomtag {
    display: none; }
  #homepage h1, #homepage h2, #homepage h3, #homepage h4, #homepage h5, #homepage p, #homepage li {
    color: #ffffff; }
  #homepage h1 {
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    background: none;
    -webkit-background-clip: none;
    -webkit-text-fill-color: #ffffff;
    color: #ffffff;
    line-height: 1.2;
    margin-bottom: 10px; }
  #homepage h2 {
    font-size: 18px;
    text-transform: none;
    letter-spacing: 1px;
    font-weight: 400;
    color: #ffffff;
    text-shadow: 2px 2px 15px #000000;
    margin-bottom: 40px;
    line-height: 1.2; }
  #homepage h3 {
    font-weight: 500;
    text-transform: uppercase; }
  #homepage #homepageBody {
    max-width: 1030px;
    margin: auto;
    padding: 0 25px; }
  #homepage #homepageIntro {
    max-width: 800px;
    margin: 200px 0 150px 0;
    padding: 0;
    clear: both; }
    @media only screen and (max-width: 740px) {
      #homepage #homepageIntro {
        display: block;
        width: auto;
        margin: 80px 0px; } }
    #homepage #homepageIntro .fullscreen-bg {
      background: url("/img/shapesecurity-home-bg.jpg") no-repeat;
      background-size: cover;
      background-position: top right;
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      overflow: hidden;
      z-index: -100;
      max-height: 800px; }
      @media only screen and (max-width: 740px) {
        #homepage #homepageIntro .fullscreen-bg {
          display: none; } }
    #homepage #homepageIntro .fullscreen-bg__video {
      display: none;
      position: absolute;
      top: 40px;
      left: 0;
      max-height: 680px;
      height: 100%;
      width: 100%; }
    #homepage #homepageIntro p {
      font-size: 14px;
      font-weight: 400;
      letter-spacing: 1px;
      margin: 4px 0 0 0;
      padding: 0; }
    #homepage #homepageIntro a {
      padding: 0;
      margin: 0;
      font-size: 20px;
      font-weight: 300;
      letter-spacing: 1px;
      color: #ffffff;
      border-bottom: 0px solid #ffffff; }
      #homepage #homepageIntro a:hover {
        color: #d11515;
        border-bottom: 1px solid #d11515; }
    #homepage #homepageIntro a.btn {
      text-decoration: none;
      text-transform: uppercase;
      font-size: 14px;
      font-weight: 400;
      background-color: #C30A0A;
      color: #fff;
      border: none;
      padding: 10px 15px;
      border-radius: 4px; }
    #homepage #homepageIntro h3 {
      margin: 0 20px 0 0; }
    #homepage #homepageIntro h2 {
      font-size: 18px;
      font-weight: 400;
      text-transform: none;
      line-height: 1;
      margin: 0 0 20px 0;
      color: #ffffff;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #ffffff; }
      #homepage #homepageIntro h2 > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        #homepage #homepageIntro h2 {
          font-size: 14px;
          padding-bottom: 20px; } }
    #homepage #homepageIntro h1 a {
      font-size: 58px;
      font-weight: 400;
      text-decoration: none;
      border-bottom: none;
      line-height: 1.1;
      margin: 0 0 10px 0;
      padding: 0;
      color: #ffffff;
      background: none;
      -webkit-background-clip: text;
      -webkit-text-fill-color: #ffffff; }
      #homepage #homepageIntro h1 a > bold {
        font-weight: 700;
        -webkit-text-fill-color: #d11515;
        color: #d11515; }
      @media only screen and (max-width: 640px) {
        #homepage #homepageIntro h1 a {
          font-size: 40px;
          padding-top: 20px; } }
      #homepage #homepageIntro h1 a:hover {
        border-bottom: 0px solid #d11515; }
  #homepage #homepageSplash {
    height: 400px;
    margin: 50px auto 40px;
    width: 80%;
    background: url(../img/homepage-splash.png) no-repeat;
    background-size: contain;
    background-position: top center; }
    @media only screen and (max-width: 500px) {
      #homepage #homepageSplash {
        height: 200px;
        margin-top: 20px;
        background-size: cover; } }
  #homepage .main {
    max-width: 1030px;
    margin: 0 auto;
    min-height: 10px; }
    #homepage .main > .row {
      margin: 0 -40px; }
      #homepage .main > .row > .col-4 {
        padding: 0 40px;
        border-right: 1px solid #6a6a6a; }
        #homepage .main > .row > .col-4:last-child {
          border-right: none; }
        #homepage .main > .row > .col-4 a img {
          width: 80%; }
        @media only screen and (max-width: 728px) {
          #homepage .main > .row > .col-4 {
            border-bottom: 1px solid #6a6a6a;
            margin-bottom: 30px;
            padding-bottom: 30px; }
            #homepage .main > .row > .col-4:last-child {
              border-bottom: none;
              margin-bottom: 0; } }
  @media only screen and (max-width: 600px) {
    #homepage footer nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  @media only screen and (max-width: 740px) {
    #homepage {
      background: url(/img/Firstframe_empty.jpg) no-repeat #000b14;
      background-size: auto 30%;
      background-position: top; } }

#news img {
  width: auto;
  max-height: 75px; }
  @media only screen and (max-width: 600px) {
    #news img {
      display: none; } }

#investorLogos {
  margin-bottom: 30px; }
  #investorLogos .all-logos {
    display: block; }
  #investorLogos span {
    display: none; }
  @media only screen and (max-width: 600px) {
    #investorLogos {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; }
      #investorLogos .all-logos {
        display: none; }
      #investorLogos span {
        display: block;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%; } }

span.about {
  display: block;
  margin-top: -8px;
  margin-bottom: 10px;
  font-size: 12px;
  color: #999999; }

p + span.about {
  margin-top: -18px;
  margin-bottom: 24px; }

img.resource {
  display: box;
  -webkit-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25); }

section.sub {
  padding-left: 25px;
  padding-bottom: 20px; }
  section.sub div.note {
    margin-bottom: 8px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.1; }

div.profile {
  width: 270px;
  float: left;
  margin: 0 20px 20px 0;
  background-color: #1e1e1e; }
  div.profile > a {
    cursor: default;
    text-shadow: 2px 2px 15px #000000; }
  div.profile .profile-img > img {
    width: 270px;
    height: 270px;
    opacity: 1; }
  div.profile .profile-title {
    float: left;
    position: relative;
    top: -60px;
    left: 20px;
    max-width: 250px;
    overflow: wrap;
    height: 0px; }
    div.profile .profile-title h4 {
      font-size: 21px;
      color: #e9e9e9; }
      div.profile .profile-title h4 > small {
        color: #e9e9e9;
        padding-bottom: 4px;
        border-bottom: 2px solid #C30A0A; }
  div.profile .profile-description {
    float: left;
    position: relative;
    top: -200px;
    left: 20px;
    max-width: 230px;
    overflow: wrap;
    height: 0px;
    color: #e9e9e9;
    display: none; }
  div.profile > .hovering > .profile-description {
    display: block; }
  div.profile > .hovering > .profile-title {
    top: -250px; }
  div.profile > .hovering > .profile-img {
    opacity: 0.2; }
  @media only screen and (max-width: 480px) {
    div.profile {
      float: none;
      width: 100%;
      padding-left: 10px; } }

div.callimg {
  width: 183px;
  height: 200px;
  float: right;
  margin: 0 40px;
  background-size: 100%;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 320px) {
    div.callimg {
      display: block; } }

div.callin {
  width: 30%;
  margin: 10px 20px 10px 0;
  padding: 10px 10px 10px 0;
  float: left;
  height: auto; }
  div.callin > p {
    min-height: 58px; }
    @media only screen and (max-width: 480px) {
      div.callin > p {
        min-height: 1px; } }
    div.callin > p .ttl {
      color: #d11515; }
  @media only screen and (max-width: 480px) {
    div.callin {
      float: none;
      width: 100%;
      padding-left: 10px; } }

div.callnum {
  font-family: "acumin-pro-extra-condensed", "Helvetica", sans-serif;
  font-size: 110px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 0.3;
  color: #d11515;
  margin-bottom: 40px; }

div.callout {
  font-family: "acumin-pro-extra-condensed", "Helvetica", sans-serif;
  font-size: 80px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 0.9;
  width: 185px;
  float: right;
  border-bottom: 4px solid #d11515;
  padding: 0 0 5px 0;
  margin: -40px 10px 30px 20px;
  color: #5b5b5b;
  -webkit-background-clip: text;
  -webkit-text-fill-color: #5b5b5b;
  background-size: cover; }
  div.callout span {
    white-space: nowrap; }
  div.callout p {
    font-family: "lato", "Helvetica", sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.2;
    margin: 0px;
    padding: 10px 0 3px 0;
    text-transform: none;
    -webkit-text-fill-color: #1e1e1e;
    color: #1e1e1e; }
  div.callout a.threat {
    font-weight: 400;
    color: #5b5b5b;
    text-transform: none;
    text-decoration: none; }
  @media only screen and (max-width: 760px) {
    div.callout {
      font-size: 42px;
      width: 100%;
      margin: 10px 0;
      padding: 10px 0; } }

figure {
  width: 50%;
  float: right;
  margin-left: 20px;
  margin-bottom: 20px; }
  figure cite {
    font-size: 12px; }
  @media only screen and (max-width: 600px) {
    figure {
      float: none;
      width: 100%;
      margin-left: 0; } }

.contact-links {
  float: right;
  width: 300px;
  margin-top: 0px; }
  @media only screen and (max-width: 840px) {
    .contact-links {
      float: none;
      width: 100%;
      margin: 20px 0; } }

#customer-spotlight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #060606;
  width: 100%; }
  #customer-spotlight .customer-main {
    max-width: 900px;
    margin: 0px auto;
    padding: 45px 25px 45px;
    min-height: 100px; }
    #customer-spotlight .customer-main h2 {
      font-weight: 400 !important; }
  #customer-spotlight .customer-thumbnail {
    width: 80px;
    height: 80px;
    margin-right: 20px;
    float: left; }
    @media only screen and (max-width: 740px) {
      #customer-spotlight .customer-thumbnail {
        float: none;
        width: 80px;
        height: 80px; } }
  #customer-spotlight .customer-description {
    width: auto; }
    #customer-spotlight .customer-description h2 {
      font-weight: 700;
      font-size: 21px;
      margin-bottom: 0px; }
    #customer-spotlight .customer-description a {
      text-decoration: underline; }
    #customer-spotlight .customer-description p {
      margin-bottom: 0;
      padding: 6px 0 6px 0; }

.bottomwire {
  background: url(/img/bottom-wire.png) no-repeat #e9e9e9;
  background-size: cover;
  width: 100%;
  height: 250px; }

.content-break {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #d3d3d3;
  clear: both; }
  .content-break .home-content-main {
    width: 1030px;
    margin: 0px auto;
    padding: 45px 25px 35px 25px;
    min-height: 150px; }
    @media only screen and (max-width: 960px) {
      .content-break .home-content-main {
        width: 100%; } }
    .content-break .home-content-main p {
      font-size: 14px; }
    .content-break .home-content-main h1 {
      font-size: 36px;
      text-shadow: 0;
      font-weight: 400 !important; }
  .content-break .content-main {
    width: 960px;
    margin: 0px auto;
    padding: 25px 25px 10px 25px;
    min-height: 150px; }
    @media only screen and (max-width: 740px) {
      .content-break .content-main {
        width: 320px;
        overflow: hidden; } }
  .content-break .video-thumbnail-home {
    width: 480px;
    margin-right: 20px;
    float: left; }
    @media only screen and (max-width: 740px) {
      .content-break .video-thumbnail-home {
        float: none;
        width: 320px;
        overflow: hidden; } }
  .content-break .video-thumbnail {
    width: 240px;
    margin-right: 20px;
    float: left; }
    @media only screen and (max-width: 740px) {
      .content-break .video-thumbnail {
        float: none;
        width: 320px;
        overflow: hidden; } }
  .content-break .video-description {
    width: auto; }
    .content-break .video-description h2 {
      font-weight: 700;
      font-size: 18px; }
    .content-break .video-description a {
      text-decoration: underline; }
    .content-break .video-description p {
      max-width: 780px;
      margin: 0;
      padding: 6px 0 6px 0; }
    .content-break .video-description span.title {
      font-size: 16px;
      border-bottom: 2px solid #C30A0A;
      padding-right: 160px;
      padding-bottom: 6px; }
      @media only screen and (max-width: 740px) {
        .content-break .video-description span.title {
          padding: 6px 0; } }
  .content-break .video-time {
    width: 240px;
    text-align: right;
    padding: 5px 0 0 0;
    font-size: 12px;
    color: #6c6c6c; }

#rapid-deployment {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: url(/img/shape-defense/rapidBG.png) no-repeat #0c0c0c;
  background-size: cover;
  color: #ffffff;
  clear: both; }
  #rapid-deployment > div {
    max-width: 960px;
    margin: 20px auto 0px auto;
    padding: 0 25px;
    min-height: 150px; }

.threat-list {
  width: 50%;
  float: left;
  padding-left: 30px; }
  @media only screen and (max-width: 600px) {
    .threat-list {
      float: none;
      width: 100%;
      padding-left: 10px; } }

#joblistings .job {
  padding: 10px 0;
  margin: 5px 0;
  border-top: 1px solid #ccc; }
  #joblistings .job > div {
    font-weight: 400;
    line-height: 1.8;
    font-size: 14px; }
#joblistings .job-title {
  color: #C30A0A;
  text-transform: none;
  font-size: 16px;
  line-height: 1.8;
  cursor: pointer; }
#joblistings .job-description {
  font-weight: 400;
  line-height: 1.3;
  font-size: 14px; }
#joblistings .tags {
  float: right;
  font-weight: 400;
  line-height: 1.4;
  font-size: 16px; }
  #joblistings .tags span {
    padding-right: 12px;
    color: #4a4a4a; }
#joblistings .job-title-head {
  color: #667;
  text-transform: none;
  font-size: 14px;
  line-height: 1.8; }
#joblistings .tags-head {
  float: right;
  line-height: 1.3; }
  #joblistings .tags-head span {
    padding-right: 12px;
    color: #667; }

div#blogCategories {
  width: 183px;
  height: 200px;
  float: right;
  margin: 20px 0px;
  background-size: 100%;
  background-repeat: no-repeat; }
  div#blogCategories .underline {
    border-bottom: 4px solid #C30A0A; }
  div#blogCategories li a {
    text-decoration: none; }
  @media only screen and (max-width: 800px) {
    div#blogCategories {
      display: none; } }

#blogPosts {
  width: 75%; }
  #blogPosts h3 {
    margin-top: 0px; }
    #blogPosts h3:before {
      content: none; }
  #blogPosts .blogPost {
    padding: 30px 0 10px 0;
    border-bottom: 2px solid #6c6c6c; }
    #blogPosts .blogPost .blogImgLarge {
      width: 100%; }
    #blogPosts .blogPost .blogImgSmall {
      width: 30%;
      margin: 0 30px 40px 0;
      float: left; }
      @media only screen and (max-width: 800px) {
        #blogPosts .blogPost .blogImgSmall {
          width: 100%;
          display: block; } }
    #blogPosts .blogPost .blogOrigin {
      float: right;
      font-size: 12px;
      line-height: 24px; }
    #blogPosts .blogPost a {
      text-decoration: none;
      font-size: 16px; }
  @media only screen and (max-width: 800px) {
    #blogPosts {
      width: 100%; } }

#blogposts_old .post {
  cursor: pointer;
  padding: 5px 0;
  margin: 5px 0;
  border-top: 1px solid #ccc; }
  #blogposts_old .post > div {
    font-weight: 400;
    line-height: 1.4;
    font-size: 14px; }
#blogposts_old .post-title {
  color: #C30A0A;
  text-transform: none;
  font-size: 24px; }
#blogposts_old .post-description {
  font-weight: 400;
  line-height: 1.4;
  font-size: 14px; }
#blogposts_old .tags {
  width: auto;
  float: right;
  line-height: 1.3; }
  #blogposts_old .tags span {
    padding-right: 12px;
    color: #667; }

.red {
  -webkit-text-fill-color: #C30A0A !important;
  color: #C30A0A !important; }

.gray {
  -webkit-text-fill-color: #5b5b5b !important;
  color: #5b5b5b !important; }

.contactpage {
  min-height: 440px; }

#credreport {
  display: none;
  position: fixed;
  bottom: 0px;
  padding: 10px 0 0;
  color: #ffffff;
  text-align: center;
  background: url(/img/bg/dots-bg.jpg) no-repeat #e9e9e9;
  background-size: cover;
  width: 100%;
  z-index: 9999; }
  #credreport a {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    background-color: #C30A0A;
    color: #fff;
    border: none;
    padding: 5px 10px;
    border-radius: 4px; }
    @media only screen and (max-width: 560px) {
      #credreport a {
        background-color: transparent;
        color: #C30A0A; } }
  #credreport.showme {
    display: block;
    position: fixed;
    bottom: -80px; }

.showPanel {
  display: block; }

#offerbox {
  display: none;
  position: fixed;
  bottom: 0px;
  padding: 20px;
  margin: 30px;
  color: #ffffff;
  text-align: left;
  background: url(/img/bg/dots-bg.jpg) no-repeat #e9e9e9;
  background-size: cover;
  width: 300px;
  min-height: 300px;
  z-index: 9999; }
  #offerbox a {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    line-height: 48px;
    background-color: #C30A0A;
    color: #fff;
    border: none;
    padding: 5px 10px;
    border-radius: 4px; }
    #offerbox a.hidelink {
      text-decoration: underline;
      text-transform: none;
      font-size: 12px;
      font-weight: 400;
      line-height: 48px;
      background-color: transparent;
      color: #ccc;
      border: none;
      padding: 0px;
      border-radius: 0px; }
    @media only screen and (max-width: 560px) {
      #offerbox a {
        background-color: transparent;
        color: #C30A0A; } }
  #offerbox.showme {
    display: block;
    position: fixed;
    bottom: -300px; }

#nBg {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 53px;
  z-index: 999999; }
  #nBg ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    #nBg ul > li {
      list-style: none;
      margin: 0;
      padding: 0; }

#nThreatsPanel, #nPlatformPanel, #nIndustriesPanel, #nAboutPanel {
  display: none;
  top: -10px;
  position: relative;
  max-width: 200px;
  background: rgba(0, 0, 0, 0.8);
  border-bottom: 2px solid #C30A0A;
  -webkit-box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
  z-index: 9999999;
  padding: 10px 10px; }
  #nThreatsPanel a, #nPlatformPanel a, #nIndustriesPanel a, #nAboutPanel a {
    display: block;
    width: 200px;
    height: 30px;
    font-weight: normal;
    color: #fff; }
    #nThreatsPanel a:hover, #nPlatformPanel a:hover, #nIndustriesPanel a:hover, #nAboutPanel a:hover {
      color: #C30A0A; }

.main.glossary ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  .main.glossary ul > li {
    list-style: none;
    margin: 0;
    padding: 10px 0 0 0; }

.report-image {
  width: 120px;
  float: left;
  margin: 0 20px 0 0; }
  @media only screen and (max-width: 500px) {
    .report-image {
      display: block;
      width: 100%;
      margin: 20px 0;
      padding: 0 30% 0 0; } }

.report-text {
  padding: 0; }
  .report-text p {
    max-width: 600px; }
  .report-text a.btn {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    background-color: #C30A0A;
    color: #fff;
    border: none;
    padding: 10px 15px;
    border-radius: 4px; }

#credential-spill-report-image {
  width: 120px;
  float: left;
  margin: 0 20px 0 0; }
  @media only screen and (max-width: 500px) {
    #credential-spill-report-image {
      display: block;
      width: 100%;
      margin: 20px 0;
      padding: 0 30% 0 0; } }

#credential-spill-report-text {
  padding: 0; }
  #credential-spill-report-text p {
    max-width: 600px; }
  #credential-spill-report-text a.btn {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    background-color: #C30A0A;
    color: #fff;
    border: none;
    padding: 10px 15px;
    border-radius: 4px; }

#forrester-report-image {
  width: 120px;
  float: left;
  margin: 0 20px 0 0; }
  @media only screen and (max-width: 500px) {
    #forrester-report-image {
      display: block;
      width: 100%;
      margin: 20px 0;
      padding: 0 30% 0 0; } }

#forrester-report-text {
  padding: 0; }
  #forrester-report-text p {
    max-width: 600px; }
  #forrester-report-text a.btn {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    background-color: #C30A0A;
    color: #fff;
    border: none;
    padding: 10px 15px;
    border-radius: 4px; }
