/*  --------------- motis base ------------------- */
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
    background: #E3E3E3;
    color: #333333;
    font-family: 'museo-sans', Helvetica, Arial, 'Lucida Grande', sans-serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 1.6;
}

a,
a:hover,
a:focus {
    color: #205D86;
}

a.skip-main {
    left:-999px;
    position:absolute;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
    z-index:-999;
}

a.skip-main:focus,
a.skip-main:active {
    left: 15px;
    top: 2px;
    width: 200px;
    height: auto;
    overflow: visible;
    padding: 5px;
    border-radius: 15px;
    text-align: center;
    font-size: 12px;
    z-index: 9999;
    font-weight: bold;
    outline: none;
    background-color:#fff;
}

.text-underline {text-decoration: underline;}

img {
    height: auto;
}

.back-top {
    bottom: 95px;
    right: 15px;
}

.osano-cm-widget{display: none!important;} 

/*  --------------- utility ------------------- */
.line-clamp {
    display: -webkit-box;   
    -webkit-box-orient: vertical;  
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.line-clamp-2 {
    -webkit-line-clamp: 2;
}

.line-clamp-3 {
    -webkit-line-clamp: 3;
}


.flex-shrink-0 {
    flex-shrink: 0;
}

.sticky {
    position: sticky;
    padding-top: 20px;
    top: 0;
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.parallax {
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 100%;
}

.gutter-md > [class*="col-"] {
    padding-right: 10px;
    padding-left: 10px;
}

.prod-read-more {
    font-weight: bold;
}

.yt-embed-container {
    height: 0;
    max-width: 100%;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}

.yt-embed-container iframe,
.yt-embed-container object,
.yt-embed-container embed { 
    height: 100%; 
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.ajax-loading {
    min-height: 100px;
    text-align: center;
}

.slick-prev, .slick-next {
    font-family: "Font Awesome 6 Pro";
    background: transparent;
}

.slick-dots li button {
    background: transparent;
}

.has-error .form-control {
    border-color: #a94442;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
}

.has-error .form-control:focus {
    border-color: #843534;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px #ce8483;
}

.bg-white-gradient {
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255, 255, 255, 0.85) 28%, rgba(255, 255, 255, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
}


.overflow-y-scroll {overflow-y: scroll;}
.overflow-x-scroll {overflow-x: scroll;}
.overflow-y-auto {overflow-y: auto;}
.overflow-x-auto {overflow-x: auto;}

.scroll::-webkit-scrollbar-track {
  background-color: #ddd;
  border-radius: 0 4px 4px 0;
}

.scroll::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 1px;
    height: 8px;
}

.scroll::-webkit-scrollbar-thumb {
  border-radius: 7px;
  background: #aaa;
}


/* forms */

.form-control {
    font-size: 16px;
}

label {
    font-weight: bold;
    margin-bottom: 0.2rem;
}

input,
button,
select,
textarea {
    max-width: 100%;
}

.input-sm {
    padding: 2px 10px;
}

.input-group-number {
    height: 60px;
    width: 150px;
    margin: auto;
}

.input-group-number .input-group-btn:first-child {
    margin-right: 7px;
}

.input-group-number .input-group-btn:last-child {
    margin-left: 7px;
}


#free-shipping {
    font-size: 20px;
    position: relative;
    top: -3px;
}

.main {
    background-color: #E3E3E3;
    padding: 20px 0;
    min-height: auto;
    overflow: unset;
}

.mode-dr.page-product .main,
.page-article .main,
.page-product .main,
.page-default .main,
.page-cart .main,
.page-category .main,
.page-search .main,
.page-silverspringmodularramps .main {
    padding-top: 0;
}

.slick-dots {
    bottom: 10px;
}

.slick-dots li button:before {
    background-color: #000000;
    border-radius: 50%;
    border: 2px solid #FFFFFF;
    content: '';
    height: 14px;
    opacity: 1;
    width: 14px;
}

.slick-dots li.slick-active button:before {
    background-color: #E0001B;
    content: '';
}
 
/* utility */

.drop-shadow {
    box-shadow: rgba(0, 0, 0, 0.172549) 0 6px 9px 0;
}

.uppercase {
    text-transform: uppercase;
}

.text-transform-none {
    text-transform: none !important;
}

.bold {
    font-weight: 700;
}

.extrabold {
    font-weight: 900;
}

.normal {
    font-weight: normal;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    color: #888888;
}

.col-sticky {
    position: sticky;
    padding-top: 10px;
    top: 0;
}

.col-sticky-adjacent {
    padding-top: 10px;
}

.breadcrumb {
    background: transparent;
    border-radius: 0;
    font-size: 13px;
    margin-bottom: 0;
}

.breadcrumb a {
    font-weight: bold;
}

.breadcrumb > li + li:before {
    color: #999999;
    content: "//";
    padding: 0 4px;
}

.popover {
    z-index: 3000;
}

a.status {
    cursor: pointer;
    text-decoration: none
}

a.status:focus {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.popover {
    color:#000;
    z-index: 1000;
}

.icons-wrap {
    margin: 0;
}

.icons-wrap .prod-callout {
    margin-bottom: 20px;
}

.icons-wrap .prod-icon-heading {
    font-size: 20px;
    font-weight: 900;
    line-height: 22px;
    margin-bottom: 2px;
    text-transform: uppercase;
}

.icons-wrap .prod-icon-subheading {
    font-size: 18px;
    line-height: 20px;
}

/* typography */
.h1,
h1 {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
}

h2 {
    font-size: 20px;
    font-weight: 700;
}

h3 {
    font-size: 18px;
    font-weight: 700;
}

.product-grid-paging {
    font-size: 14px;
}

.btn-sm {
    padding: 5px 10px;
}

.btn-xs-lg {
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.33;
}

.btn:disabled,
.btn.disabled {
    cursor: not-allowed;
    opacity: 0.3;
}

.focus-outline-0 {
  outline: none!important;
  box-shadow: none!important;
}

h4 {
    font-size: 14px;
}

h5 {
    font-size: 13px;
}

.page-sitemap .main h3 a {
    color: #000000;
}

.price {
    line-height: 1;
    text-align: left;
}

.price-label,
.no-web-price {
    color: #525252;
    font-size: 12px;
    font-weight: normal;
    height: 12px;
}

.reg,
.sale {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
    display: inline;
}

.was {
    color: #737373;
    display: inline;
    font-size: 11px;
    font-weight: normal;
    text-align: left;
}

.product-single-item .was {
    display: inline-block;
}

.was-amt {
    text-decoration: line-through;
}

.sale {
    color: #E0001B;
}

.save {
    display: none;
    font-size: 11px;
}

.price-drop {
    display: none;
    font-size: 13px;
    font-style: italic;
    font-weight: bold;
    margin-top: 5px;
}

.product-single-details .reg,
.product-single-details .sale,
#ShoppingCartAdd .price .sale,
.productGrid .price .sale {
    display: inline-block;
    padding-top: 7px;
    margin: 5px 0 0;
}

.product-single-details .sale,
#ShoppingCartAdd .price .sale,
.productGrid .price .sale {
    background: #000;
    border-radius: 3px;
    color: #FFF;
    padding: 7px;
}

.msrp-label {

}

.blockMsg {
    font-family: "museo-sans", sans-serif;
}

.text-primary {
    color: #272727 !important;
}

.text-secondary {
    color: #E0001B !important;
}

.text-tertiary {
    color: #000000 !important;
}

.text-accent {
    color: #E67B08 !important;
}

.text-black {
    color: #272727 !important;
}

.text-white {
    color: #FFFFFF !important;
}

.text-cta {
    color: #0085CA !important;
}

/*  ---------------------------- tables ----------------------- */

.table-primary th {
    background: #333333;
    border: 0;
    color: #FFFFFF;
}

.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
    border-color: #333333;
}

.table-primary,
.table-primary > td {
    background-color: #FFFFFF;
}

.table.table-cart th {
    border: 0;
}

.table {
    border-bottom: 1px solid #DDDDDD;
}

.list-group-item.selected a,
.list-group-item a {
    font-weight: normal;
}

.list-group-item.selected a:after {
    display: none;
}

a.list-group-item:hover {
    background-color: #EEEEEE;
}

a.list-group-item.active,
a.list-group-item.active:hover,
a.list-group-item.active:focus {
    background-color: #272727;
    border-color: #272727;
}

#recommender_viewed {
    border: 1px solid #E3E3E3;
    margin-top: 30px;
}

#shop-by-panel {
    display: none;
    margin-bottom: 50px;
}

#facet-card {
    display: none;
}

a[data-zoom-id],
.mz-thumb,
.mz-thumb:focus {
    display: block;
}

.mz-thumb:focus {
    filter: brightness(30%);
    -webkit-filter: brightness(30%);
}

.mz-thumb img,
a[data-zoom-id] img {
    border: 1px solid #DDDDDD;
    box-shadow: none;
    padding: 0;
    transition: filter 0.3s;
}

.mz-thumb-selected img,
.mz-thumb:hover:not(.mz-thumb-selected) img {
    filter: brightness(50%);
    -webkit-filter: brightness(50%);
}

.mz-expand {
    z-index: 9999999999;
}

.mz-button:focus:before {
    background-color: #FFFFFF;
}

.slide:hover img {
    border-color: #dddddd;
}


/*  --------------- header ------------------- */

.logo-mobile {
   max-height: 30px;
}

.header-bar {
    background: #E3E3E3;
    color: #292325;
    font-size: 14px;
    line-height: 1.3;
    padding: 12px 0;
}

.header-bar a {
    color: #292325;
}

.header-bar-links .list-inline-item {
    font-weight: bold;
    text-transform: uppercase;
}

