*{
    margin: 0;
    padding: 0;
}
body{
    background-color: #ffffff;
    color: #122417;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 16px;
    text-align: center;
    z-index: 10;
}
a:link, a:visited{
    color: rgb(130,130,130);
    text-decoration: none;
}
a:hover{
    text-decoration: underline;
}
a img{
    border: none;
}
h1, h2{
    display: block;
    width: 100%;
}
img{
    border: none;
    display: block;
}
input.right{
    text-align: right;
}
input[ type="checkbox" ], input[ type="radio" ]{
    transform: scale( 1.5 );
}
input[ type="text" ], input[ type="password" ]{
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 13px;
    padding: 2px 4px;
}
ol, ul{
    padding-left: 36px;
}
p{
    margin-bottom: 10px;
    text-align: left;
}
select{
    color: #122417;
    padding: 2px 0px;
}
sup, sub{
    vertical-align: baseline;
    position: relative;
    top: -0.4em;
}
sub{
    top: 0.4em;
}
textarea{
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 16px;
}
.backgroundGreen{
    background-color: rgb(0,198,99);
}
.backgroundRed{
    background-color: rgb(197,16,26);
}
.backgroundWhite{
    background-color: #ffffff;
}
.blackWhite{
    background-color: #000000;
    color: #ffffff;
}
.bold{
    font-weight: bold;
}
.bronze{
    background-color: rgba(205,127,50,0.5);
    color: #000000;
}
.family{
    font-family: Family, Georgia, serif;
}
.gold{
    background-color: rgba(209,176,0,0.5);
    color: #000000;
}
.grey{
    color: #ababab;
}
.hkGold{
    color: rgb(236,156,5);
}
.hkGreen{
    color: #122417;
}
.hkGreenBackground{
    background-color: #122417;
}
.silver{
    background-color: rgba(123,123,123,0.5);
    color: #000000;
}
.ten{
    font-size: 10px
}
.trade{
    background-color: rgba(192,192,192,0.5);
    color: #000000;
}
.twelve{
    font-size: 12px
}
.fourteen{
    font-size: 14px
}
.sixteen{
    font-size: 16px
}
.eighteen{
    font-size: 18px
}
.twenty{
    font-size: 20px
}
.twentyfour{
    font-size: 24px
}
.thirty{
    font-size: 30px
}
.fortyeight{
    font-size: 48px
}
.white{
    color: #ffffff;
}
#linksBand{
    background-color: #122417;
    color: #ffffff;
    display: flex;
    justify-content: center;
    margin-bottom: 6px;
    width: 100%;
}
#links{
    color: rgb(130,130,130);
    flex-grow: 1;
    max-width: 1200px;
}
#links .linksTab{
    float:right;
    padding: 5px 12px 3px 12px;
}
#links .linksTab a:link, #links .linksTab a:visited{
    color: #ffffff;
}
.linksButton{
    background-color: rgb(236,156,5);
    color: #ffffff;
    cursor: pointer;
    display: inline-block;
    padding: 5px 12px 3px 12px;
    text-align: center;
}
.linksButton:hover{
    background-color: rgb(189, 125, 4);
}
.linksGreen a:link, .linksGreen a:visited{
    color: #122417;
}
#mainScreen{
    background-color: #fafafa;
    display: none;
    height: 100%;
    left: 0px;
    opacity: 0.90;
    position: fixed;
    top: 0px;
    width: 100%;
    z-index: 18;
}
#mainScreenDialog{
    align-items: center;
    display: none;
    flex-direction: column;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    left: 0px;
    position: fixed;
    top: 0px;
    width: 100%;
    z-index: 20;
}
.dialog{
    background-color: #ffffff;
    border: 2px solid #122417;
    opacity: 1;
    position: relative;
}
.dialog .dialogInner{
    font-size: 18px;
    padding: 10px;
    text-align: center;
}
.dialog .dialogInner .dialogHeading{
    font-size: 22px;
    font-weight: bold;
    padding-bottom: 6px;
}
#dialogAge{
    width: 360px;
}
#dialogButton{
    margin: 25px auto;
    width: auto;
}
#dialogButtons{
    display: flex;
    justify-content: space-between;
    margin: 25px 10%;
    width: 80%;
}
#dialogClose{
    cursor: pointer;
    position: absolute;
    right: 5px;
    top: 5px;
}
.dialogErrorOuter{
    border: 6px solid #ffffff;
}
.dialogErrorInner{
    border: 3px solid rgb(197,16,26);
    color: rgb(197,16,26);
    font-size: 18px;
    padding: 10px;
    text-align: center;
}
.dialogIcon{
    display: inline;
    height: 26px;
}
.dialogLine{
    display: flex;
    justify-content: space-between;
    margin: 0px 10px 0px 10px;
}
#dialogLogin{
    width: 320px;
}
#dialogLogo{
    background-color: #122417;
    padding: 4px;
}
#dialogLogo img{
    margin: 0px auto;
    width: 250px;
}
#dialogOrderAdd{
    max-width: 640px;
    width: 98%;
}
#dialogOrderAdd #addConfirm{
    display: flex;
    justify-content: space-between;
    margin: 15px 30px 15px 30px;
}
#dialogOrderAdd #addConfirm .button{
    padding: 14px;
}

