/* ICONOGRAPHY - Standard Screen CSS */
body {
    margin: 0;
    padding: 132px 0 0 0;
    font-family: 'Lato', sans-serif;
    line-height: 150%;
    color: #333;
    font-size: 15px;
    background: #fff;
}

body#home {
    padding-top: 0;
}

a.skip-link {
    background: #FFF;
    color: #333;
    position: absolute;
    transform: translateY(-200px);
    z-index: 999;
    padding: 0 5px;
    font-size: 85%;
    margin: 5px;
    border: 1px solid #333;
    box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
    text-decoration: none !important;
}

a.skip-link:focus {
  transform: translateY(0);
}

#popupbody {
    position: relative;
    float: left;
    width: 100%;
    padding: 20px;
    background-color: #fff;
    background-image: none;
}

#popupbody .errbox {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto !important;
    padding: 20px;
    -webkit-animation: cssAnimation 5s forwards;
    animation: cssAnimation 5s forwards;
}
@keyframes cssAnimation {
    0%   {opacity: 1;}
    90%  {opacity: 1;}
    100% {opacity: 0; display: none;}
}
@-webkit-keyframes cssAnimation {
    0%   {opacity: 1;}
    90%  {opacity: 1;}
    100% {opacity: 0; display: none;}
}

#tinymce {
    background: #fff;
    padding: 5px;
}

body.noscroll {
    overflow: hidden;
}

.relative {
    position: relative !important;
}

/*************** BOOTSTRAP OVERRIDES *******************/
.container, .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.container-fluid .row {
    margin-left: 0;
    margin-right: 0;
}

header.container-fluid .container > div {
    padding-left: 0;
    padding-right: 0;
}

/************* COMMON ***************/
a {
    color: #333;
    text-decoration: none;
}

a:hover, a:focus {
    color: #333;
    text-decoration: underline;
}

.pagewrap a {
    text-decoration: underline;
}

p {
    margin: 0 0 0.8em 0;
    padding: 0;
    line-height: 1.5em;
}

li {
    margin: 0.5em 0;
    padding: 0;
}

img {
    border: 0;
}

h1, h2, h3, h4, h5, h6, blockquote {
    font-family: 'Lato', sans-serif;
    line-height: normal;
    font-weight: 600;
    padding: 0;
    color: #333;
}

h1 {
    font-size: 300%;
    text-align: center;
    margin: 0 0 0.4em 0;
    clear: both;
}

h2 {
    font-size: 200%;
    margin: 0 0 0.4em 0;
}

h3 {
    font-size: 167%;
    margin: 0 0 0.4em 0;
}

h4 {
    font-size: 140%;
    margin: 0 0 0.3em 0;
}

h5 {
    font-size: 130%;
    margin: 0 0 0.2em 0;
}

h6 {
    font-size: 85%;
    margin: 0 0 0.2em 0;
}

.red {
    color: #e82802;
}

.green {
    color: #090;
}

.grey {
    color: #aaaaaa;
}

.note {
    font-size: 85%;
    color: #999;
    font-weight: normal;
    padding: 4px;
}

.note a {
    color: #999;
}

hr {
    border: 0;
    border-bottom: 1px dashed #ccc;
    height: 1px;
    padding: 0;
    margin: 0;
    clear: both;
}

hr.clear {
    border: none;
}

hr.spacer {
    border: none;
    margin: 10px 0;
}

button, input, select, textarea {
    outline: none;
}

/******************** HEADER ***********************/
.pagewrap {
    background: #fff;
    width: 100%;
    float: left;
    position: relative;
}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 997;
    background-color: #ffffff;
    backdrop-filter: blur(10px);
}

body#home header {
    background-color: transparent;
}

#header {
    position: relative;
    width: 100%;
    margin: 0;
    float: left;
    clear: both;
    display: block;
    z-index: 997;
    background: transparent;
    color: #999;
}

#header .container {
    display: flex;
    align-items: center;
}

#header .headerleft {
    display: flex;
    align-items: center;
    flex: 6;
}

header .headerbanner {
    float: left;
    width: 100%;
    background: transparent;
    text-align: center;
    padding: 6px 6px 6px 35px;
    position: relative;
    color: #333;
    margin: 0;
    text-decoration: none;
}

header .headerbanner-scroller {
    overflow: hidden;
}

header .headerbannertext {
    width: 100%;
}

header .headerbanner img {
    position: absolute;
    right: 10px;
    top: 10px;
    cursor: pointer;
}

header .countdownbanner {
    font-size: 100%;
    padding: 6px;
}

header .countdownbanner #countdown {
    margin-left: 10px;
}

#header .logo {
    display: block;
    margin: 10px auto;
    padding: 0;
    outline: none;
    text-align: left;
}

#header .logo img {
    /*max-width: 70%;*/
    height: auto;
}

/*#header a {
    color: #333;
    outline: none;
}*/

#header a:hover, #header a:focus {
    text-decoration: none;
    outline: none;
}

#header #languages {
    padding-left: 0;
    padding-right: 0;
}

#header #languages a {
    margin: 0 0 0 5px;
}

#header a.language {
    text-decoration: underline;
}

#header #currencies {
    padding-left: 0;
    padding-right: 0;
}

#header #currencies a {
    margin: 0 0 0 5px;
    font-size: 145%;
}

#header a.currency {
    text-decoration: underline;
}

#header #basketsummary, #header #wishlist, #header #account, #header #currencies, #header #languages {
    text-align: right;
    padding-top: 30px;
    padding-bottom: 15px;
}

#header .headerright {
    text-align: right;
    display: inline-flex;
    align-content: center;
    justify-content: right;
    flex: 6;
}

#header .headerright div {
    display: inline-block;
    padding-left: 25px;
}

#header .headerright a {
    display: flex;
    font-size: 80%;
}

#header .headerright a svg, .mobile-basket a svg {
    display: inline-block;
    width: 20px;
    height: 20px;
    stroke: #333;
    margin-left: 10px;
}

.searchbox {
    float: left;
    width: 80%;
    padding: 0 0 15px 0;
    text-align: center;
}
.search {
    clear: both;
    width: 100%;
    margin: 0;
    padding: 15px 10px 10px 10px;
    display: inline-block;
    position: relative;
    z-index: 1000;
    max-width: 100%;
    background: #fff;
    text-align: left;
}
.search form {
    position: relative;
    padding: 8px 0 0 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.search .keyword {
    background: #FFF;
    border: none;
    border-bottom: 1px solid #000;
    border-radius: 0;
    color: #333;
    margin: 0;
    padding: 6px 36px 6px 12px;
    width: 100%;
    height: 40px;
    line-height: 26px;
}
.search .keyword::placeholder {
    color: #333;
}
.search .submit {
    position: absolute;
    right: 12px;
    top: 9px;
}
.search .submit.inputbutton {
    display: inline-block;
    position: initial;
    margin: 0 0 0 12px;
    height: 40px;
}
.clear-search {
    position: absolute;
    right: 100px;
    top: 18px;
    line-height: 100%;
    text-decoration: none;
}

/*************************** TABS ****************************/
#menu-icon {
    display: none;
    width: 32px;
    height: 32px;
    background: transparent url("/images/threedot.png") no-repeat center center;
    background-size: 26px;
    float: right;
}

#menu-title {
    display: none;
    line-height: 32px;
    margin-left: 15px;
}

.tabs {
    position: relative;
    color: #fff;
    background: transparent;
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
    padding: 0;
    margin: 0;
    float: left;
    clear: both;
    line-height: normal;
    width: 100%;
    z-index: 997;
    left: 0;
    top: 0;
}

.tabs ul {
    float: left;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 100%;
    position: relative;
}

.tabs #tabwrap {
    width: 100%;
    text-align: left;
}

.tabs li {
    display: inline-block;
    margin: 0;
    padding: 0;
    line-height: 48px;
    font-size: 100%;
    background: none;
    z-index: 999;
}

.tabs li.special {
    background: #fff; /* Old browsers */
    background: -moz-linear-gradient(top, #fff 0%, #ededed 6%, #e2e2e2 94%, #b7b7b7 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #fff 0%, #ededed 6%, #e2e2e2 94%, #b7b7b7 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #fff 0%, #ededed 6%, #e2e2e2 94%, #b7b7b7 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#b7b7b7', GradientType=0); /* IE6-9 */
}

.tabs li.last {
    background: none;
}

.tabs > div > ul > li:hover, .tabs > div > ul > li.current {
    background: #f9f9f9;
}

.tabs li:hover a, .tabs li.current a {
    color: #333;
}

.tabs .toplevelcat {
    font-weight: bold;
}

.tabs .toplevelcat.red {
    color: #e82802 !important;
}

.tabs .mainoption {
    background: #f9f9f9;
    font-weight: bold;
    padding: 5px 24px 5px 8px;
    margin: 6px 0 2px 0;
}

.tabs .mainoption:hover, .tabs li.current .mainoption:hover {
    color: #fff;
    background: #333 url("/images/shopnav_arrow.png") no-repeat 97% 50%;
    background-size: 20px;
    text-decoration: none;
}

.tabs .suboption {
    padding-left: 12px;
}

.tabs .alloption {
    margin-bottom: 8px;
}

.tabs a {
    float: left;
    display: block;
    padding: 0;
    color: #333;
    font-size: 114%;
    text-decoration: none;
}

/* Commented backslash hack hides rule from IE5-Mac \*/
.tabs a {
    float: none;
}

/* End IE5-Mac hack */
/* sub nav links */
.tabs ul li ul {
    background: #fff;
    display: none;
    margin: 0;
    padding: 12px 6px;
    position: absolute;
    top: 48px;
    z-index: 999;
    border-left: 1px solid #bcbcbc;
    border-right: 1px solid #bcbcbc;
    border-bottom: 1px solid #bcbcbc;
    font-size: 100%;
    text-transform: none;
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
    text-align: left;
}

.tabs ul li ul.widemenu {
    width: 100%;
    left: 0;
}

ul.widemenu li {
    line-height: 2em;
}
.tabs ul li ul.rightmenu {
    right: 0;
}

.tabs ul li:hover ul {
    display: block;
}

.tabs ul li:hover + header {
    background-color: #fff;
}

.tabs ul li.over:hover ul {
    display: none;
}

.tabs ul li ul li {
    padding: 0 8px;
    margin: 0;
    font-size: 100%;
    background: none;
    min-width: 150px;
}

.tabs ul li ul li.menubannerimage {
    float: right;
    text-align: right;
}

.tabs ul li ul li.menucategoryimage img {
    width: 100%;
    height: auto;
}

.tabs ul li ul li.menubannerimage img {
    max-width: 100%;
    height: auto;
}

.tabs ul li ul li:hover {
    background: none;
}

.tabs ul li ul li em {
    color: #bbb;
    font-style: normal;
}

.tabs ul li ul li a {
    padding: 5px 0 5px 0;
    margin: 0 auto;
    color: #333;
    font-weight: normal;
    letter-spacing: normal;
    font-size: 100%;
}

.tabs ul li ul li a:hover, .tabs li.current ul li a:hover {
    color: #333;
    text-decoration: underline;
}

.tabs ul li ul li .productframe {
    padding: 5px 10px;
    width: 100%;
    border: none;
    min-height: 270px;
    display: block;
}

/*.tabs ul li ul li .productframe .price {
    position: absolute;
    bottom: 10px;
    left: 10px;
    right: 10px;
}*/

.tabs ul li ul li .productframe a {
    padding: 0;
    font-weight: bold;
}

.tabs li.tabright {
    float: right;
    background: none;
}

#breadcrumb {
    clear: both;
    display: inline;
    float: left;
    font-size: 85%;
    padding: 10px 15px;
    margin-bottom: 5px;
    position: relative;
    color: #aaaaaa;
    background: #fff;
    width: 100%;
}

#breadcrumb span {
    margin-right: 0.5em;
}

#breadcrumb a {
    color: #333;
    text-decoration: none;
}

.homepagetext1, .homepagetext2 {
    background: none repeat scroll 0 0 #eee;
    clear: both;
    float: left;
    font-size: 100%;
    margin: 8px 0 0 0;
    padding: 4px 0;
    text-align: center;
    width: 100%;
}

.homepagetext2 {
    margin: 0 0 20px 0;
}

.hometop {
    width: 100%;
    clear: both;
    position: relative;
    padding: 10px 15px 0;
    margin: 0 auto;
    min-height: 600px;
    max-width: 2560px;
}

.hometop .owl-dots .owl-dot.active {
    background: rgba(255,255,255,1)!important;
}

.hometop .owl-dots .owl-dot {
    background: rgba(255,255,255,.5)!important;
}

.container-fluid .hometop {
    padding: 0;
}

#newssection {
    text-align: center;
    padding: 60px 0;
    background: #f7f7f7;
}

#newssection .newssection-inner {
    display: flex;
}

.newsscroller .owl-nav {
    position: absolute;
    top: 33%;
    left: 0;
    right: 0;
    width: 100%;
    height: 0;
}

.newsscroller .owl-nav .owl-prev {
    display: inline-block;
    float: left;
}

.newsscroller .owl-nav .owl-next {
    display: inline-block;
    float: right;
}

#cookieprompt {
    position: fixed;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    background: #333;
    background: rgba(30, 30, 30, 0.9);
    color: #fff;
    padding: 0;
    font-size: 110%;
    z-index: 999;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
}

#cookieprompt.cookieblock {
    height: 100%;
    justify-content: center;
}

#cookieprompt #cookiepromptinner {
    padding: 30px 60px;
}

#cookieprompt.cookieblock #cookiepromptinner {
    background: #fff;
    width: 50%;
    color: #333;
    border-radius: 10px;
    text-align: center;
}

#cookieprompt #cookiepromptinner a {
    color: inherit;
}

#cookieprompt #cookieOk {
    font-size: 70px;
    font-family: serif;
    position: absolute;
    left: 20px;
    top: 28px;
    color: #fff;
    text-decoration: none;
}

#cookieprompt a {
    color: #fff;
    text-decoration: underline;
}

/* home image changer */
.imagechanger, .nonchanger, #homevideo {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow: hidden;
    list-style: none;
    position: relative;
}

.bannerchanger {
    width: 100%;
    float: left;
    clear: both;
    position: relative;
    margin: 0 0 16px 0;
}

.imagechanger .changer-item, .nonchanger .changer-item {
    width: 100% !important;
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
    background: no-repeat center center;
    background-size: cover;
}

.imagechanger .changer-item {
    display: none;
}

.imagechanger .changer-item:first-child {
    display: block;
}

#getthelook .imagechanger .changer-item, #getthelook .nonchanger .changer-item {
    padding-bottom: 260px;
}

#getthelook .imagechanger .changer-item img, #getthelook .nonchanger .changer-item img {
    display: inline-block;
}

.imagechanger .changer-item span, .nonchanger .changer-item span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 78px;
    background: #fff;
    opacity: 0.9;
}

.imagechanger .changer-item p span, .nonchanger .changer-item p span {
    position: relative !important;
}

.imagechanger .changer-item a, .nonchanger .changer-item a {
    display: block;
    text-decoration: none;
    outline: none;
    flex: 1;
}

.imagechanger .changer-item img, .nonchanger .changer-item img {
    max-width: 100%;
    width: 100%;
    height: auto;
}

.imagechangercontainer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.imagechangercontainer.notextlink a, .imagechangercontainer.notextlink a:active {
    display: block;
    width: 100%;
    height: 100%;
    outline: none;
}

.imagechangercontainer.flex, .imagechangercontainer.flex > a {
    display: flex;
    align-items: center;
}

.imagechangerbox {
    position: absolute;
    padding: 15px;
    max-width: 80%;
}

.imagechangerbox_topleft {
    top: 180px;
    left: 0;
}

.imagechangerbox_topright {
    top: 180px;
    right: 0;
}

.imagechangerbox_bottomleft {
    bottom: 10%;
    left: 0;
}

.imagechangerbox_bottomright {
    bottom: 10%;
    right: 0;
}

#getthelook .imagechangerbox_bottomleft {
    bottom: 380px;
}

#getthelook .imagechangerbox_bottomright {
    bottom: 380px;
}

.imagechangerbox_central {
    margin: 0 auto;
    position: relative;
    text-align: center;
}

.imagechangerbox_centralleft {
    margin: 55% auto 45% 0;
    position: relative;
}

.imagechangerbox_centralright {
    margin: 55% 0 45% auto;
    position: relative;
}

#getthelook .imagechangerbox_central {
    margin-bottom: 320px;
}

.imagechangerbox h1 {
    margin: 0;
    padding: 0 15px;
    color: inherit;
    font-size: 467%;
    line-height: normal;
    text-align: left;
}

.imagechangerbox_central h1 {
    text-align: center;
}

.imagechangerbox p {
    font-size: 280%;
    padding: 10px 15px;
    margin: 0;
    color: inherit;
    line-height: normal;
    font-weight: normal;
}

.imagechangerbox .inputbutton {
    display: inline-block;
    margin: 20px 15px 40px 15px;
}

/* Owl carousel */
.owl-dots {
    padding: 5px;
    text-align: center;
}

.imagechanger .owl-nav, .imagechanger .owl-dots {
    position: absolute;
    padding: 0;
    width: 100%;
    text-align: center;
    z-index: 110;
}

.imagechanger .owl-nav {
    bottom: 55%;
    bottom: calc(50% + 20px);
}

.imagechanger .owl-dots {
    bottom: 20px;
}

#getthelook .imagechanger .owl-nav {
    bottom: 70%;
    bottom: calc(65% + 20px);
}