.header-bar-links .list-inline-item:not(:last-child) {
    margin-right: 20px;
}

.header-bar-links ul {
    margin-bottom: 0;
}

.header-bar {
    text-align: center;
}

.header-tools {
    margin-bottom: 0;
    text-align: right;
}

.fa-bars {
    display: block;
    font-size: 22px;
    margin-left: 6px;
}

.mobile-nav {
    text-align: left;
}

.nav-trigger {
    height: auto;
    line-height: 1;
}

.nav-trigger:hover {
    text-decoration: none;
}

.mobile-nav .nav-trigger div {
    font-size: 11px;
    line-height: 1;
}

.cart .fa-shopping-cart,
.phone .fa-phone {
    font-size: 22px;
}

.list-inline-item.phone {
    margin-right: 12px;
}

.site-search {
    background: none;
    margin: 0;
    position: relative;
}

.site-search .input-group {
    border: 1px solid #A5A5A5;
}

.site-search .fa-search {
    color: #838383;
}

.site-search .input-group-append > .btn {
    border-radius: 0;
}

.site-search .input-group-lg > .form-control {
    font-size: 16px;
    border-radius: 0;
    border: 0;
}

/* Search Autocomplete */
.search-suggestions {
    background-color: #FFFFFF;
    border
    display: block;
    left: 0;
    max-height: 460px;
    overflow: auto;
    position: absolute;
    width: 100%;
    z-index: 2000;
}

.search-suggestions a {
    font-size: 14px;
    line-height: 20px;
    padding: 0;
    margin: 0;
}

.search-suggestions-product-inner {
    border: 1px solid #EEEEEE;
    transition: all 0.25s;
}

.search-suggestions-product-inner:hover {
    box-shadow: rgba(0, 0, 0, 0.15) 0 0 8px 0;
    text-decoration: none;
    transform: scale(1.03);
}

.search-suggestions-product-name {
    height: 60px;
    overflow: hidden;
}

.sticky-nav {
    position: sticky;
    top: 0;
}

.main-nav {
    max-width: 1140px;
    width: 100%;
    margin: 0 auto;
}

.main-nav-wrap  {
    background: #272727;
}

.tool-tip {
    display: inline-block;
}

.tool-tip a {
    font-weight: bold;
    text-decoration: underline;
    color: #FFFFFF;
}

.cart-total-items {
    align-items: center;
    background: #2A7AB0;
    border: 1px solid #FFFFFF;
    border-radius: 50%;
    color: #FFFFFF;
    display: block;
    display: flex;
    font-size: 10px;
    font-weight: bold;
    height: 18px;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: -7px;
    text-align: center;
    top: -9px;
    width: 18px;
}

.cart.hover-nav {
    border-radius: 0;
}

#calculator-sheet {
    background-color: #E3E3E3;
    padding: 15px;
}

.rounded-wrapper {
    border-radius: 50%;
    border: 5px solid #FFFFFF;
    margin-bottom: 15px;
    overflow: hidden;
    position: relative;
}

.rounded-wrapper:hover {
    box-shadow: 0 0 10px 5px rgba(0,0,0,.2);
}

.rounded-wrapper span {
    background-color: #F20004;
    color: #FFFFFF;
    font-size: 1.6em;
    font-weight: 800;
    padding: 10px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 45px;
    width: 100%;
}

.rounded-wrapper:hover span {
    background-color: #000000;
}

.main-header {
    z-index: 1200;
}

.main-header .container {
    position: relative;
}

#floating-cart {
    border: 4px solid #E0001B;
    width: auto;
    right: 0;
    padding: 10px;
    top: 44px;
}

#floating-cart .cart-group {
    margin: 0;
}

#floating-cart .product-list .price,
.steals-deals-item .product-single-product-info .price {
    height: auto;
}

#floating-cart .was,
#floating-cart .sale {
    display: block;
}

#floating-cart .cart-item-note {
    display: none;
}

#floating-cart-wrap .buy-now .btn,
.panel-body .btn {
    float: left;
}

#floating-cart-wrap #floating-cart .panel-body .btn {
    font-weight: 700;
    background: #CA0000;
    border-color: #b10000;
    color: #fff;
    text-transform: uppercase;
}

.overlay {
    width: 100%;
    opacity: 0.5;
    filter: alpha(opacity=40);
    height: 100%;
    position: absolute;
    z-index: 5000;
    background: #000;
}

#AJAXPromoBannerView {
    display: none;
}

#AJAXPromoBannerView.promo-banner-exists {
    display: block;
}

.promo-banner-exists {
    background: #EFEFEF;
    margin: 1px 0 15px;
    min-height: 45px;
}

.page-product .promo-banner-exists,
.page-quickview .promo-banner-exist {
    margin-bottom: 0;
}

.modal-backdrop {
    z-index: 1200;
}

.modal {
    z-index: 1250;
}

.modal-dialog-centered::before {
    display: none!important;
}

.prop-call p span {
    color: #E67B08;
    font-weight: bold;
    font-size: 22px;
}

.product-list a {
    position: relative;
    display: block;
}

.product-list .price {
    min-height: 34px;
}

/* Steals/Deals Page */
.steals-callout {
    color: #FFFFFF;
    padding: 20px;
}

h1.steals-headline {
    color: #FFFFFF !important;
    font-size: 40px;
    font-style: italic;
    margin: 0;
    text-transform: uppercase;
}

.master-steals-expiration {
    font-size: 16px;
    font-style: italic;
    text-transform: uppercase;
}

.master-steals-expiration .days {
    display: inline;
}

.master-steals-expiration span {
    font-weight: bold;
    font-size: 22px;
}

.see-all-deals {
    padding-bottom: 10px;
}

.see-all-deals a {
    color: #999999;
    text-transform: uppercase;
}

.callout-top-deals {
    margin-bottom: 15px;
}

#shop-by-panel .deals-facet-nav .list-group-item a {
    color: #333333;
}

#shop-by-panel .deals-facet-nav .list-group-item.selected {
    background-color: #4C4C4C;
}

#shop-by-panel .deals-facet-nav .list-group-item.selected a {
    color: #FFFFFF;
}

/* Product Single - Steals Deals */
.steals-deals-item {
    height: 321px;
}

.product-list div.product-single-item.steals-deals-item {
    margin-bottom: 15px;
    overflow: visible;
}

.product-list .steals-deals-item .price {
    margin: 0;
    line-height: 19px;
    text-align: center;
}

.steals-deals-item .price .reg {
    font-size: 20px;
    color: #B11F32;
}

.steals-deals-item .price .was {
    font-size: 13px;
    font-weight: normal;
}

.steals-deals-item .btn-cta {
    border-radius: 0;
    font-size: 12px;
    height: auto;
    line-height: 15px;
    margin: 0;
}

.steals-deals-item .product-list * {
    margin: 0;
}

.steals-deals-item .product-img {
    border-bottom: 1px solid #e3e3e3;
}

.steals-deals-item .product-img p {
    display: inline-block;
    background: #014E86;
    color: white;
    padding: 5px 15px;
    font-size: 10px;
    text-transform: uppercase;
    position: absolute;
    right: 0;
    bottom: 0;
    margin: 0;
}

.steals-deals-item .product-img img {
    display: block;
    margin: 0 auto;
}

.product-single-item.steals-deals-item h4,
.product-single-item.steals-deals-item .h4 {
    font-size: 13px;
    height: 34px;
    line-height: 1.3;
    margin: 0;
}

.steals-deals-item .ratings {
    justify-content: center;
}

.steals-deals-item.product-single-item .ratings .reviews-count {
    display: inline-block;
}

.steal-countdown {
    background: #B11F32;
}

.steal-countdown .savings-wrap {
    left: 0;
}

.steal-countdown .savings-wrap::before,
.steal-countdown .savings-wrap .steals-savings:after {
    display: none !important;
}

.steal-countdown .steals-savings {
    padding: 7px 10px;
    margin: 0;
}

.savings-wrap {
    position: relative;
    left: -10px;
}

.steals-savings-label,
.steals-expiration-label {
    font-size: 10px;
    font-weight: bold;
    line-height: 1;
}

.steals-expiration {
    background: #272727;
    color: #FFFFFF;
    line-height: 1;
    padding: 7px 10px;
    text-transform: uppercase;
}

.steals-expiration .days {
    display: inline;
}

.steals-expiration #displaycounter {
    font-size: 15px;
}

.steals-expiration #displaycounter span {
    font-size: 18px;
    font-weight: 900;
}

.savings-wrap::before {
    content: " ";
    left: 0px;
    top: -10px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent #75111e #75111e transparent;
    position: absolute;
}

.steals-savings {
    background: #B11F32;
    color: #FFFFFF;
    font-size: 10px;
    font-weight: bold;
    line-height: 1;
    height: 40px;
    padding: 4px 10px 0;
    position: relative;
    text-align: left;
    text-transform: uppercase;
}

.steals-savings span {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -1px;
}

.steals-savings:after,
.arrow_box:before {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.steals-savings:after {
    border-left-color: #B11F32;
    border-width: 20px;
    margin-top: -20px;
}

.steals-savings:before {
    border-color: rgba(0, 0, 0, 0);
    border-width: 20px;
    margin-top: -20px;
}

.affirm-as-low-as a {
    color: #205D86 !important;
}
.affirm-modal-trigger {
    text-decoration: underline;
}


.product-single-item#upsellproduct {
    min-height: 527px;
}

.tab-pane {
    background: #FFFFFF;
    border: none;
}

#tab-overview {
    min-height: 0;
    padding-bottom: 0;
}

.similarproducts {
    display:block;
}

#floating-cart .panel .panel-heading {
    border-bottom: none;
}

#floating-cart .panel .panel-title {
    text-shadow: none;
    padding: 10px 0 10px 15px;
    color: #000000;
}