#dialogOrderAdd .itemTiers{
    align-items: start;
    display: flex;
    flex-direction: column-reverse;
    margin-right: 30px;
}
#dialogOrderAdd .itemTiers .itemTiersInfo{
    display: grid;
    grid-template-columns: auto auto;
    margin-right: 5px;
    min-width: 280px;
    text-align: right;
    width: 100%;
}
#dialogOrderAdd .itemTiers .itemTiersInfo div{
    padding: 3px 4px 2px 4px;
}
#dialogOrderAdd .itemPricing{
    margin-right: 5px;
    width: calc( 100% - 5px );
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice{
    align-items: center;
    column-gap: 12px;
    display: grid;
    grid-template-columns: 30px 30px 1fr 100px;
    margin-top: 9px;
    position: relative;
    row-gap: 8px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice label{
    font-weight: bold;
    text-align: right;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice select{
    font-size: 16px;
    grid-column: 1/4;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .alert{
    grid-column: 1/5;
    margin-top: 4px;
    padding-left: 42px;
    position: relative;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .alert img{
    height: 30px;
    left: 2px;
    position: absolute;
    top: 2px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .alternatives{
    cursor: pointer;
    width: 26px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .blank{
    grid-column: 1/5;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .bonus{
    background-color: #34ff34;
    grid-column: 1/5;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .buttonRemove{
    cursor: pointer;
    justify-self: right;
    width: 18px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .circleTick{
    display: inline-block;
    height: 20px;
    padding-top: 2px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .gridLine2{
    align-items: center;
    display: flex;
    grid-column: 1/4;
    justify-content: space-between;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .inputQuantity{
    font-size: 16px;
    line-height: 18px;
    padding: 1px 3px 1px 3px;
    text-align: right;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .itemTotal{
    font-size: 18px;
    font-weight: bold;
    margin-right: 30px;
    text-align: right;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .quantifier{
    align-items: center;
    column-gap: 4px;
    display: grid;
    grid-template-columns: 26px 40px 26px;
}
#dialogOrderAdd .itemPricing .gridItemQuantityPrice .quantifier img{
    cursor: pointer;
    width: 26px;
}
#dialogOrderAdd .itemPricing .itemPricingHeading{
    display: flex;
    font-weight: bold;
    justify-content: space-between;
    margin: 15px 30px 5px 0px;
}

.dialogQuantity{
    align-items: center;
    column-gap: 6px;
    display: grid;
    grid-template-columns: 30px 24px 38px 24px;
    margin-right: 6px;
}
.dialogQuantity input[ type="text" ]{
    box-sizing: border-box;
    text-align: right;
    width: 100%;
}
.dialogQuantity .buttonQuantity{
    border-radius: 3px;
    color: #ffffff;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    line-height: 16px;
    padding: 4px 4px 2px 4px;
    text-align: center;
    width: 16px;
}


.header{
    background-color: #122417;
    color: #ffffff;
    height: 70px;
    left: 0px;
    /* padding-top: 6px;  */
    position: absolute;
    top: 0px;
    width: 100%;
    z-index: 15;
}
.header .headerAlertBanner{
    left: 0px;
    position: absolute;
    top: 2px;
    width: 100%;
    z-index: 15;
}
.header .headerArea{
    align-items: center;
    column-gap: 25px;
    display: grid;
    grid-template-columns: 180px auto 1fr auto;
    margin: 0px auto;
    max-width: 1600px;
    position: relative;
}
.header .headerArea a:link,
.header .headerArea a:visited{
    color: #000000;
}
.header .headerArea .headerLogo{
    grid-column: 1/2;
    grid-row: 1/2;
    margin-top: -4px;
    max-width: 180px;
    padding: 0px 20px 0px 10px;
}
.header .headerArea .headerLogo img{
    width: 100%;
}
.header .headerArea .headerSearch{
    display: none;
}
.header .headerArea .headerTabs{
    display: flex;
    grid-column: 2/3;
    height: 70px;
    justify-content: space-around;
}
.header .headerArea .headerTabs .headerTab{
    flex-grow: 0;
    height: 70px;
    position: relative;
}
.header .headerArea .headerTabs .headerTab .headerTabText{
    cursor: pointer;
    display: flex;
    flex-direction: column;
    font-size: 20px;
    height: 70px;
    justify-content: space-around;
    padding: 0px 20px;
}
.header .headerArea .headerTabs .headerTab .headerTabText label{
    border-bottom: 2px solid transparent;
    cursor: pointer;
    font-family: Family, Georgia, serif;
}
.header .headerArea .headerTabs .headerTab .tabMenu{
    background-color: rgba(219,219,219,0.92);
    border-bottom: 2px solid #6c6a69;
    border-left: 2px solid #6c6a69;
    border-right: 2px solid #6c6a69;
    box-sizing: border-box;
    display: none;
    font-family: Family, Georgia, serif;
    font-size: 20px;
    left: 0px;
    line-height: 34px;
    min-width: 100%;
    padding: 16px 30px 16px 30px;
    position: absolute;
    text-align: left;
    top: 68px;
    white-space: nowrap;
    z-index: 15;
}
.header .headerArea .headerTabs .headerTab .tabMenu .breadcrumb,
.header .headerArea .headerTabs .headerTab .tabMenu .menuHeading{
    display: none;
}
.header .headerArea .headerTabSearch{
    grid-column: 3/4;
    position: relative;
}
.header .headerArea .headerTabSearch #headerSearchInput{
    appearance: none;
    background-color: transparent;
    border: 2px solid #69ff47;
    box-shadow: none;
    box-sizing: border-box;
    color: #ffffff;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 16px;
    border-radius: 16px;
    line-height: 20px;
    padding: 5px 24px 5px 9px;
    width: 100%;
}
.header .headerArea .headerTabSearch #headerSearchInput:focus{
    border: 2px solid #ffffff;
    outline: none;
}
.header .headerArea .headerTabSearch .headerSearchButton{
    position: absolute;
    height: 14px;
    right: 20px;
    top: 10px;
}
.header .headerArea .headerTabSearch #searchSuggestions{
    background-color: #ffffff;
    left: 4px;
    position: absolute;
    top: 34px;
    width: 98%;
    z-index: 15;
}
.header .headerArea .headerTabSearch #searchSuggestions:nth-child(even){
    backgroundColor: #f1f1f1
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion{
    display: flex;
    padding: 1px;
    position: relative;
    z-index: 15;
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion:hover{
    background-color: #69FF47;
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion .imgWrap{
    height: 40px;
    overflow: hidden;
    width: 60px;
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion .imgWrap .searchNail{
    height: 40px;
    margin: 0px auto 0px auto;
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion .imgWrap .searchPop{
    background-color: #ffffff;
    border: 1px solid #69FF47;
    padding: 2px;
    position: absolute;
    top: -2px;
    z-index: 17;
}
.header .headerArea .headerTabSearch #searchSuggestions .searchSuggestion .txtWrap{
    flex-grow: 1;
    flex-shrink: 1;
    padding: 10px 8px;
    text-align: left;
}
.header .headerArea .headerTabCustomerCart{
    column-gap: 20px;
    display: grid;
    grid-column: 4/5;
    grid-row: 1/2;
    grid-template-columns: 28px 34px;
    padding-left: 20px;
}
.header .headerArea .headerTabCustomerCart img{
    cursor: pointer;
    height: 28px;
}
.header .headerArea .headerTabCustomerCart .tab{
    display: flex;
    flex-direction: column;
    height: 70px;
    justify-content: space-around;
    position: relative;
}
.header .headerArea .headerTabCustomerCart .tabMenu{
    background-color: rgba(219,219,219,0.92);
    border-bottom: 2px solid #6c6a69;
    border-left: 2px solid #6c6a69;
    border-right: 2px solid #6c6a69;
    box-sizing: border-box;
    display: none;
    font-family: Family, Georgia, serif;
    font-size: 20px;
    line-height: 34px;
    padding: 16px 30px 16px 30px;
    position: absolute;
    right: 0px;
    text-align: left;
    top: 70px;
    white-space: nowrap;
    width: auto;
    z-index: 15;
}
.header .headerArea .headerTabCustomerCart .headerTally{
    position: absolute;
    right: -3px;
    top: 7px;
}
.header .headerArea .headerTabCustomerCart .headerTally .tally{
    background-color: #ffffff;
    color: #000000;
    cursor: pointer;
    border-radius: 50%;
    font-size: 14px;
    min-height: 16px;
    min-width: 16px;
    padding: 3px 3px 3px 3px;
}


#headerBanner{
    background-color: yellow;
    color: #000000;
    font-size: 18px;
    margin-bottom: 4px;
    padding: 4px 0px;
    position: relative;
    text-align: center;
    width: 100%;
    z-index: 12;
    animation: headerBannerBlink 2s infinite;
}
#headerBanner #headerArea{
    margin: 0px auto;
    max-width: 1600px;
}
#headerSpacer{
    height: 70px;
}
@keyframes headerBannerBlink{
    0%   { background-color: yellow  }
    25%  { background-color: yellow  }
    50%  { background-color: white   }
    75%	 { background-color: yellow  }
    100% { background-color: yellow  }
}

#menu{
    left: 0px;
    position: fixed;
    top: 70px;
    width: 100%;
    z-index: 15;
}
#menu #menuArea{
    color: #000000;
    margin: 0px auto;
    max-width: 1600px;
    text-align: left;
    width: 100%;
}
#menu #menuArea #brandsIndex{
    border-left: 1px solid #6c6a69;
    display: grid;
    font-family: Family, Georgia, serif;
    font-size: 20px;
    grid-template-columns: 1fr;
    height: auto;
    row-gap: 30px;
    text-align: center;
}
#menu #menuArea #brandsIndex div{
    cursor: pointer;
    padding: 5px 4px 4px 3px;
    clip-path: polygon( 0% 0%, 90% 0%, 100% 50%, 90% 100%, 0% 100%);
}
#menu #menuArea .menu{
    background-image: url(/images/v10/backgrounds/hancocks_logo.png);
    background-color: rgba(219,219,219,0.90);
    background-blend-mode: lighten;
    background-size: cover;
    border-bottom: 2px solid #6c6a69;
    border-left: 2px solid #6c6a69;
    border-right: 2px solid #6c6a69;
    box-sizing: border-box;
    display: none;
    grid-template-columns: 240px 1fr;
    width: 100%;
}
#menu #menuArea .menu .chosen{
    background-color: #122417;
    color: #69ff47;
}
#menu #menuArea .menu .menuSections{
    /* background-image: linear-gradient( to right, rgba(214,214,214,1.0), rgba(219,219,219,0.92) ); */
    padding-top: 20px;
}
#menu #menuArea .menu .menuSections .menuSection{
    box-sizing: border-box;
    cursor: pointer;
    font-family: Family, Georgia, serif;
    font-size: 20px;
    margin: 0px 32px 16px 0px;
    padding: 5px 6px 4px 6px;
    position: relative;
    width: calc( 100% - 12px );
    clip-path: polygon( 0% 0%, 95% 0%, 100% 50%, 95% 100%, 0% 100%);
}
#menu #menuArea .menu .menuSectionArea{
    /* background-color: rgba(219,219,219,0.92); */
    box-sizing: border-box;
    display: none;
    grid-template-columns: 1fr 280px;
    height: 100%;
    padding-top: 20px;
}
#menu #menuArea .menu .menuSectionArea a:link,
#menu #menuArea .menu .menuSectionArea a:visited{
    color: #000000;
}
#menu #menuArea .menu .menuSectionArea .menuSectionFeature{
    display: flex;
    flex-direction: column;
    font-size: 16px;
    justify-content: space-between;
    padding: 0px 5px 10px 0px;
}
#menu #menuArea .menu .menuSectionArea .menuSectionFeature img{
    max-height: 225px;
}
#menu #menuArea .menu .menuSectionArea .menuSectionFeature .text{
    padding: 6px 0px 12px 0px;
}
#menu #menuArea .menu .menuSectionArea .menuSectionSubsections{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    line-height: 24px;
}
#menu #menuArea .menu .menuSectionArea .menuSectionSubsections a:hover{
    text-decoration: underline;
}
#menu #menuArea .menu .menuSectionArea .menuSectionSubsection{
    float: left;
    font-size: 15px;
    padding: 0px 36px 20px 0px;
}
#menu #menuArea .menu .menuSectionArea .menuSectionSubsection .menuSubsectionHeading{
    font-family: Family, Georgia, serif;
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 5px;
}
#menu #menuArea .menuBackground{
    background-image: url(/images/v10/logos/);
    background-size: cover;
}