#getthelook .imagechanger .owl-dots {
    bottom: 280px;
}

.imagechanger .owl-nav .owl-prev, .imagechanger .owl-nav .owl-next {
    position: absolute;
    padding: 0;
    z-index: 110;
    width: 30px;
    height: 40px;
    cursor: pointer;
    font-size: 0;
}

.imagechanger .owl-nav .owl-next {
    background: transparent url("/images/next.png") no-repeat center center !important;
    background-size: contain !important;
    border: none;
    font-size: 0 !important;
    right: 25px;
}

.imagechanger .owl-nav .owl-prev {
    background: transparent url("/images/prev.png") no-repeat center center !important;
    background-size: contain !important;
    border: none;
    font-size: 0 !important;
    left: 25px;
}

.owl-carousel {
    display: block !important;
}

.owl-carousel .owl-item {
    float: left;
}

.owl-dots .owl-dot {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 8px;
    line-height: 16px;
    margin: 4px;
    text-align: center;
    color: transparent;
    font-size: 90%;
    font-weight: bold;
    background: url("/images/transparent.png") !important;
    background: rgba(51, 51, 51, 0.25) !important;
    text-decoration: none;
    cursor: pointer;
}

.owl-dots .owl-dot.active {
    background: rgba(51, 51, 51, 0.5) !important;
}

.feefo-widget-container {
    text-align: center;
    padding: 7px 0 !important;
    float: right;
}
.feefo-widget-container p {
    margin: 0;
}
.feefo-review-carousel-widget-service .feefowidget-carousel-body {
    text-align: left;
}
.feefo-widget-container .feefo-rating:hover, .feefo-widget-container .feefo-rating:focus {
    text-decoration: none;
}
.feefo-widget-container .feefo-rating p {
    display: flex;
    justify-content: center;
    align-items: center;
}
.feefo-widget-container .feefo-rating-img:hover, .feefo-widget-container .feefo-rating-img:focus {
    text-decoration: none;
}
.feefo-widget-container .feefo-rating-img p {
    display: flex;
    justify-content: center;
    align-items: center;
}
.feefo-widget-container .feefo-rating span {
    text-align: left;
    font-size: 70%;
    line-height: 105%;
    color: #333;
    border-left: 2px solid #333;
    padding: 4px 10px;
}
.feefo-widget-container .feefo-rating span.rating {
    border: none;
    font-size: 135%;
    font-weight: 800;
    color: #231f20;
    display: flex;
    align-items: center;
    justify-content: center;
}
.feefo-widget-container .feefo-rating span.rating strong {
    padding-left: 5px;
}
.feefo-widget-container .feefo-rating span.rating svg {
    fill: #ffd000;
    width: 20px;
}
.feefo-widget-container .feefo-rating img {
    height: 16px;
    padding-left: 5px;
}

/************** MAIN CONTENT *****************/
#content, .content {
    width: 100%;
    margin: 0;
    padding: 15px;
    float: left;
    clear: both;
    display: block;
    position: relative;
    background: transparent;
}

#home #content:first-of-type {
    padding: 0 15px;
}

#content img, .content img {
    max-width: 100%;
    height: auto;
}

.sideheading {
    clear: both;
    display: block;
    margin: 0;
    padding: 8px 0;
    font-size: 120%;
    width: 100%;
}

#rightbar .nav {
    background: none;
    border: none;
}

.fullwidth .sideheading {
    width: 971px;
}

.pagecontainer.fullwidth .sideheading {
    width: 724px;
    border-top: 1px solid #d5d5d5;
    border-bottom: 1px solid #d5d5d5;
}

h5 span {
    float: right;
}

/******************* left column and navigation ***********************/
#sidebar {
    padding-left: 0;
}

.navbox {
    float: left;
    clear: both;
    margin: 0 0 10px 0;
    padding: 0;
    background: #fff;
}

#sidebar .navbox {
    width: 100%;
}

.navboxinner {
    padding: 15px;
    margin: 0;
}

#sidebar .newsletter {
    width: 100%;
    float: left;
    clear: both;
    margin: 0 0 5px 0;
    padding: 0;
    border: none;
}

#sidebar .newsletter .nav {
    width: 100%;
    padding: 6px 12px;
    background: none;
}

#sidebar .newsletter .nav p {
    color: #fff;
}

#sidebar .newsletter .nav a {
    display: block;
    float: left;
    clear: both;
    width: 100%;
    margin: 4px 0 0 0;
    font-weight: bold;
    color: #9f9f9f;
}

#sidebar .newsletter .nav a:hover {
    color: #333;
    text-decoration: none;
}

.navbox .nav {
    width: 100%;
    padding: 0;
    margin: 0;
    float: left;
    clear: both;
    position: relative;
    background: #f9f9f9;
}

#sidebar .navbox ul {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    clear: both;
}

#sidebar .navbox ul li {
    margin: 0;
    padding: 0;
    width: 100%;
    display: block;
    position: relative;
    z-index: 99;
    font-size: 100%;
    border-top: 1px solid #fff;
}

#sidebar .navbox ul li a {
    display: block;
    text-decoration: none;
    padding: 8px 24px 8px 18px;
    margin: 0;
    color: #333;
}

#sidebar .navbox ul li a:hover {
    color: #fff;
    background: #333 url("/images/shopnav_arrow.png") no-repeat 97% 50%;
    background-size: 20px;
}

/* sub nav */
#sidebar .navbox ul li ul {
    display: none;
    padding: 0 0 7px 0;
}

#sidebar .navbox ul li ul li {
    border: none;
    background: none;
    font-size: 100%;
}

#sidebar .navbox ul li ul li a {
    padding: 8px 0 8px 30px;
    color: #797979;
    background: none;
}

#sidebar .navbox ul li ul li a:hover {
    color: #333;
    background: none;
}

#sidebar .navbox .navon {
    display: block !important;
}

.boxcenter {
    width: 188px;
    float: left;
    clear: both;
    padding: 10px 0;
    text-align: center;
}

/* compare products */
.compare {
    width: 100%;
    float: left;
    clear: both;
    padding: 4px 0;
}

.compare .compproduct {
    width: 100%;
    float: left;
    clear: both;
    font-size: 90%;
    padding: 6px 10px;
    margin: 0;
    line-height: normal;
    border-bottom: 1px solid #e2e2e2;
}

.compare .compproduct .left {
    width: 85%;
}

.compare .compproduct .right {
    width: 10%;
    text-align: right;
}

.comparetable {
    width: 100%;
    float: left;
    clear: both;
    overflow: auto;
    margin-top: 20px;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

.comparetable td {
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
}

.comparetable .product {
    text-align: center;
}

.comparetable .remove {
    float: right;
    position: relative;
    z-index: 10;
}

/* latest products */
.boxpad {
    width: 170px;
    float: left;
    clear: both;
    padding: 10px;
}

.boxtitle {
    color: #000;
    font-size: 150%;
    margin-bottom: 10px;
}

.productfeat {
    position: relative;
    clear: both;
    padding: 0 0 8px 0;
    margin: 0 0 8px 0;
    overflow-x: hidden;
}

.productfeatspacer {
    clear: both;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    height: 0;
    line-height: 0;
}

.navbox .productfeat {
    width: 100%;
    padding: 15px 5px;
    margin: 0;
    border-top: 1px solid #d5d5d5;
}

.navbox .productfeat .featimage {
    float: left;
    left: 0;
    margin-right: 10px;
    position: relative;
    text-align: center;
    width: 56px;
}

.navbox .productfeat .name {
    display: table-cell;
    margin: 0;
    padding: 0;
}

.productfeat .name a {
    text-decoration: none;
}

.productfeat .name .inputbutton {
    font-size: 85%;
}

#recentlyviewed {
    width: 100%;
    float: left;
    clear: both;
    padding: 0;
    margin: 0;
}

#recentlyviewed {
    border-top: 1px solid #ccc;
    display: inline;
    margin: 10px 0;
    padding: 20px 15px 0;
    width: 100%;
}

#featured .productfeat {
    min-height: 260px;
    height: 260px;
    padding: 5px;
    clear: none;
    text-align: center;
    margin: 10px 0 0 0;
}

#featured .clear {
    clear: both;
}

#recentlyviewed .productfeat {
    padding: 6px;
    clear: none;
    text-align: center;
    margin: 10px 0 0 0;
    min-height: 100px;
}

#featured .productfeat .featimage, #recentlyviewed .productfeat .featimage {
    width: 100%;
}

#featured .productfeat .name, #recentlyviewed .productfeat .name {
    clear: both;
    float: none;
    width: 100%;
    padding-top: 10px;
}

.productfeat .desc {
    font-size: 85%;
    color: #666;
    line-height: 1.4em;
    margin: 0.5em 0;
}

.productfeat .name {
    text-align: center;
    padding: 8px 8px 0 8px;
}

#associated {
    width: 100%;
    float: left;
    clear: both;
    padding: 10px 0;
    border-top: 1px dashed #efefef;
}

#associated .productfeat {
    clear: none;
    width: 155px;
    height: 6em;
    margin: 0 5px 6px 0;
}

.price {
    font-size: 100%;
    font-weight: normal;
    color: #333;
}

.thumbimagewrap {
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 6px;
}

.productfeat a.thumbimagewrap {
    text-decoration: none;
}

.thumbimagewrap img {
    height: auto;
}

.thumbimagewrap .thumb2 {
    display: none;
}

.brandbox {
    height: 100px;
    padding: 15px 20px;
    margin: 5px 0;
    float: left;
    text-align: center;
    line-height: 70px;
}

.brandbox a {
    text-decoration: none;
}

.brandbox a:hover {
    text-decoration: underline;
}

.collectionbox {
    float: left;
    height: 205px;
    line-height: 100%;
    padding: 10px;
    margin: 1px 1px 10px 1px;
    text-align: center;
    width: 205px;
    position: relative;
}

.collectionbox img {
    margin-bottom: 10px;
}

.collectionbox a {
    bottom: 25px;
    left: 0;
    position: absolute;
    text-align: center;
    text-decoration: none;
    display: block;
    width: 100%;
}

/************************ right main content *********************/
.fullwidth {
    width: 100% !important;
}

.pagecontainer {
    width: 100%;
    margin: 0;
    padding: 0;
    float: left;
    position: relative;
    clear: both;
}

#content > .col-md-12 {
    padding: 0;
}

.pagecontainer .modular {
    display: flex;
    flex-wrap: wrap;
    clear: both;
}

.bannerleft {
    float: left;
    position: relative;
}

#product .bannerleft {
    margin: 0 20px;
    width: 90%;
    width: calc(100% - 40px);
}

#product .bannerright {
    margin: 40px 0 20px 0;
}

.bannercenter {
    width: 100%;
    float: left;
    clear: both;
    text-align: center;
    position: relative;
}

.banner a {
    display: block;
    outline: none !important;
}

.banner img {
    width: 100%;
    height: auto;
}

.bannerright {
    float: right;
    position: relative;
    width: 100%;
}

.bannertop, .bannerbottom {
    width: 100%;
    float: left;
    clear: both;
    text-align: center;
    position: relative;
}

.bannertop img, .bannerbottom img {
    width: 100%;
    height: auto;
}

.bannertop .banner, .bannerbottom .banner {
    padding: 0 !important;
    border: 0 !important;
}

.banner {
    margin-bottom: 10px;
    padding: 0;
    background: #fff;
}

.callback .fullwidth {
    padding: 40px 120px;
}

.magnifiertext {
    background: url("/images/magnifier-icon.gif") no-repeat scroll 5px center #f6f6f6;
    border: 1px solid #eee;
    clear: both;
    color: #999;
    font-size: 85%;
    margin: 0 0 0 75px;
    padding: 2px 10px;
    text-align: center;
}

.catintro, .catoutro {
    clear: both;
    width: 100%;
    float: left;
    padding: 0;
    margin: 0 0 10px 0;
    display: inline;
    position: relative;
}

.catoutro {
    margin: 30px 0;
}

.categoryheader {
    height: 400px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
}

.categoryheader-inner {
    text-align: center;
}

.categoryheader-inner h1 {
    color: #fff;
    text-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}

.categoryheader-inner .inputbutton {
    margin: 10px;
    border: 1px solid #fff;
    width: auto;
}

.categoryheader-inner .inputbutton:hover {
    background: rgba(255, 255, 255, .5);
    border: 1px solid #fff;
}

.categoryframewrap {
    padding: 0 10px 10px 0;
}

.categoryframe {
    padding: 0;
    margin: 0;
    line-height: normal;
    height: auto;
    background: #fff;
    text-align: center;
    overflow: hidden;
    position: relative;
    border: 1px solid #ddd;
}

.categoryframe img {
    width: 100%;
}

.catbox {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px 10px;
    margin: 0;
    font-size: 120%;
    background: rgba(255, 255, 255, 0.8);
    transition: 0.3s ease padding;
}

.categoryframe:hover .catbox {
    background: #333;
    color: #fff;
    padding: 10px 10px 30px 10px;
    transition: 0.3s ease padding;
}

.catbox span {
    font-weight: normal;
    font-size: 85%;
}

.categoryframe a {
    font-size: 120%;
    font-weight: bold;
    text-decoration: none;
}

.albumframe {
    height: 210px;
    padding: 5px 10px;
    margin: 0;
    float: left;
    line-height: normal;
    font-size: 90%;
    text-align: center;
    overflow: hidden;
    position: relative;
}

.photoframe {
    padding: 10px;
    margin: 0;
    float: left;
    text-align: center;
    overflow: hidden;
    position: relative;
}

.photoframeinner {
    width: 100%;
    background: #fff;
    border: 1px solid #ccc;
    padding: 16px 8px;
    display: inline-block;
}

.photoframelabel {
    padding: 6px 0 0 0;
    line-height: normal;
    font-size: 85%;
    color: #666;
}

/* GALLERY PHOTO LIKE */
form.galleryphotolike {
    padding: 10px 0 0 0;
    display: inline-block;
}

form.galleryphotolike .inputbutton {
    margin: 0 3px;
}

.inputbutton.liked, .inputbutton.liked:focus, .inputbutton.liked:active {
    background: #81d191;
    border: 1px solid #393;
    color: #fff;
}

.inputbutton.disliked, .inputbutton.disliked:focus, .inputbutton.disliked:active {
    background: #c33;
    border: 1px solid #933;
    color: #fff;
}

.albumlist {
    margin: 0 0 30px 0;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 20px;
}

.albumpix {
    padding: 8px;
    min-height: 135px;
}

.albumpix img {
    padding: 0;
    margin: 0;
    max-height: 155px;
}

#photoset {
    clear: both;
    float: left;
    margin: 10px 0;
    width: 100%;
}

.productframe.featuredblock {
    padding: 15px;
    margin-top: 5px;
    width: 100%;
    height: auto;
    clear: both;
    text-align: left;
}

.productframe.featuredblock .thumb{
    min-height: 0;
}

.productframe.featuredblock .thumb .overlay img {
    width: 52px;
}

.productframe.featuredblock .name {
    margin: 10px 0 0 0;
    clear: none;
}

.productframe.featuredblock .name a {
    display: block;
    font-size: 150%;
    margin-bottom: 10px;
}

.productframe.featuredblock .name .longdesc {
    display: block;
    font-weight: normal;
}

.productframe.featuredblock .price {
    font-size: 160%;
    margin: 10px 0;
}

.categoryframe a.name {
    display: block;
    margin: 0;
    font-weight: bold;
    text-decoration: none;
}

.pagingoptions {
    color: #999;
    float: left;
    margin: 0 0 5px 0;
    padding: 6px 10px;
    width: 100%;
}

.pagingoptions a {
    text-decoration: none;
    margin: 0 4px;
}

a.pageselected {
    color: #fff;
    background: #333;
    padding: 1px 6px;
    font-weight: bold;
    text-decoration: none;
    border-radius: 10px;
}

#prodlistoptions {
    background: none repeat scroll 0 0 #f9f9f9;
    border: 1px solid #eee;
    clear: both;
    float: left;
    font-size: 90%;
    margin: 0 0 5px 0;
    padding: 6px 10px;
    width: 100%;
}

#prodlistoptions a {
    color: #bbb;
    font-weight: bold;
    text-decoration: none;
}

#prodlistoptions #options {
    width: 100%;
}

#prodlistoptions #options .textfield {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

#prodlistoptions #sortoptions, #prodlistoptions #perpageoptions {
    display: inline-block;
}

#prodlistoptions .pagingoptions {
    padding: 10px 0;
    text-align: right;
}

#prodlistoptions .pagingoptions .pageselected {
    color: #333;
    text-decoration: none;
}

/**** style switcher ****/
#theme {
    float: right;
    clear: both;
    list-style: none;
    width: 100%;
    margin: 8px;
    padding: 0;
    text-align: right;
}

#theme li {
    margin: 0 0 0 6px;
    padding: 0;
    display: inline;
    font-size: 100%;
}

#theme li a {
    border-bottom: none;
    background-image: none;
}

#theme li a img {
    /*background: #dee6ed;*/
    margin: 0 2px 0 0;
}

#theme li a:hover img {
    /*background: #dd0303;*/
}

#theme li a img#theme-grid {
    /*background: #333;*/
}

#theme li a img#theme-list {
    /*background: #fff;*/
    border: 0;
}

#theme li a img#theme-grid {
    /*background: #333;*/
    border: 0;
}

#theme li a:hover img#theme-grid {
    /*background: #333;*/
}