#floating-cart .panel-primary>.panel-heading,
.page-cart .panel-primary>.panel-heading {
    background: none;
}

#floating-cart {
    position: absolute;
    z-index: 6000;
}

.header-promo {
    border-radius: 3px;
    color: #fff;
    font-size: 20px;
    line-height: 1.4;
    margin: 12px 0 0;
    padding: 10px 15px;
    text-align: center;
    visibility: hidden;
}

.header-promo h3 {
    margin: 0;
}

.header-promo p {
    margin: 0;
}

.header-promo a .sub-head {
    color: #666666;
}

.header-promo a {
    color: #cc0000;
}

.header-promo a,
.header-promo a:hover {
    text-decoration: none;
}

.header-promo .shop {
    font-weight: bold;
}

.header-promo {
    font-size: 20px;
    color: #fff;
    line-height: 1.4;
    text-align: center;
    border-radius: 3px;
    margin: 12px 0 0;
    padding: 10px 15px;
}

.prop-discount .fa {
    color: #04bc10;
}

.prop-ship .fa {
    color: #644117;
}

.prop-guarantee .fa {
    color: #FFD300;
}

.prop-call .fa {
    color: #0047ad;
}

.video img {
    margin: 0 auto;
    display: block;
}

.answer {
    padding: 0;
    border: 0;
    text-align: right;
    font-weight: bold;
    max-width: 40px;
}

.answer-block {
    background: #FFFFFF;
    border: 1px solid #707070;
    font-size: 14px;
    margin-top: 15px;
    padding: 15px;
    text-align: left;
}

.calculator [class^=error],
.ans-back {
    display: none;
}


/*  --------------- footer ------------------- */
#site_footer {content-visibility: auto;}

footer .h4 {
    border: 0;
    color: #FFFFFF;
    cursor: default;
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
    text-transform: uppercase;
}

footer a {
    color: #BBBBBB;
    line-height: 1.8;
    font-size: 14px;
}

footer a:hover,
footer a:focus {
    color: #BBBBBB;
}

.footer-links h4:after,
.footer-links .h4:after {
    font-family: "Font Awesome 6 Pro";
 }

.footer-links h4,
.footer-links .h4 {
    border-bottom: 1px solid #333333;
    padding: 12px;
}

.footer-links a,
.footer-links button {
    padding: 5px 15px;
    border-bottom:1px solid #333;
}

.footer-links .h4.expanded {
    border-bottom: 0;
}

.footer-links li:last-child a {
    border-bottom: 1px solid #333;
}

footer .footer-legal {
     font-size: 14px;
}

.footer-links ul {
    background: #222;
}

.footer-promo-group {
    background: #272727;
    text-align: center;
}

footer .social-links a {
    line-height: 1;
}

footer .social-links a:hover .fab {
    color: #A5A5A5;
}

footer .social-links .fab {
    font-size: 36px;
}

footer .social-links > a {
    display: inline-block;
}

footer .social-links > a + a {
    margin-left: 8px;
}

footer .footer-promo-heading {
    font-size: 28px;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
}

footer .footer-promo-subheading {
    font-size: 14px;
    margin-top: 5px;
}

footer .footer-newsletter .title {
    font-size: 24px;
    font-weight: bold;
    line-height: 28px;
    text-transform: uppercase;
}


/*  --------------- navigation and mega ------------------- */

.mega-nav {
    background: #272727;
}

.primary-nav > li > a {
    font-size: 18px;
    font-weight: bold;
    color:#E8E8E8;
}

.primary-nav > li > a:hover {
    background: #E0001B;
    color:#fff;
}

.primary-nav > li.primary-nav-item > img {
    width: 45px;
    margin-right:5px;
    display: inline-block;
}


/*  --------------- shopby navigation ------------------- */

.mega-shopby .fas {
    font-size: 14px;
}

.mega-shopby .h4 {
    margin-top: 9.5px;
    margin-bottom: 9.5px;
    line-height: 1;
    font-size: 16px;
}

.mega-shopby li.secondary-group-item {
    padding: 15px 5px 15px 0;
}

.primary-nav > li.primary-nav-shopby > a:hover,
.primary-nav-shopby li a.selected {
    cursor: pointer;
}

.mega-shopby {
    display: none;
    left: 0;
    position: absolute;
    z-index: 1001;
    background: #efefef;
    overflow: hidden;
    min-height: 430px;
    margin-top: 0;
    width: 320px;
    min-height: inherit;
}

.mega-menu-level-2 {
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
}

.mega-shopby .fa-minus,
.mega-shopby .fa-plus {
    color: #FFFFFF;
    cursor: pointer;
}

.mega-content li.secondary-group-item {
    border-bottom: 1px solid #858380;
}

.tertiary-group {
    display: none;
}

.mega-content ul {
    padding-left: 20px;
    padding-right: 20px;
}

ul.tertiary-group li.tertiary-group-item > a {
    display: block;
    font-size: 14px;
    font-weight: 500;
    height: auto;
    border: 0;
}

.mega-shopby .mega-content li:last-child {
    border-bottom: 0;
}


/*  --------------- buttons ------------------- */

.mode-dr.page-product .primary-nav-buy {
    display:none;
}

.product-benefit {
    margin-bottom: 15px;
    border: 1px solid #efefef
}

.product-features-group .product-benefit .product-benefit-copy {
    padding: 15px;
}

.btn {
    text-transform: uppercase;
}

.btn, .form-control {
    border-radius: 0;
}

.btn-default {
    background: #eee;
    color: #333;
    border-color: #ccc
}

.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open .dropdown-toggle.btn-default {
    background: #DDDDDD;
    border-color: #ADADAD;
}

.btn-pill {
    background: #FFFFFF;
    border-radius: 28px !important;
    border: 1px solid #A3A3A3;
    color: #A3A3A3;
    font-size: 15px;
    margin: 0 5px 10px 0;
    padding: 15px;
    text-transform: none;
    transition: all 0.3s;
}

.btn-pill:hover {
    transform: scale(1.03);
}

.btn-cta,
.btn-shop {
    background-color: #2a7ab0;
    border-color: #2a7ab0;
    color: #FFFFFF !important;
    font-weight: 700;
    text-transform: uppercase;
}

.btn-cta:hover,
.btn-cta:active,
.btn-cta.active,
.btn-cta:focus,
.btn-shop:active,
.btn-shop:focus,
.btn-shop.active,
.btn-shop:hover {
    background-color: #119FE9;
    border-color: #119FE9;
    color: #FFFFFF;
}

.btn-primary {
    background-color: #272727;
    border-color: #272727;
    color: #FFFFFF;
    font-weight: normal;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary:focus {
    background-color: #000000;
    border-color: #000000;
    color: #fff;
}

.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
    background-color: #272727;
    border-color: #272727;
}

.btn-secondary {
    background-color: #E0001B;
    border-color: #E0001B;
    color: #FFFFFF;
    font-weight: normal;
}

.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary.active,
.btn-secondary:focus {
    background-color: #C30018;
    border-color: #C30018;
    color: #FFFFFF;
}

.btn-tertiary {
    background-color: #000000;
    border-color: #000000;
    color: #FFFFFF;
    font-weight: normal;
}

.btn-tertiary:hover,
.btn-tertiary:active,
.btn-tertiary.active,
.btn-tertiary:focus {
    background-color: #222222;
    border-color: #222222;
    color: #FFFFFF;
}

.btn-background {
    background-color: #E3E3E3;
    border-color: #E3E3E3;
    color: #FFFFFF;
    font-weight: normal;
}

.btn-background:hover,
.btn-background:active,
.btn-background.active,
.btn-background:focus {
    background-color: #CECECE;
    border-color: #B4B4B4;
    color: #FFFFFF;
}

.btn-accent {
    background-color: #E67B08;
    border-color: #E67B08;
    color: #FFFFFF;
    font-weight: normal;
}

.btn-accent:hover,
.btn-accent:active,
.btn-accent.active,
.btn-accent:focus {
    background-color: #FA8E19;
    border-color: #FA8E19;
    color: #FFFFFF;
}

.btn-link,
.btn-link:hover,
.btn-link:active,
.btn-link.active,
.btn-link:focus {
    color: #205D86;
}

a:has(.fa-cart-plus) {
    color: #1460AA!important;
}

.btn-video,
.btn-video:hover,
.btn-video:focus {
    background: #EE8C30;
    color: #000000;
    text-transform: none;
}

.btn-block-border {
    background-color: #272727;
    border-color: #fff;
    color: #FFFFFF;
    font-weight: normal;
    text-transform: uppercase;
}

.btn-block-border:hover,
.btn-block-border:active,
.btn-block-border.active,
.btn-block-border:focus {
    background-color: #E0001B;
    border-color: #E0001B;
    color: #fff;
}

.video-link {
    font-size: 17px;
    font-weight: bold;
    text-transform: uppercase;
}

.trait .trait-label {
    margin-bottom: 5px;
}

.btn-trait-wrapper {
    margin-right: 10px;
    min-width: 60px;
}

.btn-trait,
.dropdown-trait {
    position: relative;
}

.btn-trait {
    border: 0;
    margin: 0 10px 10px 0;
    padding: 0;
    width: 100%;
}

.dropdown-trait {
    margin: 0;
}

.btn-trait .btn-trait-swatch {
    height: 60px;
    padding: 0;
    width: 60px;
    margin: 0;
}

.btn-trait span {
    background: #FFFFFF;
    border: 1px solid #CCCCCC;
    color: #737373;
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding: 14px 5px;
}

.btn-trait:hover span {
    background: #DDDDDD;
}

.dropdown-trait span {
    color: #272727;
    display: block;
    font-size: 14px;
    padding: 5px 10px;
}

