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-size: 100%;
  font: inherit;
  vertical-align: baseline; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

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

.pull-left {
  float: left !important; }

.pull-right {
  float: right !important; }

.fixed {
  position: fixed !important; }

.shadowed, .shadowed__hover, .empty-results-message, .quickdate-popup {
  border: 1px solid #D8D8D8;
  -webkit-box-shadow: 0px 0px 5px 2px rgba(216, 216, 216, 0.35);
          box-shadow: 0px 0px 5px 2px rgba(216, 216, 216, 0.35); }

.shadowed__hover {
  -webkit-transition: -webkit-box-shadow 0.5s;
  transition: -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s;
  transition: box-shadow 0.5s, -webkit-box-shadow 0.5s; }
  .shadowed__hover:hover {
    -webkit-box-shadow: 0px 0px 5px 2px #d8d8d8;
            box-shadow: 0px 0px 5px 2px #d8d8d8; }

@font-face {
  font-family: "Open Sans";
  font-weight: 300;
  font-style: normal;
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansLight.eot");
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansLight.eot#iefix") format("embedded-opentype"), url("https://cdn.furthered.com/assets/ui/fonts/OpenSansLight.ttf") format("truetype"); }

@font-face {
  font-family: "Open Sans";
  font-weight: 400;
  font-style: normal;
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansRegular.eot");
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansRegular.eot#iefix") format("embedded-opentype"), url("https://cdn.furthered.com/assets/ui/fonts/OpenSansRegular.ttf") format("truetype"); }

@font-face {
  font-family: "Open Sans";
  font-weight: 700;
  font-style: normal;
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansBold.eot");
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansBold.eot#iefix") format("embedded-opentype"), url("https://cdn.furthered.com/assets/ui/fonts/OpenSansBold.ttf") format("truetype"); }

@font-face {
  font-family: "Open Sans";
  font-weight: 900;
  font-style: normal;
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansExtraBold.eot");
  src: url("https://cdn.furthered.com/assets/ui/fonts/OpenSansExtraBold.eot#iefix") format("embedded-opentype"), url("https://cdn.furthered.com/assets/ui/fonts/OpenSansExtraBold.ttf") format("truetype"); }

@font-face {
  font-family: 'jw-icons';
  font-weight: 700;
  font-style: normal;
  src: url("https://cdn.furthered.com/assets/ui/fonts/jwplayer/jw-icons.eot");
  src: url("https://cdn.furthered.com/assets/ui/fonts/jwplayer/jw-icons.eot#iefix") format("embedded-opentype"), url("https://cdn.furthered.com/assets/ui/fonts/jwplayer/jw-icons.ttf") format("truetype"); }

.base-typography, h1, h2, h3, h4, h5, h6, p, span {
  line-height: 1.35; }

h1 {
  font-weight: 300;
  font-size: 36px; }

h2 {
  font-weight: 400;
  font-size: 24px; }

h3 {
  font-weight: 700;
  font-size: 24px; }

h4 {
  font-weight: 700;
  font-size: 18px; }

h5 {
  font-weight: 700;
  font-size: 14px; }

h6 {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 14px; }

p {
  font-weight: 300; }

strong {
  font-weight: 700; }

em {
  font-style: italic; }

.lightFont {
  font-weight: 300; }

.mediumFont {
  font-weight: 300; }

.lightFont {
  font-weight: 300; }

.text-danger {
  color: #a94442; }

ol {
  list-style-type: upper-roman;
  padding-left: 30px;
  padding-top: 10px;
  padding-bottom: 10px; }

ul {
  list-style-type: disc;
  padding-left: 30px;
  padding-top: 10px;
  padding-bottom: 10px; }

li {
  font-weight: 300;
  padding-left: 20px;
  line-height: 1.35; }

p + p {
  margin-top: 15px; }

p + h2, p + h3, p + h4, p + h5, p + h6 {
  margin-top: 30px; }

h1 + p, h1 + h2, h1 + h3, h1 + h4, h1 + h5, h1 + h6 {
  margin-top: 15px; }

h2 + p, h2 + h1, h2 + h3, h2 + h4, h2 + h5, h2 + h6 {
  margin-top: 15px; }

h3 + p, h3 + h1, h3 + h2, h3 + h4, h3 + h5, h3 + h6 {
  margin-top: 15px; }

h4 + p, h4 + h1, h4 + h2, h4 + h3, h4 + h5, h4 + h6 {
  margin-top: 15px; }

h5 + p, h5 + h1, h5 + h2, h5 + h3, h5 + h4, h5 + h6 {
  margin-top: 15px; }

h6 + p, h6 + h1, h6 + h2, h6 + h3, h6 + h4, h6 + h5 {
  margin-top: 15px; }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.25; }

a {
  color: #2D7ABF;
  text-decoration: none; }

.container, .container--body, #header .nav--main {
  margin: 0 auto; }
  .container:after, .container--body:after, #header .nav--main:after {
    content: "";
    display: table;
    clear: both; }

.credit {
  color: #979797;
  font-weight: 300;
  border-radius: 3px;
  border: 1px solid #979797;
  padding: 5px 10px;
  font-size: 12px; }

.sort {
  float: left;
  border-radius: 3px;
  background-image: linear-gradient(89deg, #FFFFFF 0%, rgba(241, 240, 238, 0.15) 100%);
  border: 1px solid #D8D8D8;
  -webkit-box-shadow: 0px 0px 5px 2px rgba(216, 216, 216, 0.15);
          box-shadow: 0px 0px 5px 2px rgba(216, 216, 216, 0.15);
  padding: 10px 20px;
  cursor: pointer; }

.carat {
  float: left;
  display: block; }

input[type="checkbox"] {
  float: left;
  margin-right: 10px;
  padding: 0; }

::-webkit-scrollbar {
  width: 10px; }

/* Track */
::-webkit-scrollbar-track {
  background: #979797;
  border-radius: 0px; }

body {
  scrollbar-face-color: #272727;
  scrollbar-track-color: #979797;
  scrollbar-arrow-color: #D8D8D8; }

/* Handle */
::-webkit-scrollbar-thumb {
  border-radius: 0px;
  background: rgba(0, 0, 0, 0.5); }

::-webkit-scrollbar-thumb:window-inactive {
  background: rgba(0, 0, 0, 0.2); }

::-moz-selection {
  background: rgba(45, 122, 191, 0.8); }

::selection {
  background: rgba(45, 122, 191, 0.8); }

/* Can be used to make sure Angular template finished loading before showing */
.ng-cloak {
  display: none; }

#schema-offer-markup, #schema-product-markup-image {
  display: none; }

#header {
  background: #272727;
  background: #272727 \9;
  /* IE8 and below */
  padding: 10px 30px;
  z-index: 100;
  background-size: cover;
  -webkit-transition: background 0.2s;
  transition: background 0.2s; }
  #header .hide {
    display: none; }
  #header #bug {
    position: fixed;
    top: 10px;
    right: 10px;
    width: 25px;
    cursor: pointer;
    z-index: 999999; }
  #header:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 0px) and (max-width: 650px) {
    #header {
      padding: 10px 20px; } }
  @media (min-width: 650px) and (max-width: 900px) {
    #header {
      padding: 10px 30px; } }
  @media (min-width: 900px) and (max-width: 1124px) {
    #header {
      padding: 10px 15px; } }
  #header .nav {
    height: auto;
    float: right; }
    #header .nav:after {
      content: "";
      display: table;
      clear: both; }
    @media (min-width: 0px) and (max-width: 650px) {
      #header .nav {
        background: #272727;
        text-align: center;
        float: left; } }
    @media (min-width: 650px) and (max-width: 900px) {
      #header .nav {
        background: #272727;
        text-align: center;
        float: left; } }
    @media (min-width: 900px) and (max-width: 1350px) {
      #header .nav {
        float: left;
        border: none;
        -webkit-box-shadow: none;
                box-shadow: none; } }
    @media (min-width: 1350px) {
      #header .nav {
        float: left;
        border: none;
        -webkit-box-shadow: none;
                box-shadow: none; } }
    #header .nav.right {
      background: none;
      float: right; }
    #header .nav--main {
      float: left;
      width: 100%;
      z-index: 999999; }
      #header .nav--main li.header {
        text-transform: uppercase;
        font-weight: 900;
        letter-spacing: 1.5px;
        text-align: left;
        padding: 10px 20px;
        font-size: 12px;
        margin-top: 25px;
        border-bottom: 1px solid white;
        border-top: 1px solid white; }
      #header .nav--main a {
        color: white;
        font-weight: 300;
        font-size: 14px; }
        @media (min-width: 900px) and (max-width: 1100px) {
          #header .nav--main a {
            font-size: 12px; } }
        #header .nav--main a.tab {
          text-align: left;
          padding: 15px 20px; }
          #header .nav--main a.tab img {
            width: 15px;
            margin-right: 10px;
            position: relative;
            top: 2px; }
      #header .nav--main .hamburger {
        float: left;
        margin-right: 30px;
        position: relative;
        z-index: 999999;
        display: block; }
        @media (min-width: 900px) and (max-width: 1350px) {
          #header .nav--main .hamburger {
            display: none; } }
        @media (min-width: 1350px) {
          #header .nav--main .hamburger {
            display: none; } }
        #header .nav--main .hamburger img {
          width: 25px;
          height: 33px;
          padding-top: 5px; }
      #header .nav--main .logo {
        float: left;
        margin-right: 10px; }
        #header .nav--main .logo a img {
          width: 100px;
          height: 36px;
          z-index: 20;
          top: 0;
          position: relative; }
      #header .nav--main .logged-out,
      #header .nav--main .logged-in {
        float: left; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-out,
          #header .nav--main .logged-in {
            overflow: auto; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .logged-out,
          #header .nav--main .logged-in {
            overflow: auto; } }
        #header .nav--main .logged-out.desktop,
        #header .nav--main .logged-in.desktop {
          width: calc(100% - 135px);
          max-height: 45px; }
          @media (min-width: 0px) and (max-width: 650px) {
            #header .nav--main .logged-out.desktop,
            #header .nav--main .logged-in.desktop {
              display: none; } }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-out.desktop,
            #header .nav--main .logged-in.desktop {
              display: none; } }
        #header .nav--main .logged-out.mobile,
        #header .nav--main .logged-in.mobile {
          display: none; }
          @media (min-width: 0px) and (max-width: 650px) {
            #header .nav--main .logged-out.mobile,
            #header .nav--main .logged-in.mobile {
              display: none;
              padding-bottom: 150px; } }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-out.mobile,
            #header .nav--main .logged-in.mobile {
              display: none; } }
      #header .nav--main .logged-in .welcome {
        background: rgba(255, 255, 255, 0.2);
        background: #979797 \9;
        padding: 10px 20px;
        border-radius: 3px;
        margin-top: -10px; }
        #header .nav--main .logged-in .welcome h3 {
          font-weight: 300;
          font-size: 16px; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-in .welcome {
            margin: 10px auto;
            padding: 20px; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .logged-in .welcome {
            margin: 10px auto;
            padding: 20px; } }
        @media (min-width: 900px) and (max-width: 1350px) {
          #header .nav--main .logged-in .welcome {
            margin-top: -10px;
            width: auto; } }
        @media (min-width: 1350px) {
          #header .nav--main .logged-in .welcome {
            margin-top: -10px;
            width: auto; } }
      @media (min-width: 0px) and (max-width: 650px) {
        #header .nav--main .logged-in.desktop {
          display: none; } }
      @media (min-width: 650px) and (max-width: 900px) {
        #header .nav--main .logged-in.desktop {
          display: none; } }
      #header .nav--main .logged-in.mobile {
        display: none; }
        #header .nav--main .logged-in.mobile .action {
          float: none;
          margin: 10px auto;
          width: 80%; }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-in.mobile .action {
              width: 100%; } }
        #header .nav--main .logged-in.mobile .highlighted a {
          margin-top: 20px; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-in.mobile {
            display: none;
            padding-bottom: 150px; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .logged-in.mobile {
            display: none; } }
      #header .nav--main ul {
        float: right \9; }
        #header .nav--main ul:after {
          content: "";
          display: table;
          clear: both; }
      #header .nav--main .logged-out > ul {
        float: right;
        list-style-type: none; }
        #header .nav--main .logged-out > ul:after {
          content: "";
          display: table;
          clear: both; }
        @media (min-width: 900px) and (max-width: 1024px) {
          #header .nav--main .logged-out > ul.pull-right {
            padding-left: 0; } }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-out > ul {
            padding: 0;
            max-width: 300px;
            margin: 0 auto;
            float: none; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .logged-out > ul {
            padding: 0;
            max-width: 300px;
            margin: 0 auto;
            float: none; } }
        #header .nav--main .logged-out > ul .user-menu.help h4 a {
          padding: 0; }
          #header .nav--main .logged-out > ul .user-menu.help h4 a:hover {
            background: none; }
        #header .nav--main .logged-out > ul.tab {
          background: #343434;
          position: absolute;
          right: 0;
          top: 55px;
          padding: 6px 40px 10px 40px; }
          #header .nav--main .logged-out > ul.tab img {
            width: 20px;
            margin-right: 5px;
            position: relative;
            top: 6px; }
          #header .nav--main .logged-out > ul.tab li {
            padding: 0; }
          #header .nav--main .logged-out > ul.tab h3 {
            font-weight: 700;
            font-size: 8px;
            margin-bottom: 0;
            text-transform: uppercase; }
          #header .nav--main .logged-out > ul.tab a {
            font-weight: 300; }
        #header .nav--main .logged-out > ul .cart .cart-products-number {
          top: -7px;
          right: -10px; }
          @media (min-width: 0px) and (max-width: 650px) {
            #header .nav--main .logged-out > ul .cart .cart-products-number {
              right: -13px;
              top: -20px; } }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-out > ul .cart .cart-products-number {
              right: -13px;
              top: -20px; } }
      #header .nav--main .logged-in ul {
        float: left;
        list-style-type: none;
        max-height: 42px; }
        #header .nav--main .logged-in ul:after {
          content: "";
          display: table;
          clear: both; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-in ul {
            margin: 0 auto;
            float: none;
            max-width: 300px;
            padding: 0;
            width: 100%; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .logged-in ul {
            margin: 0 auto;
            float: none;
            max-width: 300px;
            padding: 0;
            width: 100%; } }
        #header .nav--main .logged-in ul.pull-right {
          padding: 0; }
          @media (min-width: 0px) and (max-width: 650px) {
            #header .nav--main .logged-in ul.pull-right {
              float: left !important;
              margin-left: 0; } }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-in ul.pull-right {
              width: auto;
              float: right !important;
              margin-left: 0; } }
          @media (min-width: 900px) and (max-width: 1350px) {
            #header .nav--main .logged-in ul.pull-right {
              float: right !important;
              margin-left: 0; } }
          @media (min-width: 1350px) {
            #header .nav--main .logged-in ul.pull-right {
              width: auto;
              float: right !important;
              margin-left: 0; } }
          #header .nav--main .logged-in ul.pull-right > li {
            float: left;
            width: auto; }
          #header .nav--main .logged-in ul.pull-right .action a {
            line-height: 1;
            color: white;
            -webkit-transition: background 0.2s;
            transition: background 0.2s;
            text-overflow: hidden; }
          @media (min-width: 0px) and (max-width: 650px) {
            #header .nav--main .logged-in ul.pull-right popout {
              width: auto;
              position: absolute;
              top: 45px; } }
          @media (min-width: 650px) and (max-width: 900px) {
            #header .nav--main .logged-in ul.pull-right popout {
              width: auto;
              position: absolute;
              top: 45px; } }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .logged-in ul .user-menu.help popout:before, #header .nav--main .logged-in ul .user-menu.help popout:after {
            top: 45px; } }
      #header .nav--main .user-menu {
        position: relative;
        top: -10px; }
        #header .nav--main .user-menu:after {
          content: "";
          display: table;
          clear: both; }
        #header .nav--main .user-menu h4 {
          display: block; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .user-menu.desktop {
            display: none; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .user-menu.desktop {
            display: none; } }
        #header .nav--main .user-menu.help {
          top: 0; }
          #header .nav--main .user-menu.help:after {
            content: "";
            display: table;
            clear: both; }
          #header .nav--main .user-menu.help h4 a {
            background: none;
            color: white;
            padding: 0; }
            #header .nav--main .user-menu.help h4 a:hover {
              background: none; }
        #header .nav--main .user-menu h4 a {
          background: rgba(255, 255, 255, 0.3);
          color: white;
          padding: 10px 20px;
          border-radius: 3px;
          -webkit-transition: 0.2s background, 0.2s color;
          transition: 0.2s background, 0.2s color;
          display: block; }
          #header .nav--main .user-menu h4 a:hover {
            background: rgba(255, 255, 255, 0.5); }
          #header .nav--main .user-menu h4 a img {
            margin-left: 5px; }
            @media (min-width: 900px) and (max-width: 1100px) {
              #header .nav--main .user-menu h4 a img {
                width: 15px; } }
        #header .nav--main .user-menu.help:after {
          content: "";
          display: table;
          clear: both; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .user-menu.help popout {
            display: block !important;
            width: 75%;
            right: 12%;
            position: static;
            margin: 0 auto;
            margin-top: 10px; }
            #header .nav--main .user-menu.help popout::before {
              left: 56%;
              top: 25px; }
            #header .nav--main .user-menu.help popout::after {
              left: 56%;
              top: 25px; }
            #header .nav--main .user-menu.help popout a {
              padding: 10px;
              min-width: 0;
              font-size: 14px;
              margin: 0; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .user-menu.help popout {
            display: block !important;
            width: 75%;
            right: 12%;
            position: static;
            margin: 0 auto;
            margin-top: 10px; }
            #header .nav--main .user-menu.help popout::before {
              left: 56%;
              top: 44px; }
            #header .nav--main .user-menu.help popout::after {
              left: 56%;
              top: 44px; }
            #header .nav--main .user-menu.help popout a {
              padding: 10px;
              min-width: 0;
              font-size: 14px;
              margin: 0; } }
        #header .nav--main .user-menu popout {
          right: -24px;
          top: 37px;
          width: auto;
          min-width: 225px;
          padding: 10px;
          z-index: 999999; }
          #header .nav--main .user-menu popout:after {
            content: "";
            display: table;
            clear: both; }
          #header .nav--main .user-menu popout.user-menu-popout {
            top: 60px;
            right: -5px; }
          #header .nav--main .user-menu popout img {
            width: 20px;
            margin-right: 5px;
            float: none;
            display: inline-block;
            top: 5px;
            position: relative; }
          @media (min-width: 900px) and (max-width: 1124px) {
            #header .nav--main .user-menu popout {
              right: -30px; } }
          #header .nav--main .user-menu popout::before {
            left: 72%; }
          #header .nav--main .user-menu popout::after {
            left: 72%; }
          #header .nav--main .user-menu popout ul {
            margin: 0;
            width: 100%;
            float: none; }
          #header .nav--main .user-menu popout li {
            text-align: center;
            padding: 0;
            width: 100%; }
            #header .nav--main .user-menu popout li.left {
              text-align: left; }
          #header .nav--main .user-menu popout a {
            color: rgba(39, 39, 39, 0.6);
            color: #272727 \9;
            width: 100%;
            display: block;
            -webkit-transition: color 0.2s;
            transition: color 0.2s;
            padding: 10px 20px;
            text-overflow: hidden; }
            #header .nav--main .user-menu popout a:hover {
              color: #272727; }
      #header .nav--main .mobile-cart {
        float: right;
        display: none; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .mobile-cart {
            display: block; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .mobile-cart {
            display: block; } }
      #header .nav--main .mobile-global-search-wrapper {
        display: none;
        float: right;
        margin-left: 10px;
        padding-top: 5px; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .mobile-global-search-wrapper {
            display: block; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .mobile-global-search-wrapper {
            display: block; } }
        #header .nav--main .mobile-global-search-wrapper .global-search {
          width: 30px; }
      #header .nav--main li {
        float: left;
        padding: 15px; }
        @media (min-width: 900px) and (max-width: 1024px) {
          #header .nav--main li {
            padding: 15px 10px; } }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main li {
            width: 100%;
            padding: 0; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main li {
            width: 100%;
            padding: 0; } }
        #header .nav--main li .global-search {
          width: 14px;
          cursor: pointer; }
        #header .nav--main li h4 {
          line-height: 1; }
        #header .nav--main li.cart {
          min-width: 20px;
          color: #272727;
          padding: 0;
          list-style-type: none; }
          #header .nav--main li.cart:after {
            content: "";
            display: table;
            clear: both; }
          #header .nav--main li.cart mini-cart {
            top: 10px; }
          #header .nav--main li.cart img {
            cursor: pointer; }
          #header .nav--main li.cart a {
            position: relative;
            color: white; }
            #header .nav--main li.cart a:after {
              content: "";
              display: table;
              clear: both; }
            @media (min-width: 0px) and (max-width: 650px) {
              #header .nav--main li.cart a {
                top: 0; } }
            @media (min-width: 650px) and (max-width: 900px) {
              #header .nav--main li.cart a {
                top: 0; } }
          #header .nav--main li.cart .cart-icon {
            width: 20px;
            height: 20px; }
          #header .nav--main li.cart .cart-products-number {
            background: #2D7ABF;
            color: white;
            border-radius: 100%;
            font-size: 10px;
            width: 20px;
            height: 20px;
            padding: 4px;
            position: absolute;
            top: -7px;
            right: -10px;
            text-align: center; }
            @media (min-width: 0px) and (max-width: 650px) {
              #header .nav--main li.cart .cart-products-number {
                right: -13px;
                top: -20px; } }
            @media (min-width: 650px) and (max-width: 900px) {
              #header .nav--main li.cart .cart-products-number {
                right: -13px;
                top: -20px; } }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main li a {
            margin: 0;
            padding: 0; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main li a {
            margin: 0;
            padding: 0; } }
      #header .nav--main .highlighted h4 a {
        padding: 10px 20px !important;
        border-radius: 3px;
        margin-top: -10px;
        border: 1px solid #2D7ABF; }
      #header .nav--main .highlighted-button a {
        background: #2D7ABF;
        padding: 10px 20px;
        border-radius: 3px;
        margin-top: -10px; }
        @media (min-width: 0px) and (max-width: 650px) {
          #header .nav--main .highlighted-button a {
            margin: 10px auto;
            padding: 20px;
            width: 80%; } }
        @media (min-width: 650px) and (max-width: 900px) {
          #header .nav--main .highlighted-button a {
            margin: 10px auto;
            padding: 20px;
            width: 80%; } }
        @media (min-width: 900px) and (max-width: 1350px) {
          #header .nav--main .highlighted-button a {
            margin-top: -10px;
            width: auto; } }
        @media (min-width: 1350px) {
          #header .nav--main .highlighted-button a {
            margin-top: -10px;
            width: auto; } }
  #header .hero-title {
    color: white;
    text-align: center;
    font-size: 50px;
    font-weight: 300;
    margin: 110px 0 50px 0; }
  #header popout {
    border-radius: 3px;
    position: absolute;
    right: -15px;
    padding: 30px;
    width: 400px; }
    #header popout ul {
      float: none; }
    @media (min-width: 650px) and (max-width: 900px) {
      #header popout {
        width: 80%;
        right: 10%; } }
    #header popout::before {
      position: absolute;
      left: 360px; }
      @media (min-width: 0px) and (max-width: 650px) {
        #header popout::before {
          left: 50%; } }
      @media (min-width: 650px) and (max-width: 900px) {
        #header popout::before {
          left: 50%; } }
    #header popout::after {
      position: absolute;
      left: 360px; }
      @media (min-width: 0px) and (max-width: 650px) {
        #header popout::after {
          left: 50%; } }
      @media (min-width: 650px) and (max-width: 900px) {
        #header popout::after {
          left: 50%; } }
    #header popout .checkout-cart {
      padding: 0;
      border: none; }
    #header popout .product-list-container {
      border-top: none;
      max-height: 110px; }
    #header popout img.remove {
      width: 15px;
      height: 15px; }