#theme li a:hover img#theme-list {
    /*background: #333;*/
}

#prodlist, .prodlist {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    clear: both;
    width: 100%;
    float: left;
    line-height: normal;
    padding: 0;
    margin: 0;
}

#prodlist .ias-trigger, .prodlist .ias-trigger, #prodlist .ias-spinner, .prodlist .ias-spinner {
    padding: 25px 0;
    width: 100%;
    text-align: center;
}

.productframe {
    padding: 0;
    margin: 0;
    float: left;
    line-height: normal;
    font-size: 85%;
    position: relative;
    overflow: hidden;
    text-align: left;
    display: flex;
}

.productframe .stars {
    font-size: 87%;
    display: flex;
    align-items: center;
}

.productframe .stars img {
    max-width: 95px !important;
    width: 100% !important;
}

.productframe .productframe-inner {
    border: 1px solid #eee;
    margin: 14px 10px;
    flex: auto;
    min-height: 495px;
    padding: 15px;
    transition: border 1s ease;
}

#shoppingbasket .productframe .productframe-inner {
    height: 420px;
}

.productframe .productframe-inner:hover {
    border: 1px solid #ccc;
}

.productframe a {
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    display: flex;
}

.productframe .name a {
    min-height: 36px;
}

.productframe .thumb, .productframe .featimage {
    position: relative;
    overflow: hidden;
    padding: 4px;
    margin: 0;
    text-align: center;
}

.productframe .variations {
    text-align: center;
    padding: 15px 0;
    height: 60px;
}

.productframe .variations .swatchboxwrap {
    display: inline-block;
}

.productframe .variations .colourwrap {
    display: inline-block;
    padding: 1px;
    margin: 6px 6px 0 0;
    border-radius: 30px;
    overflow: hidden;
}

.productframe .variations .colourwrap  .colourswatch {
    display: block;
    width: 18px;
    padding-top: 18px;
    border-radius: 30px;
}

.dropshadow {
    padding: 4px;
    border: 1px solid #eee;
    box-shadow: 1px 1px 6px #ccc;
}

.overlay {
    z-index: 21;
    position: absolute;
    top: 0;
    left: 0;
    max-width: 50%;
}

.overlay.overlay_topright {
    left: auto;
    right: 0;
}

.overlay.overlay_bottomright {
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
}

.overlay.overlay_bottomleft {
    top: auto;
    bottom: 0;
}

.overlay.overlay_belowproduct {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    max-width: 100%;
}

.overlay .overlaytext {
    padding: 0.5em 1.2em;
    line-height: 1.2em;
    border-radius: 0px;
    text-align: center;
    width: max-content;
}

.overlay.overlay_belowproduct .overlaytext {
    margin: 0 auto;
}

.overlay .overlaytext.overlaytextsvg {
    padding: 0;
}

.overlay .percenttext {
    z-index: 80;
    position: absolute;
    text-align: center;
    top: 26%;
    left: 2%;
    width: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 160%;
    line-height: 70%;
    transform: rotate(-15deg);
}

.overlay .percenttext span {
    font-size: 60%;
    font-weight: normal;
}

#mainImageHolder .overlay .percenttext {
    font-size: 350%;
}

.brandindex {
    display: inline-block;
    margin: 0 10px 30px 10px;
    font-weight: bold;
    font-size: 130%;
    text-decoration: none !important;
}

.brandletters {
    margin: 60px 0 0.4em 0;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    text-align: center;
    height: 15px;
}

.brandletters h3 {
    background-color: #fff;
    display: inline-block;
    padding: 0 20px;
}

.brandbox {
    height: 60px;
    padding: 15px 20px;
    margin: 5px 0;
    float: left;
    text-align: center;
    line-height: 70px;
}

.brandbox a {
    text-decoration: none;
}

.brandbox a:hover {
    text-decoration: underline;
}

.brandoverlay {
    left: auto;
    right: 0;
}

.swatchoverlay {
    margin-top: 5px;
    left: 10px;
    text-align: center;
}

img.swatchimageoverlay {
    width: 14px;
    height: 14px;
    border: 1px solid #aaa !important;
    margin: 0 4px 4px 0;
}

.overlay img {
    border: none !important;
    box-shadow: none !important;
}

.productframe .name {
    display: block;
    margin: 10px 0 0 0;
    padding: 0 10px;
    clear: both;
    font-size: 118%;
}

.productframe .name .desc {
    display: block;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    width: 100%;
    font-weight: normal;
    color: #999;
}

.productframe .name .longdesc {
    display: none;
}

.productframe.featured {
    background: #fff url("/images/featured.png") no-repeat bottom right;
    background-size: 100px;
}

.productframe .price {
    display: block;
    margin: 15px 0;
    padding: 0;
}

.tabs .productframe .price, .productfeat .price {
    font-size: 110%;
}

.price .note {
    font-size: 70%;
    padding: 0;
}

.productframe .buttons {
    position: absolute;
    display: block;
    bottom: 20px;
    left: 30px;
    right: 30px;
    background: rgba(255, 255, 255, 0.8);
    width: auto;
    opacity: 0;
    transform: translate(0, 80px);
    transition: 0.3s ease all;
    z-index: 90;
}

.productframe:hover .buttons {
    opacity: 1;
    transform: translate(0, 0);
    transition: 0.3s ease all;
}

.productframe .buttons label {
    display: inline-block;
    float: none;
    padding: 6px 12px;
}

.productframe .buttons .inputbutton {
    display: inline-block;
    width: 49%;
}

.inputbutton.widebutton, .productframe .buttons .inputbutton.widebutton {
    width: 100%;
}

.productframe .buttons .primarybutton, .productframe .buttons .actionbutton {
    display: block;
    width: 100%;
    padding: 10px 15px;
    margin: 2px 0;
    font-size: 120%;
}

#prodlist .productframe .listviewoptions, .productframe .buttons .inputbutton.listviewtoggle {
    display: none;
    opacity: 0;
}

/*** home page featured prods ****/
#featured {
    margin: 5px 0 0 0;
    padding: 0 0 10px 0;
    width: 100%;
    float: left;
    clear: both;
    display: inline;
}

/* product detail page */
#productcontainer {
    display: flex;
}

#prodpics {
    padding: 0;
    margin: 0;
}

#prodpics #mainImageHolder {
    float: right;
    background: #fff;
    position: relative;
    padding: 4px;
    text-align: center;
}

#prodpics #mainImageHolder .overlay {
    position: absolute;
    left: 4px;
    top: 4px;
    z-index: 100;
}

#prodpics #mainImageHolder .overlay.overlay_topright {
    left: auto;
    right: 4px;
}

#prodpics #mainImageHolder .overlay.overlay_bottomright {
    top: auto;
    bottom: 4px;
    left: auto;
    right: 4px;
}

#prodpics #mainImageHolder .overlay.overlay_bottomleft {
    top: auto;
    bottom: 4px;
}

#prodpics #mainImageHolder .overlay.overlay_belowproduct {
    display: block;
    position: relative;
    top: auto;
    left: auto;
    padding: 0 2em;
}

#prodpics #mainImageHolder .brandoverlay {
    display: none;
}

#prodpics #mainImageHolder .prodimgscroller {
    display: block;
    float: left;
    width: 100%;
}

#prodpics #mainImageHolder .prodimgslide {
    width: 100%;
    float: left;
    display: block;
}

.zoomLens {
    box-shadow: 2px 6px 6px rgba(0, 0, 0, 0.2);
}

#prodpics #thumbs {
    float: left;
}

#prodpics #thumbs a.thumb {
    float: left;
    display: block;
    padding: 0;
    margin: 17px 8px 0 0;
    width: 94px;
    height: 94px;
    text-align: center;
    overflow: hidden;
    border: 1px solid #ccc;
    background: #fff;
    cursor: pointer;
    outline: none;
}

#prodpics #thumbs a.thumblast {
    margin: 0;
}

#prodpics #thumbs a.thumb.active {
    border: 1px solid #333;
}

#prodpics #thumbs img {
    padding: 0;
    margin: 0;
    max-width: 100%;
    max-height: 94px;
}

#prodpics .thumbsvertical-wrapper .thumbs-prev, #prodpics .thumbsvertical-wrapper .thumbs-next {
    padding: 5px 10px;
    cursor: pointer;
}

#prodpics .thumbsvertical-wrapper .thumbs-prev img, #prodpics .thumbsvertical-wrapper .thumbs-next img {
    width: 22px;
}

#prodpics .thumbsvertical-wrapper .jcarousel {
    position: relative;
    overflow: hidden;
}

#prodpics .thumbsvertical-wrapper .jcarousel ul {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}

#prodpics .thumbsvertical-wrapper .jcarousel li {
    float: left;
    margin: 0;
    padding: 0 1px;
}

#productrightbox .biginputbutton {
    width: 100%;
    flex: 2 0 0;
    padding: 9px 16px;
    display: block;
    margin: 0px 0 0 0;
    font-size: 127%;
}

#product #variantsubmitbutton {
    float: left;
    margin: 0 4px 0 0;
}

#variant1, #variant2, #variant3, #variant4, #variant5, #variant6, #subvariant, #swatch, .optiongroup {
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

#variant1 label, #variant2 label, #variant3 label, #variant4 label, #variant5 label, #variant6 label, #subvariant label, .optiongroup label, #swatch label, #variantimage label {
    background-color: #fff;
    border: 1px solid #ccc;
    display: block;
    float: left;
    margin: 0 4px 4px 0;
    padding: 6px 16px;
    position: relative;
    white-space: nowrap;
    font-size: 85%;
    text-align: center;
    cursor: pointer;
    flex-basis: auto;
    flex-grow: 0.5;
}

#subvariant label {
    width: 100%;
    white-space: normal;
}

.optiongroup label.optionswatch {
    flex-grow: 0;
}

#variant1 label:hover, #variant2 label:hover, #variant3 label:hover, #variant4 label:hover, #variant5 label:hover, #variant6 label:hover, #subvariant label:hover, .optiongroup label:hover {
    background-color: #eee;
    border: 1px solid #999;
    box-shadow: 0 0 2px #eee;
}

#variant1 label input, #variant2 label input, #variant3 label input, #variant4 label input, #variant5 label input, #variant6 label input, #subvariant label input, #swatch label input, #variantimage label input, .optiongroup label input {
    position: absolute;
    right: 99999px;
    top: 0;
}

#optionswrap, #variantswrap, #subvariantswrap {
    clear: both;
    float: left;
    width: 100%;
    padding: 10px 15px 0 15px;
    background: #fff;
}

#optionswrap {
    padding-top: 0;
}

.optiongroup {
    clear: both;
    float: left;
    padding: 5px 0;
    width: 100%;
}

.optiongroup .textfield {
    width: 100%;
}

.optionswatch {
    padding: 5px;
    width: 32%;
    margin: 0 1% 1% 0 !important;
    min-width: 100px;
    min-height: 100px;
    background-size: 100% 100%;
}

#variantimage .optionvariantimage {
    width: 95px;
    height: 95px;
}

.optiongroup label span, #swatch label span, .optionswatch span {
    padding: 0 5px;
    background: url("/images/transparent.png");
    display: inline-block;
    white-space: normal;
    line-height: 1.1em;
    word-break: break-word;
}

#swatch label, #variantimage label {
    background: #fff;
    border: 1px solid #ccc;
    padding: 1px;
    float: left;
    margin: 0 2px 2px 0;
}

#swatch label:hover, #variantimage label:hover {
    border: 1px solid #666;
}

#variant1 label.varianton, #variant1 label:active, #variant2 label.varianton, #variant2 label:active, #variant3 label.varianton, #variant3 label:active, #variant4 label.varianton, #variant4 label:active, #variant5 label.varianton, #variant5 label:active, #variant6 label.varianton, #variant6 label:active, #subvariant label.varianton, #subvariant label:active, .optiongroup label.varianton, .optiongroup label:active {
    background-color: #333;
    color: #fff;
    border: 1px solid #b50;
}

.optiongroup label:active span, .optiongroup label.varianton span, .optionswatch.varianton span, #swatch label:active span, #swatch label.varianton span, #variantimage label:active span, #variantimage label.varianton span {
    background: #333;
    color: #fff;
}

#variant1 .variantoff, #variant2 .variantoff, #variant3 .variantoff, #variant4 .variantoff, #variant5 .variantoff, #variant6 .variantoff, .optiongroup .variantoff {
    background: url("/images/disabled.png") no-repeat #f6f6f6 !important;
    background-size: 100% 100% !important;
    color: #999 !important;
}

/* prod detail attribute icons */
.prodattributes {
    width: 100%;
    float: left;
    clear: both;
    padding: 10px 0 0 0;
    margin: 0;
}

.prodattributes img {
    margin: 0 5px 5px 0;
}

/* prod detail tabs */
.prodtabs {
    float: left;
    clear: both;
    padding: 0;
    margin: 18px 25px 27px 25px;
    width: calc(100% - 50px);
}

.prodtabs .prodtab {
    float: left;
    padding: 0 14px;
    border-top: 1px solid #ccc;
}

.prodtabs .prodtab .foldouttoggle {
    border-top: 0;
}

.prodtabs .foldouttoggle {
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: none;
    font-size: 114%;
    font-weight: bold;
}

.latestreview {
    /*clear: both;
    width: 100%;*/
    margin-bottom: 15px;
}

.latestreview div {
    padding-left: 0;
}

.undertabs2 {
    float: left;
    margin: 0;
    padding: 6px 0 19px 0 !important;
    width: 100%;
    clear: both;
    background: #fff;
    line-height: 1.3em;
}

.undertabs2 p {
    margin: 0 0 1.4em 0;
    line-height: 1.3em;
}

.undertabs2 ul {
    padding-left: 61px;
    margin-bottom: 33px;
}

.undertabs2 li {
    margin: 0.7em 0;
    text-indent: -5px;
}

.undertabs2 li::marker {
    font-size: 120%;
}

.undertabs2 .reviewbox {
    border-bottom: 1px solid #eee;
    clear: both;
    float: left;
    padding: 10px 0;
    width: 100%;
    font-weight: normal;
}

.undertabs2 .expertreview {
    border: 10px solid #f3f3f3;
    padding: 10px;
    margin-top: 10px;
}

.undertabs2 .reviewbox .reviewdetail {
    width: 100%;
    float: left;
    clear: both;
    padding: 0 0 4px 0;
    margin: 0.3em 0;
    font-size: 130%;
    line-height: 130%;
}

.undertabs2 .reviewbox .reviewresponse {
    width: 100%;
    float: left;
    clear: both;
    margin: 10px 0 5px 20px;
}

.centraltable {
    width: 100%;
    float: left;
    clear: both;
    text-align: center;
    padding: 0 0 27px 0;
}

.centraltable .spectable {
    margin: 0 auto;
    float: none;
    padding: 6px 0;
}

.centraltable .spectable div {
    float: left;
    width: 100%;
    padding: 15px 0;
    border-bottom: 1px solid #fff;
}

.centraltable .spectable div.spectablegrey {
    padding-left: 18px;
    padding-right: 18px;
    background: #ededed;
}

.centraltable .spectable div.clear {
    padding: 0;
    border: none;
}

/* my account pages */
#accountpage {
    margin: 0 0 40px 0;
    padding: 0 20px;
}

#accountpage .wishlist {
    text-align: left;
    width: 100%;
    padding: 15px 0;
    margin-bottom: 15px;
    border-bottom: 1px dotted #ccc;
}

#accountpage .wishlist .notesbox {
    margin: 0;
    padding: 0;
}

#accountpage .wishlist .notesbox p {
    font-size: 100%;
}

#accountpage .wishlist .notesbox a {
    text-decoration: none;
}

#accountpage .wishlist .notesbox form {
    display: inline;
}

/* wishlist */
#wishlist .wishlist {
    text-align: left;
    width: 100%;
    padding: 15px 0;
    margin-bottom: 15px;
    border-bottom: 1px dotted #ccc;
}

.tablink {
    padding: 10px;
    display: block;
    margin: 0 0 10px 0;
    position: relative;
    color: #777;
    width: 100%;
    background: #f0f0f0;
}

.tablink.tablinkactive {
    color: #333;
    border: 2px solid #333;
    background: #fff;
    padding: 8px;
    font-weight: bold;
}

a.tablink {
    text-decoration: none;
}

.history {
    float: left;
    clear: both;
    padding: 15px 0 15px 0;
    margin: 0;
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    width: 100%;
}

.history .hdate {
    float: left;
    clear: left;
    width: 100%;
}

.historytwo {
    display: none;
    border-bottom: 1px solid #eee;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    clear: both;
    float: left;
    width: 100%;
    padding: 10px 20px 20px 20px;
}

.historyadd {
    float: left;
    margin: 0;
    padding: 0 0 8px 0;
}

.historytb {
    background: #fff;
    border: 1px solid #d5d5d5;
    margin: 0 0 10px 0;
    padding: 6px;
}

.historytb th {
    background: #f9f9f9;
}

/*** site map ****/
.sitemap td {
    margin: 0;
    padding: 2px;
}

.sitemap h4 {
    margin: 0 0 4px 0;
    padding: 0 0 4px 0;
}

.sitemaptop {
    margin: 0.5em 0 0 0;
    padding: 0 0 2px 0;
    display: block;
    clear: both;
    float: left;
}

.sitemaptop a {
    text-decoration: none;
}

.sitemapsub {
    margin: 0 0 0 18px;
    padding: 0 0 2px 0;
    line-height: 2em;
    float: left;
    clear: both;
}

