@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Roboto:300,400,400i,500,700,900,900i&display=swap);
.mobileOnly {
    display: none!important
}

@media (max-width:600px) {
    .mobileOnly {
        display: block!important
    }
}

@media (max-width:600px) {
    .notMobile {
        display: none
    }
}

:root {
    --primary-color: #5e6977;
    --primary-dark-bg: #43484d;
    --primary-light-bg: #fafcfd;
    --primary-color-light: #fafcfd;
    --max-content-width: 1250px;
    --primary-cta-color: #dc0149
}

html {
    scroll-behavior: smooth
}

body,
main * {
    text-decoration: none;
    box-sizing: border-box;
    font-size: 12pt;
    margin: 0;
    font-family: Roboto, sans-serif;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    -webkit-tap-highlight-color: transparent
}

b {
    font-weight: 500
}

a:link,
a:visited,
body {
    color: var(--primary-color)
}

body {
    background: var(--primary-light-bg)
}

main {
    display: block;
    text-align: center;
    overflow: hidden;
    width: 100%
}

main>content {
    display: flex;
    text-align: left;
    width: 100%;
    max-width: var(--max-content-width);
    margin: auto;
    min-height: calc(100vh - 300px)
}

main>content>sidebar {
    flex: 1;
    margin: 0 20px
}

block {
    display: block
}

sidebar wrapper {
    margin-right: 20px
}

category wrapper,
content>brand>wrapper,
content>brands>wrapper,
content>page,
content>product,
sidebar wrapper {
    background: #fff;
    display: block;
    padding: 20px;
    box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, .1);
    border-radius: 6px;
    margin: 20px 0 0
}

count {
    display: block;
    margin: 20px
}

count,
count b {
    font-size: 10pt
}

b,
strong {
    font-weight: 600!important
}

topcontainer {
    position: relative;
    display: none;
    width: 100%
}

@media (max-width:600px) {
    topcontainer {
        display: block
    }
}

topcontainer top {
    display: none;
    position: fixed;
    padding: 10px;
    border: 1px solid #fff;
    border-radius: 10px;
    background-color: var(--primary-dark-bg);
    color: #fff;
    cursor: pointer;
    bottom: 20px;
    right: 20px
}