.dropdown-trait:hover span {
    background-color: #EEEEEE;
}

.btn-trait input[type=radio],
.dropdown-trait input[type=radio] {
    cursor: pointer;
    font-size: 0;
    height: 100%;
    left: 0;
    line-height: 0;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}

.btn-trait input[type=radio][disabled],
.dropdown-trait input[type=radio][disabled] {
    cursor: not-allowed;
}

.btn-trait input[type=radio][checked] + span,
.btn-trait input[type=radio]:checked + span {
    background: #666666;
    border-color: #666666;
    color: #FFFFFF;
}

.btn-trait input[type=radio]:hover + .btn-trait-swatch,
.btn-trait input[type=radio]:focus + .btn-trait-swatch {
    border-color: #666666;
    opacity: 0.75;
}

.btn-trait input[type=radio][checked] + .btn-trait-swatch:before,
.btn-trait input[type=radio]:checked + .btn-trait-swatch:before {
    background-color: #03D214;
    border-radius: 50%;
    color: #FFFFFF;
    content: "\f058";
    font: 400 16px/1 "Font Awesome 6 Pro";
    position: absolute;
    right: -7px;
    top: -7px;
    z-index: 2;
}

.dropdown-trait input[type=radio][checked] + span {
    background: #272727;
    color: #FFFFFF;
}

.btn-trait input[type=radio][disabled] + span,
.btn-trait input[type=radio][disabled] + img,
.dropdown-trait input[type=radio][disabled] + span,
.dropdown-trait input[type=radio][disabled] + img {
    cursor: not-allowed;
    opacity: 0.4;
}

.btn.dropdown-toggle {
    border-radius: 4px;
    padding: 12px;
    text-transform: none;
}

.attribute-wrap .btn.dropdown-toggle {
    text-align: left;
}

.btn.dropdown-toggle > span {
    float: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 90%;
}

.button-expand .btn {
    position: relative;
}

.button-expand .btn-primary[data-toggle="collapse"].collapsed:after {
    content: "\f067";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    right: 15px;
}

.button-expand .btn-primary[data-toggle="collapse"]:after { 
    content: "\f068";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    right: 15px;
}

.btn-dark {
    background-color: #333333;
    border-color: #333333;
    color: #FFFFFF;
}

.btn-dark:hover,
.btn-dark:active,
.btn-dark.active,
.btn-dark:focus {
    background-color: #5C5C5C;
    border-color: #5C5C5C;
    color: #FFFFFF;
}


/* ------------- cards ----------------------- */

.card, .card-header,
.card-header:first-child,
.card-body {
    border-radius: 0;
}


.card {
    margin-bottom: 15px;
}

.card-header h5,
.card-header .h5 {
    display: inline;
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
    text-transform: uppercase;
}


/*  --------------- checkout ------------------- */

.card-title.step-complete:after {
    color: #00D200;
    content: "\f00c";
    float: right;
    font-family: 'Font Awesome 6 Pro';
    font-size: 18px;
}

.page-checkout .card-body, 
.page-checkoutv2 .card-body,
.page-paypalreview .card-body {
    padding: 12px;
}

#payment-information {
    padding: 0;
}

.page-checkout .main {
    min-height: inherit;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    will-change: initial;
    overflow: visible
}


/*  --------------- sashes ------------------- */
.ribbon-wrapper {
    background: none;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 20px;
    z-index: 1;
}

.lr_pdp {
    width: 100%;
}

.pdp_header div {
    font-family: "museo-sans", sans-serif;
    font-size: 14px;
    text-shadow: none;
    color: #193F71;
    font-weight: bold;
}

.product-single-item .lr_item {
    text-align: center;
    border: 1px solid #e3e3e3;
    margin-bottom: 15px;
}

.lr_item .lr_title {
    height: 40px;
    overflow: hidden;
}

.sash {
    text-transform: uppercase;
    padding: 4px 7px;
    margin: 0 auto;
    color: #fff;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.5px;
    z-index: 100;
    background-color: #BF1E2E;
}

#sash-promo-area {
    background-color: #797979;
    color: #fff;
    margin-bottom: 0;
    height: 30px;
    line-height: 30px;
    padding-left: 10px;
}

.Sash,
.Sash2,
.Sash3,
.Sash4,
.buyers {
    color: #FFFFFF;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.5px;
    line-height: 11px;
    margin: 0 auto;
    padding: 10px;
    text-align: center;
    text-transform: uppercase;
    z-index: 100;
}

.Sash {
    background-color: #BF1E2E;
}

.Sash2 {
    background-color: #215ac1;
}

.Sash3 {
    background-color: black;
}

.Sash4 {
    background-color: #033f54;
}

.buyers {
    background-color: #2cad04;
}


/*  --------------- blog/articles ------------------- */

.blogpost-grid a {
    text-decoration: none;
}

.card {
    border-color: #707070;
}

.page-blog .main {
    padding-top: 0;
}

.page-blog .main {
    background: #FFFFFF;
}

.badge a {
    color: #FFFFFF;
}

.page-blogpost .main,
.page-blogcategory .main {
    padding-top: 0;
}

.page-blogpost .main {
    background: #FFFFFF;
}

.page-article h1,
.page-blogpost h1 {
   text-align: left;
   text-transform: none;
}

.blogpost-sidebar h3 {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 12px;
    margin-bottom: 5px;
    position: relative;
    padding-bottom: 3px;
    z-index: 0;
    line-height: 1.1em;
}

.blogpost-sidebar h3:before {
    content: '';
    position: absolute;
    left: 0px;
    bottom: -2px;
    width: 100%;
    height: 10px;
    z-index: -1;
    border-bottom: 1px solid #000;
}

.blogpost-sidebar ul {
     padding-left: 0;
    list-style-type: none;
    margin: 0;
}

.blogpost-sidebar ul li {
    margin-bottom: 3px;
    margin-top: 3px;
    font-weight: 400;
    position: relative;
    z-index: 0;
}

.blogpost-sidebar li a {
    color: #222;
    font-size: 12px;
    padding: 5px 0;
    text-decoration: none;
    transition: all .2s ease;
    text-transform: uppercase;
    font-weight: 400;
    white-space: nowrap;

    padding: 8px 10px;
    padding-left: 20px;

    display: flex;
    align-items: center;
}

.social-share a {
    display: inline-block;
    transition: .2s ease;
    -webkit-transition: .2s ease;
    padding: 7px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.social-share a i {
    color: #fff;
    font-size: 23px;
}


/*  --------------- blog/articles card ------------------- */

.blog-newsletter .title {
    font-weight: 900;
    color: #fff;
    text-transform: capitalize;
    font-size: 23px;
    text-align: center;
    margin-bottom: 15px;
}

.blog-intro h2 {
    font-weight: 900;
    font-size: 33px;
    margin-bottom: .5em;
}

.blog-intro p {
    font-weight: 500;
    font-size: 18px;
}

.blogpost-grid .card {
    margin: 0;
}

.blogpost-grid .card .card-body {
    border-top: 1px solid #707070;
}

.blogpost-grid .card .card-title {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: 21px;
    color: #111;
    margin: 0px;
    font-weight: 900;
    margin-bottom: 5px; margin-top: 5px;
    overflow: hidden;
}

.blogpost-grid a.card {
    color: #111;
    height: 100%;
}   

.blogpost-grid .card .card-overlay {
    position: absolute;
    opacity: 0;
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0, 0, 0, 0.75);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.blogpost-grid .card .card-overlay:before {
    transition: .2s ease;
}

.blogpost-grid .blog-category {
    font-size: 10px;
    color: #000;
    position: relative;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 5px;
    display: inline-block;
    left: 0px;
}

.blogpost-grid .blog-category:before {
    position: absolute;
    left: 0px;
    height: 1px;
    bottom: 0px;
    transform: translateY(-50%);
    background-color: #aaa;
    width: 100%;
    content: '';
}

.blogpost-grid .card .card-date {
    font-size: 11px;
    color: #676767;
    margin-bottom: 5px;
}

.blogpost-grid .card-summary {
    position: relative;
    height: 36px;
    width: 100%;
    margin: 0;
    overflow: hidden;
    font-size: 13px;
}

.blogpost-grid .card-summary:after {
    content: "";
    text-align: right;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70%;
    height: 1.2em;
    background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 90%);
}

.blogpost-grid .card .card-overlay:hover:before {
    content: 'Read More';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 16px;
    white-space: nowrap;
    font-weight: 600;
    z-index: 1;
    border: 1px solid #fff;
    padding: 10px 20px;
    -webkit-box-shadow: 0 0 10px 5px rgba(0, 0, 0, .2);
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, .2);
}

.blogpost-grid .overfade {
    position: relative;
    height: 2.8em;
}

.blogpost-grid a:hover .card-overlay {
    opacity: 1;
}


/*  --------------- actual blog post  ------------------- */

.blogpost-hero {
    display: block;
    position: relative;
    height: 100%;
    width: 100%;
    height: 460px;
}

.blogpost-category {
    text-transform: uppercase;
}

.blogpost-hero-overlay {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 1;
    background: radial-gradient(rgba(255, 225, 225, 0), black);
    z-index: -1;
    mix-blend-mode: multiply;
}

.blogpost-title {
    color: #fff;
    font-size: 43px;
    font-weight: 900;
    width: 100%;
    text-transform: capitalize;
    margin-bottom: 0;
    padding: 15px 0;
    display: block;
    z-index: 1;
    left: 0;
    padding-top: 20px;
    text-align: left !important;
}

.blogpost-date {
    color: #FFFFFF;
}

#ajax-checkout-giftpromo .alert {
    margin: 10px 0;
}

.form-msg {
    margin-top: 5px;
}