.sitemapsub a {
    font-weight: normal;
    text-decoration: none;
}

.sitemapsub a:hover {

}

.sitemapprod1 {
    margin: 0 0 0 18px;
    padding: 0;
    display: block;
    clear: both;
}

.sitemapprod1 a {
    color: #999;
    text-decoration: none;
}

.sitemapprod1 a:hover {
    color: #3a3a3a;
}

.sitemapprod2 {
    margin: 0 0 0 36px;
    padding: 0;
    display: block;
    clear: both;
}

.sitemapprod2 a {
    color: #999;
    text-decoration: none;
}

.sitemapprod2 a:hover {
    color: #3a3a3a;
}

/* shopping basket and checkout */
.basketitem {
    text-decoration: none !important;
    font-size: 120%;
    font-weight: bold;
}

.basketprocess {
    width: 100%;
    clear: both;
    text-align: center;
    padding: 0;
    margin: 20px 0 20px 0;
}

.basketprocess td {
    border-bottom: 1px solid #efefef;
    margin: 0;
    padding: 0;
    font-size: 100%;
    text-align: center;
}

.basketprocess td h1 {
    font-size: 150%;
    font-weight: bold;
    line-height: 160%;
    background-color: #333;
    color: #fff;
    margin: 0;
}

.basketprocess td.done {
    color: #999;
    background: #eee url("/images/done.png") right 15px center no-repeat;
    background-size: 22px;
}

.basketprocess td.done a {
    color: #999;
    display: block;
    text-decoration: none;
}

.basketprocess img {
    width: 50px;
}

.basketimage {
    max-height: 64px;
    max-width: 64px;
}

.odd {
    background: #f9f9f9;
}

/*** news pages ***/
.bloglist, .eventlist {
    margin: 0 0 15px 0;
    padding: 15px;
    float: left;
    clear: both;
    border-bottom: 1px dashed #efefef;
}

.blogarticle {
    margin: 0 0 15px 0;
    padding: 0;
    float: left;
    clear: both;
}

.bloglist dt a, .blogarticle dt a, .eventlist dt a {
    text-decoration: none;
}

.bloglist dt span, .blogarticle dt span, .eventlist dt span {
    color: #999;
}

.bloglist dd img, .blogarticle dd img, .eventlist dd img {
    padding: 0;
    margin-bottom: 20px;
}
.bloglist dd:not(:has(.overlay)) img, .blogarticle dd:not(:has(.overlay)) img, .eventlist dd:not(:has(.overlay)) img {
    background: #fff;
}

.bloglist dd img.thumb, .eventlist dd img.thumb {
    width: 85px;
    float: left;
    margin: 0 10px 10px 0;
}

.bloglist dd .readmore, .eventlist dd .readmore {
    padding: 8px 0 0 0;
}

.profilebox {
    border-top: 1px dashed #ddd;
    margin: 20px 0 0 0;
    padding: 20px 0;
}

/**** alt news page ****/
.gutter-sizer {
    width: 2.2%;
}

.blog-list-container {
    padding: 0;
    margin: 0 0 10px;
    max-width: 31.8525%;
}

.blog-list-container .bloglist {
    background: #f9f9f9;
    padding: 10px;
    border: none;
    transition: background .4s;
}

.blog-list-container .bloglist > a {
    text-decoration: none;
}

.blog-list-container > a:hover {
    color: inherit;
}

.blog-list-container > a:hover .bloglist {
    background: #eee;
}

.blog-list-outer-container {
    padding-bottom: 80px;
}

.blog-list-outer-container .ias-spinner {
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
    margin-left: -16px;
}

/**** search page ****/
#pagesearchresults {
    float: left;
    clear: both;
    width: 100%;
    margin: 20px 0 0 0;
}

#pagesearchresults p {
    margin-left: 10px;
}

#pagesearchresults em {
    background: #ff0;
    padding: 0 2px;
}

/*** faqs ***/
.faqcat {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px 10px;
    margin: 0 0 15px 0;
    background: #f9f9f9;
    border: 1px solid #eee;
    overflow: hidden;
    text-decoration: none !important;
    transition: 0.3s background-color ease-in-out, 0.3s color ease-in-out;
}

.faqcat:hover, .faqcat:focus {
    background: #333;
    color: #fff;
}
.faqsearch {
    text-align: center;
    margin: 20px 0;
}
.faqsearch input[type=text] {
    border: 1px solid rgb(227 227 227 / 70%);
    padding: 6px 15px;
    margin-right: 10px;
    width: 100%;
    max-width: 350px;
}

.faq {
    padding: 0;
    margin-bottom: 10px;
    clear: both;
    width: 100%;
    float: left;
}

.faq .question {
    width: 95%;
    float: left;
    clear: both;
    font-size: 90%;
    font-weight: bold;
    text-decoration: none;
    padding: 15px 0 15px 30px;
}

.faq .answer {
    width: calc(100% - 60px);
    float: left;
    clear: both;
    margin: 10px 0 0 30px;
}

.help-container,
.expand-container {
    background-color: #F9F9F9;
    padding: 25px;
    margin-top: 30px;
}
.help-container .inputbutton,
.expand-container .inputbutton {
    margin-top: 12px;
}
.help-container .contactoptions-inner,
.expand-container .content-inner {
    background: #fff;
    margin: 20px 10px;
    padding: 20px;
}
.help-container .contactoptions {
    display: flex;
}
.help-container .contactoptions div {
    display: flex;
    flex-direction: column;
    flex: auto;
}
.faqgoback {
    display: block;
    text-decoration: none !important;
    background-color: #fafafa;
    padding: 14px 30px;
    margin: 10px 0;
}
.faqgoback:hover {
    color: #333;
    box-shadow: 0 1px 3px rgb(0 0 0 / 20%);
}
.faqgoback div {
    text-decoration: underline;
}

/************************ right column *********************/
#rightbar {
    margin: 0;
    padding: 0;
}

#rightbar .rightbanner {
    float: left;
    padding: 0;
    margin: 0;
}

#rightbar .navbox {
    clear: none;
}

#rightbar .whitebox {
    width: 168px;
    float: left;
    clear: both;
    padding: 10px;
    margin: 0;
    background: #fff;
}

#rightbar .whitebox .boxtitle {
    font-size: 120%;
    color: #3a3a3a;
}

#rightbar .whitebox .review {
    width: 100%;
    font-size: 90%;
    padding: 10px 0 0 0;
}

#rightbar .whitebox .review .pad {
    width: 100%;
    padding: 0 0 10px 0;
}

#rightbar .whitebox .review a {
    color: #3a3a3a;
}

.nopadding {
    padding: 0;
}

.nomargin {
    margin: 0;
}

/* product detail */
#product h1 {
    padding: 0 15px;
    font-size: 200%;
    text-align: left;
}

#productrightbox {
    padding: 10px;
    width: 100%;
    background: #fff;
    float: right;
}

#productintro {
    float: left;
    width: 100%;
    padding: 0px 15px 0 15px;
    background: #fff;
}

#productrightbox .proddesc {
    margin: 0 0 1em 0;
    padding: 0;
    color: #3a3a3a;
    font-size: 90%;
}

#productrightbox .proddesc p {
    font-size: 100%;
}

#productrightbox .dimensions {
    padding: 0 15px;
}

.dimensions {
    float: left;
    width: 100%;
    clear: both;
}

#productrightbox .swatchboxwrap {
    float: left;
    width: calc(100% - 30px);
    display: inline-flex;
    align-items: center;
    margin: 0 15px;
    padding: 20px 0 5px 0;
    border-top: 1px solid #ccc;
}

#productrightbox .swatchboxwrap p {
    margin: 0;
}

#productrightbox .colourwrap {
    padding: 1px;
    float: left;
    margin: 0px 0px 0 6px;
    border-radius: 30px;
    overflow: hidden;
}

#productrightbox .colourwrap .colourswatch {
    display: block;
    width: 26px;
    padding-top: 26px;
    border-radius: 30px;
}

#product .big {
    font-size: 140%;
    display: block;
    margin: 0;
    padding: 4px 0 4px 0;
    font-weight: bold;
}

#highlights {
    float: left;
    width: 100%;
    padding: 0 15px 5px 15px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

#highlights div {
    flex: 1;
}

#highlights .inputbutton {
    margin: 24px 0 0 0;
}

/********************* footer *********************/
#footer {
    padding: 0 0 15px 0;
    margin-top: 20px;
    background: #333333;
    width: 100%;
    float: left;
    clear: both;
    display: inline;
    line-height: normal;
    position: relative;
}

#footer .container, #footer .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
}

#footer a {
    text-decoration: none;
}

#footer a:hover {
    text-decoration: underline;
}

#footer .footerbox {
    margin: 55px 0 0 0;
}

#footer .footerbox h5 {
    margin: 0 0 0.8em 0;
    font-size: 134%;
    color: #fff;
    letter-spacing: normal;
    font-weight: bold;
}

#footer .footerbox p {
    font-size: 85%;
}

#footer .footerbox p, #footer .footerbox a, #footer .footerbottom a {
    color: #fff;
}

#footer .footerbox img {
    margin: 0 5px 0 0;
}

#footer .footerbottom {
    clear: both;
    float: left;
    width: 100%;
    text-align: center;
    margin: 40px 0 15px 0;
    padding-top: 35px;
    border-top: 1px solid #717171;
}

#footer .footerbottom p {
    color: #fff;
    font-size: 85%;
}

#footer ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer li {
    margin: 0 0 0.2em 0;
    font-size: 94%;
    color: #333;
}

#footer li a {
    display: inline-block;
    padding: 5px 5px 5px 0;
}

#footer #sociallinks svg {
    fill: #fff;
    width: 30px;
    height: 30px;
    margin-right: 12px;
    border-radius: 200%;
    vertical-align: middle;
}

#newsletterbar {
    margin: 10px 0 15px 0;
    padding: 0 15px;
}

#newsletterbar label {
    font-size: 85%;
    color: #666;
}

/********************* MISC ***********************/
.mid {
    vertical-align: middle;
}

a img {
    border: none;
}

.hide {
    display: none;
}

dl, dt, dd {
    width: 100%;
    margin: 0 0 5px 0;
    padding: 0;
}

.confbox, .errbox, .noticebox {
    clear: both;
    width: 100%;
    text-align: center;
}
.noticebox {
    margin: 2px auto 8px auto;
    padding: 8px 12px;
    border-radius: 5px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
    color: #686868;
    border-bottom: 0px solid #cc0;
    background: #f7f7f7;
    font-size: 90%;
}
.confbox {
    color: #fff;
    background: #090;
    border-bottom: 1px solid #040;
}
.errbox {
    color: #fff;
    background: #c00;
    border-bottom: 1px solid #700;
}
.confbox, .errbox {
    font-size: 110%;
    z-index: 9999;
    position: fixed;
    bottom: -70px;
    left: 0;
    right: 0;
    margin: 0;
    padding: 15px;
    transition: all 0.5s;
}
.confbox.visible, .errbox.visible {
    bottom: 0;
}
.errbox a {
    color: #fff;
    text-decoration: underline;
}
.errbox a:hover {
    color: #eee;
}

.debug {
    background: #ff9;
    color: #333;
    display: inline-block;
    margin: 1em 0 !important;
    padding: 20px !important;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
    white-space: pre-line;
    word-wrap: break-word;
    width: 50%;
    max-height: 100%;
    overflow: scroll;
    position: fixed;
    bottom: 0;
    right: -49%;
    z-index: 1000;
    transition: 0.3s all ease;
}

.debug:hover {
    right: 0;
}

.left {
    float: left;
}

.right {
    float: right;
}

.clear {
    clear: both;
}

.clearempty {
    clear: both;
    height: 0;
    line-height: 0;
    border: 0;
}

.contact td.answer {
    padding-bottom: 10px;
}

.divider {
    position: relative;
    float: left;
    width: 100%;
    margin: 5px 0 15px;
}

.divideror {
    position: relative;
    display: block;
    width: 100%;
    margin: 20px 0;
    border-top: 1px solid #999;
    clear: both;
}

.divideror > span {
    position: absolute;
    left: 45%;
    top: -1.2rem;
    padding: 0 10px;
    background: #fff;
}

/**** form styles ****/
fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

form {
    clear: both;
    margin: 0;
    padding: 0;
}

label {
    font-size: 90%;
    border: 1px solid transparent;
}

form .field > [class*='col-'] {
    padding: 0 !important;
}

.productfeat label {
    display: block;

}

.productfeat label.subfilter {
    margin-left: 15px;
}

.textfield {
    background: #fff;
    border: 1px solid #ccc;
    color: #666;
    font-size: 115%;
    margin: 0 0 4px 0;
    padding: 6px 12px;
    vertical-align: middle;
    width: 90%;
}

.textfield.textfieldxsmall {
    width: 15%;
}

.textfield.textfieldsmall {
    width: 33%;
}

.textfield.textfieldmedium {
    width: 66%;
}

.textfield.textfieldfull {
    width: 100%;
}

.giftvoucherinput {
    width: 100%;
}

.giftvoucherinputchange {
    width: auto;
}

.requirederror, .validation-no {
    border: 1px solid #c00;
    box-shadow: inset 0 0 2px rgb(200, 100, 100);
}

.qty {
    width: 3em !important;
    border: 1px solid #999;
    font-size: 120%;
    text-align: center;
}

.rrp {
    color: #999;
}

.inputbutton {
    display: inline-block;
    color: #333333;
    font-weight: bold;
    padding: 13px 40px;
    margin: 0;
    text-decoration: none !important;
    text-align: center;
    cursor: pointer;
    overflow: visible;
    border: 1px solid #333333;
    border-radius: 5px;
    background: #fff;
    transition: background-color 1s ease;
}

.inputbutton:hover, .inputbutton:focus {
    text-decoration: none !important;
    color: #333;
    background: rgba(255, 255, 255, .5);
    border: 1px solid #d9d9d9;
}

a.smallbutton.comparebutton, a.smallbutton.wishlistbutton {
    border: 1px solid #f7f7f7;
    color: #aaaaaa;
    background: #f7f7f7;
    /*text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.7);*/
}

.primarybutton {
    border: 1px solid #333333;
    color: #ffffff !important;
    background: #333333;
}

.primarybutton:hover, .primarybutton:focus {
    border: 1px solid #f7f7f7;
    color: #333333 !important;
    background: rgba(170, 170, 170, .5);
}

.actionbutton {
    border: 1px solid #333333;
    color: #fff;
    background: #333333;
}

.actionbutton:hover, .actionbutton:focus {
    border: 1px solid #333333;
    color: #fff;
    background: rgba(51, 51, 51, .5);
}

/* Join mailing list fixed tab */
#site-fixed-tab{
    position: fixed;
    right: 0;
    top: 20%;
    max-width: 150px;
    z-index: 999;
    overflow: hidden;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.2);
}
#site-fixed-tab a{
    display: block;
    padding: 10px 10px 10px 50px;
    position: relative;
    color: #FFF;
    border-radius: 4px 0 0 4px;
    font-size: 94%;
    background: #222222 url("/images/icon_email.svg") no-repeat 10px;
    background-size: 32px 32px;
}
#site-fixed-tab a:hover, #site-fixed-tab a:active, #site-fixed-tab a:focus{
    text-decoration: none;
}

.inputbutton:disabled {
    opacity: 0.2;
}

a.inputbutton {
    color: #333;
    font-size: 100%;
}

a.actionbutton {
    color: #fff;
}

.imagechangerbox .primarybutton {
    background-color: #fff;
    color: #333 !important;
    border: 1px solid #fff;
}

a.primarybutton:hover {
    /*color: #fff;*/
}

a.smallbutton, input.smallbutton {
    font-size: 100%;
    margin: 2px 0;
    padding: 5px 10px;
    /*font-weight: normal;*/
    display: inline-block;
}

.smallbutton.right {
    margin-left: 5px;
}

.biginputbutton {
    font-size: 160%;
    padding: 10px 16px;
    border-radius: 4px;
}

.promotion {
    float: left;
    clear: both;
    width: 100%;
    padding: 10px 50px 5px 15px;
    margin: 0 0 10px 0;
    background: #fff;
    border: 4px solid #fee;
}

#product .promotion {
    margin: 10px 25px;
    width: auto;
}

.promotion img {
    float: left;
    margin-right: 15px;
}

.promotiontext {
    display: table-cell;
}

.promotiontext h3, .promotiontext a {
    color: #b80000;
}

.categoryheaderimage {
    margin-bottom: 10px;
    width: 100%;
}

.categorylogoimage {
    margin-bottom: 20px;
    float: right;
}

.logoheading {
    clear: none;
    margin-bottom: 20px;
}

#newvoucher {
    vertical-align: middle;
}

#jquery-live-search {
    background: #fff;
    color: #333;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    z-index: 998;
    margin-left: 0;
    margin-top: -5px;
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}

#jquery-live-search a {
    color: #211728;
    font-size: 120%;
    float: left;
    width: 100%;
    text-decoration: none;
    padding: 3px 15px;
}

#jquery-live-search ul {
    padding: 0;
}

#jquery-live-search > ul > li {
    border-top: 1px dotted #ccc;
    clear: both;
    float: left;
    list-style: none outside none;
    margin: 0;
    padding: 5px 0;
    width: 100%;
    overflow: hidden;
}

#jquery-live-search .live-heading {
    clear: both;
    float: left;
    width: 100%;
    font-weight: bold;
    background: #f9f9f9;
    padding: 4px 10px;
}

