/*
 * Do not add any actual CSS definitions outside of variables and mixins.
 * Since this file is imported in multiple places in this project any
 * actual definitions will result in duplicated styles.
 */
/*
 * Do not add any actual CSS definitions outside of variables and mixins.
 * Since this file is imported in multiple places in this project any
 * actual definitions will result in duplicated styles.
 */
/* Clear fix */
/* Size */
/* hr psuedo */
/* Vertical Align Mixin */
/* Flexbox*/
/* Vertical Align Mixin */
/*
 * Do not add any actual CSS definitions outside of variables and mixins.
 * Since this file is imported in multiple places in this project any
 * actual definitions will result in duplicated styles.
 */
body,
.reviews-wrapper,
.filtering-wrapper,
.footer-cta {
  background: #f2f2f3; }

.category {
  background-color: #f2f2f3; }
  .category .sticky-navigation {
    background-color: white; }
    .category .sticky-navigation.js-is-sticky--change {
      border-bottom: .0625rem solid #ccc; }

header#product h1 {
  font-family: 'Nunito Sans', "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 1.75rem;
  color: #18171c;
  font-weight: 700;
  line-height: 2.375rem;
  letter-spacing: -.025rem; }
  @media all and (max-width: 599px) {
    header#product h1 {
      font-family: 'Nunito Sans', "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
      font-size: 1.5rem;
      color: #18171c;
      font-weight: 700;
      line-height: 2.125rem;
      letter-spacing: -.0125rem;
      margin-bottom: .25rem; } }

@media all and (max-width: 599px) {
  .product-summary {
    display: none; } }

.product-summary-container {
  background: #d8dee9;
  border: 0.0625rem solid #b7c3d7;
  padding: .5rem;
  margin: 1.5rem 0 1rem 0;
  border-radius: .25rem; }
  .product-summary-container p {
    margin-bottom: 0;
    line-height: 1.125rem; }
  @media all and (min-width: 600px) and (max-width: 999px) {
    .product-summary-container {
      display: none; } }

.category-filter-titles,
.category-filter-inputs {
  max-width: 75.06rem;
  margin: 0 auto; }
  @media all and (max-width: 599px) {
    .category-filter-titles,
    .category-filter-inputs {
      display: none; } }

#filter-group-container {
  background: #f2f2f3;
  background: salmon !important;
  border-bottom: .0625rem solid #dee7e7; }
  @media all and (max-width: 599px) {
    #filter-group-container {
      border-bottom: 0; } }

#filter-group.sticky-navigation {
  background: white;
  border-bottom: 0.0625rem solid #dee7e7;
  height: initial; }

.category-filter-inputs p.small {
  margin-top: .5rem;
  margin-bottom: .175rem; }

