@import url("https://use.typekit.net/sjg0xij.css");

@font-face {
  font-display: swap;
  font-family: "Stratum";
  font-style: normal;
  font-weight: 600;
  src: url("https://cdn.usconcealedcarry.com/fonts/Stratum/Stratum1WebBold/Stratum1WebBlack.woff2") format("woff2"),
    url("https://cdn.usconcealedcarry.com/fonts/Stratum/Stratum1WebBold/Stratum1WebBlack.woff") format("woff");
}

@font-face {
  font-family: "Roboto";
  src: url("/fonts/Roboto.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: fallback;
}

@font-face {
  font-family: "Tactic Sans";
  src: url("/fonts/Tactic-Sans.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Forza Bold";
  src: url("/fonts/Forza-Bold.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Forza Light";
  src: url("/fonts/Forza-Book.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Helvetica Neue";
  src: url("/fonts/Helvetica-Neue-MD.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Helvetica Neue Condensed";
  src: url("/fonts/Helvetica-Neue-MDCN.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "Helvetica Neue Condensed Bold";
  src: url("/fonts/Helvetica-Neue-BDCN.woff2") format("woff2");
  font-style: normal;
  font-display: block;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: "Open Sans", "ui-sans-serif", "system-ui", sans-serif;
}

.cabelas {
  font-family: var(--helvetica-neue);

  h1,
  .h1 {
    font-family: var(--tactic-sans);
    text-transform: uppercase;
  }

  h2,
  .h2 {
    font-family: var(--forza-bold);
  }

  h3,
  .h3 {
    font-family: var(--forza-bold);
    text-transform: uppercase;
  }

  h4,
  .h4,
  h5,
  .h5 {
    font-family: var(--helvetica-neue);
  }

  h6,
  .h6 {
    font-family: var(--helvetica-neue-condensed-bold);
    text-transform: uppercase;
  }

  button {
    text-transform: uppercase;
  }

  span {
    font-family: inherit;
  }

  .crest-theme {
    max-width: 200px;
  }

  .header,
  .footer {
    background: linear-gradient(90deg, var(--cs-blue), var(--cs-lite-blue));
  }

  .cardHeading {
    font-family: var(--helvetica-neue-condensed-bold);
    color: var(--cs-lite-blue);
  }

  .cardPrice {
    font-family: var(--helvetica-neue-condensed-bold);
    color: var(--cs-blue);
  }

  .cardDistance {
    background-color: var(--cs-blue);
    font-weight: 400;
  }

  .registerLink {
    color: var(--cs-blue);
  }

  .masthead-search-form {
    background-color: #021d41e7;

    .masthead-search-form-select,
    #location-search-input {
      background-color: var(--white);
      border-color: var(--white);
      color: var(--cs-blue);
    }

    .location-search-button-container {
      background-color: var(--white);
    }

    .location-search-x-icon {
      fill: var(--cs-blue);
    }
  }
}

.dd-merchants-icon {
  fill: currentColor;
  height: 1em;
  width: 1em;
}

global-footer [class^="linkList"] {
  margin: 4px 0;
}

global-footer[site^="cabelasshield"] {
  z-index: 9999;

  [class^="svgWrapper"] {
    display: flex;
    justify-content: center;
  }
}

.coming-soon {
  position: fixed;
  z-index: 9999;
  width: 100%;
  height: 100%;
  padding-top: 156px;
  background: transparent linear-gradient(358deg, #EDEDED 0%, #FFFFFF 100%) 0% 0% no-repeat padding-box;
  opacity: .9;
  box-shadow: 10px 10px 30px #B1ACA34D;
  border: 2px solid #FFFFFF;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;

  .launch-estimate {
    background-color: #B4082F;
    color: white;
    height: 30px;
    display: flex;
    padding: 0 10px;
    align-items: center;

    span {
      position: relative;
      top: 2px;
    }
  }

  h2 {
    font-family: var(--tactic-sans);
    font-size: 2.375rem;
    text-transform: uppercase;
    margin: 0 0 8px;
  }

  @media (min-width: 1100px) {
    padding-top: 190px;
  }
}