.quicksearchimage {
    float: left;
    margin-right: 20px;
    width: 100px;
    text-align: center;
}

.quicksearchimage img {
    max-width: 100px;
}

.quicksearchsummary {
    color: #999;
    font-size: 85%;
    display: table-cell;
}

.quicksearchprice {
    display: block;
}

.loginprompt {
    padding: 20px;
    margin-bottom: 20px;
    border: 10px solid #efefef;
    min-height: 450px;
}

.loginprompt p {
    clear: both;
}

.loginprompt label {
    font-size: 100%;
}

.loginprompt input[type="radio"] {
    position: relative;
    margin-right: 10px;
    top: 5px;
}

.loginprompt .primarybutton {
    margin-top: 20px;
}

.loginprompt #password {
    margin-left: 10px;
    position: relative;
    top: -5px;
}

.disabled {
    opacity: 0.2;
}

.flashwrap {
    position: relative;
}

.flashcover {
    display: block;
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 5;
}

.flashcover a, .flashcover img {
    display: block;
    height: 100%;
    width: 100%;
    border: 0;
}

#brandjump {
    width: 100%;
    padding-left: 12px;
    border: 1px solid #3a3a3a;
}

.foldout {
    clear: both;
    width: 100%;
}

.foldouttoggle {
    cursor: pointer;
    padding: 14px 25px 14px 0;
    background: url("/images/icon_arrow_down.svg") no-repeat right center;
    background-size: 16px;
    text-decoration: none !important;
    border-top: 1px solid #e9e9e9;
    display: block;
}

.foldouttoggle:hover {
    text-decoration: underline;
}

.foldoutopen {
    background: url("/images/icon_arrow_up.svg") no-repeat right center;
    background-size: 16px;
}

.foldoutbox {
    display: none;
    padding: 5px 0;
}

.sidebarfoldoutbox {
    padding: 0;
}

.mobilefoldouttoggle {
    background-image: url("/images/icon_arrow_down.svg");
    background-position: right 2px center;
    padding: 10px 25px 10px 3px;
    font-size: 122%;
    border-top: 0px;
    border-bottom: 0px;
}

.mobilefoldouttoggle.foldoutopen {
    background-image: url("/images/icon_arrow_up.svg");
}

/*** filters ***/
#presearch, #comparebuttons {
    margin: 10px 0;
    clear: both;
    float: left;
    width: 100%;
    font-weight: bold;
    padding: 0 10px;
}

#presearch .inputbutton, #comparebuttons .inputbutton {
    float: right;
    margin-left: 5px;
    font-size: 11px;
}

.filternavbox .productfeat {
    width: auto;
    color: #333;
    font-size: 100%;
    padding: 4px;
    margin: 0 15px;
    border: 0;
}

.filternavbox {
    float: left;
    width: 100%;
    position: relative;
    z-index: 300;
    margin: 0;
    background: none;
}

.filternavbox .nav {
    padding: 0 10px 15px 10px;
}

.filternavbox #presearch {
    padding: 3px 0;
    margin: 0;
}

.filternavbox #presearch span {
    padding: 5px 15px;
    display: inline-block;
}

.filter-container-outer {
    padding: 11px 0;
    background: #f7f7f7;
    margin-bottom: 10px;
}

.filter-container {

}

.filternav-container input[type="checkbox"], .filternav-container input[type="radio"] {
    vertical-align: middle;
    float: right;
}

.filter-dropdown {
    padding: 0;
    border: 1px solid #ccc;
    position: relative;
}

.filter-box {
    padding: 0 5px;
    margin-top: 15px;
    display: inline-block;
    float: left;
}

.filter-content {
    position: absolute;
    left: 0;
    padding: 5px 10px;
    display: none;
    background: #f9f9f9;
    box-shadow: 0 1px 0 1px #ccc;
    z-index: 998;
    width: 250px;
}

.filter-content label {
    display: block;
    margin: 5px 0;
}

.filternavbox #options {
    float: right;
}

.filternavbox #options .filter-content {
    left: auto;
    right: 0 !important;
}

.filternavbox #options .inputbutton {
    display: block;
    width: 100%;
}

.filternavbox #options input[type="radio"] {
    vertical-align: middle;
    float: right;
}

.filters-bar {
    float: left;
    width: 100%;
    padding: 0 15px;
    display: flex;
    align-items: center;
}

.filters-bar .filters-left-container, .filters-bar .filters-right-container {
    float: left;
    width: 100%;
    display: flex;
    align-items: center;
    flex: 1;
}

.filters-bar .filters-right-container {
    justify-content: right;
    flex: 2;
}

.filters-bar .filters-toggle {
    display: inline-flex;
    align-items: center;
    width: auto;
    font-weight: bold;
    margin: 0;
    border: 0px solid #e8e8e1;
    text-transform: none;
    text-decoration: none;
    cursor: pointer;
    font-size: 134%;
}

.filters-bar .filters-toggle img {
    margin-right: 12px;
}

.filters-bar .filters-count {
    margin-left: 20px;
}

.filters-bar #theme {
    width: auto;
    padding: 6px 0;
}

.filters-bar #options {
    display: inline-block;
    float: right;
    text-align: right;
}

.filters-bar #options form {
    display: flex;
    align-items: center;
}

.filters-bar #options label {
    display: inline-block;
    margin: 0 10px 0 0;
    vertical-align: middle;
    font-size: 80%;
}

.filters-bar #options .textfield {
    width: auto;
    max-width: 90%;
    margin: 0 0 0 2px;
    padding: 8px 12px;
    font-size: 105%;
}

.filters-bar #options .inputbutton {
    margin: 0;
    vertical-align: middle;
    text-transform: none;
}

.filters-bar #theme, .filters-bar #theme > li {
    margin: 0 0 0 10px;
}

.filters-bar #theme > li:first-of-type {
    margin: 0;
}

.filters-bar #theme > li a {
    vertical-align: middle;
}

.filters-bar #theme > li a img {
    vertical-align: initial;
}

.filters-popout {
    display: none;
    z-index: 1001;
    clear: both;
    float: left;
    text-align: left;
    font-weight: normal;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    background: #fff;
    padding: 0;
    transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    width: 30%;
    max-width: 90%;
}

.filters-popout .filters-popout-header {
    display: block;
    padding: 15px 30px;
    background: #fff;
}

.filters-popout .filters-popout-header h5 {
    margin: 0;
    font-size: 200%;
    font-weight: normal;
}

.filters-popout .filters-popout-header .filters-popout-close {
    position: absolute;
    top: 25px;
    right: 30px;
    cursor: pointer;
}

.filters-popout .filters-popout-header .filters-popout-close img {
    display: block;
    width: 16px;
    height: 16px;
}

.filters-popout .filters-popout-body {
    display: block;
    overflow: auto;
    padding: 0 30px 100px;
}

.filters-popout .filters-popout-body .foldout {
    padding: 0;
}

.filters-popout .filters-popout-body .foldouttoggle {
    text-decoration: none;
}

.filters-popout .filters-popout-body input[type=checkbox].csscheckbox + label.csschecklabel::before {
    left: 1px;
}

.filters-popout .filters-popout-body #pricerangeslider {
    margin-left: .6em;
    margin-right: .6em;
}

.filters-popout .filters-popout-footer {
    width: 100%;
    float: left;
    padding: 0 30px 15px;
    position: sticky;
    bottom: 0;
    background: #FFF;
}

.filters-popout .filters-popout-footer #presearch {
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
}

.filters-popout .filters-popout-footer #presearch > span {
    display: inline-block;
    padding: 0 0 10px 0;
}

.filters-popout-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1000;
    display: none;
    backdrop-filter: blur(4px);
}

/*** filters end ***/
.optionimage {
    background: none repeat scroll 0 0 #fff;
    border: 1px solid #ccc;
    display: block;
    float: left;
    margin: 4px !important;
    padding: 4px;
    position: relative;
    white-space: nowrap;
    width: 40px;
    height: 40px;
}

.optionimage:hover, .optionimage.checked, .optionimage:active {
    border: 1px solid #666;
}

.optionimage input {
    position: absolute;
    right: 99999px;
    top: 0;
}

.optionimage .tick {
    display: none;
}

.optionimage.checked .tick {
    display: block;
    position: absolute;
    left: 2px;
    bottom: 2px;
    background: url("/images/check.png") no-repeat top left;
    width: 10px;
    height: 10px;
    z-index: 99;
}

.label {
    display: block;
    position: relative;
    padding: 8px 50px 8px 35px;
    border: 1px solid #e3e3e3;
    background: #f9f9f9;
    margin: 6px 0;
    line-height: 1.8em;
}

.label.active {
    font-weight: bold;
}

.label:hover {
    background: #fcfcfc;
    border: 1px solid #d9d9d9;
}

.label input {
    margin: 12px;
    position: absolute;
    top: 0;
    left: 0;
}

.selectedlabel {
    font-weight: bold;
}

.sublabel {
    color: #999;
    font-size: 90%;
    font-weight: normal;
    padding: 5px 0 0 0;
}

.sublabeltext {
    display: table-cell;
    font-weight: normal;
}

.sublabelprice {
    font-size: 120%;
    font-weight: normal;
    position: absolute;
    right: 10px;
    top: 5px;
}

#checkordercolumn {
    padding-right: 30px;
}

#paymentcolumn {
    padding-left: 30px;
    border-left: 1px solid #ccc;
}

.postagePreference p {
    margin: 0 0 0.1em 0;
}

.addtobasket {
    float: left;
    width: 100%;
    clear: both;
}

.addtobasket.multivars {
    display: flex;
    flex-wrap: wrap;
}

.addtobasket.multivars label {
    flex-grow: 1;
    flex-basis: 30%;
}

#productrightbox .addtobasket {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 15px 15px 15px;
    background: #fff;
}

#productrightbox .addtobasket .smallbuttons {
    flex: 2 0 100%;
    display: flex;
}

#productrightbox .addtobasket .smallbuttons a {
    flex: 1;
}

.productsummary {
    font-size: 100%;
    font-weight: normal;
    letter-spacing: normal;
    padding-bottom: 10px;
}

#productdescriptionwrap {
    padding: 0;
}

#productdescription {
    float: left;
    clear: both;
    width: 100%;
    margin: 30px 0 0 0;
    padding: 15px 30px;
    background: #f9f9f9;
}

select {
    padding: 4px;
    border: 1px solid #ccc;
}

.inbasket .itemcount {
    background: url("/images/shopping-bag-mini.png") no-repeat center left;
    background-size: 20px;
    padding-left: 24px;
    margin: 0 8px;
    line-height: 280%;
    float: right;
}

.pricebox {
    float: right;
    text-align: right;
    margin: 4px 0 0 4px;
}

.sitemapbox {
    border-bottom: 1px dotted #ccc;
    float: left;
    margin: 0 0 20px;
    padding: 0 0 20px;
    width: 100%;
}

.copytable td {
    border: 1px solid #efefef;
}

#myaccount h1 {
    text-align: left;
    padding-left: 20px;
}

#forgotten h1 {
    text-align: left;
}

#myaccount h2 {
    font-size: 250%;
    font-weight: normal;
    margin: 0 0 5px 0;
}

#myaccountheading {
    position: relative;
    padding: 0 0 5px 0;
    margin: 0 0 20px 0;
    border-bottom: 2px solid #333;
}

#myaccountheading p {
    margin: 0;
    font-size: 150%;
}

.mycard {
    float: left;
    border: 1px solid #ccc;
    border-radius: 15px;
    background: #fafafa;
    padding: 20px;
    margin: 0 0 25px 0;
}

.myvoucher {
    padding-top: 30px;
}

.myvoucher.voucherused {
    opacity: 0.7;
    border: none;
}

.myvoucher .voucherlogo img {
    max-height: 35px;
}

.brandlogo {
    float: right;
    margin: 0 0 10px 10px;
}

.categorybannerimage {
    margin-bottom: 10px;
    width: 100%;
}

.categorybannerheader {
    font-size: 150%;
}

.nosidebar .categorybannerheader {
    text-align: center;
}

.youcanalso .inputbutton {
    margin: 0 6px 8px 0;
}

.alsolike {
    padding: 30px 0 0 0;
    clear: both;
    width: 100%;
    float: left;
}

.alsolike .flex-center {
    display: flex;
    justify-content: center;
}

.alsolike .productframe {
    clear: none;
    margin: 0;
    padding: 0px;
}

.alsolike .productfeat .inputbutton {
    position: absolute;
    bottom: 0;
    left: 10%;
    right: 10%;
    width: 80%;
}

#shoppingbasket .alsolike .productfeat {
    min-height: 320px;
}

.alsolike .productfeat .name {
    float: left;
    clear: both;
    width: 100%;
    margin: 10px 15px 15px 0;
    padding: 0;
    text-align: center;
}

.alsolike .productfeat .featimage {
    float: left;
    clear: both;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
}

.alsolike .productfeat .addtobasket {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.qtywrapouter {
    float: left;
    margin: 0px 18px 0 0;
}
.qtywrapouter .qtywrap {
    float: left;
    padding: 1px 44px !important;
    border: 1px solid #cccccc;
    max-width: 151px;
}
.qtywrapouter .qtywrap label, .qtywrapouter .qtywrap .qty {
    padding: 10px 4px 7px 4px;
    margin: 0;
    color: #999;
    font-size: 110%;
    vertical-align: middle;
}
.qtywrapouter .qtywrap .qtyup, .qtywrapouter .qtywrap .qtydown {
    top: 0;
    max-width: 45px !important;
    padding: 6px 14px;
    height: 100% !important;
    width: auto;
    background: #f7f7f7;
}
.qtywrapouter .qtywrap .qtyup {
    border-left: 1px solid #cccccc;
}
.qtywrapouter .qtywrap .qtydown {
    border-right: 1px solid #cccccc;
}

.qtywrap {
    padding: 0 20px !important;
    position: relative;
    margin: 0 auto;
    max-width: 100px;
}

.qtywrap strong {
    margin-right: 5px;
    line-height: 220%;
}

.qtywrap .qty {
    border: none;
    background: none;
    padding: 2px;
    color: #2c2a29;
}

.qtyup {
    position: absolute;
    top: 3px;
    right: 0;
    cursor: pointer;
    max-width: 20px !important;
}

.qtydown {
    position: absolute;
    top: 3px;
    left: 0;
    cursor: pointer;
    max-width: 20px !important;
}

#addon-ajax-wrap {
    float: left;
    width: 100%;
    clear: both;
}

.delivercheckouter {
    margin-top: 5px;
}

#deliverydates {
    margin: 10px 0 15px 0;
}

.deliverydatestable {
    display: block;
    border-radius: 5px;
}

.deliverydatestable .ddrow {
    display: flex;
    justify-content: space-between;
    align-items: initial;
    width: 100%;
    max-width: 100%;
}

.deliverydatestable .ddheader, .deliverydatestable .ddcell {
    display: inline-block;
    width: 14.26%;
    text-align: center;
}

.deliverydatestable .ddheader {
    color: #e3e3e3;
    font-weight: normal;
    padding: 6px 0;
}

.deliverydatestable .ddcell {
    padding: 4px;
    position: relative;
    border: 1px solid #fff;
    background: #f9f9f9;
    margin: 0 0 1px 0;
    line-height: 1.8em;
    font-size: 85%;
}

.deliverydatestable .ddcell label {
    font-size: 100%;
}

.deliverydatestable .ddcell label .deliverycost {
    font-size: 94%;
}

.deliverydatestable .ddcell.empty {
    background: #fff;
}

.deliverydatestable .ddcell.na {
    display: flex;
    justify-content: center;
    align-items: center;
}

.ajaxloading {
    background: url("/images/ajax-loader.gif") no-repeat center right;
    padding-right: 30px !important;
}

#presearch .ajaxloading {
    background: url("/images/ajax-loader-grey.gif") no-repeat center right;
}

.attributes {
    list-style: none;
    padding: 0;
    margin: 0;
}

.attributes img {
    margin: 0 5px 0 0;
    vertical-align: middle;
}

.attributes p {
    margin-bottom: 15px;
}

#stockistresults {
    width: 100%;
}

#stockistresults th {
    background: #333;
    color: #fff;
    font-size: 150%;
    text-align: left;
    padding: 8px 4px;
}

#quickadd tr, #historyadd tr {
    border-top: 1px dotted #ddd;
}

#quickadd .textfield, #historyadd .textfield {
    margin: 0;
}

#quickadd .heading h4, #historyadd .heading h4 {
    margin: 10px 0 0 0;
}

.latestblog, .reviewbox {
    clear: both;
    padding: 10px 20px;
    flex: 1;
}

.latestblog {
    text-align: left;
}

.latestblog img {
    width: 100%;
    margin-bottom: 20px;
}

.latestblog a {
    text-decoration: none;
}

#newsletterbox {
    background: #747273;
    clear: both;
    color: #eee;
    float: left;
    margin: 0 14px;
    padding: 10px;
    width: 170px;
}

#home .reviewbox {
    width: 100%;
    float: left;
}

.reviewbox .reviewbox-inner {
    /*display: flex;*/
}

.reviewbox .reviewbox-inner .latestreview {
    /*flex: 1;*/
    text-align: center;
    margin: 30px 0;
}

#newsletterbox h5 {
    color: #fff;
    font-size: 130%;
}

#socialmediawrap {
    clear: both;
    float: left;
    margin: 0 25px 25px 25px;
}

#socialmedia {
    float: left;
}