topcontainer top img {
    width: 30px;
    height: 30px
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@media only screen and (max-width:600px) {
    category wrapper:first-child,
    content>brand>wrapper,
    content>page,
    content>product {
        margin-top: 0
    }
}

.lds-roller {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px
}

.lds-roller div {
    animation: lds-roller 1.2s cubic-bezier(.5, 0, .5, 1) infinite;
    transform-origin: 32px 32px
}

.lds-roller div:after {
    content: " ";
    display: block;
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #fff;
    margin: -3px 0 0 -3px
}

.lds-roller div:first-child {
    animation-delay: -36ms
}

.lds-roller div:first-child:after {
    top: 50px;
    left: 50px
}

.lds-roller div:nth-child(2) {
    animation-delay: -72ms
}

.lds-roller div:nth-child(2):after {
    top: 54px;
    left: 45px
}

.lds-roller div:nth-child(3) {
    animation-delay: -.108s
}

.lds-roller div:nth-child(3):after {
    top: 57px;
    left: 39px
}

.lds-roller div:nth-child(4) {
    animation-delay: -.144s
}

.lds-roller div:nth-child(4):after {
    top: 58px;
    left: 32px
}

.lds-roller div:nth-child(5) {
    animation-delay: -.18s
}

.lds-roller div:nth-child(5):after {
    top: 57px;
    left: 25px
}

.lds-roller div:nth-child(6) {
    animation-delay: -.216s
}

.lds-roller div:nth-child(6):after {
    top: 54px;
    left: 19px
}

.lds-roller div:nth-child(7) {
    animation-delay: -.252s
}

.lds-roller div:nth-child(7):after {
    top: 50px;
    left: 14px
}

.lds-roller div:nth-child(8) {
    animation-delay: -.288s
}

.lds-roller div:nth-child(8):after {
    top: 45px;
    left: 10px
}

@keyframes lds-roller {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

nav {
    display: block;
    width: 100%;
    box-shadow: 0 0 8px 0 rgba(0, 0, 0, .4);
    position: relative;
    z-index: 50;
    background-color: #fff
}

nav wrapper {
    height: 40px
}

nav wrapper>a,
nav wrapper>menu,
nav wrapper>menuright,
nav wrapper>menuright * {
    vertical-align: middle
}

nav wrapper>a {
    display: inline-block
}

nav b {
    font-weight: 600
}

nav menu {
    vertical-align: middle;
    display: inline-block;
    padding: 8px
}

nav menu item {
    position: relative;
    padding: 0 10px;
    text-transform: uppercase;
    margin-top: -5px;
    display: inline-block;
    cursor: pointer
}

nav menu item name {
    font-size: 14px
}

nav menu item sub {
    display: none
}

nav logo {
    display: inline-block;
    border-right: 1px solid #f0f3f5;
    padding: 8px 20px 0
}

nav logo img {
    width: 82px;
    height: auto
}

nav wrapper {
    position: relative;
    display: block;
    width: 100%;
    max-width: calc(var(--max-content-width) - 70px);
    margin: auto;
    text-align: left
}

nav wrapper * {
    font-size: 14px
}

nav menuright {
    float: right;
    vertical-align: middle
}

nav menuright,
nav menuright b,
nav menuright span {
    display: inline-block;
    font-size: 14px
}

nav menuright .country_and_currency {
    margin-right: 5px
}

nav menuright .country_and_currency * {
    vertical-align: unset
}

nav menuright img {
    display: inline-block;
    vertical-align: middle;
    height: 23px;
    width: auto;
    border-radius: 20px;
    padding: 2px
}

@media (max-width:700px) {
    nav menuright img {
        margin-right: 5px
    }
}

nav menuright hamburger,
nav menuright help {
    padding: 8px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border-left: 1px solid #f0f3f5;
    cursor: pointer
}

nav menuright hamburger img,
nav menuright help img {
    opacity: .7;
    margin: 0
}

nav menuright hamburger {
    display: none
}

nav menuright hamburger img {
    padding: 0!important
}

nav menuright merchants {
    padding: 7px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border-left: 1px solid #f0f3f5
}

nav menuright merchants a {
    font-weight: 600;
    line-height: 26px
}

@media (max-width:360px) {
    nav menuright merchants {
        display: none
    }
}

@media (max-width:700px) {
    nav menuright merchants.catalog-enabled {
        display: none
    }
}

nav menuright tracking {
    padding: 7px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border-left: 1px solid #f0f3f5
}

nav menuright tracking a span {
    font-weight: 600;
    line-height: 26px
}

nav menuright tracking img {
    display: none;
    border-radius: 0
}

.fullscreen nav {
    position: fixed;
    top: 0;
    left: 0
}

navhelp {
    display: none;
    position: absolute;
    top: calc(100% + 20px);
    right: 0;
    width: 100vw;
    max-width: 480px;
    padding: 20px;
    background-color: #fff;
    border: 1px solid #f0f3f5;
    box-shadow: 0 2px 4px 0 rgba(151, 162, 187, .35)
}

navhelp>img {
    float: right;
    cursor: pointer
}

navhelp>name {
    display: block;
    font-size: 22px!important;
    font-weight: 500;
    margin-bottom: 20px
}

navhelp block {
    font-size: 14pt;
    clear: both;
    margin-bottom: 20px;
    line-height: 16px
}

navhelp block>name {
    display: inline;
    font-size: 16px;
    font-weight: 500;
    line-height: 30px
}

navhelp block description {
    display: inline;
    width: 100%;
    font-size: 14px;
    font-weight: 300;
    line-height: 17px
}

navhelp block img {
    cursor: pointer;
    float: right;
    width: 70px;
    height: auto;
    max-width: 90px;
    margin-left: 24px
}

navhelp block:first-of-type img {
    width: 80px
}

navhelp:before {
    content: "";
    position: absolute;
    right: 10px;
    top: -6px;
    width: 20px;
    height: 20px;
    background: #fff;
    transform: rotate(-45deg)
}

@media only screen and (max-width:700px) {
    .mobile_menu_open nav {
        position: fixed;
        top: 0;
        left: 0
    }
    nav menu .menu-root {
        display: none
    }
    nav menuright hamburger {
        display: inline-block
    }
    nav menuright .country_and_currency,
    nav menuright .ship_to,
    nav menuright tracking span {
        display: none
    }
    nav menuright tracking img {
        display: inline-block
    }
    nav wrapper>categories {
        position: fixed;
        padding: 15px;
        max-width: 100vw;
        width: 100vw;
        height: calc(100vh - 42px);
        overflow: auto;
        left: 0;
        top: 42px;
        border: 1px solid #f0f3f5
    }
    nav wrapper>categories a {
        margin: 8px 0;
        display: block
    }
    nav wrapper>categories .first {
        width: 100%
    }
    nav wrapper>categories .mobile {
        display: block
    }
    navhelp {
        width: 100vw;
        max-width: 100vw;
        box-shadow: none;
        position: absolute;
        left: 0;
        top: 42px
    }
    navhelp name {
        display: block;
        width: calc(100% - 30px)
    }
}

footer_description h3 {
    font-size: 26px;
    font-weight: 500;
    margin: 0
}

helpicons {
    display: flex
}

@media (max-width:600px) {
    helpicons {
        display: block
    }
}

helpicons helpicon {
    display: block;
    flex: 1;
    text-align: center
}

helpicons helpicon img {
    height: 60px;
    width: auto;
    margin-bottom: 20px
}

helpicons helpicon:last-of-type img {
    height: 45px;
    margin: 10px 0 23px
}

@media (max-width:600px) {
    helpicons helpicon {
        margin-bottom: 30px
    }
}

helpiconscta {
    display: block;
    text-align: center
}

helpiconscta cta {
    width: 200px!important
}

@media (max-width:600px) {
    helpiconscta cta {
        width: 100%!important
    }
}

a.text-red {
    color: #dc2848
}

a.text-red:hover {
    color: #b01e33
}

a.text-red:focus {
    color: #641a27
}

a.cta-button,
button.cta-button {
    border: none;
    border-radius: 5px;
    color: #fff;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer
}

a.cta-button.cta-button-red,
button.cta-button.cta-button-red {
    background-color: #dc2848
}

a.cta-button.cta-button-red:hover,
button.cta-button.cta-button-red:hover {
    background-color: #b01e33
}

a.cta-button.cta-button-red:focus,
button.cta-button.cta-button-red:focus {
    background-color: #641a27
}

a.cta-button.cta-button-blue,
button.cta-button.cta-button-blue {
    background-color: #4573e3
}

a.cta-button.cta-button-blue:hover,
button.cta-button.cta-button-blue:hover {
    background-color: #445ab3
}

a.cta-button.cta-button-blue:focus,
button.cta-button.cta-button-blue:focus {
    background-color: #263573
}

a.cta-button.cta-button-grey,
button.cta-button.cta-button-grey {
    background-color: #eef3f6;
    color: #4573e3
}

a.cta-button.cta-button-grey:hover,
button.cta-button.cta-button-grey:hover {
    background-color: #f6f5ee
}

a.cta-button.cta-button-grey:focus,
button.cta-button.cta-button-grey:focus {
    background-color: #f6eef1
}

box.cta-buttons {
    position: relative;
    padding-bottom: 140px
}

@media (max-width:600px) {
    box.cta-buttons {
        padding-bottom: 0;
        position: static
    }
}

.cta-buttons.tobottom {
    position: absolute;
    bottom: 0
}

@media (max-width:600px) {
    .cta-buttons.tobottom {
        position: static
    }
}

.cta-buttons>.cta-button {
    margin-top: 20px;
    margin-bottom: 20px
}

.cta-buttons>.cta-button:not(:last-child) {
    margin-right: 20px
}

footer {
    background: var(--primary-dark-bg);
    display: block;
    padding: 30px 30px 80px;
    font-size: 10pt;
    font-weight: 300;
    margin-top: 20px
}

footer wrapper {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: calc(var(--max-content-width) - 70px);
    margin: auto;
    text-align: left
}

footer logo {
    width: 100%;
    padding: 20px 10px
}

footer logo img {
    width: 100px;
    height: auto
}

footer description {
    width: 50%;
    font-size: 10pt;
    vertical-align: top;
    padding: 10px
}

@media (max-width:600px) {
    footer description {
        width: 100%
    }
}

footer description span {
    display: block;
    margin-top: 20px;
    font-size: 10pt
}

footer links {
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    width: 50%;
    font-size: 10pt;
    vertical-align: top;
    padding: 10px
}

@media (max-width:600px) {
    footer links {
        width: 100%
    }
}

footer links a {
    font-size: 10pt;
    width: 50%;
    margin-bottom: 10px;
    color: #787e84;
    font-weight: 300
}

@media (max-width:600px) {
    footer links a {
        width: 100%
    }
}

footer links a:link,
footer links a:visited {
    color: #787e84
}

footer links a:link:hover,
footer links a:visited:hover {
    color: var(--primary-color-light)
}

page {
    display: block;
    width: 100%;
    max-width: var(--max-content-width);
    margin: auto
}

@media (max-width:600px) {
    page {
        margin-top: 0!important
    }
}

page h1,
page h2,
page name {
    font-size: 26px;
    display: block;
    margin: 20px 0;
    font-weight: 500
}

page h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 20px 0 10px
}

page li,
page p,
page ul {
    margin-bottom: 10px;
    font-size: 12pt;
    line-height: 20px;
    font-weight: 300
}

.message {
    padding: 15px;
    margin: 0 0 10px
}

.message-success {
    background-color: #bee3ad;
    color: #396d25
}

.message-error {
    background-color: #dc0149;
    color: #5d1009
}

.home-page {
    display: block;
    background: #fff;
    text-align: center
}

errorpage {
    position: relative;
    display: block;
    width: 100%;
    max-width: 800px;
    margin: auto;
    padding: 30px
}

errorpage img {
    max-width: 300px;
    height: auto
}

errorcontent {
    text-align: left
}

errorcontent h1 {
    font-size: 35px;
    font-weight: 700
}

errorcontent p {
    line-height: 24px;
    font-size: 22px;
    font-weight: 300;
    margin: 20px 0
}

errorcontent .cta {
    padding: 20px 24px;
    display: inline-block;
    background: #dc0049;
    text-transform: uppercase;
    font-weight: 500;
    color: #fff;
    border-radius: 6px
}

@media (max-width:600px) {
    errorcontent,
    errorpage img {
        text-align: center;
        display: block;
        width: 100%;
        max-width: 100%;
        margin-bottom: 20px
    }
}
