/***CUSTOM CLASSES FOR CMS COMPONENTS***/

.marginTopS { margin-top:15px !important; }
.marginTopM { margin-top:30px !important; }
.marginTopL { margin-top:60px !important; }
.marginTopXL { margin-top:80px !important; }
.marginBtmS { margin-bottom:15px !important; }
.marginBtmM { margin-bottom:30px !important; }
.marginBtmL { margin-bottom:60px !important; }
.removeMarginBottom { margin-bottom:0 !important; }

/***FORCE CONTAINER TO 1600PX***/

.cmsPage .cmsContainer.max1600 { margin: 0 auto; max-width: 1600px; padding: 0 50px; }
@media (max-width: 767px) { .cmsPage .cmsContainer.max1700 { padding: 0 10px; } }

/***CHANGE H1 TO FUTURA***/

.cmsPage .cmsContainer.h1Secondary .containerTitleSection h1 { font-family: 'futura-pt' !important;font-weight: 500 !important;letter-spacing: 1px !important; font-size: 1.5em; }

/***ADD BORDER TO HEADER INSIDE***/

.cmsPage .cmsContainer.headerBorderBottom h2 { border-bottom: 1px solid; padding-bottom: 25px; }

/***ADD BORDER TO IMAGES INSIDE***/

.cmsPage .cmsContainer.imageBorders img { border:1px solid #ccc; }

/***CHANGE BANNER TEXT TO FUTURA***/

.bannerTextFutura .bannerContentInner h1, .bannerTextFutura .bannerContentInner h2 { font-family: 'futura-pt' !important;font-weight: 500 !important;letter-spacing: 1.5px !important; font-size: 1.4em !important; }
.bannerAlignLeft .bannerContent .bannerContentInner { align-items: flex-start !important; width: 34%; text-align: left !important;padding:40px }

/***MOVE BANNER TEXT TO CENTER***/

.cmsContainer.bannerTextCenter .bannerContentInner { text-align: center !important;}
.cmsContainer.bannerTextCenter .bannerContentInner p { text-align:center !important;margin-left:auto !important;margin-right:auto !important; }

/***FORCE CONTENT TO THE MIDDLE***/

.forceContentCenter .blockComponent .componentBlockText, .forceContentCenter { text-align: center !important;}
.forceContentCenter .blockComponent .componentBlockText p, .forceContentCenter p { margin: 10px auto 0 auto !important;}

.campaignContent h2, .campaignContent h3 { font-family:'baskerville-URW' !important;color:inherit; font-size:2.3em !important;letter-spacing:0.2em !important;line-height:1.3em !important;text-transform:uppercase;margin-top:5px; }
.campaignContent .cta { padding:12px 40px !important;text-decoration:none !important; }

/***ADD COLOURS TO CAROUSEL/BANNER TEXT AREAS***/

.textAreaWhite .bannerContent .bannerContentInner { background-color:white !important;-webkit-box-shadow:inset 0px 0px 0px 1px #e3e3e3; -moz-box-shadow:inset 0px 0px 0px 1px #e3e3e3; box-shadow:inset 0px 0px 0px 1px #e3e3e3;width:33% !important; }
.textAreaGold .bannerContent .bannerContentInner { background-color:#ffb200 !important;width:33% !important; }
.textAreaBlack .bannerContent .bannerContentInner { background-color:#000 !important;color:#FFF;width:33% !important; }

/***MOVE DOTS BELOW A CAROUSEL***/

.cmsPage .cmsBannerCarouselComponent.dotsBelow .owl-dots {
    margin-top: 5px;
    position:inherit;
}

.cmsPage .blockComponentContainer .blockComponent.block-content-center { display: flex; flex-direction: column; justify-content: center; }

.hideTextLinks .componentBlockText a { display:none; }
.cmsPage .hideTextLinks a.blockComponentHeaderLink h3 { font-size:1.1em; }

.linkOnly .componentBlockText a { margin-top: 0 !important;text-decoration: none;font-size: 13px; line-height:15px  }
.blockComponent.linkOnly:hover a { text-decoration: underline !important;}

.flexItemsCenter .blockComponentContainer { display: flex; justify-content: center; }
.flexContentsCenter { display: flex; align-items: center; }
.flexContentsCenter .componentBlockText { padding:0px 20px; max-width: 500px; margin: 0 auto;width: 100%; }
.flexContentsCenter h1 { max-width:100% !important;margin-top:0px !important; }
.flexContentsCenter p { max-width:100% !important;margin-top:15px !important;margin-bottom:10px !important; }

.flexTitleSection .containerTitleSection { display: flex; justify-content: space-between; }

.cmsPage .container.containCarousel { max-width:1500px !important;margin:0 auto;}
.cmsPage .container.containCarousel-padding { max-width:1540px !important;margin:0 auto; padding:0 20px !important; }
.cmsPage .container.containCarouselXL { max-width:1600px !important;margin:0 auto; }
.cmsPage .container.containCarouselXL-padding { max-width:1680px !important;margin:0 auto; padding:0 40px !important; }
.cmsPage .container.containCarouselNarrow { max-width: 1200px !important;margin:0 auto; }
.cmsPage .container.containCarouselNarrow-padding { max-width: 1200px !important;margin:0 auto; padding:0 20px !important; }
.cmsPage .container.containCarouselExtraNarrow { max-width: 800px !important;margin:0 auto; }
.cmsPage .container.containCarouselExtraNarrow-padding { max-width: 800px !important;margin:0 auto; padding:0 20px !important; }

.cmsPage .removeBannerScale .owl-carousel .owl-item img, .cmsPage .removeBannerScale .cmsBannerComponent img { min-height:auto !important;object-fit:initial  !important; }

.vertAlignContentMiddle .componentBlockText { justify-content: center;display: flex;flex-direction: column; }


.cmsProductCard picture {display: block; }
.cmsProductCard img {max-width: 80%;}
.cmsProductCard .cardTitle {text-decoration: none !important;font-size: 12px;font-weight: 500 !important;letter-spacing: 1px;line-height: 18px;text-transform: uppercase;padding: 0 8px !important;     height: 40px;max-width: 250px;overflow: hidden;margin: 0 auto;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical; }
.cmsProductCard .cardPrice {font-weight: 500;font-size: 15px; }

.blockComponent.componentButton { margin-bottom:0px !important; }
.blockComponent.componentButton .componentBlockText a { background-color: #f4f5f7; width: 100%; padding: 16px 0; text-decoration: none; font-weight: 500 !important;text-align:center !important;text-transform:uppercase; ;margin-top:0;font-size: 14px; letter-spacing: 0.5px;  }
.blockComponent.componentButton .componentBlockText a:hover { background-color: #f7f8f9;  }
.blockComponent.componentButton picture { display:none; }


@media(max-width:1500px) {
.cmsPage .container.containCarousel-padding, .cmsPage .container.containCarouselXL-padding, .cmsPage .container.containCarouselNarrow-padding, .cmsPage .container.containCarouselExtraNarrow-padding { padding:0 40px !important; }
}

@media(max-width:1100px) {

.fullWidthMobile div[class^="col-"] { padding-left: 0; padding-right: 0; }
.textAreaWhite .bannerContent .bannerContentInner,.textAreaGold .bannerContent .bannerContentInner,.textAreaBlack .bannerContent .bannerContentInner { width:45% !important; }
 }

@media (min-width:992px) {
.cmsContainer.fiveWide .col-md-3,.cmsContainer .fiveWide .col-md-3,.cmsContainer.fiveWide .col-md-2 {width: 20%;}
.cmsContainer.sixWide .col-md-3,.cmsContainer .sixWide .col-md-3, .cmsContainer.sixWide .col-md-2 {width: 16.666%;}
}

@media(max-width:991px) {
.cmsPage .container.containCarousel-padding, .cmsPage .container.containCarouselXL-padding, .cmsPage .container.containCarouselNarrow-padding, .cmsPage .container.containCarouselExtraNarrow-padding { padding:0 35px !important; }
.overflowMobile .blockComponentContainer {flex-wrap: nowrap; overflow-x: scroll;-webkit-overflow-scrolling: auto;justify-content: flex-start;scrollbar-width: thin;scrollbar-color: #aaa #f1f1f1;padding:0 15px !important;}
.overflowMobile > .container { padding-right:0 !important;padding-left:10px !important;margin-left:-5px;margin-right:0; }
.overflowMobile > .container > .row { margin-left: -5px;margin-right: -5px; }
.overflowMobile .blockComponentContainer::-webkit-scrollbar { height: 5px; -webkit-appearance: none;}
.overflowMobile .blockComponentContainer::-webkit-scrollbar-thumb {background-color: #d5d5d5;}
.overflowMobile .blockComponentContainer::-webkit-scrollbar-track {background: #f1f1f1;}
.cmsContainer.overflowMobile.titlesLeftAligned .containerTitleSection { padding-left:15px; }
.overflowMobile .blockComponentContainer .col-sm-4.blockComponent {min-width: 25%;margin-bottom:25px;padding-left:0;padding-right:10px;}
.overflowMobile .blockComponentContainer .col-sm-6.blockComponent {min-width: 46%;margin-bottom:25px;padding-left:0;padding-right:10px;}
.overflowMobile .blockComponentContainer .col-sm-12.blockComponent {min-width: 15%;margin-bottom:25px;padding-left:0;padding-right:10px;text-align:left;}

}

@media(max-width:767px) { 

.cmsPage .container.containCarousel-padding, .cmsPage .container.containCarouselXL-padding, .cmsPage .container.containCarouselNarrow-padding, .cmsPage .container.containCarouselExtraNarrow-padding { padding:0 15px !important; }

.removeMobileMarginTop { margin-top:0 !important; }
.removeMobilePadding, .cmsPage .cmsBannerCarouselComponent.removeMobilePadding, .removeMobilePadding .containerFullWidth { padding:0 !important }


.mobileFlexOrder1 { -webkit-box-ordinal-group: 1; -moz-box-ordinal-group: 1; -ms-flex-order: 1; -webkit-order: 1; order: 1; }
.mobileFlexOrder2 { -webkit-box-ordinal-group: 2; -moz-box-ordinal-group: 2; -ms-flex-order: 2; -webkit-order: 2; order: 2; }
.mobileFlexOrder3 { -webkit-box-ordinal-group: 3; -moz-box-ordinal-group: 3; -ms-flex-order: 3; -webkit-order: 3; order: 3; }

.linkOnly .componentBlockText a { font-size:12px; }

.cmsPage .cmsContainer.h1Secondary .containerTitleSection h1 { font-size: 1.4em !important; }

.fullWidthMobile .container { margin-left: 0 !important;margin-right: 0 !important;padding-left: 0 !important;padding-right: 0 !important;width: 100% !important; }
.fullWidthMobile .row { margin-left: 0px; margin-right: 0px; }

.campaignContent h2, .campaignContent h3 { font-size:1.8em !important;letter-spacing:0.2em !important;line-height:36px !important; }

.textAreaWhite .bannerContent .bannerContentInner,.textAreaGold .bannerContent .bannerContentInner,.textAreaBlack .bannerContent .bannerContentInner { width:100% !important; }
.overflowMobile .blockComponentContainer .col-xs-4.blockComponent {min-width: 31%;}
.overflowMobile .blockComponentContainer .col-xs-6.blockComponent {min-width: 46%;}
.overflowMobile .blockComponentContainer .col-xs-12.blockComponent {min-width: 85%;}

 }


/***CUSTOM CMS COMPONENTS ***/

.cmsContainer .containerTitleSection span.skipToSpan {color: #797979 !important;display: inline-block !important;}

.cmsContainer.categoryPageLinkList a {display: block !important;margin-top: 10px !important;text-transform: capitalize !important;letter-spacing: 0 !important;font-size: 1em !important;font-weight: 400 !important;}

a.blackContentButton { padding: 10px 30px !important;background-color: #000000 !important;color: white !important;text-decoration: none !important;text-transform: uppercase;font-size: 0.8em;font-weight: 500;display:block !important;min-width: 250px;max-width: 300px;margin: 5px auto 0 auto;letter-spacing: 0.1em;margin-top:20px !important; }
a.blackContentButton:hover { opacity:0.85; }

.blackBGComponent { background-color:#000;color:#FFF; }
.blackBGComponent p { color:#FFF; }

.staticCategoryHeroArea { margin-top:30px; }
.staticCategoryHeroArea .container { max-width:1700px; }


@media (max-width: 1100px) {
.staticCategoryHeroArea div[class^="col-"] { padding-left: 0; padding-right: 0; }
}

@media(max-width:767px) {

.categoryPageLinkList .blockComponent { margin-bottom:30px !important; }

.staticCategoryHeroArea { margin-top:0px !important; }
.staticCategoryHeroArea .container { margin-left: 0 !important;margin-right: 0 !important;padding-left: 0 !important;padding-right: 0 !important;width: 100% !important; }
.staticCategoryHeroArea .row { margin-left: 0px; margin-right: 0px; }
}