.form-msg .alert {
    margin-top: 10px;
}

.producselltype {
    margin-bottom: 8px;
}

.savings {
    color: #a94442;
}

.form-group-cc {
    position: relative;
}

.cc-display {
    position: absolute;
    right: 0;
    top: -8px;
}

.cc-display .fab {
    color: #adadad;
    margin-left: 3px;
}

.cc-display .fa-cc-visa.fa-cc-selected {
    color: #1A1F71;
}

.cc-display .fa-cc-mastercard.fa-cc-selected {
    color: #CC0000;
}

.cc-display .fa-cc-amex.fa-cc-selected {
    color: #002663;
}

.cc-display .fa-cc-discover.fa-cc-selected {
    color: #FF6000;
}

#CVC {
    padding: 5px;
}

.card-verification-width {
    width: 39%;
    float: left;
    overflow: hidden;
}

.card-verification-width:last-child {
    width: 22%;
}

/* Sweepstakes form styling AH */
.pure-form label {
    font-size: 100%;
    font-weight: bold;
    margin: 1em 0 0;
}

.pure-form input[type] {
    border: 2px solid #ddd;
    box-shadow: none;
    font-size: 100%;
    margin-bottom: 1em;
    width: 100%;
}

.pure-button {
    background-color: #1f8dd6;
    border-radius: none;
    color: white;
    padding: 0.5em 2em;
    margin-top: 10px;
    width: 50%;
}

.l-box {
    padding: 1em;
}

.l-box-lrg {
    padding: 1em;
}

.viewport {
    position: fixed;
    bottom: 0;
    left: 50%;
    z-index: 10000;
}

.viewport-label {
    font-weight: normal;
    background: #000000;
    color: #FFFFFF;
    padding: 5px;
    z-index: 10000;
    font-size: 11px;
    text-align: center;
    width: 50px;
    position: relative;
    left: -25px;
}

/* Product Ratings */
.review-section-titles {
    text-align: center;
    background: none;
    margin-top: 15px;
    margin-bottom: 15px; 
    font-size: 40px; 
    font-weight: 700;
}

.review-summary-wrapper {
    background-color: #FFFFFF;
    padding: 15px;
}

.review-summary-body .ratings {
    margin: 5px auto;
}

.review-summary-body li.ratings {
    margin: 5px auto;
}

.review-summary .ratings,
.product-single-product-info .ratings {
    float: left;
}

.ratings {
    width: auto;
}

.product-single-item .ratings {
    float: none;
    margin: 10px 0 0;
    padding: 0 5px 0 0;
}

.ratings-container {
    height: 20px;
}

.ratings-container .ratings {
    align-items: end;
}

.ratings .fa,
.ratings .far {
    color: #FFD700;
}

.ratings .rating-star {
    border-radius: 3px;
    height: 15px;
    margin-left: 0;
    margin-right: 1px;
    padding: 3px;
    width: 16px;
}

.ratings .rating-star-100 {
    background-image: url(/images/art/StarRating100-15x15.png) !important;
    background-size: 16px;
}

.ratings .rating-star-75,
.ratings .rating-star-50,
.ratings .rating-star-25 {
    background-image: url(/images/art/StarRating050-15x15.png) !important;
    background-size: 16px;
}

.ratings .rating-star-0 {
    background-image: url(/images/art/StarRating000-15x15.png) !important;
    background-size: 16px;
}

.ratings .reviews-count {
    color: #737373;
    font-size: 12px;
    font-weight: normal;
    line-height: 1;
    padding-left: 5px;
}

.ratings .reviews-count .tab-anchor {
    display: none;
}

.product-single-item .ratings .reviews-count-text {
    display: none;
}

.reviews-ratings {
    display: inline-block;
    height: 26px;
}

.review-count {
    display: block;
    float: left;
    margin: 4px 0 4px 5px;
}

.page-product .ratings,
.page-quickview .ratings {
    margin: 5px auto;
}

.product-single-item .rating-summary {
    font-size: 13px;
    font-weight: 500;
    height: 18px;
    margin: 4px 0;
}

.product-primary-details .ratings,
.reviews-wrap-mobile .ratings {
    margin: 0 7px 0 0;
}

.product-primary-details .ratings {
    align-items: center;
    justify-content: end;
}

p.review-item-rating.page-product .ratings,
p.review-item-rating.page-quickview .ratings {
    margin: 5px 0;
}

.review-single-item {
    border-bottom: 1px solid #797878;
    margin: 15px 5px;
}

.review-image-container {
    align-items: center;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.review-image-single {
    padding: 10px;
    width: 33.33%;
}

.verifiedbuyer {
   font-size: 11px;
   padding-left: 20px;
}

.ratings-summary .reviews-count {
    display: none;
}
.dimension-image-container,
.specs-and-usage,
.open-box-container {
    font-size: 16px;
}

.specs-and-usage .fa-ul {
    margin-left: var(--fa-li-margin,1.5em);
}

.spec-container {
    overflow:hidden;
    clear: both;
    margin-top: 15px;
}

.spec-container .panel-group {
    border: none;
    margin-bottom: 0;
}

.spec-container .panel-heading + .card-collapse .panel-body {
    border-top: none;
}

.spec-container .panel-body {
    padding-bottom: 0;
}

.spec-name {
    display: inline;
}

.spec-value {
    display: inline;
}

.how-to-buy-article {
    border: 1px solid #DDDDDD;
    border-left: 7px solid #272727;
    padding: 10px;
}

.how-to-buy-article + .how-to-buy-article {
    margin-top: 16px;
}

.how-to-buy-title {
    color: #272727;
    font-size: 15px;
    font-weight: bold;
    text-transform: uppercase;
}

.kit-component-item:after {
    content: "\f067";
    display: block;
    font-family: 'Font Awesome 6 Pro';
    font-weight: 900;
    position: absolute;
    right: -7px;
    top: 32%;
}

.kit-component-item:last-child:after {
    display: none;
}

.warranty-doc {
    background-color: #EFEEEC;
    color: #000000;
    display: inline-block;
    margin-bottom: 10px;
    padding: 10px;
    text-decoration: none!important;
}

#warranty-card,
.button-box {
    border: 1px solid #000;
    border-top: 0;
    padding: 10px 10px 0;
    margin-bottom: 0.5rem;
}

.warranty .btn.collapsed {
     margin-bottom: 0.5rem;
}

.warranty .btn {
    margin-bottom: 0;
}

.warranty .btn.collapsed {
     margin-bottom: 0.5rem;
}

.fa-file-pdf-o {
    color: #f00;
    background-color: #fff;
}

.table-openbox > tbody > tr > td.name {
    font-weight: 500;
    text-align: left;
}

.btn-shop-all-cta {
    border: 1px solid #000000;
    font-weight: bold;
    height: auto;
    padding: 15px;
    transition: background 0.25s;
}

.btn-shop-all-cta:hover {
    background-color: #000000;
    color: #FFFFFF;
}

.prod-description {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 0;
    height: 125px;
    overflow: hidden;
    position: relative;
}

.prod-description.show-fade:after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgb(227, 227, 227));
    bottom: 0;
    content: "";
    height: 60px;
    left: 0;
    position: absolute;
    right: 0;
    z-index: 1;
}

.prod-short-desc {
    margin-bottom: 10px;
    max-height: 54px;
    overflow: hidden;
}

.prod-short-desc h2 {
    margin-top: 0;
}

.prod-short-desc-more {
    cursor: pointer;
}



.card-compare-products .product-list .current-product .product-single-item {
    border: 2px solid #004076;
    margin-bottom: -2px;
}

.card-compare-products .product-list .current-product .ribbon-wrapper {
    display: none;
}

.card-compare-products .product-list .sash-current-item {
    background-color: #004076;
    color: #FFFFFF;
    display: block;
    font-size: 11px;
    font-weight: bold;
    left: 17px;
    line-height: 1;
    padding: 10px;
    position: absolute;
    text-transform: uppercase;
    top: 17px;
    z-index: 100;
}
.comparisonTable {
}
.comparisonTable__productsToCompare {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    justify-content: start !important;
    gap: 0;
}
.comparisonTable__product {
    min-width: 230px;
}
.comparisonTable__product--current {
    min-width: 230px;
}

@media (min-width: 768px) {
    .comparisonTable__productsToCompare {
        display: flex;
        overflow-x: auto;
    }
}

/* Calculator carousel */

#product-calculator-slider {
    margin-bottom: 200px;
}

#product-calculator-slider .product-calculator {
    border: 1px solid #707070;
    padding: 1.25rem;
}

#product-calculator-slider .slick-dots {
    bottom: -200px;
}

#product-calculator-slider .slick-dots li {
    height: auto;
    min-width: 100px;
    width: auto;
    transition: all 0.3s;
}

#product-calculator-slider .slick-dots li.slick-active .btn-pill {
    background-color: #004076;
    color: #FFFFFF;
}

/* Featured blog post carousel */

#product-featured-blog-posts-slider .slick-dots {
    bottom: -30px;
}

/*  --------------- calculator landing page ------------------- */

#calculator-landing-hero {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: flex-end;
    margin: 15px 0 0;
    padding: 40px;
}

#calculator-landing-hero h1 {
    font-size: 16px;
    margin: 0;
    text-transform: uppercase;
}

#calculator-landing-widget {
    background-color: rgba(255, 255, 255, 0.9);
    max-width: 325px;
}

#calculator-landing-widget-header {
    background-color: #01203F;
    color: #FFFFFF;
    padding: 20px 15px;
}

#calculator-landing-widget-header img {
    display: block;
    margin: 0 auto 10px;
    max-width: 65%;
}

#calculator-landing-widget-body {
    padding: 10px 15px 20px;
}