#socialmedia .socialsharebutton {
    min-width: 41px;
    padding: 9px 5px 3px 5px;
    margin: 0 2px 4px 2px;
    text-align: center;
}

#socialmedia .socialsharebutton svg {
    fill: #999;
}

#socialmedia #socialshareopenlink svg {
    width: 20px;
}

#socialsharepopup {
    width: 600px;
    max-width: 100%;
    padding: 15px;
    text-align: center;
}

#socialsharepopup .socialsharetitle {
    color: #fff;
    font-size: 217%;
    margin: 0 0 15px 0;
}

#socialsharepopup .socialsharesubtitle {
    color: #fff;
    font-size: 120%;
    margin: 0 0 40px 0;
}

#socialsharepopup .socialsharebutton {
    display: inline-block;
    padding: 0 25px 35px 25px;
    color: #fff;
}

#socialsharepopup .socialsharebutton svg {
    width: 50px;
    height: 50px;
    fill: #fff;
}

#socialsharepopup .socialsharebutton span {
    display: block;
}

.flatbutton {
    display: inline-block;
    background: #f3f3f3;
    color: #999 !important;
    font-weight: bold;
    text-decoration: none !important;
    padding: 9px 12px 8px 12px;
    margin: 0 2px 4px 0;
    transition: 0.2s all;
}

.flatbutton:hover {
    transform: translateY(-3px);
}

.flatbutton img {
    margin-right: 5px;
}

.wishlistbutton {
    margin-top: 22px !important;
    margin-left: 9px !important;
    flex-basis: calc(50% - 9px);
}

.comparebutton {
    margin-top: 22px !important;
    margin-right: 9px !important;
    flex-basis: calc(50% - 9px);
}

.wishlistbutton.done {
    background-color: #dadada;
}

#basket .basketmessage {
    display: none;
    position: absolute;
    background: #fff;
    border: 1px solid #ccc;
    padding: 10px !important;
    margin: 9px 0 0 0;
    width: 400px;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
    z-index: 20;
    max-height: 540px;
    overflow: auto;
}

#basket .addoninput {
    font-size: 90%;
    width: auto;
}

#basket .basketmessage .addoninput {
    width: 300px;
}

#basket .addonwrap {
    display: block;
    clear: left;
}

.giftvoucheredit, .personalisationedit, .addonedit {
    float: left;
    padding: 4px 16px 4px 12px;
    margin-top: 3px;
    margin-right: 10px;
    background: #ffe;
    border: 1px solid #cc0;
    text-decoration: none;
    width: auto !important;
}

.giftvoucheredit img, .personalisationedit img, .addonedit img {
    margin-right: 16px;
}

.absmiddle {
    vertical-align: middle;
}

.mydetailsbox-container {
    display: flex;
    flex-wrap: wrap;
}

.mydetailsbox {
    border-bottom: 1px dotted #ccc;
    border-right: 1px dotted #ccc;
    padding: 20px;
    min-height: 160px;
    text-decoration: none !important;
}

.mydetailsbox.mydetailsboxadd {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.mydetailsbox.mydetailsboxadd span {
    margin-top: 5px;
    color: #777;
}

#accountpage .mydetailsboxaddform .postcodeanywherebox {
    margin-left: 0;
    max-width: 66%;
}

#accountpage .mydetailsboxaddform label {
    display: block;
}

.bookbutton {
    position: absolute;
    top: 18px;
    right: 12px;
}

.tableclass {
    border: 1px solid #eaeaea;
}

.tableclass p {
    margin: 0;
}

.tableclass td {
    border: 1px solid #eaeaea;
    vertical-align: top;
}

/* brand scroller */
div.scrollWrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

div.scrollableArea {
    position: relative;
    width: auto;
    height: 100%;
}

#brandscroller {
    clear: both;
    float: left;
    width: 100%;
    margin: 30px 0;
    height: 90px;
    position: relative;
    padding: 7px 0;
}

#brandscroller a {
    position: relative;
    float: left;
    margin: 0 10px;
    padding: 0;
    height: 70px;
    width: auto;
    text-align: center;
    text-decoration: none;
}

#brandscroller .owl-nav {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
}

#brandscroller .owl-nav .owl-prev, #brandscroller .owl-nav .owl-next {
    width: 30px;
    height: 90px;
    position: absolute;
    z-index: 200;
    font-size: 0;
}

#brandscroller .owl-nav .owl-prev {
    left: 0;
    background: #fff url("/images/prev-horizontal.png") no-repeat center center;
}

#brandscroller .owl-nav .owl-next {
    right: 0;
    background: #fff url("/images/next-horizontal.png") no-repeat center center;
}

/* events */
.calendaritem {
    width: 99%;
    margin: 0 auto 30px;
    border: 0;
}

#calendar td {
    width: 14%;
    height: 80px;
    border-collapse: collapse;
    border: 1px solid #333;
    text-align: center;
    padding-right: 5px;
    padding-left: 5px;
    vertical-align: top;
}

#calendar td span {
    float: left;
}

#calendar td a {
    color: #333;
    font-size: 130%;
    text-decoration: none;
    font-weight: bold;
}

#calendar td a:hover {
    text-decoration: underline;
}

#calendar .days td {
    background-color: #333;
    border: 1px solid #333;
    height: auto;
    color: #fff;
    font-size: 120%;
    font-weight: bold;
    padding: 5px 5px;
}

#calendar th {
    border: none;
    color: #333;
    font-size: 140%;
    padding: 10px 0;
    text-align: center;
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
}

#calendar .actday {
    font-weight: bold;
    color: #c00;
}

#calendar .blankday {
    background-color: #fff;
    font-weight: bold;
    border: none;
}

#calendar .eventday {
    background-color: #eee;
    color: #333;
}

#calendar .eventday hr {
    border: none;
}

#calendar .eventday hr:first-of-type {
    border-bottom: 1px solid #fff;
}

#calendar .owl-nav {
    position: absolute;
    top: 7px;
    width: 100%;
    z-index: 110;
}

#calendar .owl-nav .owl-prev, #calendar .owl-nav .owl-next {
    position: absolute;
    z-index: 110;
    display: block;
}

#calendar .owl-nav .owl-prev {
    left: 7px;
    background: none;
    color: #e2681d;
}

#calendar .owl-nav .owl-next {
    right: 7px;
    background: none;
    color: #e2681d;
}

.bigtext {
    font-size: 200%;
}

#loyalty_form {
    clear: none;
    float: right;
    width: 50%;
    text-align: right;
}

#loyalty_form p {
    margin: 0.6em 0;
}

#ui-datepicker-div {
    display: none;
}

/* store finder */
#stockistresults {
    margin: 20px 0;
}

#storefindertable {
    width: 100%;
    text-align: center;
}

#storefindertable th {
    background: #333;
    color: #fff;
    width: 50%;
}

#storefindertable td {
    background: #f3f3f3;
}

#basket {
    margin: 15px 0 0 0;
    width: 100%;
    float: left;
    clear: both;
}

#basket div {
    padding: 0;
}

#basket div.row {
    margin: 0 0 10px 0;
    padding: 15px;
}

#basket div.discountrow, #basketfull .basketfullnotice.discountrow {
    background-color: #e9f6e9;
    background-image: url("/images/tick.png");
    background-repeat: no-repeat;
    background-position: 15px center;
    background-size: 16px;
    margin-top: 10px;
    padding-left: 45px;
}

/* basket overlay */
#basketfull, #basketupsells {
    clear: both;
    float: left;
    margin-bottom: 5px;
    width: 100%;
    max-width: 100%;
    text-align: left;
    font-weight: normal;
}

#basketupsells {
    margin: 10px 0 0;
}

#basketfull h5 {
    color: #333;
    padding: 0 10px 15px 0;
    font-weight: normal;
}

#basketfull #basketupsells h5 {
    padding-bottom: 0;
    font-size: 105%;
}

#basketfull #basketupsells .basketupsellform {
    width: 100%;
    max-width: 100%;
    display: table-cell;
    margin: 0;
    clear: none;
}

#basketfull p {
    font-size: 100%;
}

#basketfull .basketfullitem {
    padding: 8px 0;
    margin: 0;
    width: 100%;
    border-bottom: 1px dotted #ddd;
    clear: both;
    float: left;
    background: #fff;
    position: relative;
}

#basketfull #basketupsells .basketfullitem {
    padding: 15px 0;
}

#basketfull .basketfullitem p {
    width: 100%;
    max-width: 100%;
    display: table-cell;
    margin: 0;
    font-size: 85%;
}

#basketfull #basketupsells .basketfullitem p {
    padding-bottom: 5px;
}

#basketfull .basketfullitem .qtywrap {
    display: inline-block;
    margin: 8px 0 0;
}

#basketfull .basketfullitem img:not(.qtyup):not(.qtydown) {
    float: left;
    margin: 0 10px;
}

#basketfull .qtyup, #basketfull .qtydown {
    top: 1px;
}

#basketfull .basketfullnotice {
    clear: both;
    float: left;
    background: #f4f4f4;
    margin: 5px 0 0 0;
    padding: 4px 10px;
    width: 100%;
    max-width: 100%;
}

#basketfull .deletebasket {
    position: absolute;
    right: 10px;
    bottom: 10px;
    text-decoration: underline;
}

#basketfull.popoutbasket .basketimage {
    max-width: none;
    max-height: none;
}

#basketfull .basketfull-scroller {
    margin: 15px 0;
}

#basketfull .basketfull-scroller .inspireme-scroller {
    margin: 0;
}

#basketfull .basketfull-scroller .productframe .productframe-inner {
    margin: 0 10px;
}

#basketfull .basketfull-scroller .productframe .productframe-inner .smallbutton {
    width: 100%;
}

#basketfull .basketfull-scroller .productframe .productframe-inner .smallbutton:nth-of-type(2) {
    display: none;
}

.progressbar {
    display: block;
    float: left;
    width: 100%;
    background: #999;
    clear: both;
    margin: 25px 0 15px;
    border-radius: 8px;
}

.progressbar > div {
    height: 8px;
    background-color: #C89FA5;
    width: 0;
    position: relative;
    border-radius: inherit;
    transition: width .6s ease;
}

.progressbar > div:after {
    content: '';
    background: #FFF url('/images/icon_suitcase.png') no-repeat center;
    background-size: 32px 32px;
    width: 36px;
    height: 32px;
    position: absolute;
    right: 0;
    top: -14px;
    z-index: 999;
    border-radius: 50%;
}

/*#basketfull .progressbar-container p {
    font-size: 85%;
}*/

#ie6warning {
    padding: 50px 100px;
    text-align: center;
}

.postcodeanywherebox {
    max-width: 90%;
    background: #f9f9f9;
    border: 4px solid #efefef;
    padding: 15px;
    margin: 10px 0;
}

.fullwidth .postcodeanywherebox {
    margin-left: 33%;
}

.postcodeanywherehide, .postcodeanywherehide2 {
    display: none !important;
}

.postcodeanywherebox input {
    font-size: 130%;
    margin-top: 10px;
}

#varianttext {
    clear: both;
    margin: 5px 0;
    padding: 5px 30px 10px 0;
}

#varianttext span.now {
    font-weight: bold;
    font-size: 167%;
}

#varianttext span.note {
    font-weight: normal;
    color: #666;
}

/* collection/linked items */
.linkedprod, .collectionitem {
    float: left;
    clear: both;
    width: 100%;
    padding: 5px;
    margin: 0 0 6px 0;
    border-bottom: 1px solid #ddd;
}

.collectionitem a {
    font-weight: bold;
    text-decoration: none;
}

.linkedprodtext, .collectionitemtext {
    margin: 5px 80px 5px 80px;
}

.collectionitemtextnoimage {
    margin-left: 5px;
}

.linkedprodimage, .collectionitemimage {
    float: left;
    width: 60px;
    margin: 0 4px 4px 0;
}

.linkedprod .price, .collectionitem .price {
    font-size: 100%;
}

.linkedprod .qtywrap, .collectionitem .qtywrap {
    float: right;
    margin-top: 5px;
}

.linkedprod label {
    display: block;
    margin-bottom: 8px;
}

.linkedprod label span {
    font-size: 110%;
}

#productrightbox #stockmessage {
    width: calc(100% - 30px);
    float: left;
    margin: 15px 15px 0px 15px;
    padding-top: 20px;
    border-top: 1px solid #cccccc;
}

/* swatches */
#swatchboxwrap {
    clear: both;
    margin: 0;
    padding: 15px 15px 0;
    float: left;
    width: 100%;
    background: #fff;
}

.swatchwrap {
    padding: 2px;
    border: 1px solid #fff;
    float: left;
    margin: 0 5px 5px 0;
    width: 64px;
    height: 64px;
    overflow: hidden;
}

.swatchwrap img {
    width: 100%;
}

.swatchwrapselected {
    border: 1px solid #333;
}

.strike {
    text-decoration: line-through;
}

.tablepadding th, .tablepadding td {
    padding: 6px;
}

#checkout #securepayments {
    text-align: center;
}

/* Apple Pay */
#applepay-button {
    --apple-pay-button-width: 100%;
    --apple-pay-button-height: 48px;
}
#applepay-button.disabled {
    pointer-events: none !important;
}

/* Google Pay */
#googlepay-button {
    height: 48px;
}

#googlepay-button:empty {
    display: none;
}

#googlepay-button.disabled {
    pointer-events: none !important;
}

#footer #securepayments span {
    display: inline-block;
    height: 26px;
    padding: 1px 6px 1px 7px;
    margin: 0 7px 0 0;
    background: #fff;
    border-radius: 3px;
    vertical-align: middle;
}

#checkout .checkout-box {
    padding: 16px;
    margin-bottom: 30px;
    border: 10px solid #efefef;
    min-height: 160px;
    clear: both;
}

#checkout .postcodeanywherebox {
    margin-left: 0 !important;
    max-width: 95% !important;
}

.collectbox {
    padding: 0;
    background: none;
    margin: 0;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.inpageproductblock {
    width: 100%;
    clear: both;
    float: left;
    background: #fff;
    padding: 30px 15px;
}

.inpageproduct {
    text-align: center;
}

.ui-tooltip {
    position: absolute;
    z-index: 3000;
    border: 1px solid #ccc;
    background-color: #fff;
    padding: 4px;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

#pricerangeslider {
    margin: 5px;
    border-radius: 200px;
}

#pricerangeslider .ui-widget-header {
    background: #fff;
}

#pricerangeslider .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: #333;
    background: #333;
    border-radius: 200px;
    outline: none;
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus {
    border: 1px solid #333;
    background: #f2f2f2;
}

.hotspot {
    width: 20px;
    height: 20px;
    position: absolute;
    background: #ee7d15;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.4);
    text-decoration: none !important;
    text-align: center;
    cursor: pointer;
}

.hotspot:hover, .hotspot:active, .hotspot:focus {
    font-size: 20px;
    color: #fff;
    outline: none;
}

.webui-popover .addtobasket {
    display: inline;
    width: auto;
    margin-right: 5px;
}

#nav-overlay {
    display: none;
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 996;
}

.offcanvasnav-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 996;
    display: none;
    backdrop-filter: blur(4px);
}

.ui-widget-header {
    background: #666;
    border-color: #444;
}

.bundleplus {
    position: absolute;
    right: 0;
    top: 20%;
    font-size: 300%;
}

#homevideo video {
    min-width: 100%;
    width: 100%;
    height: auto;
    background: url('/images/videos/home.jpg') no-repeat;
    background-size: cover;
    transition: 1s opacity;
}

.videowrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}

.videowrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* usp scroller */
.uspcontainer {
    width: 100%;
    float: left;
    clear: both;
    position: relative;
    padding: 0;
    background-color: #333333;
    overflow: hidden;
}
/*body.desktop .usps {
    display: flex !important;
}*/
.usps {
    width: 100%;
    float: left;
    clear: both;
    position: relative;
    padding: 0 15px;
    margin: 0;
}
.usps a {
    text-decoration: none;
    display: inline-block;
}
.usps .outer {
    margin: 0;
    padding: 0;
    flex: auto;
}
.usps .inner {
    margin: 0;
    padding: 60px 0;
    font-size: 95%;
    line-height: 125%;
    text-align: center;
}
#product .usps .inner {
    padding: 30px 0;
}
.usps .inner h3, .usps .inner p {
    color: #fff;
}
#product .usps .inner h3, #product .usps .inner p {
    margin-bottom: 0;
}
.usps .inner span {
    display: block;
    text-align: center;
    padding: 5px 0;
}
#product .usps .inner span {
    display: flex;
    align-items: center;
    font-size: 141%;
}
.usps .inner img {
    width: unset !important;
    display: inline-block !important;
    max-width: 150px;
    max-height: 40px;
    display: inline-block;
    margin-bottom: 15px;
}
#product .usps .inner img {
    margin-right: 15px;
    margin-bottom: 0;
}
.usps a:hover {
    text-decoration: none;
}

/* PayPay Checkout Standard */
#paypalexpress {
    float: right;
    margin-top: -10px;
    clear: both;
}

#paypalexpress em {
    display: block;
    text-align: center;
    margin-bottom: 10px;
    font-size: 120%;
    font-style: normal;
}

#paymentcolumn #paypal-button.disabled {
    pointer-events: none !important;
}

/* PayPal Checkout Advanced */
#checkout #paypal-card-container {
    width: 100%;
    padding: 4px 0;
    margin: 0 auto 10px auto;
}

#checkout #paypal-card-container .cards {
    float: left;
    width: 100%;
    margin: 20px 0 0 0;
    text-align: center;
}