.category-filter-inputs .category-filters-reset {
  color: #083cf7; }
  .category-filter-inputs .category-filters-reset:before {
    content: url("data:image/svg+xml;charset=UTF-8, %3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%3Crect%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%23fff%22%20opacity%3D%220%22%2F%3E%3Cpolygon%20points%3D%224.25%2011%204.25%205%207%205%203.5%201.5%200%205%202.75%205%202.75%2012.5%208.5%2012.5%207%2011%204.25%2011%22%20fill%3D%22%233B65F9%22%2F%3E%3Cpolygon%20points%3D%2213.25%2011%2013.25%203.5%207.5%203.5%209%205%2011.75%205%2011.75%2011%209%2011%2012.5%2014.5%2016%2011%2013.25%2011%22%20fill%3D%22%233B65F9%22%2F%3E%3C%2Fsvg%3E");
    position: relative;
    top: .1875rem;
    margin-right: .25rem;
    margin-left: .25rem; }

.category-container {
  margin-top: 0;
  padding-bottom: 1rem; }
  @media all and (max-width: 599px) {
    .category-container .results-note .results-note-showing {
      display: none; } }
  @media all and (max-width: 599px) {
    .category-container .results-note .results-note-products {
      display: none; } }
  .category-container .sorting-container {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
    -ms-flex-flow: row nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row nowrap;
    /* flex-start, flex-end, center, baseline, !stretch! */
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    -moz-align-items: baseline;
    align-items: baseline;
    /* !flex-start!, flex-end, center, space-between, space-around */
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -moz-justify-content: flex-end;
    justify-content: flex-end;
    text-align: right; }
    .category-container .sorting-container span {
      -webkit-box-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      display: inline-block;
      margin-right: .25rem; }
      @media all and (max-width: 599px) {
        .category-container .sorting-container span {
          display: none; } }
    .category-container .sorting-container .select-alt-container {
      margin-bottom: 0; }
      .category-container .sorting-container .select-alt-container select.select-alt {
        -webkit-box-flex: 1 0 12.5rem;
        -ms-flex: 1 0 12.5rem;
        flex: 1 0 12.5rem;
        max-width: 12.5rem; }

.product-card-recommendations .tooltip-content {
  left: -10.85em !important; }

.product-card-cost .tooltip-content {
  left: -8em !important; }

.product-card-cost:hover .tooltip-content {
  bottom: 2.75rem !important; }

.product-card-expand {
  margin: 1rem 0;
  padding: .125rem 1.25rem 0;
  overflow: hidden;
  background: white;
  background: -webkit-gradient(linear, left top, left bottom, from(white), to(#ededed));
  background: linear-gradient(to bottom, white 0%, #ededed 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );
  border-radius: .25rem;
  border: 0.0625rem solid rgba(89, 84, 88, 0.4) !important;
  color: #2b303b;
  font-size: .875rem;
  line-height: 2.75rem;
  letter-spacing: .03125rem; }
  .product-card-expand:hover {
    border: 0.0625rem solid #595458 !important;
    cursor: pointer;
    color: #2b303b; }
  @media all and (max-width: 599px) {
    .product-card-expand {
      margin: 1rem 0rem 2rem;
      width: calc(100vw - 2rem); } }

.tabs-container.header-nav-tabs ul {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.buyers-guide-wrapper {
  -webkit-box-flex: 1 0 66.67%;
  -ms-flex: 1 0 66.67%;
  flex: 1 0 66.67%;
  max-width: 66.67%; }
  @media all and (min-width: 320px) and (max-width: 599px) {
    .buyers-guide-wrapper {
      -webkit-box-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto;
      max-width: 100%; } }
  .buyers-guide-wrapper #bg-author img {
    margin: 0 0 .9375rem 0; }
  .buyers-guide-wrapper #bg-author br {
    display: none; }
  .buyers-guide-wrapper #bg-author span > a {
    display: inline-block; }
  .buyers-guide-wrapper #bg-author span > span {
    display: block;
    color: #595458; }
  .buyers-guide-wrapper #bg-author span > a,
  .buyers-guide-wrapper #bg-author span > span {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-bottom: .3125rem; }
  @media all and (max-width: 599px) {
    .buyers-guide-wrapper .contain {
      width: calc(100vw - 1rem);
      padding: 0 .5rem; } }
  @media all and (min-width: 320px) and (max-width: 599px) {
    .buyers-guide-wrapper .contain {
      padding: 0 .5rem; } }
  .buyers-guide-wrapper .contain > div:nth-child(2) {
    border-top: 0.25rem solid #2d284d;
    margin-top: 3rem;
    padding-top: 1.5rem; }
    .buyers-guide-wrapper .contain > div:nth-child(2) h2 {
      margin: 1rem 0; }
    .buyers-guide-wrapper .contain > div:nth-child(2) p br {
      display: block;
      height: 1.25rem;
      width: 0;
      content: "";
      padding-left: .9375rem; }
    .buyers-guide-wrapper .contain > div:nth-child(2) strong {
      font-size: 1rem;
      color: #595458; }
  .buyers-guide-wrapper article {
    border-top: 0.25rem solid #2d284d;
    margin-top: 3rem;
    padding-top: 1.5rem; }
    .buyers-guide-wrapper article:nth-child(1) {
      border: none;
      padding-top: 0;
      margin-top: 0; }
    .buyers-guide-wrapper article section {
      width: 100%; }
      .buyers-guide-wrapper article section h3 {
        margin-bottom: 1rem;
        margin-top: 2.25rem; }
        .buyers-guide-wrapper article section h3:first-child {
          margin-top: 1rem; }
      .buyers-guide-wrapper article section > p {
        margin: .75rem 0; }
  .buyers-guide-wrapper ul {
    margin-bottom: 2rem; }
    .buyers-guide-wrapper ul li {
      list-style-type: disc;
      padding-left: .5rem;
      margin-left: 1.25rem;
      font-size: 1rem;
      line-height: 1.5rem;
      color: #595458;
      margin-bottom: 1rem; }
    .buyers-guide-wrapper ul ul li {
      list-style-type: circle; }
      .buyers-guide-wrapper ul ul li p {
        margin-bottom: 1rem; }
  .buyers-guide-wrapper center tr td strong {
    padding: 2.125rem 0 .625rem; }
  .buyers-guide-wrapper table {
    width: 100%;
    margin-bottom: 1.25rem;
    border: 0.0625rem solid #dee7e7;
    border-spacing: 1rem;
    border-collapse: inherit; }
    .buyers-guide-wrapper table tr td {
      font-size: 1rem;
      line-height: 1.5rem;
      color: #595458; }
      .buyers-guide-wrapper table tr td:first-child {
        min-width: 12.5rem; }
        @media all and (max-width: 599px) {
          .buyers-guide-wrapper table tr td:first-child {
            min-width: auto; } }
      .buyers-guide-wrapper table tr td strong {
        font-size: 1rem;
        line-height: 1.5rem;
        color: #595458;
        font-weight: 800;
        max-width: 18.75rem;
        width: 100%;
        display: block;
        padding: 0rem 0 .625rem; }
      .buyers-guide-wrapper table tr td a {
        display: inline-block;
        margin-bottom: 0; }
  .buyers-guide-wrapper .table {
    border: 0.0625rem solid #dee7e7; }
    .buyers-guide-wrapper .table .table-row {
      display: -webkit-box;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
      -ms-flex-flow: row nowrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-flow: row nowrap;
      border-bottom: 0.0625rem solid #dee7e7; }
      @media all and (min-width: 320px) and (max-width: 599px) {
        .buyers-guide-wrapper .table .table-row {
          /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
          -ms-flex-flow: column;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
                  flex-flow: column; } }
      .buyers-guide-wrapper .table .table-row:last-child {
        border: 0; }
      .buyers-guide-wrapper .table .table-row > div {
        -webkit-box-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        text-align: left;
        padding: 1.5rem;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #595458; }
        @media all and (min-width: 320px) and (max-width: 599px) {
          .buyers-guide-wrapper .table .table-row > div {
            padding: .375rem .75rem .75rem .75rem; } }
        .buyers-guide-wrapper .table .table-row > div:first-child {
          font-size: 1rem;
          line-height: 1.5rem;
          color: #595458;
          font-weight: 800;
          max-width: 18.75rem;
          width: 100%;
          -webkit-box-flex: 1 0 auto;
          -ms-flex: 1 0 auto;
          flex: 1 0 auto; }
          @media all and (min-width: 320px) and (max-width: 599px) {
            .buyers-guide-wrapper .table .table-row > div:first-child {
              padding: .75rem .75rem 0; } }
  .buyers-guide-wrapper .screenshot-container {
    text-align: center;
    margin: 2.25rem 0; }
    .buyers-guide-wrapper .screenshot-container img {
      width: 100%; }
    .buyers-guide-wrapper .screenshot-container p.text {
      font-size: 0.875rem;
      line-height: 1.3125rem;
      margin: .5rem 0 1rem; }
  .buyers-guide-wrapper p img {
    display: block;
    margin: 2.25rem auto 0;
    width: 100%; }
    @media all and (min-width: 320px) and (max-width: 599px) {
      .buyers-guide-wrapper p img {
        width: 100%; } }
  .buyers-guide-wrapper p em {
    font-size: 1.125rem;
    line-height: 1.3125rem;
    display: inline-block; }

.front-runner-wrapper .front-runner-title {
  margin-top: 1.5rem;
  margin-bottom: 1rem; }

@media all and (min-width: 320px) and (max-width: 599px) {
  .front-runner-wrapper .front-runner-tabs {
    width: 90vw !important; } }

.front-runner-wrapper .front-runner-tabs .tabs {
  padding: 0 !important;
  margin: 0 !important;
  border-bottom: 0;
  background: none;
  width: 100%; }
  .front-runner-wrapper .front-runner-tabs .tabs .tabs-container {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    /* !flex-start!, flex-end, center, space-between, space-around */
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -moz-justify-content: flex-end;
    justify-content: flex-end;
    /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
    -ms-flex-flow: row wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row wrap;
    border-bottom: 0.0625rem solid #dee7e7;
    width: 100%; }
    @media all and (min-width: 320px) and (max-width: 599px) {
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container {
        width: 90vw !important; } }
    @media all and (max-width: 599px) {
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container {
        /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
        -ms-flex-flow: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
                flex-flow: column; } }
    .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto; }
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul li > p {
        font-size: 0.875rem;
        color: #2b303b;
        font-weight: 400;
        margin-bottom: 0;
        line-height: initial; }
        .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul li > p a {
          text-transform: lowercase; }
          .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul li > p a::first-letter {
            text-transform: capitalize; }
      @media all and (min-width: 320px) and (max-width: 599px) {
        .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul {
          width: 90vw !important; } }
      @media all and (max-width: 599px) {
        .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul li {
          -webkit-box-flex: 1 1 auto;
          -ms-flex: 1 1 auto;
          flex: 1 1 auto;
          margin-right: 0; } }
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container ul li:first-child p:first-child {
        margin-left: 0 !important; }
    .front-runner-wrapper .front-runner-tabs .tabs .tabs-container .chips-select-wrapper {
      max-width: 25rem;
      /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
      -ms-flex-flow: row nowrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-flow: row nowrap;
      /* flex-start, flex-end, center, baseline, !stretch! */
      -webkit-box-align: center;
      -ms-flex-align: center;
      -moz-align-items: center;
      align-items: center;
      top: -.5rem; }
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container .chips-select-wrapper label {
        white-space: nowrap;
        margin-right: .5rem; }
      @media all and (max-width: 599px) {
        .front-runner-wrapper .front-runner-tabs .tabs .tabs-container .chips-select-wrapper {
          margin: .9375rem 0rem 0;
          min-width: 100%; } }
      .front-runner-wrapper .front-runner-tabs .tabs .tabs-container .chips-select-wrapper .chips-select {
        margin-right: 0;
        min-width: 11.56rem;
        margin-bottom: 0;
        position: relative;
        top: -.25rem;
        right: -.25rem; }

.front-runner-wrapper .front-runner-tabs-content {
  border: .0625rem solid #dee7e7;
  margin-bottom: .5rem;
  margin-top: 1rem; }
  .front-runner-wrapper .front-runner-tabs-content .quadrant {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
    -ms-flex-flow: row nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-flow: row nowrap;
    padding: 0; }
    @media all and (max-width: 599px) {
      .front-runner-wrapper .front-runner-tabs-content .quadrant {
        /* Combination of flex-direction AND flex-wrap, default is row AND nowrap */
        -ms-flex-flow: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
                flex-flow: column;
        padding: .5rem; } }
    .front-runner-wrapper .front-runner-tabs-content .quadrant .quadrant-image {
      -webkit-box-flex: 1 1 66%;
      -ms-flex: 1 1 66%;
      flex: 1 1 66%;
      max-width: 52.25rem;
      padding: 1rem 1rem 0 0;
      background: #fff; }
      @media all and (max-width: 599px) {
        .front-runner-wrapper .front-runner-tabs-content .quadrant .quadrant-image {
          -webkit-box-flex: 1 0 auto;
          -ms-flex: 1 0 auto;
          flex: 1 0 auto; } }
      .front-runner-wrapper .front-runner-tabs-content .quadrant .quadrant-image img {
        width: 100%; }
    .front-runner-wrapper .front-runner-tabs-content .quadrant .quadrant-list {
      -webkit-box-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      padding-left: 1.5rem;
      padding-top: 1rem; }
      .front-runner-wrapper .front-runner-tabs-content .quadrant .quadrant-list ul li {
        font-size: .8125rem;
        line-height: 1.5rem;
        color: #595458;
        margin-bottom: 0; }

.front-runner-wrapper .contain {
  -webkit-box-flex: 1 0 66.67%;
  -ms-flex: 1 0 66.67%;
  flex: 1 0 66.67%;
  max-width: 66.67%;
  border-bottom: .25rem solid #2d284d;
  margin-bottom: 3rem;
  padding-bottom: 1.5rem; }
  @media all and (min-width: 320px) and (max-width: 599px) {
    .front-runner-wrapper .contain {
      -webkit-box-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto;
      max-width: 100%; } }
  .front-runner-wrapper .contain .row {
    margin: 0 !important; }
    .front-runner-wrapper .contain .row .columns img,
    .front-runner-wrapper .contain .row .columns em {
      text-align: center;
      display: block;
      margin: 1rem auto; }
    @media all and (min-width: 320px) and (max-width: 599px) {
      .front-runner-wrapper .contain .row div {
        max-width: 100%; }
      .front-runner-wrapper .contain .row img {
        display: block;
        width: 100%;
        height: inherit; } }
  .front-runner-wrapper .contain h2 {
    margin-bottom: 0; }
  .front-runner-wrapper .contain ul li {
    list-style-type: disc;
    padding-left: .5rem;
    margin-left: 1.25rem;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #595458;
    margin-bottom: 1rem; }