#calculator-landing-widget-body input[type=number] {
    font-size: 30px;
    font-weight: bold;
}

#calculator-landing-value-prop {
    margin: 30px 0;
}

#calculator-landing-value-prop img {
    margin: 10px 0;
}

#calculator-landing-filters .card-body {
    max-width: 100%;
    overflow-x: auto;
    white-space: nowrap;
}

#calculator-landing-filters .card-body .btn {
    float: none;
    margin-bottom: 0;
}

#calculator-landing-filters .card-body .btn.selected {
    background-color: #3B3B3B;
    color: #FFFFFF;
}

#calculator-landing-filters .card-body .btn.selected .fa-times {
    color: #FF0000;
}

#calculator-landing-calc-header {
    background-color: #003D73;
    font-size: 24px;
    font-weight: bold;
    padding: 10px;
    position: relative;
}

#calculator-landing-calc-header-triangle {
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 15px solid #003D73;
    height: 0;
    margin: 0 auto 15px;
    width: 0;
}


/*  --------------- request a quote page ------------------- */

.quote-product {
    border-bottom: 1px solid #ccc;
}

.quote-product .price {
    font-size: 13px;
    margin: 5px 0;
    text-align: left;
}

.quote-product .price .reg,
.quote-product .price .was,
.quote-product .price .sale {
    display: inline;
    font-size: inherit;
}

.quote-product .price .save {
    display: none;
}

.quote-product .btn-link {
    margin: 0;
}

/* Modular Ramps builder */
.modular-product-form .panel-heading {
    cursor: pointer;
}

.modular-product-form .accordion .card {
    overflow: visible;
}

.modular-product {
    position: relative;
}

.modular-product + .modular-product {
    border-top: 1px solid #E7E7E7;
    margin-top: 20px;
    padding-top: 20px;
}

.modular-product label {
    font-weight: normal;
}

.modular-product .price *,
.modular-product-more-info .price * {
    text-align: left;
}

.modular-product-form .buy-now .was {
    position: static;
    margin-bottom: 10px;
}

.js-remove-modular-product {
    color: #B2002F;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 0;
    z-index: 2;
}

.modular-total {
    color: #B2002F;
    font-size: 16px;
}

.modular-product-summary-item .js-remove-modular-product {
    float: right;
    position: static;
}

#angle-of-approach-results thead th {
    background-color: #333333;
    color: #FFFFFF;
}

#angle-of-approach-results tbody > tr > td {
    background-color: #FFFFFF;
    border-bottom-color: #F6F6F6;
}

#angle-of-approach-results th,
#angle-of-approach-results td {
    text-align: left;
}

.buy-now {
    background: transparent;
    font-size: 16px;
    margin: 5px 0 0 0;
    padding: 0;
    border:0;
}

.buy-now-multi {
    border: 0;
    border-radius: 0;
    margin-top: 10px;
}

.productGrid .price-label, .buy-now .price-label {
    height: auto;
}

.productGrid .reg,
.productGrid .sale,
.buy-now .reg,
.buy-now .sale {
    font-size: 34px;
    height: auto;
}

.buy-now .was {
    color: inherit;
    display: block;
    font-size: 16px;
}

.buy-now .no-web-price {
    font-size: 30px;
    height: auto;
}

.buy-now .btn-cta,
.buy-now-modular .btn-cta {
    font-size: 21px;
    height: 60px;
    margin-top: 0;
}

.buy-now .product-order-note {
    color: #707070;
    font-size: 13px;
}

.buy-now .panel-group {
    margin-bottom: 15px;
}

.panel-dropdown-accessories input[type=checkbox],
.modular-product input[type=checkbox] {
    cursor: pointer;
    font-size: 0;
    height: 100%;
    left: 0;
    line-height: 0;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}

.panel-dropdown-accessories input[type=checkbox][disabled],
.modular-product input[type=checkbox][disabled] {
    cursor: not-allowed;
}

.panel-dropdown-accessories input[type=checkbox][checked] + span:before,
.modular-product input[type=checkbox][checked] + span:before {
    content: "\f14a";
    font-weight: bold;
}

.panel-dropdown-accessories input[type=checkbox][disabled] + span:before,
.modular-product input[type=checkbox][disabled] + span:before {
    opacity: 0.25;
}

.buy-now.buy-now-multi .btn {
    background-color: #FAFAFA;
    color: #666666;
    font-weight: 500;
    text-transform: uppercase;
}

.product-number-text {
    color: #525252;
    font-size: 14px;
    font-weight: bold;
}

.free-shipping-icon {
    font-size: 14px;
    font-style: italic;
    font-weight: bold;
    text-transform: uppercase;
}

.free-shipping-icon a {
    color: #FFFFFF;
    text-decoration: none;
}

.buy-now .inv-msg {
    color: #525252;
    font-size: 14px;
    font-style: italic;
    font-weight: bold;
}

.buy-now .inv-msg .popmsg {
    display: block;
    font-size: 12px;
    font-weight: normal;
}

.bundle-group {
    margin: 5px 0 20px;
}

.bundle {
    color: #FFFFFF;
    font-size: 13px;
}

.bundle .bundle-action {
    background: #555555;
    padding: 5px 10px;
    text-transform: uppercase;
}

.bundle .bundle-name {
    padding: 5px 15px 5px 10px;
    background: #666666;
}

.bundle .bundle-name a {
    color: #fff;
    text-decoration: underline;
}

.bundle .toggle-icon .fa {
    margin-right: -3px;
}

.js-toggle-bundle {
    cursor: pointer;
}

.card-bundle .price {
    text-align: center
}

.modular-trait .trait-label {
    font-size: 18px;
}

.modular-trait .modular-more-info {
    font-size: 13px;
    padding-left: 5px;
}

.trailer-calc-step {
    margin-top: 25px;
}

.trailer-calc-step-number {
    color: #7E7E7E;
    font-size: 70px;
    font-weight: 300;
    line-height: 1;
}

.free-gift-traits {
    display: none;
}

.card-frequently-bought-together .col-image + .col-image:before {
    content: "\f067";
    display: block;
    font: 900 22px 'Font Awesome 6 Pro';
    position: absolute;
    left: -9px;
    top: 50%;
    transform: translateY(-50%);
}

.card-frequently-bought-together input[type=checkbox] {
    cursor: pointer;
    font-size: 0;
    height: 100%;
    left: 0;
    line-height: 0;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}

.card-frequently-bought-together input[type=checkbox][checked] + span:before {
    content: "\f14a";
    font-weight: 900;
}

.card-frequently-bought-together .form-check-input {
    margin-top: 0;
}

.card-frequently-bought-together label {
    cursor: pointer;
    font-weight: normal;
}

.card-frequently-bought-together .total-price {
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
}

.optional-free-gift {
    background: #FFFFFF url(/images/art/free-gift-corner-top-left-220.png) top left no-repeat;
    background-size: 65px 65px;
    border: 3px solid #E67B08;
    margin-top: 5px;
    max-height: 92px;
    overflow: hidden;
    padding: 0 10px 0 70px;
}

.optional-free-gift-image {
    margin-right: 10px;
}

.optional-free-gift img {
    max-height: 82px;
}

.optional-free-gift-headline {
    color: #E67B08;
    font-size: 15px;
}

.optional-free-gift-value {
    font-size: 15px;
    font-weight: bold;
}

#openbox-tab .price .price-label {
    display: none;
}

#openbox-tab table td {
    vertical-align: middle;
}


/*  --------------- offer banners ------------------- */

.offer {
    text-align: center;
    padding: 7px 0;
    font-size: 14px;
}

.offer-sale {
    background: #323232 !important;
    color: #fff;
}

.offer #displaycounter,
.offer .tool-tip {
    margin: 0 5px;
}

#displaycounter {
    display: inline-block;
}

.offer a {
    color: #fff !important;
    text-decoration: none;
}

.offer a:hover {
    color: #fff;
    text-decoration: underline;
}


/*  --------------- gateway category page ------------------- */

.gateway-container {
    border: 1px solid #E3E3E3;
}

.gateway-image-container {
    position: relative;
}

.gateway-image-container h2 {
    background-color: rgba(0, 0, 0, 0.5);
    bottom: 0;
    color: #FFFFFF;
    margin: 0;
    padding: 10px 20px;
    position: absolute;
    text-transform: uppercase;
    width: 100%;
}

.gateway-container-children {
    padding: 10px;
}

.gateway-container-children ul {
    list-style-type: none;
}

.gateway-container-children .list-container ul.list-column {
    width: 50%;
}

.gateway-container-children ul > li + li {
    margin-top: 5px;
}

.gateway-container-children ul > li > a {
    font-size: 15px;
    font-weight: bold;
    text-transform: none;
}

.gateway-container .cat-callout {
    margin: 15px;
}


.product-single-item,
.category-grid-banner {
    transition: transform 0.3s;
}

.product-single-item:hover,
.category-grid-banner:hover {
    transform: scale(1.03);
}

.product-list > .row > [class^=col],
.blogpost-grid > .row > [class^=col],
.tr-var-products-wrapper > .tr-single-var-wrapper {
    padding-bottom: 10px;
}

.product-list .product-single-item {
    background: #FFFFFF;
    border: 1px solid #E3E3E3;
    padding: 0;
    position: relative;
    text-align: left;
}

.product-list .product-single-item .image-container {
    display: block;
    position: relative;
}

.product-list .product-single-item .best-seller {
    background: #000000;
    bottom: 0;
    color: #FFFFFF;
    font-size: 13px;
    font-weight: bold;
    left: 0;
    letter-spacing: 1px;
    line-height: 1.6;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    width: 100%;
    z-index: 2;
}

.product-list .product-single-item .best-seller-1 {
    background: #000000;
}