.fixed #header {
  background: #272727; }

.checkout-cart {
  padding: 5%;
  border: 1px solid #D8D8D8;
  border-radius: 3px; }
  .checkout-cart:after {
    content: "";
    display: table;
    clear: both; }
  .checkout-cart .header {
    float: left;
    width: 100%;
    padding-bottom: 5%; }
    .checkout-cart .header h2 {
      margin: 0;
      font-size: 18px; }
  .checkout-cart .product-list-container {
    float: left;
    width: 100%;
    font-weight: 300;
    margin-top: 0;
    height: auto;
    max-height: 205px;
    overflow-y: auto;
    border-top: 1px solid #D8D8D8;
    border-bottom: 1px solid #D8D8D8; }
    .checkout-cart .product-list-container table {
      width: 96%; }
    .checkout-cart .product-list-container .product-row {
      text-align: left;
      width: 100%;
      border-bottom: 1px solid #D8D8D8;
      text-align: right; }
      .checkout-cart .product-list-container .product-row:last-child {
        border-bottom: none; }
      .checkout-cart .product-list-container .product-row td {
        padding: 5% 0; }
      .checkout-cart .product-list-container .product-row .title {
        padding: 5% 0;
        font-size: 14px;
        line-height: 1.35; }
      .checkout-cart .product-list-container .product-row .price {
        text-align: center;
        font-size: 16px; }
    .checkout-cart .product-list-container .discount {
      background: white; }
  .checkout-cart .totaled-price {
    float: right;
    margin: 10px 0; }
    .checkout-cart .totaled-price label {
      font-size: 10px;
      margin-right: 10px; }
    .checkout-cart .totaled-price .price {
      font-size: 28px; }

.products-table {
  width: 100%;
  font-weight: 300;
  text-align: center;
  margin-top: 60px; }
  .products-table h2 {
    font-size: 18px; }
  .products-table th {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 14px;
    text-align: center; }
    @media (min-width: 0px) and (max-width: 650px) {
      .products-table th {
        font-size: 10px; } }
  .products-table .product-row {
    border-bottom: 1px solid #D8D8D8;
    background: white; }
    .products-table .product-row td {
      font-size: 24px;
      padding: 35px; }
      @media (min-width: 0px) and (max-width: 650px) {
        .products-table .product-row td {
          font-size: 14px;
          padding: 10px; } }
    .products-table .product-row.discount {
      color: #2DBF41; }
      .products-table .product-row.discount .title {
        text-align: right;
        text-transform: uppercase;
        font-weight: 700;
        font-size: 14px; }
    .products-table .product-row .title {
      text-align: left;
      max-width: 800px;
      line-height: 1.25; }
    .products-table .product-row img.remove {
      width: 24px;
      height: 24px;
      cursor: pointer; }
      @media (min-width: 0px) and (max-width: 650px) {
        .products-table .product-row img.remove {
          width: 15px;
          height: 15px; } }

.summary {
  margin: 30px auto; }
  .summary:after {
    content: "";
    display: table;
    clear: both; }
  .summary .discount-code {
    float: left;
    padding-top: 20px; }
    @media (min-width: 650px) and (max-width: 900px) {
      .summary .discount-code {
        width: 100%;
        text-align: center; } }
    @media (min-width: 0px) and (max-width: 650px) {
      .summary .discount-code input {
        width: 100%; } }
    .summary .discount-code label {
      top: 0; }
    .summary .discount-code a {
      text-transform: uppercase;
      font-weight: 700;
      font-size: 12px;
      display: block;
      text-align: right;
      margin-top: 5px; }
      @media (min-width: 0px) and (max-width: 650px) {
        .summary .discount-code a {
          display: block;
          text-align: right; } }
      @media (min-width: 650px) and (max-width: 900px) {
        .summary .discount-code a {
          display: inline;
          margin-left: 20px;
          text-align: center; } }
    .summary .discount-code .error, .summary .discount-code input.error--major {
      color: #BF392D;
      font-weight: 300;
      font-size: 12px;
      float: right; }
      @media (min-width: 0px) and (max-width: 650px) {
        .summary .discount-code .error, .summary .discount-code input.error--major {
          float: left;
          display: inline;
          text-align: center;
          padding: 10px 0; } }
      @media (min-width: 650px) and (max-width: 900px) {
        .summary .discount-code .error, .summary .discount-code input.error--major {
          display: block;
          float: none;
          text-align: center;
          margin-top: 10px; } }
  .summary .totaled-price {
    width: auto;
    text-align: right;
    margin: 0 auto;
    float: right; }
    .summary .totaled-price:after {
      content: "";
      display: table;
      clear: both; }
    .summary .totaled-price .price {
      font-size: 60px;
      font-weight: 300; }
      @media (min-width: 0px) and (max-width: 650px) {
        .summary .totaled-price .price {
          font-size: 34px; } }
    @media (min-width: 650px) and (max-width: 900px) {
      .summary .totaled-price {
        float: none;
        display: block;
        text-align: center !important;
        margin: 40px auto; } }
  .summary label {
    text-transform: uppercase;
    color: #979797;
    font-size: 13px;
    margin-right: 20px;
    font-weight: bold;
    position: relative;
    display: inline-block; }

.nav--top {
  width: calc(100% - 135px);
  float: left;
  margin-left: 105px;
  background: #272727;
  background: #272727 \9;
  /* IE8 and below */
  padding: 10px 10px;
  max-height: 36px; }
  .nav--top:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 0px) and (max-width: 650px) {
    .nav--top {
      display: none; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .nav--top {
      display: none; } }
  .nav--top ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
  .nav--top li {
    color: white;
    padding: 0;
    margin: 0 10px;
    float: left; }
  .nav--top a {
    color: white; }
  .nav--top h3,
  .nav--top h4 {
    font-size: 12px;
    font-weight: 100; }
    @media (min-width: 900px) and (max-width: 1124px) {
      .nav--top h3,
      .nav--top h4 {
        font-size: 12px; } }
  .nav--top .pull-right li {
    float: right;
    margin: 0 15px; }
  .nav--top .pull-right.support img {
    width: 13px;
    float: left;
    margin-right: 5px;
    position: relative;
    top: 4px; }
  .nav--top .pull-right.support .action {
    padding: 5px 10px;
    font-size: 12px;
    position: relative;
    top: -5px;
    margin-left: 5px; }
  .nav--top .pull-right.support h3 {
    float: left; }

.nav--sub {
  width: 100%;
  background: #343434;
  padding: 15px 10px;
  max-height: 50px; }
  .nav--sub:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 0px) and (max-width: 650px) {
    .nav--sub {
      display: none; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .nav--sub {
      display: none; } }
  .nav--sub ul {
    list-style-type: none;
    padding: 0;
    margin: 0; }
  .nav--sub li {
    color: white;
    padding: 0;
    margin: 0 10px;
    float: left; }
    .nav--sub li.active-page a {
      color: #2D7ABF; }
  .nav--sub a {
    color: white; }
  .nav--sub h3 {
    font-size: 14px;
    font-weight: 100; }
    @media (min-width: 900px) and (max-width: 1124px) {
      .nav--sub h3 {
        font-size: 12px; } }
  .nav--sub .pull-right li {
    margin: 0 15px; }
  .nav--sub .pull-right.support img {
    width: 20px;
    float: left;
    margin-right: 5px;
    position: relative;
    top: -2px; }
  .nav--sub .pull-right.support .action {
    padding: 5px 10px;
    font-size: 12px;
    position: relative;
    top: -5px;
    margin-left: 5px; }
  .nav--sub .pull-right.support h3 {
    float: left; }

.footer {
  background: #272727;
  padding: 40px 50px;
  margin-top: 100px;
  float: left;
  color: white;
  font-weight: 300;
  width: 100%; }
  .footer:after {
    content: "";
    display: table;
    clear: both; }
  .footer .column {
    float: left;
    margin-right: 50px; }
    .footer .column img {
      margin-right: 10px;
      width: 15px;
      position: relative;
      top: 2px; }
    @media (min-width: 0px) and (max-width: 650px) {
      .footer .column {
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        margin-left: 0;
        text-align: center; } }
    @media (min-width: 650px) and (max-width: 900px) {
      .footer .column {
        width: 20%;
        margin: 0;
        text-align: center; } }
  .footer--main {
    float: left;
    width: 100%; }
    @media (min-width: 0px) and (max-width: 650px) {
      .footer--main {
        display: none; } }
    @media (min-width: 650px) and (max-width: 900px) {
      .footer--main {
        display: none; } }
    .footer--main .column {
      margin-left: 0px; }
  .footer--super {
    float: left;
    width: 100%;
    margin-bottom: 20px; }
    @media (min-width: 0px) and (max-width: 650px) {
      .footer--super {
        display: none; } }
    .footer--super h3 {
      float: left; }
      @media (min-width: 0px) and (max-width: 650px) {
        .footer--super h3 {
          float: none;
          margin-bottom: 10px;
          width: 100%;
          text-align: center; } }
      @media (min-width: 650px) and (max-width: 900px) {
        .footer--super h3 {
          float: none;
          width: 100%;
          text-align: center; } }
    .footer--super .action {
      padding: 5px 10px;
      float: left;
      margin-left: 15px;
      top: -4px;
      position: relative; }
      @media (min-width: 0px) and (max-width: 650px) {
        .footer--super .action {
          float: none;
          margin-left: 15px;
          margin: 10px auto;
          text-align: center;
          display: block;
          width: 150px; } }
      @media (min-width: 650px) and (max-width: 900px) {
        .footer--super .action {
          float: none;
          margin-left: 15px;
          margin: 10px auto;
          text-align: center;
          display: block;
          width: 150px; } }
  .footer--sub {
    float: left;
    width: 100%;
    margin-top: 30px;
    border-top: 1px solid #2D7ABF;
    padding-top: 20px; }
    @media (min-width: 0px) and (max-width: 650px) {
      .footer--sub {
        text-align: center; } }
    .footer--sub span {
      font-size: 10px;
      font-weight: 100; }
    .footer--sub a {
      color: white;
      margin: 15px 20px 0 0;
      font-weight: 100;
      font-size: 10px; }
      @media (min-width: 0px) and (max-width: 650px) {
        .footer--sub a {
          width: 100%;
          clear: both; } }
    .footer--sub img {
      width: 80px;
      top: -10px;
      position: relative;
      margin-right: 50px; }
      @media (min-width: 0px) and (max-width: 650px) {
        .footer--sub img {
          display: none; } }
  .footer h3 {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700; }
  .footer h4 {
    font-size: 12px;
    font-weight: 300;
    margin-top: 10px; }
    .footer h4 a {
      color: white; }

form .action {
  padding: 20px 60px;
  display: inline-block;
  margin: 0 auto;
  text-align: center;
  float: none;
  font-size: 18px;
  margin-top: 30px; }

form .small {
  font-size: 16px;
  padding: 10px 20px;
  margin-top: 10px; }

input {
  border-radius: 3px;
  font-size: 16px;
  padding: 10px 20px;
  border: 1px solid #D8D8D8;
  font-family: "Open Sans", sans-serif;
  font-weight: 300; }
  input.error, input.error--major {
    border: 1px solid #BF392D; }
    input.error--major {
      border-right: 60px solid #BF392D; }

.hide-show {
  top: 60px;
  right: 30px;
  position: relative;
  z-index: 5;
  float: right; }
  .hide-show span {
    background: #2D7ABF;
    color: white;
    border-radius: 3px;
    padding: 5px;
    position: relative;
    font-weight: 900;
    font-size: 10px;
    text-transform: uppercase;
    cursor: pointer;
    width: 50px;
    float: right; }
  .hide-show + .helper, .hide-show + .helper--label, .hide-show + .helper--error, .hide-show + .helper--success {
    margin-top: -15px; }

label {
  display: block;
  font-size: 16px;
  margin-bottom: 10px;
  font-weight: 300;
  text-align: left; }

textarea {
  border: 1px solid #D8D8D8;
  border-radius: 3px;
  padding: 15px;
  font-size: 14px;
  font-weight: 300;
  width: 100%; }

.field, .field--shortened {
  margin: 10px 0;
  width: 100%;
  float: left; }
  .field--shortened {
    margin: 5px 0; }
  .field checklist, .field--shortened checklist {
    -webkit-column-count: 3;
            column-count: 3;
    width: 100%; }
    @media (min-width: 0px) and (max-width: 650px) {
      .field checklist, .field--shortened checklist {
        -webkit-column-count: 1;
                column-count: 1; } }
  .field.one-third, .one-third.field--shortened {
    width: 30%;
    margin-right: 3%; }
  .field.one-quarter, .one-quarter.field--shortened {
    width: 22%;
    margin-right: 3%; }
  .field.half, .half.field--shortened {
    width: 47%;
    margin-right: 3%; }
    .field.half.center, .half.center.field--shortened {
      width: 48%;
      margin-right: 4%; }
    .field.half.end, .half.end.field--shortened {
      width: 48%;
      margin-right: 0; }
  .field.auto, .auto.field--shortened {
    width: auto; }
  .field input, .field--shortened input {
    float: left;
    width: 100%; }
    .field input[disabled], .field--shortened input[disabled] {
      cursor: not-allowed; }
    .field input.one-third, .field--shortened input.one-third {
      width: 30%;
      margin-right: 3%; }
    .field input.half, .field--shortened input.half {
      width: 47%;
      margin-right: 3%; }
  .field .helper--error, .field--shortened .helper--error {
    text-transform: uppercase;
    font-weight: 700;
    text-align: left;
    font-size: 10px;
    margin: 5px 0; }

.helper, .helper--label, .helper--error, .helper--success {
  color: #979797;
  margin-top: 5px;
  display: block;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 10px;
  text-align: left;
  float: left;
  width: 100%; }
  .helper a, .helper--label a, .helper--error a, .helper--success a {
    color: #979797; }
  .helper--label {
    color: #272727;
    float: left;
    margin-top: 0;
    margin-bottom: 5px; }
    .helper--label.disabled {
      color: #D4D4D4; }
  .helper--action {
    color: #979797;
    border: 1px solid #979797;
    padding: 5px;
    float: right;
    margin-left: 10px;
    border-radius: 3px; }
  .helper--error {
    text-transform: none;
    color: #BF392D;
    text-align: center;
    font-weight: 300;
    font-size: 16px;
    margin: 10px 0; }
  .helper--success {
    text-transform: none;
    color: #2DBF41;
    text-align: center;
    font-weight: 300;
    font-size: 16px; }

.section-header {
  text-align: center;
  text-transform: uppercase;
  float: left;
  padding: 20px 0;
  width: 100%;
  font-size: 16px;
  letter-spacing: 2px;
  margin-top: 40px;
  margin-bottom: 20px;
  border-top: 1px solid #D8D8D8;
  border-bottom: 1px solid #D8D8D8; }
  .section-header + .helper, .section-header + .helper--label, .section-header + .helper--error, .section-header + .helper--success {
    margin-top: -10px;
    margin-bottom: 20px;
    text-align: center; }

select {
  border-radius: 3px;
  border: 1px solid #D8D8D8;
  font-size: 16px;
  color: #979797;
  background: white;
  font-weight: 300;
  height: 44px;
  width: 100%; }

input[type="checkbox"] {
  width: auto;
  padding: 0; }

.notification-callout, .notification-callout--error, .notification-callout--success {
  width: 100%;
  padding: 10px;
  text-align: center;
  color: white;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  background: #2D7ABF;
  border-radius: 3px;
  margin: 10px 0;
  float: left; }
  .notification-callout--error {
    background: #BF392D; }
  .notification-callout--success {
    background: #2DBF41; }

.page-title {
  font-size: 60px;
  margin-bottom: 20px;
  text-align: center;
  font-weight: 300; }

.half-container {
  width: 50%;
  float: left;
  padding: 0 5%;
  text-align: center; }
  .half-container.secondary {
    margin-top: 60px;
    text-align: left; }
    .half-container.secondary ul {
      padding: 0;
      padding-left: 20px;
      margin: 0;
      margin-top: 15px; }
      .half-container.secondary ul + h6 {
        margin-top: 30px; }
    .half-container.secondary li {
      padding: 0; }
  .half-container .section-title {
    text-align: center;
    font-size: 32px;
    font-weight: 300;
    margin-bottom: 20px; }
  @media (min-width: 0px) and (max-width: 650px) {
    .half-container {
      width: 100%; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .half-container {
      width: 100%; } }

.left-container {
  float: left;
  margin: 30px 2.5%;
  width: 45%; }
  .left-container:after {
    content: "";
    display: table;
    clear: both; }

.right-container {
  float: left;
  margin: 30px 2.5%;
  width: 45%; }
  .right-container:after {
    content: "";
    display: table;
    clear: both; }

.container .feeds, .container--body .feeds, #header .nav--main .feeds {
  width: 92% !important;
  max-width: 2000px !important;
  margin: auto; }

.breadcrumbs {
  font-weight: 300;
  width: 1160px;
  margin: 0 auto;
  padding: 15px 0;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: none; }
  .breadcrumbs .active-page {
    font-weight: 700; }
  .breadcrumbs .action {
    display: block;
    margin: 0 auto;
    float: none; }
  @media (min-width: 0px) and (max-width: 650px) {
    .breadcrumbs {
      width: 320px;
      padding: 20px;
      display: block; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .breadcrumbs {
      width: 80%; } }
  @media (min-width: 900px) and (max-width: 1350px) {
    .breadcrumbs {
      width: 800px; } }

.empty-results-message {
  text-align: center;
  padding: 50px;
  border-radius: 3px;
  background: white;
  float: left;
  width: 100%; }
  .empty-results-message .content {
    display: none; }
    .empty-results-message .content.default {
      display: block; }
    .empty-results-message .content p {
      width: 100%;
      display: block;
      text-align: center; }
    .empty-results-message .content .action {
      margin-top: 30px;
      float: none;
      display: inline-block;
      padding: 0; }
      .empty-results-message .content .action a {
        padding: 20px 40px; }
      @media (min-width: 0px) and (max-width: 650px) {
        .empty-results-message .content .action {
          width: 100%;
          display: block; } }

table {
  width: 100%;
  float: left; }

th {
  text-transform: uppercase;
  padding: 10px;
  font-weight: 700;
  font-size: 10px;
  text-align: left; }

td {
  vertical-align: middle;
  padding: 10px;
  font-weight: 300; }

tr {
  background-color: white; }
  tr:nth-child(even) {
    background-color: #F5F5F5; }

.close-btn {
  display: block;
  display: none \9;
  padding: 0;
  border: 0;
  outline: none;
  background-size: 1.875em 1.875em;
  overflow: hidden;
  white-space: nowrap;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .close-btn img {
    width: 30px;
    height: 30px; }
  .close-btn:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1; }

.nav-btn {
  display: block;
  display: none \9;
  padding: 0;
  border: 0;
  outline: none;
  overflow: hidden;
  white-space: nowrap;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer; }
  .nav-btn:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1; }

#outer-wrap {
  position: relative;
  overflow: hidden;
  width: 100%; }

#inner-wrap {
  position: relative;
  width: 100%; }

#nav {
  z-index: 200;
  position: relative;
  width: 100%;
  height: 100vh;
  color: #fff; }
  @media (min-width: 900px) and (max-width: 1350px) {
    #nav {
      width: auto; } }
  @media (min-width: 1350px) {
    #nav {
      width: auto; } }
  #nav .close-btn {
    display: none; }
  #nav ul {
    *zoom: 1;
    display: block;
    padding: 0; }
  #nav li a {
    display: block; }

@media (min-width: 650px) and (max-width: 900px) {
  #nav {
    position: absolute;
    top: 0; }
    #nav li {
      position: relative; }
  .js-ready #nav {
    height: 100%;
    height: 100vh;
    left: -350px;
    width: 350px;
    border: none;
    overflow: auto;
    display: block; }
    .js-ready #nav:after {
      content: "";
      display: table;
      clear: both; }
    .js-ready #nav .close-btn {
      display: block;
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
      opacity: 0.7;
      cursor: pointer;
      padding: 20px 0 10px 0; }
      .js-ready #nav .close-btn:hover {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1; }
      .js-ready #nav .close-btn img {
        width: 30px; }
      .js-ready #nav .close-btn a {
        display: block;
        margin: 0 auto; }
  .js-ready #inner-wrap {
    left: 0; }
  .js-nav #inner-wrap {
    left: 350px; }
  .csstransforms3d.csstransitions.js-ready #nav {
    left: 0;
    display: block;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .csstransforms3d.csstransitions.js-ready #inner-wrap {
    left: 0 !important;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: -webkit-transform 500ms ease;
    transition: -webkit-transform 500ms ease;
    transition: transform 500ms ease;
    transition: transform 500ms ease, -webkit-transform 500ms ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .csstransforms3d.csstransitions.js-nav #inner-wrap {
    -webkit-transform: translate3d(45%, 0, 0) scale3d(1, 1, 1);
    transform: translate3d(45%, 0, 0) scale3d(1, 1, 1); }
  .csstransforms3d.csstransitions.js-ready #nav .block {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
    -webkit-transition: opacity 300ms 100ms, -webkit-transform 500ms ease;
    -webkit-transition-delay: ease, 0s;
    -webkit-transition: opacity 300ms 100ms ease, -webkit-transform 500ms ease;
    transition: opacity 300ms 100ms ease, -webkit-transform 500ms ease;
    transition: opacity 300ms 100ms ease, transform 500ms ease;
    transition: opacity 300ms 100ms ease, transform 500ms ease, -webkit-transform 500ms ease;
    -webkit-transform: translate3d(70%, 0, 0) scale3d(0.9, 0.9, 0.9);
    transform: translate3d(70%, 0, 0) scale3d(0.9, 0.9, 0.9);
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%; }
  .csstransforms3d.csstransitions.js-nav #nav .block {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@media (min-width: 0px) and (max-width: 650px) {
  #nav {
    position: absolute;
    top: 0; }
    #nav li {
      position: relative; }
  .js-ready #nav {
    height: 100%;
    height: 100vh;
    width: 70%;
    left: -70%;
    border: none; }
    .js-ready #nav .close-btn {
      display: block;
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
      opacity: 0.7;
      cursor: pointer;
      padding: 20px 0 10px 0; }
      .js-ready #nav .close-btn:hover {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1; }
      .js-ready #nav .close-btn img {
        width: 30px; }
      .js-ready #nav .close-btn a {
        display: block;
        margin: 0 auto; }
  .js-ready #inner-wrap {
    left: 0; }
  .js-nav #inner-wrap {
    left: 70%; }
  .csstransforms3d.csstransitions.js-ready #nav {
    left: 0;
    display: block;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .csstransforms3d.csstransitions.js-ready #inner-wrap {
    left: 0 !important;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: -webkit-transform 500ms ease;
    transition: -webkit-transform 500ms ease;
    transition: transform 500ms ease;
    transition: transform 500ms ease, -webkit-transform 500ms ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .csstransforms3d.csstransitions.js-nav #inner-wrap {
    -webkit-transform: translate3d(70%, 0, 0) scale3d(1, 1, 1);
    transform: translate3d(70%, 0, 0) scale3d(1, 1, 1); }
  .csstransforms3d.csstransitions.js-ready #nav .block {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
    -webkit-transition: opacity 300ms 100ms, -webkit-transform 500ms ease;
    -webkit-transition-delay: ease, 0s;
    -webkit-transition: opacity 300ms 100ms ease, -webkit-transform 500ms ease;
    transition: opacity 300ms 100ms ease, -webkit-transform 500ms ease;
    transition: opacity 300ms 100ms ease, transform 500ms ease;
    transition: opacity 300ms 100ms ease, transform 500ms ease, -webkit-transform 500ms ease;
    -webkit-transform: translate3d(70%, 0, 0) scale3d(0.9, 0.9, 0.9);
    transform: translate3d(70%, 0, 0) scale3d(0.9, 0.9, 0.9);
    -webkit-transform-origin: 50% 0%;
    transform-origin: 50% 0%; }
  .csstransforms3d.csstransitions.js-nav #nav .block {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