#checkout #paypal-card-container .cards img {
    max-width: 100%;
    margin: 0 2%;
}

#checkout #paypal-card-container .foldouttoggle {
    padding: 15px 20px;
    font-size: 120%;
    color: #fff;
    background: #000;
    border: 1px solid #000;
    border-radius: 4px !important;
}

#checkout #paypal-card-container .foldoutbox {
    float: left;
    width: 100%;
    padding: 16px 0 32px 0;
}

#checkout #paypal-card-container .foldoutbox .textfield {
    display: inline-block;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    font-size: 110%;
}

#checkout #paypal-card-container .foldoutbox .inlinefield {
    display: inline-block;
}

#checkout #paypal-card-container .foldoutbox #spinner {
    display: inline-block;
    height: 30px;
}

#checkout #paypal-card-container .foldoutbox #card-errors, #checkout #paypal-card-container .foldoutbox .biginputbutton {
    margin: 16px 0 0 0;
}

/* Amazon Checkout */
#amazonpay, #amazonpay-button {
    display: block;
    width: 100% !important;
}

#amazonpay.disabled, #amazonpay.disabled #amazonpay-button {
    pointer-events: none !important;
}

#paymentcolumn #amazonpaydetails strong {
    font-weight: 500;
}

#paymentcolumn #amazonpaydetails strong span {
    float: right;
    cursor: pointer;
    text-decoration: underline;
}

#paymentcolumn #amazonpaydetails strong span:hover, #paymentcolumn #amazonpaydetails strong span:focus {
    color: #000;
}

/* page blocks */
.pageblock {
    margin: 15px 0;
    padding: 0 2px;
}

.pageblock_text.pageblock_left, .pageblock_text.pageblock_left_desktop, .pageblock_text.pageblock_left_mobile {
    padding: 0 30px 0 0;
}

.pageblock_text.pageblock_right, .pageblock_text.pageblock_right_desktop, .pageblock_text.pageblock_right_mobile {
    padding: 0 0 0 30px;
}

.pageblock_text table {
    display: inline-block;
    vertical-align: top;
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    text-align: center;
    overflow-x: auto;
    white-space: nowrap;
    border-collapse: collapse;
    border-spacing: 0;
    -webkit-overflow-scrolling: touch;
}

.pageblock_text table tbody {
    margin: 0 auto;
    text-align: left;
    display: inline-block;
}

.pageblock_text table th, .pageblock_text table td {
    padding: 6px 12px;
    border: 1px solid #d9d7ce;
}

.tableborderless th, .tableborderless td {
    border: none !important;
}

.pageblock_feature {
    padding: 0;
    margin: 0;
}

.pageblock_multifeature {
    margin: 0;
    padding: 0;
}

.pageblock_feature .feature-inner {
    background-size: cover;
    background-position: center;
}

.pageblock_feature .feature-inner, .pageblock_feature .feature-image-wrap {
    height: auto;
    margin: 11px;
}

.pageblock_feature.col-sm-3 .feature-inner, .pageblock_multifeature.col-sm-6 .pageblock_feature.col-sm-6 .feature-inner {
    padding-top: 100%;
}

.pageblock_feature.col-sm-4 .feature-inner, .pageblock_multifeature.col-sm-8 .pageblock_feature.col-sm-6 .feature-inner {
    padding-top: 80%;
}

.pageblock_feature.col-sm-6 .feature-inner, .pageblock_multifeature.col-sm-6 .pageblock_feature.col-sm-12 .feature-inner {
    padding-top: 50%;
}

.pageblock_feature.col-sm-8 .feature-inner, .pageblock_multifeature.col-sm-8 .pageblock_feature.col-sm-12 .feature-inner {
    padding-top: 40%;
}

.pageblock_feature.col-sm-9 .feature-inner {
    padding-top: 30%;
}

.pageblock_feature.col-sm-12 .feature-inner {
    padding-top: 20%;
}

.pageblock_feature.col-sm-3 .feature-inner.feature-double {
    padding-top: calc(200% + 10px);
}

.pageblock_feature.col-sm-4 .feature-inner.feature-double {
    padding-top: calc(160% + 10px);
}

.pageblock_feature.col-sm-6 .feature-inner.feature-double {
    padding-top: calc(100% + 10px);
}

.pageblock_feature.col-sm-8 .feature-inner.feature-double {
    padding-top: calc(80% + 10px);
}

.pageblock_feature.col-sm-9 .feature-inner.feature-double {
    padding-top: calc(60% + 10px);
}

.pageblock_feature a, .pageblock_feature a:hover {
    color: #333;
}

.pageblock_widefeature {
    margin: 30px 0;
}

.pageblock_multifeature .pageblock_widefeature {
    margin: 0;
}

.pageblock_widefeature > a, .pageblock_widefeature > span {
    display: flex;
}

.pageblock_widefeature.pageblock_reverse > a, .pageblock_widefeature.pageblock_reverse > span {
    flex-direction: row-reverse;
}

.pageblock_multifeature .pageblock_widefeature > a, .pageblock_multifeature .pageblock_widefeature > span {
    display: block;
}

.pageblock_widefeature .feature-inner {
    flex-basis: 50%;
    margin: 0;
    background: #f7f7f7;
    background-position: center;
    background-size: cover;
    min-height: 120px;
}

.pageblock_widefeature .feature-inner img {
    display: none;
}

.pageblock_widefeature .feature-text {
    flex-basis: 50%;
    position: relative;
    bottom: auto;
    top: auto;
    left: auto;
    right: auto;
    padding: 45px;
    background: #f7f7f7;
}

.pageblock_widefeature.pageblock_inverted .feature-text {
    background: #333;
    color: #fff;
}

.pageblock_widefeature .feature-text p {
    font-size: 120%;
    color: inherit;
}

.pageblock_widefeature .feature-text h5 {
    font-size: 300%;
    color: inherit;
}

.pageblock_widefeature .feature-text .inputbutton {
    margin-top: 30px;
}

.pageblock_callout {
    text-align: center;
    padding: 60px 40px;
    display: flex;
    align-items: center;
    background: #f9f9f9;
}

.pageblock_callout.pageblock_inverted {
    background: #333;
    color: #ccc;
}

.pageblock_callout .callout_inner {
    width: 100%;
}

.pageblock_callout blockquote {
    font-size: 300%;
    margin: 0 0 0.2em 0;
}

.pageblock_callout.pageblock_inverted blockquote {
    color: #fff;
}

/*** parallax ***/
.pageblock_parallax {
    clear: both;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 0;
    background-attachment: fixed;
    overflow: hidden;
    position: relative;
}

.pageblock_parallax.pageblock_filter {
    filter: grayscale(1);
}

.pageblock_parallax .container {
    position: relative;
    display: flex;
    height: 100%;
    padding: 120px 0;
}

.pageblock_parallax.ipad {
    background-attachment: scroll;
}

.pageblock_fullscreen {
    height: 100vh;
    min-height: 600px;
    box-shadow: 0 -20px 20px rgba(0, 0, 0, 0.05) inset;
}

.pageblock_parallax .parallaxtextbox {
    max-width: 70%;
    min-width: 30%;
    padding: 30px;
}

.pageblock_parallax.pageblock_usebox .parallaxtextbox {
    padding: 20px 40px 10px 40px;
    border-radius: 6px;
    text-align: left !important;
}

.pageblock_parallax.pageblock_usebox .parallaxtextbox.central {
    text-align: center !important;
}

.pageblock_parallax.pageblock_usebox.pageblock_black .parallaxtextbox {
    background-color: rgba(255, 255, 255, 0.8);
}

.pageblock_parallax.pageblock_usebox.pageblock_white .parallaxtextbox {
    background-color: rgba(0, 0, 0, 0.6);
}

.pageblock_parallax .parallaxtextbox.topleft {
    justify-content: left;
    text-align: left;
    margin-right: auto;
    margin-bottom: auto;
}

.pageblock_parallax .parallaxtextbox.topright {
    justify-content: right;
    text-align: right;
    margin-left: auto;
    margin-bottom: auto;
}

.pageblock_parallax .parallaxtextbox.bottomleft {
    justify-content: left;
    text-align: left;
    margin-right: auto;
    margin-top: auto;
}

.pageblock_parallax .parallaxtextbox.bottomright {
    justify-content: right;
    text-align: right;
    margin-left: auto;
    margin-top: auto;
}

.pageblock_parallax .parallaxtextbox.central {
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: auto;
    max-width: 100%;
}

.pageblock_parallax h1, .pageblock_parallax h2 {
    font-size: 450%;
    font-weight: 600;
    margin: 0 0 15px 0;
    line-height: 1.1em;
}

.pageblock_parallax p {
    font-size: 140%;
    font-weight: 300;
}

.pageblock_white h1, .pageblock_white h2, .pageblock_white h4, .pageblock_white p {
    color: #fff !important;
    text-shadow: 0 0 15px #111;
}

.pageblock_black h1, .pageblock_black h2, .pageblock_black h4, .pageblock_black p {
    color: #333 !important;
    text-shadow: 0 0 15px #ddd;
}

.container-fluid .pageblock .row {
    margin-left: -15px;
    margin-right: -15px;
}

.pageblock .inputbutton {
    clear: both;
    margin: 5px 0;
}

.pageblock_feature img {
    width: 100%;
}

.pageblock_feature a, .pageblock_feature span {
    position: relative;
    display: block;
}

.pageblock_feature .feature-text {
    position: absolute;
    bottom: 15px;
    left: 20px;
    max-width: 75%;
    padding: 5px 10px;
    background: transparent;
}

.pageblock_feature .feature-text h2 {
    font-size: 134%;
}

.pageblock_feature .feature-text h2, .pageblock_feature .feature-text h3, .pageblock_feature .feature-text h4, .pageblock_feature .feature-text h5, .pageblock_feature .feature-text p {
    margin: 0;
}

.pageblock.pageblock_products {
    float: left;
}
.pageblock.pageblock_products .productframe {
    display: block;
}
.pageblock.pageblock_products .products_inner {
    display: flex;
    flex-wrap: wrap;
}
.pageblock.pageblock_products.pageblock_border_grey {
    border: 10px solid #999;
    padding: 10px;
    text-align: center;
}

.pageblock.pageblock_products.pageblock_border_black {
    border: 10px solid #333;
    padding: 10px;
    text-align: center;
}

.pageblock.pageblock_products.pageblock_border_red {
    border: 10px solid #b00;
    padding: 10px;
    text-align: center;
}

.pageblock.pageblock_accent_grey .price, .pageblock.pageblock_accent_grey h2, .pageblock.pageblock_accent_grey h3, .pageblock.pageblock_accent_grey h4, .pageblock.pageblock_accent_grey h5 {
    color: #999;
}

.pageblock.pageblock_accent_red .price, .pageblock.pageblock_accent_red h2, .pageblock.pageblock_accent_red h3, .pageblock.pageblock_accent_red h4, .pageblock.pageblock_accent_red h5 {
    color: #b00;
}

.pageblock.pageblock_accent_green .price, .pageblock.pageblock_accent_green h2, .pageblock.pageblock_accent_green h3, .pageblock.pageblock_accent_green h4, .pageblock.pageblock_accent_green h5 {
    color: #7d9827;
}
.pageblock.pageblock_group.pageblock_bg_black {
    background: #333;
}
.pageblock.pageblock_group.pageblock_bg_grey {
    background: #999;
}

.pageblock.pageblock_group.pageblock_bg_green {
    background: #7d9827;
}

.pageblock.pageblock_group.pageblock_bg_red {
    background: #b00;
}

.pageblock .productfeat {
    clear: none;
}

.pageblock_fullwidth img {
    width: 100%;
}

.pageblock_fullwidth h2 {
    text-align: center;
}

.pageblock_image h1, .pageblock_image h2, .pageblock_image h3, .pageblock_image h4, .pageblock_image h5 {
    font-size: 140%;
    margin: 0 0 0.3em 0;
}

.pageblock_image img {
    width: 100%;
}

.pageblock_imagecarousel {
    float: left;
}

.pageblock_imagecarousel.pageblock_fullwidth {
    float: left;
    width: 100%;
    overflow: hidden;
}

.pageblock_imagecarousel a {
    text-decoration: none;
    display: inline-block;
}

.pageblock_imagecarousel span {
    display: block;
    margin: 10px 0 0 0;
}

.pageblock_imagecarousel .owl-carousel .owl-stage {
    display: flex;
    align-items: center;
    justify-content: center;
}

.pageblock_imagecarousel .owl-carousel .owl-item {
    text-align: center;
}

.pageblock_imagecarousel .owl-carousel .owl-item img {
    display: inline-block;
    width: auto !important;
    max-width: 80% !important;
}

.imagecarousel {
    padding: 15px 30px;
}

.imagecarousel .owl-nav {
    position: absolute;
    top: 45%;
    left: 0;
    right: 0;
    width: 100%;
    height: 0;
}

.imagecarousel .owl-nav .owl-prev {
    display: inline-block;
    float: left;
}

.imagecarousel .owl-nav .owl-next {
    display: inline-block;
    float: right;
}

/* get the look */
.gtlarrow {
    position: absolute;
    top: -55px;
    left: 35px;
    z-index: 99;
    width: 0;
    height: 0;
    border: 35px solid transparent;
    border-bottom-color: #fff;
}

.get-the-look-strip {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    clear: both;
    padding: 20px 0;
    height: 275px;
}

.get-the-look-strip .get-the-look-container {
    padding: 0 10px;
}

.get-the-look-strip .get-the-look-inner {
    background: #fff;
    text-align: center;
    padding: 10px;
}

.get-the-look-inner img {
    max-width: 164px !important;
}

.get-the-look-inner a {
    padding: 10px 0;
}

.get-the-look-inner .price {
    font-size: 100%;
}

.linkpadding {
    padding: 10px 0;
}

.greypanel {
    padding: 20px;
    background: #f7f7f7;
}

/*** Swatch Wizard Styles ***/
.option-wrapper {
    position: fixed;
    display: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 999;
    overflow: auto;
    background-color: rgba(0, 0, 0, .2);
}

.option-wrapper.show {
    display: block;
}

.option-wrapper:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.optiongroup.swatchwizard {
    width: 100%;
    float: left;
    padding: 15px 10px;
    border-bottom: 1px solid #ccc;
    clear: none;
}

.optiongroup.swatchwizard:last-of-type {
    border: 0;
}

.optiongroup.swatchwizard.multiswatch.inactive,
.optiongroup.swatchwizard.multiswatch.inactive + .optiongroup.swatchwizard {
    padding: 0;
    margin: 0;
    border: 0;
}

.optiongroup.swatchwizard h6 {
    position: relative;
    text-align: justify;
    text-transform: uppercase;
    padding: 0;
    line-height: 94px;
    float: left;
    margin: 0;
    width: calc(100% - 115px);
    display: inline-block;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 107%;
    overflow: visible;
}

.optiongroup.swatchwizard.multiswatch.inactive + .optiongroup.swatchwizard > h6,
.optiongroup.swatchwizard.multiswatch.inactive + .optiongroup.swatchwizard > .optionswatch,
.optiongroup.swatchwizard.multiswatch.inactive > .optiongroup.childgroup.swatchwizard {
    display: none;
}