.product-list .product-single-item .best-seller-2 {
    background: #2C2C2C;
}

.product-list .product-single-item .best-seller-3 {
    background: #525252;
}

.product-list .product-single-item .ribbon-wrapper {
    top: 15px;
}

.product-list .product-single-item .product-single-details {
    border-top: 1px solid #E3E3E3;
    padding: 15px;
}

.product-single-footer {
    display: none;
    height: 32px;
    padding: 0 15px 12px;
}

.product-single-compare-specs {
    display: none;
    padding: 0 15px 12px;
}

.page-compare #CompareTableAJAX .product-single-compare-specs {
    display: block;
}

.product-list a {
    color: #1B1B1B;
}

.product-list a:hover {
    text-decoration: none;
}

.product-single-item h4,
.product-single-item .h4 {
    color: #333333;
    display: block;
    font-size: 15px;
    font-weight: 700;
    height: 54px;
    line-height: 18px;
    margin: 0 0 10px 0;
    overflow: hidden;
    text-transform: none;
}

.product-list .btn {
    margin: 0;
}

.product-list-recent .price, 
.product-list-related .price {
    font-size: 16px;
}

.product-single-size-count {
    font-size: 12px;
}

.product-single-compare .form-check {
    line-height: 1.2;
    padding-left: 1rem;
}

.product-single-compare .form-check-input {
    height: 12px;
    margin-left: -1rem;
    width: 12px;
}

.product-single-compare .form-check-label {
    font-size: 12px;
    font-weight: normal;
}

.card-calculator .card-title {
    color: #FFFFFF;
    font-size: 14px;
    position: relative;
    text-transform: inherit;
}

.card-calculator .card-title:after {
    content: '\f067';
    font-family: 'Font Awesome 6 Pro';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.card-calculator .card-title[aria-expanded='true']:after {
    content: '\f068';
}

/* legacy totals */
.total-row {
    margin: 3px 0;
}

.total-row.total {
    font-weight: bold;
    margin: 5px 0;
    padding: 5px 0;
    border-top: 1px solid #CCCCCC !important;
}

.total-row.checkout-total {
    font-size: 18px;
    font-weight: bold;
    margin: 5px 0 0;
    padding: 5px 0;
    border-top: 1px solid #CCCCCC !important;
}

.total-label {
    float: left;
}

.total-value {
    float: right;
}



/*  --------------- summary page ------------------- */

.social-avatar {
    background-color: #1B1B1B;
    border-radius: 10px;
    min-height: 200px;
    text-align: center;
    padding: 20px 10px;
}

.social-avatar-group a, .social-avatar-group a:hover,
.social-avatar-group a:hover .fa-instagram,
.social-avatar-group a:hover .fa-facebook-square {
    color: #FFFFFF;
    text-decoration: none;
}

.social-avatar .social-network {
    font-weight: bold;
    text-transform: uppercase;
    line-height: 32px;
    font-size: 20px;
}

.social-avatar .social-cta {
    font-size: 14px;
}

.social-avatar .fab {
    color:#fff;
    font-size: 96px;
}

.a-fb:hover .social-avatar  {
    background-color: #3b5998;
}

.a-pt:hover .social-avatar {
    background-color: #bd081c;
}

.a-ig:hover .social-avatar {
    background-color: #c32aa3;
}

.a-yt:hover .social-avatar {
    background-color: #ff0000;
}

.summary-newsletter {
    padding: 20px 20px 0;
}

.summary-newsletter .title {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 22px;
}

.summary-newsletter .subtitle {
    font-size: 16px;
}

.order-num {
    padding: 12px;
}

.shipping-methods-group {
    
}

#payment-information .input-group-btn .btn {
    width: 175px;
}

.js-show-promogift {
    cursor: pointer;
    color: #272727;
    font-size: 13px;
}

.promo-giftcard-group {
    margin-top: 10px;
}

#payment-information h3,
#payment-information .h3 {
    margin-top: 0;
}

.panel-signin {
    margin-bottom: 0;
}

#showCompany span {
    display: inline-block;
    font-weight: 700;
    margin-bottom: 5px;
    color: #333;
}

.err_personal {
    display: none;
}

#summary-feedback-form p {
    font-size: 18px;
}

#summary-feedback-form-q1,
#summary-feedback-form-q2 {
    background: #333333;
    color: #FFFFFF;
}

#summary-feedback-form-q2 {
    transition: opacity 0.3s ease-out;
}

#summary-feedback-form-q1.disabled,
#summary-feedback-form-q2.disabled {
    opacity: 0.2;
}

.summary-feedback-score-option label {
    align-items: center;
    background-color: #FFFFFF;
    border-radius: 50%;
    border: 2px solid #DDDDDD;
    color: #333333;
    cursor: pointer;
    display: flex;
    flex-wrap: wrap;
    height: 30px;
    justify-content: center;
    line-height: 1;
    margin: 0;
    transition: all 0.3s ease-out;
    width: 30px;
}

.summary-feedback-score-option label:hover,
.summary-feedback-score-option input:checked + label {
    background: #666666;
    color: #FFFFFF;
}

/* Style for Checkout Page Account Selection */

input#personal + label,
input#business + label {
    font-weight: normal;
}

input#personal:checked ~ label[for=Company],
input#personal:checked ~ input[name=Company] {
    display: none;
}

input#business:checked ~ label[for=Company],
input#business:checked ~ input[name=Company] {
    display: block;
}

/* Style for Checkout Page Shipping Account Selection */

input#personal_SHIP + label,
input#business_SHIP + label {
    font-weight: normal;
}

input#personal_SHIP:checked ~ label[for=Company_SHIP],
input#personal_SHIP:checked ~ input[name=COMPANY_SHIP] {
    display: none;
}

input#business_SHIP:checked ~ label[for=Company_SHIP],
input#business_SHIP:checked ~ input[name=COMPANY_SHIP] {
    display: block;
}

.err_personal_SHIP {
    display: none;
}

.ask-experts a {
    color: #FFFFFF;
}

.ask-experts p {
    margin-bottom: 0;
}

.ask-experts h3 {
    margin-top: 0;
}

.payment-methods-group label span {
    color: #333;
    font-weight: bold;
}

.payment-methods-group .radio {
    margin-top: 10px;
}

.payment-methods-group h3,
.payment-methods-group .h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 0;
}

.payment-methods-item {
    padding: 15px 20px 15px;
}

.payment-methods-item ~ .payment-methods-item {
    border-top: 1px solid #DDDDDD;
}

.payment-methods-group .fa-amazon,
.payment-methods-amazon h3 {
    color: #ff9900;
}

.payment-methods-group .fa-paypal,
.payment-methods-paypal {
    color: #012169;
}

/* How-to Guides and Articles */

.article-banner {
    max-width: 100%;
    height: auto;
}

.article-tagline {
    font-family: "museo-sans", sans-serif;
    font-weight: 200;
    font-size: 24px;
    margin-top: 10px;
}

.articleContent div {
    display: inline-block;
}

.articleContent img {
    float: left;
    padding: 5px;
}


/*  --------------- brands page ------------------- */

.top-brands-single {
    display: table;
    height: 95px;
}

.top-brands-single a {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.brand-single a {
    display: block;
    font-size: 15px;
    padding: 5px 0;
}

.brand-single-count {
    color: #999999;
    font-size: 12px;
}


/*  --------------- style guide page ------------------- */
pre {
    padding: 0;
    background: none;
    border-color: #ddd;
    margin-bottom: 30px;
}

.line {
    height: 2px;
    background-color: #ddd;
    text-align: center;
    margin: 15px 0 25px;
}

.line span {
    background-color: #E3E3E3;
    position: relative;
    top: -0.7em;
    padding: 0 10px;
    text-transform: uppercase;
    color: #999;
}

.section {
    margin: 40px 0 30px;
    padding-top: 10px;
}

#typography h1 {
    margin-bottom: 5px;
}

#typography h2 {
    margin-top: 5px;
}

#typography h3 {
    margin-top: 0;
}

h4.sg {
    text-align: center;
    margin: 20px 0 15px;
}

#icons .text-muted {
    display: none;
}

.swatch {
    margin: 15px 0;
    padding: 0;
}

.swatch-color {
    padding: 15px 10px;
    border: 1px solid #DDDDDD;
    border-radius: 3px 3px 0 0;
    min-height: 50px;
}

.base .swatch-color {
    min-height: 100px;
}

.swatch-label {
    text-align: center;
    color: #333;
    font-size: 12px;
    line-height: 16px;
    border: 1px solid #DDDDDD;
    border-top: 0;
    padding: 10px 0;
    border-radius: 0 0 3px 3px;
}

.swatch-label div {
    font-weight: bold;
}

.nav-styleguide.affix-top,
.nav-styleguide.affix {
    width: auto;
}

.page-styleguide .section:first-child {
    margin-top: 0;
}

.page-styleguide .main form {
    margin-bottom: 20px;
}

.grid-wrap {
    margin-bottom: 10px;
}

.show-grid [class^=col-] {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #ffffe6;
    border: 1px solid #ffead2;
}

.swatch.default {
    background: #dddddd;
}

.swatch.default:after {
    content: "#dddddd";
}

.swatch.primary .swatch-color {
    background: #272727;
}

.swatch.primary .swatch-label:after {
    content: "#272727";
}

.swatch.secondary .swatch-color {
    background: #E0001B;
}

.swatch.secondary .swatch-label:after {
    content: "#E0001B";
}

.swatch.tertiary .swatch-color {
    background: #000000;
}

.swatch.tertiary .swatch-label:after {
    content: "#000000";
}

.swatch.accent .swatch-color {
    background: #E67B08;
}

.swatch.accent .swatch-label:after {
    content: "#E67B08";
}