#content{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.contentArea{
    flex-grow: 1;
    max-width: 1200px;
    text-align: left;
    width: 100%;
}
#footerLinksBand{
    background-color: rgb(225,225,225);
    display: flex;
    justify-content: center;
    margin-top: 12px;
    padding: 20px 0px 30px 0px;
    width: 100%;
}
#footerLinks{
    color: rgb(0,0,0);
    flex-grow: 1;
    max-width: 1180px;
    padding: 0px 10px 0px 10px;
    text-align: left;
}
#footerLinks a:link,
#footerLinks a:visited{
    color: rgb(0,0,0);
}
#footerLinksArea{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    line-height: 20px;
}
#footerLinksHeading{
    border-bottom: 2px solid #000000;
    font-size: 22px;
    letter-spacing: 1.2pt;
    margin-bottom: 6px;
    padding-bottom: 3px;
}
.footerLinksSubHeading{
    font-weight: bold;
    padding: 4px 0px 6px;
}
#brandIndex #brandIndexArea{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    flex-wrap: wrap;
    height: 880px;
    justify-content: flex-start;
}
#brandIndex .brandIndexBlock{
    max-width: 220px;
    width: auto;
}
#brandIndex .indexHeading{
    padding: 10px 0px 3px 0px;
}
#footer{
    display: flex;
    justify-content: center;
}
#footerContent{
    flex-grow: 1;
    font-size: 12px;
    max-width: 844px;
    padding: 16px 8% 24px 8%;
    text-align: center;
}
#footerContent p{
    text-align: center;
}
.archiveList a:link, .archiveList a:hover{
    color: #122417;
}
.archive{
    border-bottom: 2px solid rgb(189,189,189);
    display: flex;
    padding: 12px 0px;
}
.archiveDetails{
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    justify-content: space-between;
    padding: 0px 10px 0px 10px;
}
.archivePic{
    min-width: 160px;
    padding: 0px 10px 0px 10px;
    width: 160px;
}
.archivePic img{
    padding-bottom: 6px;
    width: 100%;
}
#brandHeading{
    width: 100%;
}
#brandHeading img{
    margin: 0px auto;
    width: 100%;
}
#brandBlurb{
    background-color: rgb( 230, 230, 230 );
    color: rgb( 110, 110, 110 );
    line-height: 130%;
    margin: 15px 0px 15px 0px;
    padding: 10px 10px 10px 10px;
}
#brandBlurb #brandBlurbHeading{
    font-weight: bold;
    padding: 6px 0px 8px 0px;
}
.button{
    background-color: #ffffff;
    border: 1px solid #122417;
    border-radius: 5px;
    color: #122417;
    cursor: pointer;
    display: inline-block;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 14px;
    padding: 6px 11px 6px 11px;
    text-align: center;
}
.button:hover, .buttonDialog:hover{
    background-color: #122417;
    color: #69FF47;
}
.buttonArrow{
    cursor: pointer;
}
.buttonDialog{
    background-color: #ffffff;
    border: 2px solid #122417;
    border-radius: 5px;
    color: #122417;
    cursor: pointer;
    display: inline-block;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 20px;
    line-height: 20px;
    padding: 9px 18px 9px 18px;
    text-align: center;
}
.buttonFileWrapper {
    background-color: #ffffff;
    border: 2px solid #122417;
    border-radius: 6px;
    font-family: Barlow, Helvetica, sans-serif;
    height: 26px;
    position: relative;
    z-index: 5;
}
.buttonFileWrapper .buttonFile{
    left: 0px;
    position: absolute;
    top: 0px;
    width: 110px;
    z-index: 7;
}
.buttonFileWrapper .fileName{
    color: #818181;
    height: 22px;
    left: 138px;
    line-height: 22px;
    max-width: 440px;
    padding: 4px;
    position: absolute;
    top: 0px;
    z-index: 7;
}
.buttonFileWrapper input[type=file]{
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0px;
    z-index: 5;
    filter: alpha(opacity=0);
}