.optiongroup.swatchwizard h6 span.chosenoption {
    display: block;
    line-height: normal;
    font-size: 85%;
    position: absolute;
    bottom: 20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.optiongroup.swatchwizard.childgroup {
    border: 0;
    padding: 15px 0 0;
    margin-bottom: 0;
}

.optiongroup.swatchwizard + .childgroup {
    padding-top: 0;
}

.optiongroup.childoptiongroup {
    margin: 0;
}

.optiongroup.childoptiongroup h6 {
    line-height: normal;
    display: block;
    width: 100%;
    float: left;
    margin: 0 0 10px;
}

.optiongroup.swatchwizard label span {
    display: none;
}

.optioncontent {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    min-width: 50%;
    max-width: 85%;
    overflow: hidden;
    margin: 0 auto;
    padding: 0;
}

.optioncontent h2 {
    padding: 15px 0 5px;
    margin: 0;
    background: #2f2f2f;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 154%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.optioncontent h2 a {
    position: absolute;
    color: #fff;
    text-transform: uppercase;
    font-size: 85%;
    text-decoration: none;
}

.optioncontent h2 a.back {
    left: 15px;
}

.optioncontent h2 a.close {
    right: 15px;
    font-size: 115%;
}

.optioncontent div.clear {
    float: left;
    width: 100%;
    margin: 15px 0;
    padding: 0;
}

.optioncontent .chosenoption {
    text-align: justify;
    display: block;
    float: left;
    margin: 0 !important;
    line-height: 1.2;
}

.optioncontentinner {
    padding: 25px;
    float: left;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 10px solid #2f2f2f;
}

.optioncontentinner .option-continue {
    padding: 10px 100px;
}

.optioncontentinner .option-continue.disabled {
    pointer-events: none;
    cursor: not-allowed;
}

.optioncontentinner .option-continue.disabled:hover {
    cursor: not-allowed;
}

.optiongroup.swatchwizard h6 span {
    position: relative;
    font-size: 115%;
    font-weight: bold;
}

.optiongroup.swatchwizard .optionswatch {
    padding: 10px;
    min-width: 94px;
    min-height: 94px;
    width: auto;
    background-size: cover;
}

.optiongroup.swatchwizard .optionswatch.reveal {
    background: #ececec;
    border: 2px solid #dedede;
    margin: 10px 0;
    min-height: 94px;
    position: relative;
    float: right;
    max-width: 100px;
}

.optiongroup.swatchwizard .optionswatch.preview {
    min-height: 94px;
    margin: 10px 0;
    float: right;
    max-width: 100px;
}

.optiongroup.swatchwizard .optionswatch.preview a {
    display: block;
    float: left;
    width: 100%;
    height: 100%;
    z-index: 999;
    position: absolute;
    top: 0;
    left: 0;
}

.optiongroup.swatchwizard .optionswatch.reveal a {
    color: #333;
    white-space: normal;
    font-weight: bold;
    text-decoration: none;
    line-height: 94px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    right: 0;
    font-size: 72%;
}

.optiongroup.swatchwizard label.varianton {
    border: 2px solid #333;
}

.optiongroup.swatchwizard .variantswatchblock {
    padding: 25px 0 10px;
    border-bottom: 1px solid #ccc;
}

.optiongroup.swatchwizard .variantswatchblock:first-child {
    padding-top: 0;
}

.optiongroup.swatchwizard .variantswatchblock:last-child {
    border: 0;
}

/*** Swatch Wizard Styles END ***/
/*** Request Swatch Styles ***/
.requestaswatch-swatchgroup {
    clear: both;
    width: 100%;
    float: left;
    padding: 0 0 10px 0;
}
.requestaswatch-swatchgroup .foldouttoggle {
    width: 100%;
    float: left;
    clear: both;
    font-size: 115%;
    font-weight: bold;
    text-decoration: none;
    padding: 10px 15px;
    background: #f7f5f4;
    color: #231f20;
}
.requestaswatch-swatchgroup .foldouttoggle.foldoutopen {
    background: #f7f5f4;
}
.requestaswatch-swatchgroup .foldoutbox {
    width: 100%;
    float: left;
    clear: both;
}
.requestswatcherrmsg {
    color: #c00;
    border: 2px solid #c00;
    font-weight: bold;
    background: #ffe2e2;
    clear: both;
    margin: 2px auto 8px auto;
    padding: 8px 12px;
    width: 100%;
    text-align: center;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
}
.requestswatch.optiongroup {
    clear: none;
    width: 16%;
}
.requestswatch.optiongroup .optionswatch {
    width: 70%;
}
.requestswatch.optiongroup input {
    position: relative;
    right: 0;
}
.requestaswatchlisttitle {
    font-weight: normal;
    text-align: left;
    margin: 0 0 0.6em 0;
    font-size: 100%;
}
.requestaswatchlist {
    text-align: center;
    float: left;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.requestaswatchlist .requestaswatch {
    width: 16.6%;
    padding: 0 2px;
    float: left;
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    cursor: pointer;
    margin: 0 0 5px 0;
}
.requestaswatchlist .requestaswatch input {
    position: absolute;
    right: 99999px;
}
.requestaswatchlist .requestaswatch p {
    padding: 2px 5px;
    text-align: center;
    height: 100%;
    width: 100%;
    margin: 0;
}
.requestaswatchlist .requestaswatch > input:checked ~ p, .requestaswatchlist .requestaswatch.active p {
    background: #666;
    border: none;
    color: #fff;
}
.requestaswatchlist .requestaswatch img {
    max-width: 100%;
    height: auto;
    width: 100%;
    padding: 2px;
    padding-bottom: 0;
}
.requestaswatchlist .requestaswatch > input:checked ~ img, .requestaswatchlist .requestaswatch.active img {
    border: 3px solid #666;
    padding: 0;
}
.requestaswatchform {
    float: left;
    width: 100%;
}
/*** Request Swatch Styles End ***/
/*** Bundle Wizard Styles ***/
.optiongroup.swatchwizard.bundlewizard .optioncontent {
    min-width: 85%;
    max-width: 100%;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch {
    min-width: 0;
    min-height: 0;
    padding: 0;
    margin: 0 !important;
    font-size: 100%;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch {
    background: none;
    color: #2f2f2f;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch.notrequired {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 154%;
    font-weight: bold;
    text-transform: uppercase;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch > span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: block;
    padding: 15px;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 0;
    font-weight: bold;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch > span.noswatchimage {
    position: relative;
}

.optiongroup.bundlewizard .optioncontentinner .optionswatch > span span {
    display: inline-block;
    background: none;
    margin: 0 0 0 5px;
    padding: 0;
    font-weight: normal;
    font-style: italic;
}

.optiongroup.bundlewizard .optionswatch.varianton span {
    background: #2f2f2f;
}

.optiongroup.bundlewizard .optionswatch.preview.notrequired {
    display: flex;
    align-items: center;
}

.optiongroup.bundlewizard .optionswatch.preview.notrequired span {
    display: inline;
    font-weight: bold;
}

.optiongroup.bundlewizard .bundlewizard-options {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
}

.optiongroup.bundlewizard .bundlewizard-options label {
    height: 100%;
    width: 100%;
}

/*** Bundle Wizard Styles END ***/
/*** Inspire me section ***/
.inspireme {
    float: left;
    width: 100%;
    position: relative;
    clear: both;
    padding: 0;
    margin: 0;
}

.inspireme-scroller, .inspireme-category {
    display: block;
    padding: 0 20px;
    float: left;
    margin: 20px 0 0 0;
    width: 100%;
}

.inspireme-scroller .productframe {
    padding: 0;
    width: 100%;
}

.inspireme-category .productfeat .name {
    text-align: left;
}

.inspireme-scroller .owl-nav {
    position: absolute;
    top: 30%;
    left: 0;
    right: 0;
    width: 100%;
    height: 0;
}

.inspireme-scroller .owl-nav .owl-prev {
    display: inline-block;
    float: left;
}

.inspireme-scroller .owl-nav .owl-next {
    display: inline-block;
    float: right;
}

.inspireme-scroller .thumbimagewrap .thumb2 {
    display: none;
}

.inspireme-scroller .thumbimagewrap:hover .thumb2 {
    display: block;
}

.inspireme-scroller .thumbimagewrap:hover .thumb1 {
    display: none;
}

.inspireme .productfeat {
    clear: none;
}

.inspireme-scroller .productfeat {
    padding: 0 10px;
}

/*** Inspire me section END ***/
/*** Instagram section ***/
.instagram-wrap h4 {
    text-transform: uppercase;
}

.instagram-outer {
    float: left;
    width: 100%;
    padding: 0;
    margin: 18px 0 0 0;
}

.instagram-outer .instagram-container {
    padding: 8px;
}

.instagram-outer .instagram-frame {
    position: relative;
    overflow: hidden;
    font-size: 85%;
}

.instagram-outer .instagram-frame a {
    position: relative;
    display: inline-block;
}

.instagram-outer .instagram-frame .instagram-overlay-container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(51, 51, 51, 0.85);
    opacity: 0;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.instagram-outer .instagram-frame:hover .instagram-overlay-container {
    opacity: 1;
}

.instagram-outer .instagram-frame .instagram-overlay-container .instagram-overlay p {
    color: #fff;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
    padding: 0;
    margin: 0;
}

/*** Instagram section END ***/

#preview-mode {
    position: fixed;
    right: 20px;
    bottom: 20px;
    background: #ff6;
    color: #000;
    z-index: 9999;
    padding: 5px 10px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
}

/****** pop up *****/
.popupinner {
    padding: 20px;
    min-width: 450px;
    max-width: 600px;
    background: #fff;
    border-radius: 10px;
    overflow: auto;
}
.popupheader {
    color: #333;
    font-size: 200% !important;
    padding: 0 !important;
    text-align: left;
}
.popupinner img.fullwidth {
    margin: 0 0 20px 0;
    border-radius: 5px;
}
.popupinner .popuplabel {
    margin: 0;
}
.popupinner .textfield {
    width: 100%;
}
.popupinner .g-recaptcha {
    height: auto !important;
}
.popupinner .flex {
    display: flex;
    margin: 5px 0 0 0;
}
.popupinner .flex a {
    flex-basis: 50%;
    flex-grow: 1;
    margin: 5px 0;
}

/* fancy checkboxes */
input[type=checkbox].csscheckbox {
    position: absolute;
    z-index: -1000;
    left: -1000px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

input[type=checkbox].csscheckbox + label.csschecklabel {
    position: relative;
    padding-left: 30px;
    margin: 6px 0;
    display: inline-block;
    line-height: 20px;
    vertical-align: middle;
    cursor: pointer;
}

input[type=checkbox].csscheckbox + label.csschecklabel::before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    display: inline-block;
    line-height: 20px;
    background-repeat: no-repeat;
    background-position: 0 0;
    vertical-align: middle;
    cursor: pointer;
}

input[type=checkbox].csscheckbox:checked + label.csschecklabel::before {
    background-position: 0 -20px;
}

label.csschecklabel, label.csschecklabel::before {
    border: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

label.csschecklabel::before {
    background-image: url('/images/csscheckbox.png');
}

.productfeat input[type=checkbox].csscheckbox + label.csschecklabel {
    width: 100%;
}

.customfieldlabel {
    width: 90%;
}

.hidelabel {
    display: block;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: none;
}

.lity {
    background:rgba(0,0,0,0.4) !important;
    backdrop-filter: blur(4px);
}

.lity-close {
    width: 60px !important;
    height: 60px !important;
    line-height: 60px !important;
    font-size: 60px !important;
}

.lity-iframe iframe {
    opacity: 0;
}

.lity-iframe .lity-content:after {
    display: none;
}

.lity-iframe .lity-container {
    max-width: 540px;
}

.lity-iframe .lity-iframe-container {
    height: 695px;
}

.lity-iframe .lity-iframe-container.loaded {
    transition: 0.5s all;
}

.small .lity-iframe-container, .small .lity-iframe-container iframe {
    height: 245px;
}

.medium .lity-iframe-container, .medium .lity-iframe-container iframe {
    height: 450px;
}

.lity-prev {
    font-size: 200%;
    position: absolute;
    top: 50%;
    left: 0;
    background: #fff;
    padding: 25px;
    z-index: 1;
    display: none;
    cursor: pointer;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
}

.lity-next {
    font-size: 200%;
    position: absolute;
    top: 50%;
    right: 0;
    background: #fff;
    padding: 25px;
    z-index: 1;
    display: none;
    cursor: pointer;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
}

.gradient {
    background: linear-gradient(90deg, rgba(219, 118, 43, 1) 0%, rgba(139, 165, 182, 1) 40%, rgba(139, 165, 182, 1) 60%, rgba(124, 152, 42, 1) 100%);
    height: 5px;
}

.mobile-search-container {
    display: none;
    position: fixed;
    left: 10%;
    top: 0;
    width: 80%;
    max-width: 100vw;
    color: #333;
    background: none;
    z-index: 999;
    overflow: hidden;
    transition: top 0.3s ease;
}

.searchtag {
    background: #f0f0f0;
    padding: 10px 20px;
    border-radius: 20px;
    text-decoration: none !important;
    margin: 0 10px 10px 0;
    display: inline-block;
}

.searchtag:hover {
    background: #e3e3e3;
}

.reveal {
    cursor: pointer;
    display: inline-block;
}

.reveal .hidden {
    display: none;
}

.reveal.padding {
    margin: 20px 0;
}

img[data-sizes="auto"] {
    display: block;
    width: 100%;
}

.quote-table .small {
    font-size: 85%;
}

.quote-table td {
    padding: 2px 0;
}

#returnitems table td {
    padding: 10px;
}

#returnitems table .textfield {
    font-size: 100%;
}

#returnitems table .returnreason {
    margin: 10px 0 0;
}

/* Finance Calculator & Summary */
.finance-summary {
    float: left;
    width: 100%;
    padding: 0;
    margin: 0 0 20px 0;
}
.finance-summary li {
    float: left;
    width: 100%;
    margin: 8px 0;
    list-style: none;
    font-size: 100%;
}
.financecalculatorbody h5.amounttitle {
    display: inline-block;
    margin: 0 10px 0 0;
}
.financecalculatorbody input#amount {
    width: auto;
    min-width: 140px;
    padding: 10px 12px;
    font-size: 170%;
    text-align: center;
}
.financecalculatorbody .greybox {
    padding: 15px;
    background: #f9f9f9;
    text-align: center;
}
.financecalculatorbody .note {
    font-size: 100%;
}
.financecalculatorbody .finance-package-group-title {
    display: block;
    margin: 15px 0 8px 0;
    font-size: 115%;
    font-weight: bold;
}
.financecalculatorbody .finance-package-group {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.financecalculatorbody label.finance-package {
    display: inline-block;
    flex: 0 0 23%;
    font-size: 107%;
    padding: 15px 10px;
    margin: 5px;
    transition: all .4s;
    text-align: center;
}
.financecalculatorbody label.finance-package input {
    position: absolute;
    right: 99999px;
    top: 0;
    visibility: hidden;
}
.financecalculatorbody label.finance-package span {
    font-size: 120%;
}
.financecalculatorbody label.finance-package:hover, .financecalculatorbody label.finance-package.selected {
    background: #333 !important;
    color: #fff;
    cursor: pointer;
}
.financecalculatorbody label.finance-package:hover strong, .financecalculatorbody label.finance-package.selected strong {
    color: #fff !important;
}
.financecalculatorbody #finance-summary {
    margin-top: 15px;
}
.financecalculatorbody .finance-summary li {
    float: left;
    width: 100%;
    font-size: 115%;
}
.financecalculatorbody input[type="submit"]:disabled {
    cursor: not-allowed;
    pointer-events: none;
}
.rangeslider__ruler {
    cursor: pointer !important;
    font-size: 100% !important;
    margin: 20px 3px 0 3px !important;
    position: relative !important;
    top: 3em !important;
    text-align: justify !important;
}
.rangeslider__ruler:after {
    content: "" !important;
    display: inline-block !important;
    width: 100% !important;
}
.rangeslider {
    height: 5px !important;
    background: #c5c7c6 !important;
    box-shadow: none !important;
    margin-bottom: 75px !important;
}
.rangeslider__fill {
    background: #333 !important;
}
.rangeslider--horizontal .rangeslider__handle {
    width: 28px !important;
    height: 28px !important;
    top: -12px !important;
    background: #333 !important;
    border: 0 !important;
    box-shadow: none !important;
}
.rangeslider__handle:after {
    display: none !important;
}
#captcha {
    width: 120px;
}
.headerbanner p {
    margin:0;
}
.videothumb {
    position: relative;
    display:block;
}
.videothumb .videoplayicon {
    position:absolute;
    width:60% !important;
    max-width:100px !important;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
}
.cabin-allowance {
    margin: 0;
    padding: 0;
    list-style: none;
}
.cabin-allowance li {
    font-size: 1.75rem;
    display: flex;
    align-items: center;
    gap: 10px;
}
.cabin-allowance li::before {
    content: '';
    width: 18px;
    height: 18px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cabin-allowance li.tick::before {
    background-image: url('../images/tick.png');
}
.cabin-allowance li.cross {
    opacity: 0.5;
}
.cabin-allowance li.cross::before {
    background-image: url('../images/delete.png');
}
#mailingbox {
    text-align: center;
    background: #c89fa5;
    padding: 30px 0;
    color: #000;
}
#mailingbox .mailingbox-container {
    display: flex;
    align-items: center;
}
#mailingbox .mailingboxtext {
    text-align: left;
    padding-left: 0;
}
#mailingbox .mailingboxtext .mailingboxheader {
    font-size: 133%;
    font-weight: bold;
    display: block;
    margin-bottom: 0.4em;
}
#mailingbox .mailingboxform {
    padding: 0;
}

#quicksubscribe {
    width: 100%;
    display: flex;
}
#quicksubscribe label {
    width: 100%;
    border: none;
}
#quicksubscribe .textfield {
    width: 100%;
    margin: 0;
    border: none;
    font-size: 100%;
    background: rgba(255,255,255,1);
    color: #000;
    height: 44px;
    border-radius: 5px;
}
#quicksubscribe .textfield::placeholder {
    color: #000;
}
#quicksubscribe .inputbutton {
    display: inline-block;
    width: auto !important;
    margin: 0 !important;
    height: 44px;
}
#quicksubscribe .inputbutton:hover, #quicksubscribe .inputbutton:focus {
    box-shadow: none;
}
#quicksubscribe .inputbutton img {
    display: block;
    width: 13px;
    height: 19px;
}
#quicksubscribe label {
    display: flex;
    gap: 10px;
}
/* IXO Prompt */
.ixoprompt-box {
    z-index: 1000;
}
.ixoprompt-buttons button {
    color: #666;
    background-color: #e9e9e9;
    transition: background-color 1s ease;
}
.ixoprompt-buttons button:hover {
    color: #333;
    background-color: #ccc;
}
.ixoprompt-buttons button.primary {
    color: #FFF;
    background-color: #333;
}
.ixoprompt-buttons button.primary:hover {
    color: #FFF;
    background-color: rgba(51, 51, 51, .5);
}
.ixoprompt-container.fixed .ixoprompt-buttons {
    position: sticky;
    bottom: -20px;
    z-index: 100;
    padding: 15px 0;
    width: 100%;
}
.ixoprompt-popup {
    display: none;
}
.ixoprompt-popup:empty {
    display: none !important;
}
.ixoprompt-popup .alsolike {
    width: 90%;
}
.ixoprompt-popup .alsolike h2 {
    color: #FFF;
}
.ixoprompt-popup .productframe-inner {
    background: #fff;
}
.ixoprompt-fade.fixed {
    background: rgba(0,0,0,.85);
}