.swatch.background .swatch-color {
    background: #E3E3E3;
}

.swatch.background .swatch-label:after {
    content: "#E3E3E3";
}

.swatch.cta .swatch-color {
    background: #0085CA;
}

.swatch.cta .swatch-label:after {
    content: "#0085CA";
}


/*  --------------- quickview ------------------- */

#quickview-backdrop {
    background-color: #444444;
    height: 100%;
    opacity: 0;
    position: fixed;
    transition: opacity 0.2s ease-out;
    width: 100%;
    z-index: -1;
}

#quickview-backdrop.show {
    opacity: 0.6;
    z-index: 999;
}

#quickview-container {
    background-color: #FFFFFF;
    border-left: 1px solid #888888;
    box-shadow: -7px 0 14px rgba(33, 33, 33, 0.2);
    height: 100%;
    max-width: 500px;
    overflow: hidden;
    position: fixed;
    right: -520px;
    top: 0;
    transition: right 0.3s cubic-bezier(0, 0, 0.2, 1);
    width: 100%;
    z-index: 9999999999;
}

#quickview-container.reveal {
    right: 0;
}

.quickview-open {
    overflow: hidden !important;
}

.form-group label span {
    color: #555555;
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #555555 !important;
    border-color: #555555 !important;
    color: #D3D3D3 !important;
}

.table-striped>tbody>tr:nth-of-type(even) a {
    color: #406098 !important;
}

.fancybox-content {
    max-width: 1440px;
}

.fancybox-button:focus,
.fancybox-button:hover {
    color: #555555;
}

.wistia_responsive_padding {
    width: 100%;
}

/*  ---------------------------- sm (576px and up) sm ----------------------- */

@media (min-width: 576px) {
    .promo-banner-exists {
        min-height: 85px;
    }

    .product-single-item .ratings .reviews-count-text {
        display: initial;
    }

    #product-calculator-slider {
        margin-bottom: 150px;
    }

    #product-calculator-slider .slick-dots {
        bottom: -140px;
    }

    .product-single-item  .was {
        display: inline-block;
    }
}


/*  ---------------------------- md (768px and up) md ----------------------- */

@media (min-width: 768px) {
    .promo-banner-exists {
        height: 72px;
    }

    .product-features-group .product-benefit .product-benefit-copy {
        padding: 30px;
    }

    .input-group-number {
        width: auto;
    }

    .footer-links .h4,
    .footer-links a,
    .footer-links button {
        padding: 0;
        border:0;
    }

    .footer-links ul {
        background: none;
    }

    .footer-links li:last-child a {
        border: 0;
    }
    
    .footer-promo-group .row > div:first-child  {
        border-left: 0;
    }

    .payment-methods-group {
        margin: 0;
        border-top: 0;
    }

    #payment-information h3 {
        margin-top: 0;
        text-align: left;
    }

    .panel-promo-giftcard {
        padding: 15px;
        border-top: 0;
        margin: 0;
    }

    .page-checkout #payment-information.card-body,
    .page-checkoutv2 #payment-information.card-body,
    .page-paypalreview #payment-information.card-body {
       padding: 0;
    }

    [class*=page-checkout] .panel.panel-signin {
        margin-bottom: 0;
    }

    #CheckoutCartItemsContent {
        margin-right: 0;
        margin-left: 0;
    }

    .accountoption-form,
    .accountoption-form_SHIP {
        display: inline;
    }

    .accountoption-form input[type=radio],
    .accountoption-form_SHIP input[type=radio] {
        margin-left: 5px;
    }

    .btn-xs-lg {
        padding: 6px 12px;
        font-size: 14px;
        line-height: 1.4;
    }

    .form-horizontal .control-label {
        /* padding-top: 16px; */
        text-align: left;
    }

    .form-inline .control-label {
        margin-right: 5px;
    }

    .savings-wrap {
        position: relative;
        left: -11px;
    }

    td.text-center .tablesaw-cell-content .price {
        text-align: center;
    }

    .panel-title {
        margin-left: 0;
        margin-right: 0;
    }

    .nobreak {
        white-space: nowrap;
    }

    .panel {
        margin-bottom: 20px;
    }

    .panel-heading {
        border-width: 1px !important;
    }

    .panel-body {
        border-width: 1px !important;
        margin-left: 0;
        margin-right: 0;
    }

    .icons-wrap .prod-icon {
        border-right: 1px solid #FFFFFF;
        width: auto;
    }

    .icons-wrap .prod-icon + .prod-icon {
        margin-top: 0;
    }

    .form-horizontal .form-group .btn {
        height: 50px;
        margin: 0;
    }

    .product-list .price {
        height: auto;
    }

    .top-brands-single {
        height: 120px;
    }

    .page-product .favorite,
    .page-quickview .favorite {
        margin-bottom: 0;
        text-align: right;
    }

    #product-calculator-slider {
        margin-bottom: 100px;
    }

    #product-calculator-slider .slick-dots {
        bottom: -80px;
    }
}

/*  ---------------------------- filling the container ----------------------- */
@media (max-width: 991px) {
    .container {
        max-width: none;
    }
}


/*  ---------------------------- lg (992px and up) lg ----------------------- */

@media (min-width: 992px) {
    .header-branding {
        display: flex;
        align-items: center;
        min-height: 125px;
    }

    .search-suggestions {
        display: table;
        left: 50%;
        max-height: none;
        transform: translateX(-50%);
        width: 700px;
    }

    .search-suggestions-products {
        display: table-cell;
        width: 500px;
    }

    .search-suggestions-sidebar {
        display: table-cell;
        width: 200px;
    }

    .promo-banner-exists {
        height: 91px;
    }

    .faq-group {
        margin: 0 20px;
    }

    .cart .fa-shopping-cart {
        font-size: 35px;
    }
    
   .table.table-cart th.qty-col {
       min-width: auto;
    }

    .mega-nav, .primary-nav {
        background: #272727;
    }

    .primary-nav > li > a {
        color:#E8E8E8;
        font-family: "museo-sans", sans-serif;
        font-size: 16px;
        font-weight: bold;
    }

    .primary-nav > li > a:hover, 
    .primary-nav li a.selected, 
    .primaryNav__link--emphasis {
        background: #E0001B;
        color:#fff;
    }

    .primary-nav > li.primary-nav-item .secondary-nav img {
        min-width: 150px;
    }

   .primary-nav ul a.image {
        height: auto;
    }

    .primary-nav .primary-nav-item.standard-menu .secondary-nav.box-image {
        min-width: 200px;
    }
    
    .mega-nav, .primary-nav {
        background: #272727;
    }

    #floating-cart {
        top: 61px;
    }

    .mode-dr .primary-nav .primary-nav-item.standard-menu.primary-nav-buy {
        position: absolute;
        right: 0;
    }

    .sales-support .phone-info {
        font-size: 16px;
        font-weight: bold;
        line-height: 1.3;
    }

    .sales-support .phone-info a {
        font-size: 17px;
        padding-bottom: 0;
        line-height: 1;
    }

    .sales-support .fa.fa-phone {
        font-size: 32px;
    }

    .sales-support .fa.fa-phone {
        font-size: 35px;
    }
    
    .cart-total-items {
        top: -11px;
        right: -9px;
        width: 22px;
        height: 22px;
        font-size: 12px;
    }

    .icons-wrap .prod-icon:last-child {
        border-right: none;
        margin-right: 0;
        padding-right: 0;
    }

    .top-brands-single {
        height: 95px;
    }

    .optional-free-gift {
        background-size: 86px 86px;
        padding-left: 86px;
    }

    .optional-free-gift-image {
        max-width: 20%;
    }

    .optional-free-gift-body {
        max-width: 75%;
    }

    .optional-free-gift-headline,
    .optional-free-gift-value {
        font-size: 18px;
    }

    #shop-by-panel,
    #facet-card {
        display: block;
    }

    #shop-by-panel .deals-facet-nav {
        background-color: #E3E3E3;
    }

    #shop-by-panel .deals-facet-nav .list-group {
        margin: 0;
    }

    #shop-by-panel .deals-facet-nav .list-group li {
        background: transparent;
        border: none;
        float: left;
        padding: 10px 7px;
    }

    #shop-by-panel .deals-facet-nav .list-group li:hover,
    #shop-by-panel .deals-facet-nav .list-group li.selected {
        background-color: #979797;
    }

    #shop-by-panel .deals-facet-nav .list-group li a {
        display: block;
        font-size: 12px;
        font-weight: bold;
        text-decoration: none;
        text-transform: uppercase;
    }

    #shop-by-panel .deals-facet-nav .list-group li:hover a,
    #shop-by-panel .deals-facet-nav .list-group li.selected a {
        color: #FFFFFF;
    }

    .summary-feedback-score-option label {
        height: 44px;
        width: 44px;
    }

    #shop-by-panel {
        display: block;
    }

    #calculator-landing-calc-header button {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    .apple-pay-button {
        height: 35px;
    }
}


/*  ---------------------------- xl ( 1200px and up) xl ----------------------- */

@media (min-width: 1200px) {
    .promo-banner-exists {
        height: 109px;
    }

    .sales-support .phone-info a {
        font-size: 20px;
    }

    .site-tools ul {
        margin-top: 18px;
    }

    #floating-cart {
        top: 65px;
    }

    .main-nav li .outer .inner a {
        font-size: 16px;
    }

    .promo-group .mega-promo-item {
        float: right;
    }

    .header-promo {
        font-size: 20px;
    }

    #shop-by-panel .deals-facet-nav .list-group li {
        padding: 10px 11px;
    }

    #shop-by-panel .deals-facet-nav .list-group li a {
        font-size: 14px;
    }

    .steals-deals-item .ratings-container {
        margin-top: 15px;
    }
}