.buttonMinusPlus{
    border-radius: 3px;
    color: #ffffff;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    line-height: 16px;
    padding: 4px 4px 2px 4px;
    position: absolute;
    text-align: center;
    width: 16px;
}
.buttonRed{
    background-color: #ffffff;
    border: 1px solid rgb(197,16,26);
    border-radius: 5px;
    color: rgb(197,16,26);
    cursor: pointer;
    display: inline-block;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 14px;
    padding: 5px 12px 3px 12px;
    text-align: center;
}
.buttonRed:hover{
    background-color: rgb(197,16,26);
    color: #ffffff;
}
.buttonTable{
    cursor: pointer;
    height: 20px;
}
.card{
    border: 2px solid #122417;
    display: flex;
    flex-direction: column;
    padding: 18px;
}
.card .cardDetails{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    flex-shrink: 1;
}
.card .cardHeading{
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 10px;
}
.card .cardImage{
    margin-bottom: 20px;
    width: 100%
}
.card .cardText{
    margin-bottom: 10px;
}
.cards{
    column-gap: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 20px;
}
.cardSingle{
    column-gap: 30px;
    display: grid;
    grid-template-columns: 58% 1fr;
    grid-template-rows: 1fr auto;
}
.cardSingle .cardImage{
    grid-row: 1/3;
    margin: 0px 30px 0px 0px;
}
.divider{
    clear: both;
    width: 100%;
}
.error{
    color: red;
}
.errorMessage{
    border: 3px solid red;
    color: red;
    margin: 50px 19%;
    padding: 20px 30px;
    text-align: center;
}
.errorHeading{
    font-weight: bold;
    font-size: 18px;
    padding-bottom: 14px;
}
#filterItems{
    align-items: flex-start;
    display: flex;
}
#filterResults{
    flex-basis: 1000px;
    max-width: 1000px;
    padding-top: 15px;
}
#filterSelectors{
    border-left: 2px solid #122417;
    border-top: 2px solid #122417;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 15px 10px 0px 0px;
    max-width: 186px;
    width: 186px;
}
#filterSelectors .filterSelector{
    border-bottom: 2px solid #122417;
    border-right: 2px solid #122417;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    padding: 6px 3px;
}
#filterSelectors .filterSelector label{
    font-weight: bold;
    padding-bottom: 2px;
}
#filterSelectors #filterSelectorHeading{
    line-height: 24px;
    padding-left: 8px;
    padding-right: 26px;
    position: relative
}
#filterSelectors #filterSelectorReset{
    cursor: pointer;
    height: 24px;
    position: absolute;
    right: 4px;
    top: 5px;
}
.flexMobileWrap{
    display: flex;
    justify-content: space-between;
}
.funFact{
    border-radius: 12px;
    padding: 16px 10px 16px 60px;
    box-shadow: 5px 10px 18px #888888;
    min-height: 50px;
    position: relative;
}
.funFact .factHeading{
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 6px;
}
.funFact .factImage{
    border-radius: 50%;
    height: 70px;
    left: -35px;
    position: absolute;
    top: 8px;
    width: 70px;
}
.greenReverse{
    fill: #ffffff;
    stroke: #122417;
}
.greenReverse:hover{
    fill: #122417;
    stroke: #ffffff;
}
.gridItem{
}
.gridItem .gridImage{
    background: linear-gradient(to bottom, rgba(240,240,240,0.50), rgba(225,225,225,1.0));
    margin: 0px auto 10px auto;
    min-height: 306px;
    position: relative;
    width: 100%;
}
.gridItem .gridImage .itemAccolades{
    position: absolute;
    left: 15px;
    top: 25px;
    width: 36px;
}
.gridItem .gridImage .itemIcon{
    position: absolute;
    right: 15px;
    top: 12px;
    width: 36px;
}
.gridItem .gridImage .gridImageItem{
    padding-top: 10px;
    margin: 0px auto 0px auto;
    width: 160px;
}
.gridItem .gridDetails{
}
.gridItem .gridDetails .gridDetailsHeading{
    min-height: 56px;
}
.gridItem .gridHeading{
    font-weight: bold;
}
.gridItem .gridItemPriceAdd{
    align-items: center;
    display: flex;
    justify-content: space-between;
}
.gridItem .gridOrder{
    margin: 8px 2px 0px 0px;
}
.gridItem .gridView{
    margin: 8px auto 12px auto;
    width: 112px;
}
.heading{
    clear: both;
    font-family: Family, Georgia, serif;
    font-size: 18px;
    letter-spacing: 1.2pt;
    padding: 6px 1% 3px 1%;
    width: 98%;
}
.headingBar{
    background-color: #122417;
    clear: both;
    color: #ffffff;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 1.2pt;
    margin: 4px 0px 4px 0px;
    padding: 6px 1% 3px 1%;
    text-transform: uppercase;
    width: 98%;
}
.headingOrder{
    align-items: center;
    column-gap: 50px;
    display: grid;
    grid-template-columns: auto auto;
}
.headingOrder .headingMessage{
    background-color: rgb(236,156,5);
    color: #ffffff;
    font-size: 18px;
    margin-bottom: 8px;
    padding: 6px 6px 5px 6px;
    text-align: center;
}
.headingSearch{
    clear: both;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 1.2pt;
    padding: 16px 0px 8px 0px;
}
.headingSection{
    clear: both;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 1.2pt;
    padding-bottom: 8px;
    text-transform: uppercase;
}
.headingSub{
    clear: both;
    font-size: 18px;
    font-style: italic;
    font-weight: bold;
    letter-spacing: 1.2pt;
    padding: 4px 0px 6px 0px;
    text-transform: uppercase;
    width: 100%;
}
.heroBanner{
    min-height: 600px;
    position: relative;
    width: 100%;
    z-index: 10;
}
.heroBanner .image{
    background-size: cover;
    height: 100%;
    left: calc( -1 * ( 50vw - 600px ));
    position: absolute;
    top: 0px;
    width: 100vw;
    z-index: 8;
}
.heroBanner .textWrapper{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    margin-left: 10px;
    min-height: 600px;
    position: relative;
    width: 40%;
    z-index: 10;
}
.heroBanner .textWrapper .text{
    box-sizing: border-box;
    font-size: 20px;
    width: 100%;
}
.heroBanner .textWrapper .text .button{
    border-radius: 8px;
    font-size: 24px;
    margin-top: 25px;
    min-width: 120px;
    padding: 12px 16px 8px 16px;
    width: auto;
}
.heroBanner .textWrapper .text .textHeading{
    font-family: Family, Georgia, serif;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 8px;
}
.heroVideoWrapper{
    height: auto;
    width:100%;
}
.heroVideoWrapper .heroVideo{
    padding-top: 28.125%;
    position: relative;
}
.heroVideoWrapper .heroVideo .heroVideoFrame{
    border: 0;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.homeBanner{
    float: left;
    margin: 0px 2% 12px 0px;
    width: 32%;
}
.homeBanner img{
    width: 100%;
}
.homeFeature{
    margin-bottom: 20px;
    position: relative;
    width: 100%;
}
.homeFeatureBar{
    bottom: 90px;
    opacity: 0.5;
    padding: 14px 34px;
    position: absolute;
    right: 0px;
    z-index: 5;
}
.homeFeatureImage{
    width: 100%;
}
.imageCentre img{
    margin: 0px auto;
    max-width: 100%;
}
.imageGrid{
    column-gap: 24px;
    display: grid;
    width: 100%;
}
.imageGrid img{
    width: 100%;
}
.imageGrid .imageGridSlot{
    position: relative;
    z-index: 10;
}
.imageGrid .imageGridSlot .textWrapper{
    bottom: 0px;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 38% 1fr;
    gap: 12px;
    left: 0px;
    padding: 0px 30px;
    position: absolute;
    right: 0px;
    text-align: center;
    top: 0px;
    z-index: 11;
}
.imageGrid .imageGridSlot .textWrapper .textOverImageHeading{
    align-self: flex-end;
    border-bottom: 3px solid;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 1.2pt;
    padding-bottom: 22px;
}
.imageGrid .imageGridSlot .textWrapper .textOverImageText {
    align-self: flex-start;
    font-size: 20px;
    padding-top: 15px;
}
.imageGridFeature{
    background-size: cover;
}
.imageGridFeatureLeft{
    column-gap: 16px;
    display: grid;
    grid-template-columns: 66% 33%;
}
.imageGridFeatureLeft img,
.imageGridFeatureRight img{
    width: 100%;
}
.imageGridFeatureRight{
    column-gap: 16px;
    display: grid;
    grid-template-columns: 33% 66%;
}
.imageGridFeaturettes{
    display: grid;
    grid-template-rows: 1fr;
    row-gap: 16px;
}
.imageHeader{
    position: relative;
    width: 100%;
    z-index: 10;
}
.imageHeader img{
    width: 100%;
}
.imageHeader .textWrapper{
    bottom: 0px;
    display: flex;
    flex-direction: column;
    font-size: 30px;
    font-weight: bold;
    justify-content: space-around;
    left: 0px;
    padding-top: 2px;
    position: absolute;
    right: 0px;
    text-align: center;
    top: 0px;
    z-index: 11;
}
.imageText{
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
}
.imageText .image{
    width: 100%;
}
.imageText .textWrapper{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding: 0px 30px;
}
.imageText .textWrapper .text{
    font-size: 18px;
    width: 100%;
}
.imageText .textWrapper .text .button{
    margin: 10px 0px;
    min-width: 120px;
    width: auto;
}
.imageText .textWrapper .text .textHeading{
    font-family: Family, Georgia, serif;
    font-size: 26px;
    font-weight: bold;
    padding-bottom: 10px;
}
.inliner img{
    display: inline;
}
.introCat{
    background-size: cover;
    margin-bottom: 10px;
    min-height: 200px;
    width: 100%;
}
#itemArea{
    clear: both;
    display: flex;
}
#itemBrandLogo img{
    float: right;
    height: 240px;
}
.itemCustomFiltersSort{
    display: flex;
    justify-content: space-between;
    letter-spacing: 0.1em;
    margin-bottom: 18px;
    padding: 15px 8px 15px 8px;
}
.itemCustomFiltersSort label{
    font-size: 22px;
    font-weight: bold;
}
.itemCustomFiltersSort .itemCustomFilters,
.itemCustomFiltersSort .itemCustomSort{
    align-items: center;
    display: flex;
}
.itemCustomFiltersSort .itemCustomFilters .buttonFilter,
.itemCustomFiltersSort .itemCustomSort select{
    background-color: #ffffff;
    border: 1px solid #122417;
    border-radius: 10px;
    color: #122417;
    cursor: pointer;
    display: inline-block;
    font-family: Barlow, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 16px;
    margin-left: 4px;
    padding: 5px 6px 4px 6px;
}
.itemCustomFiltersSort .itemCustomFilters .buttonFilter img{
    height: 16px;
}
#itemDetails{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
    margin-left: 18px;
}
.itemFilters{
    display: flex;
    font-size: 18px;
    padding-bottom: 6px;
}
.itemFilters .itemFilter{
    border: 2px solid #122417;;
    border-radius: 8px;
    cursor: pointer;
    margin-right: 12px;
    padding: 4px 6px 3px 6px;
}
#itemImage img{
    max-width: 312px;
}
.itemInfoBrand{
    font-family: Family, Georgia, serif;
    font-size: 34px;
    font-weight: bold;
    letter-spacing: 1.4pt;
    padding-bottom: 6px;
}
.itemInfoBrand a:link, .itemInfoBrand a:visited{
    color: #122417;
}
#itemInfoCom{
    max-width: 280px;
}
#itemInfoCom .itemTiers{
    align-items: start;
    display: flex;
    flex-direction: column-reverse;
    margin-top: 9px;
}
#itemInfoCom .itemTiers .itemTiersInfo{
    display: grid;
    grid-template-columns: auto auto;
    margin-right: 5px;
    min-width: 280px;
    text-align: right;
    width: 100%;
}
#itemInfoCom .itemTiers .itemTiersInfo div{
    padding: 3px 4px 2px 4px;
}
#itemInfoIcons{
    float: right;
}
.itemInfoIcon{
    float: left;
    height: 30px;
    margin: 0px 10px 4px 0px;
}
#itemInfoData{
    border-top: 2px solid #122417;
    clear: both;
    display: flex;
    flex-grow: 1;
    justify-content: space-between;
    margin-top: 14px;
    padding-top: 14px;
}
#itemInfoData .wishConfirm{
    display: none;
    font-size: 20px;
    font-weight: bold;
    margin-top: 10px;
}
#itemInfoData .wishListArea{
    font-size: 20px;
    font-weight: bold;
    margin: 8px 0px 12px 0px;
}
.itemInfoDataAccolade{
    box-sizing: border-box;
    float: left;
    min-height: 40px;
    min-width: 30%;
    margin: 10px 10px 0px 0px;
    padding: 0px 0px 0px 35px;
    position: relative;
}
.itemInfoDataAccolade img{
    height: 30px;
    left: 0px;
    position: absolute;
    top: 0px;
}
#itemInfoDataFeatures{
    display: flex;
}
#itemInfoDataFeatures img{
    height: 32px;
    margin: 10px 48px 0px 0px;
}
#itemInfoDataNoteStats{
    display: flex;
    flex-grow: 1;
    justify-content: space-between;
}
#itemInfoDataNoteStatsStock{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
    margin-right: 12px;
}
#itemInfoDataNoteStatsStock .flavourWheel{
    bottom: 100px;
    height: 250px;
    margin: 10px 0px;
    width: 250px;
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant{
    display: inline;
    height: 125px;
    overflow: hidden;
    position: relative;
    width: 125px;
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant .octant{
    position: absolute;
    top: 0px;
    left: 0px;
    height: 125px;
    width: 125px;
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant .polygonClipTriangleTopLeft{
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 100% 0%);
    clip-path: polygon(0% 0%, 100% 100%, 100% 0%);
    -webkit-clip-path: url("#polygon-clip-triangle-top");
    clip-path: url("#polygon-clip-triangle-top");
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant .polygonClipTriangleBottomLeft{
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
    -webkit-clip-path: url("#polygon-clip-triangle-bottom");
    clip-path: url("#polygon-clip-triangle-bottom");
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant .polygonClipTriangleTopRight{
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
    -webkit-clip-path: url("#polygon-clip-triangle-top-right");
    clip-path: url("#polygon-clip-triangle-top-right");
}
#itemInfoDataNoteStatsStock .flavourWheel .quadrant .polygonClipTriangleBottomRight{
    -webkit-clip-path: polygon(0% 100%, 100% 100%, 100% 0%);
    clip-path: polygon(0% 100%, 100% 100%, 100% 0%);
    -webkit-clip-path: url("#polygon-clip-triangle-bottom-right");
    clip-path: url("#polygon-clip-triangle-bottom-right");
}
#itemInfoDataNoteStatsStock .flavourWheelCache{
    height: 0px;
    overflow: hidden;
    width: 100%;
}


#itemInfoDataNote{
    flex-grow: 2;
    max-width: 380px;
    padding: 0px 12px 20px 0px;
}
#itemInfoDataPackaging{
    font-size: 14px;
    justify-content: space-between;
    line-height: 30px;
    padding: 4px 12px;
}
#itemInfoDataPackaging #itemInfoBarcodes{
    column-gap: 6px;
    display: grid;
    grid-template-columns: auto 1fr auto 1fr;
    row-gap: 0px;
}
#itemInfoDataStats{
    flex-grow: 1;
    min-width: 140px;
    padding-bottom: 20px;
}
#itemInfoDataStock{
    width: 100%;
}
#itemInfoDataStockHeading{
    border-bottom: 2px solid #122417;
    border-top: 2px solid #122417;
    display: flex;
    font-weight: bold;
    justify-content: space-between;
    line-height: 20px;
    padding: 6px 0px 3px 0px;
}
#itemInfoDataStockHeading div{
    padding: 0px 40px 0px 10px;
    position: relative;
}
#itemInfoDataStockHeading img{
    height: 20px;
    position: absolute;
    top: -2px;
    right: 10px;
}
.itemInfoName{
    float: left;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 1.2pt;
}
#itemInfoLogin{
    background-color: rgb(225,225,225);
    padding: 12px;
}
.itemArea{
    display: flex;
    flex-direction: column-reverse;
}
.itemListing{
    column-gap: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin-bottom: 36px;
    row-gap: 36px;
}
.left{
    text-align: left;
}
.messageError{
    color: red;
    padding: 10px;
}
.mobileColumnToRow{
    display: flex;
    flex-direction: column;
}
.mobileOnly, .mobileInlineOnly, .tabletOnly{
    display: none;
}
.profileBlock{
    padding: 0px 10px 32px 0px;
}
.right{
    text-align: right;
}
.row2column{
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
}
.row2column video{
    max-width: 100%;
}
#scrollToTop{
    bottom: 26px;
    cursor: pointer;
    display: inline-block;
    right: 16px;
    position: fixed;
    z-index: 12;
}
.sticker{
    color: white;
    font-size: 20px;
    font-weight: bold;
    position: absolute;
    top: 0px;
    left: 0px;
    line-height: 20px;
    padding: 5px 4% 4px 0px;
    text-align: right;
    width: 96%;
    z-index: 10;
}
.stickerBonus{
    background-image: linear-gradient( to right, rgba(0,0,255,0), rgba(0,0,255,0.3), rgba(0,0,255,0.9) );
}
.stickerClearance{
    background-image: linear-gradient( to right, rgba(255,165,0,0), rgba(255,165,0, 0.3), rgba(255,165,0, 0.9) );
}
.stickerOrder{
    background-color: rgb(188,202,176);
    color: #090909;
    z-index: 12;
}
.stickerPromo{
    background-image: linear-gradient( to right, rgba(128,0,128,0), rgba(128,0,128,0.3), rgba(128,0,128,0.9) );
}
.stickerSpecial{
    background-image: linear-gradient( to right, rgba(255,0,0,0), rgba(255,0,0,0.3), rgba(255,0,0,0.9) );
}
.stickerItem{
    color: white;
    font-weight: bold;
    margin-bottom: 4px;
    padding: 5px 4% 4px 0px;
    text-align: right;
    width: 96%;
}
.stickerItemBonus{
    background-color: rgba(0,0,255,0.9);
}
.stickerItemPromo{
    background-color: rgba(128,0,128,0.9);
}
.stickerItemSpecial{
    background-color: rgba(255,0,0,0.9);
}
.stickerItemClearance{
    background-color: rgba(255,165,0, 0.9);
}
.stocklevels{
    box-sizing: border-box;
    display: flex;
    font-weight: bold;
    justify-content: space-between;
    padding: 10px;
    width: 100%;
}
.stocklevels img{
    display: inline-block;
    margin-right: 12px;
    width: 50px;
}
.tableData{
    text-align: right;
    width: 100%;
}
.tableData thead tr{
    background-color: #122417;
    color: #ffffff;
}
.tableData thead tr th{
    padding: 3px;
}
.tableData tbody tr td{
    padding: 3px;
}
.tableData tbody tr:nth-child(even){
    background-color: #f2f2f2;
}
.textBlock{
    padding: 0px 10px;
}
.upSell{
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    padding: 10px;
}
.upSell .upSell1{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding-bottom: 40px;
    width: 40%;
}
.upSell .upSell2{
    max-height: 540px;
    min-height: 460px;
    overflow: hidden;
    position: relative;
    width: 22%;
}
.upSell .upSell2 .imageBottle{
    position: absolute;
    bottom: -12px;
    left: -5%;
    width: 110%;
}
.upSell .upSell2 .itemAccolades{
    display: grid;
    grid-template-columns: 44px;
    left: 40px;
    position: absolute;
    row-gap: 8px;
    top: 40px;
}
.upSell .upSell2 .itemAccolades img, .upSell .upSell2 .itemFeatures img{
    width: 100%;
}
.upSell .upSell2 .itemFeatures{
    display: grid;
    grid-template-columns: 44px;
    right: 40px;
    position: absolute;
    row-gap: 8px;
    top: 40px;
}
.upSell .upSell3{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    justify-items: start;
    padding-bottom: 20px;
    width: 32%;
}
.upSell .upSell3 .upSellPrice{
    font-family: Sybarite;
    font-size: 22pt;
    font-weight: bold;
    letter-spacing: 1.8pt;
    line-height: 36pt;
}
.upSell.upSell3 .upSellPriceDollar{
    font-size: 70px;
}
.upSell .upSell3 .upSellSub{
    font-family: Sybarite;
    font-size: 14pt;
    letter-spacing: 1.2pt;
    line-height: 20pt;
}
.upSell .upSellButton {
    display: none;
    float: right;
    margin-top: 10px;
}
.upSell .upSellNote{
    margin: 25px 0px;
}
.upSell .upSellQuote{
    font-weight: bold;
}
.videoWrapper{
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    margin: 5px auto 0px auto;
    height: 0;
    width: 100%;
}
.videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.vspace{
    clear: both;
    width: 100%;
}