* {
  font-family: 'Open Sans', sans-serif !important; }

.outgoing-request {
  position: fixed;
  border-radius: 3px;
  background: #D8D8D8;
  top: 40px;
  right: 40px;
  padding: 40px; }

.checkout-cart a {
  color: #272727 !important; }

.quickdate-popup {
  color: #272727 !important;
  border-radius: 3px !important;
  border: 1px solid #979797 !important; }

#outdated-browser ul {
  text-align: center;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 35px; }
  #outdated-browser ul li {
    display: inline-block;
    width: 25%;
    margin: 0 20px;
    padding: 0; }
    #outdated-browser ul li img {
      width: 100%; }

.wrapper {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto; }
  @media (min-width: 0px) and (max-width: 650px) {
    .wrapper {
      width: 100%; } }

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (min-width: 0px) and (max-width: 650px) {
    .row {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.header {
  padding: 30px 0; }
  @media (min-width: 0px) and (max-width: 650px) {
    .header {
      padding: 15px; } }
  @media (min-width: 0px) and (max-width: 650px) {
    .header img {
      max-width: 125px; } }
  @media (min-width: 0px) and (max-width: 650px) {
    .header + .section {
      margin-top: 0; } }

.container, .container--body, #header .nav--main,
.container--50 {
  padding: 0 60px; }
  @media (min-width: 0px) and (max-width: 650px) {
    .container, .container--body, #header .nav--main,
    .container--50 {
      padding: 15px; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .container, .container--body, #header .nav--main,
    .container--50 {
      padding: 0 30px; } }
  @media (min-width: 900px) and (max-width: 1350px) {
    .container, .container--body, #header .nav--main,
    .container--50 {
      padding: 0 30px; } }
  .container--50 {
    width: 50%;
    padding-left: 0; }
    @media (min-width: 0px) and (max-width: 650px) {
      .container--50 {
        width: 100%;
        background: #2D7ABF;
        padding-left: 15px; } }
    .container--50 img {
      width: 100%; }
    .container--50 + .container--50 {
      padding-left: 60px;
      padding-right: 0; }
      @media (min-width: 0px) and (max-width: 650px) {
        .container--50 + .container--50 {
          padding-left: 0;
          background: none; } }
      @media (min-width: 650px) and (max-width: 900px) {
        .container--50 + .container--50 {
          padding-left: 30px; } }
      @media (min-width: 900px) and (max-width: 1350px) {
        .container--50 + .container--50 {
          padding-left: 30px; } }

.document-mockup {
  max-width: 75%;
  margin: 0 auto;
  display: block; }
  @media (min-width: 650px) and (max-width: 900px) {
    .document-mockup {
      max-width: 100%; } }

@media (min-width: 0px) and (max-width: 650px) {
  .hero {
    margin-top: 0; } }

.hero h1,
.hero h2,
.hero h3,
.hero h4,
.hero h5,
.hero h6,
.hero p,
.hero ul,
.hero li {
  color: white; }

.hero a {
  color: white;
  text-decoration: underline; }

.hero:before {
  content: ' ';
  position: absolute;
  top: 0;
  left: 0;
  background-color: #2D7ABF;
  width: 100%;
  height: 600px;
  z-index: -1; }

.hero .arrow {
  position: absolute;
  right: -50px;
  bottom: 50%;
  width: 75px;
  z-index: -1; }
  @media (min-width: 0px) and (max-width: 650px) {
    .hero .arrow {
      display: none; } }
  @media (min-width: 650px) and (max-width: 900px) {
    .hero .arrow {
      display: none; } }
  @media (min-width: 900px) and (max-width: 1350px) {
    .hero .arrow {
      display: none; } }

.section {
  margin-top: 30px; }
  @media (min-width: 0px) and (max-width: 650px) {
    .section {
      margin-top: 15px; } }

.callout {
  padding: 60px;
  text-align: center;
  background: #272727;
  color: white; }
  @media (min-width: 0px) and (max-width: 650px) {
    .callout {
      padding: 15px; } }
  .callout h2 {
    font-size: 24px;
    font-weight: 300; }
    @media (min-width: 0px) and (max-width: 650px) {
      .callout h2 {
        font-size: 18px; } }
  .callout h3 {
    font-size: 18px;
    font-weight: 300; }
    @media (min-width: 0px) and (max-width: 650px) {
      .callout h3 {
        font-size: 16px; } }

.footer {
  background: white; }
  .footer img {
    width: 100%;
    max-width: 190px;
    margin: 0 auto;
    display: block; }
    @media (min-width: 0px) and (max-width: 650px) {
      .footer img {
        max-width: 125px; } }

.hs_submit .actions {
  padding: 0;
  margin: 0; }

input.hs-input {
  width: 100% !important;
  padding: 10px !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  height: auto !important; }

.logged-out.mobile {
  padding-bottom: 150px;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  overflow-y: scroll !important;
  height: 100% !important; }

.hs-form {
  background: white;
  -webkit-box-shadow: 0 13px 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 13px 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  padding: 30px !important;
  margin-top: 30px; }
  .hs-form .hs-button {
    border: none !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    background-color: #F4931E !important;
    width: 100% !important;
    color: white !important;
    padding: 15px !important;
    text-shadow: none !important;
    text-transform: uppercase;
    font-weight: 400 !important;
    font-size: 16px !important; }
    .hs-form .hs-button:hover {
      background-color: #A65A00 !important; }
  .hs-form input {
    width: 100% !important;
    -webkit-box-sizing: border-box !important;
            box-sizing: border-box !important; }
  .hs-form label {
    text-transform: uppercase;
    font-weight: 700; }

.webinar .hero {
  background: #2D7ABF;
  margin: 0;
  padding: 60px 0;
  background-size: cover;
  background-position: center center; }
  @media (min-width: 0px) and (max-width: 650px) {
    .webinar .hero {
      padding: 30px 0; } }
  .webinar .hero:before {
    content: none; }
  .webinar .hero .logo {
    margin-bottom: 60px; }
    @media (min-width: 0px) and (max-width: 650px) {
      .webinar .hero .logo {
        margin-bottom: 30px; } }
  .webinar .hero h3 {
    text-transform: uppercase;
    font-size: 12px; }
  .webinar .hero h1 {
    margin-top: 5px; }
  @media (min-width: 0px) and (max-width: 650px) {
    .webinar .hero {
      padding: 15px; } }

.webinar .arrow {
  width: 175px;
  position: absolute;
  right: 0;
  bottom: 0; }
  @media (min-width: 0px) and (max-width: 650px) {
    .webinar .arrow {
      display: none; } }

@media (min-width: 0px) and (max-width: 650px) {
  .webinar .container--50 {
    background: white; } }

@media (min-width: 0px) and (max-width: 650px) {
  .webinar .container--50 h1 {
    display: none; } }

.webinar .hosted-by h6 {
  text-transform: uppercase;
  margin-bottom: 30px; }
  .webinar .hosted-by h6.centered {
    text-align: center; }

.webinar .hosted-by .presenter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 30px; }
  .webinar .hosted-by .presenter img {
    border-radius: 100%;
    margin-bottom: 15px; }
  .webinar .hosted-by .presenter h6 {
    text-transform: none;
    font-weight: 300; }

.webinar .hosted-by .wrapper {
  border-top: 1px solid #272727;
  border-bottom: 1px solid #272727;
  padding: 30px 0; }
  .webinar .hosted-by .wrapper .row {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

* {
  font-family: 'Open Sans', sans-serif !important; }

.outgoing-request {
  position: fixed;
  border-radius: 3px;
  background: #D8D8D8;
  top: 40px;
  right: 40px;
  padding: 40px; }

.checkout-cart a {
  color: #272727 !important; }

.quickdate-popup {
  color: #272727 !important;
  border-radius: 3px !important;
  border: 1px solid #979797 !important; }

#outdated-browser ul {
  text-align: center;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 35px; }
  #outdated-browser ul li {
    display: inline-block;
    width: 25%;
    margin: 0 20px;
    padding: 0; }
    #outdated-browser ul li img {
      width: 100%; }
