body {
    margin: 0;
    padding: 0;
    background: #fff;
    font-family: 'Montserrat', sans-serif;
}

body.dark-mode {
    background: #000;
}

div#header {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    border-bottom: 1px solid #e8e8e8;
}

body.dark-mode div#header {
    border-bottom-color: #333;
}

div#header > div {
    margin-top: 25px;
    margin-left: 25px;
    margin-right: 25px;
}


div#header .tagline {
    margin: 0;
    padding: 0;
    font-size: 18px;
    font-weight: normal;
    color: #565656;
}

body.dark-mode div#header.tagline {
    color: #ccc;
}


div#header div.flex-right {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: flex-start;
}

div#header div.flex-left {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
}

div#header div.headergroup > * {
    margin-bottom: 10px;
    white-space: nowrap;
}

div#header a.wishlistbutton {
    background-color: #6736f3;
    width: 165px;
    text-align: center;
    font-weight: 500;
    color: white;
    font-size: 14px;
    text-decoration: none;
    line-height: 37px;
}

div#header a {
    text-decoration: none;
}
h2.title {
    line-height: 22px;
    font-weight: 500;
    font-size: 51px;
    color: #323232;
    display: inline-block;
    vertical-align: top;
    margin-top: 25px;
    margin-left: 20px;
}
body.dark-mode h2.title {
    color: #cdcdcd;
}

h2.title span {
    font-weight: 800;
    color: #159f4b;
}

div#toolbar {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    border-bottom: 1px solid #e8e8e8;
}
body.dark-mode div#toolbar {
    border-bottom-color: #333;
}

div#toolbar > div {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
}

div#toolbar form#search, form#searchmain {
    margin-left: 25px;
    margin-right: 25px;
    margin-top: 10px;
    margin-bottom: 10px;
}

div#toolbar form#search input, form#searchmain input {
    color: #323232;
    font-size: 14px;
    line-height: 35px;
    width: 350px;
    background: white;
    border: 1px solid #e8e8e8;
    padding-left: 40px;
    box-sizing: border-box;
    border-radius: 5px;
    background-image: url('/img/icon_search.png');
    background-repeat: no-repeat;
    background-position: 10px 8px;
}
body.dark-mode div#toolbar form#search input,body.dark-mode form#searchmain input {
    color: #cdcdcd;
    background-color: #000;
    border-color: #333;
    background-image: url('/img/icon_search-dark.png');
}


div#toolbar form#profile {
    margin-left: 0px;
    display: flex;

}

div#toolbar select::-ms-expand {
    display: none;
}

div#toolbar select, form#language2 select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    border: 0;
    font-size: 14px;
    color: #323232;
    line-height: 35px;
    font-weight: 300;
    height: 45px;
    background: url('/img/icon_select.png') no-repeat right white;
    padding-right: 15px;
    margin-right: 40px;
}

form#language2 select {
    line-height: inherit;
    height: auto;
}

body.dark-mode div#toolbar select {
    color: #cdcdcd;
    background: url('/img/icon_select-dark.png') no-repeat right black;
}

div#toolbar a {
    line-height: 45px;
    font-weight: 400;
    color: #323232;
    font-size: 14px;
    padding-left: 10px;
    padding-right: 10px;
    text-decoration: none;
    border-right: 1px solid #f3f3f3;
    white-space: nowrap;
}
body.dark-mode div#toolbar a {
    color: #cdcdcd;
    border-right-color: #333;
}

form#language select {
    margin-right: 25px;
    margin-left: 10px;
}


.nobr {
    white-space: nowrap;
}


/***sidebar****/

div#main {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    background: #22c061;
}
body.dark-mode div#main {
    background: #0f4f27;
}

div#sidebar {
    box-sizing: border-box;
    width: 390px;
    min-width: 390px;
    background: white;
}
body.dark-mode div#sidebar {
    background: #000;
    color: white;
}

div#sidebar h1 {
    font-weight: 600;
    font-size: 20px;
    color: #323232;
    padding: 0px;
    margin: 0px;
    line-height: 20px;
}
body.dark-mode div#sidebar h1 {
    color: #cdcdcd;
}

div#sidebar span.itemversion {
    font-weight: 400;
    font-size: 14px;
    color: #444;
}

div#sidebar > div.sidebarinfo {
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 20px;
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
}

div#sidebar div.productname {
    border-bottom: 1px solid #e8e8e8;
}
body.dark-mode div#sidebar div.productname {
    border-bottom-color: #333;
}

div#sidebar .flag-icon {
    height: 1em;
    position: relative;
    top: .2em;
}

.flag-icon-with-border {
    outline: 1px solid #dedede;
    outline-offset: -1px;
}

div#sidebar div.filterlist {
    flex-direction: column;
    height: 250px;
    overflow: auto;
    border-bottom: 1px solid #e8e8e8;
}
body.dark-mode div#sidebar div.filterlist {
    border-bottom-color: #333;
}
div#sidebar div.filterlist a {
    font-weight: 400;
    line-height: 25px;
    font-size: 12px;
    text-decoration: none;
    color: #323232;
}
body.dark-mode div#sidebar div.filterlist a {
    color: #cdcdcd;
}

div#sidebar img.product {
    display: block;
    max-width: 265px;
    max-height: 265px;
    object-fit: contain;
    object-position: center top;
    align-self: center;
}

div#sidebar h3 {
    padding: 0px;
    margin: 0px;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    padding-left: 25px;
    padding-right: 25px;
}
body.dark-mode div#sidebar h3 {
    color: #cdcdcd;
}

div#sidebar ul.tags {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    align-content: flex-start;
    list-style-type: none;
    padding-left: 25px;
    padding-right: 25px;
    padding-bottom: 10px;
}

div#sidebar ul.tags li a {
    display: block;
    background: #6736f3;
    color: white;
    text-decoration: none;
    padding: 2px 5px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-size: 12px;
    font-weight: 400;
}

div#sidebar ul.otherversions {
    padding: 0px;
    margin: 0px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 15px;
    padding-bottom: 15px;
    list-style-type: none;
}

div#sidebar ul.otherversions li > a {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    text-decoration: none;
    margin-bottom: 10px;
}

div#sidebar ul.otherversions img.product {
    width: 50px;
    height: 50px;
    object-fit: contain;
    object-position: center top;
}

div#sidebar ul.otherversions a > div {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    margin-left: 15px;
    flex: 1;
}

div#sidebar ul.otherversions a > div > span:last-child {
    font-size: 11px;
    color: #282828;
    font-weight: 400;
}

div#sidebar ul.otherversions a > div > span:last-child .flag-icon {
    height: 0.8em;
    top: 0;
}
body.dark-mode div#sidebar ul.otherversions a > div > span:last-child {
    color: #cdcdcd;
}
div#sidebar ul.otherversions a > div > span:first-child {
    font-size: 15px;
    color: #282828;
    font-weight: 600;
}
body.dark-mode div#sidebar ul.otherversions a > div > span:first-child {
    color: #cdcdcd;
}


div#sidebar ul.actions {
    border-top: 1px solid #e8e8e8;
    padding: 0px;
    margin: 0px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 20px;
    padding-bottom: 20px;
    list-style-type: none;
}
body.dark-mode div#sidebar ul.actions {
    border-top-color: #ccc;
}

div#sidebar ul.featuredbuylists {
    border-top: none;
    padding-top: 5px;
}

div#sidebar ul.actions li > label {
    color: #282828;
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    text-decoration: none;
    cursor: pointer;
}
body.dark-mode div#sidebar ul.actions li > label {
    color: #cdcdcd;
}
div#sidebar ul.actions li > a {
    color: #282828;
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    text-decoration: none;
}
body.dark-mode div#sidebar ul.actions li > a {
    color: #cdcdcd;
}
div#sidebar ul.actions li button {
    color: #282828;
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    text-decoration: none;
    font-family: inherit;
    cursor: pointer;
    border: 0px solid transparent;
    padding: 0;
    margin: 0;
    background: inherit;
}
body.dark-mode div#sidebar ul.actions li button {
    color: #cdcdcd;
}

div#footer {
    background: #323232;
    font-size: 14px;
    line-height: 25px;
    color: #ffffff;
    font-weight: 400;
    text-align: center;
    padding: 10px;
}

div#footer a {
    text-decoration: none;
    color: #ffffff;
    white-space: nowrap;
}
/**** content ****/

div#content {
    background: #22c061;
    flex-grow: 2;
    padding: 40px;
}

div#content.withproducttools {
    padding-top: 0px;
}

body.dark-mode div#content {
    background: #0f4f27;
}


div#vendorlist {
    display: -ms-grid;
    display: grid;
    max-width: 1500px;
    -ms-grid-columns: 180px auto 340px;
    grid-template-columns: 180px auto 340px;
}

div#seachresults {
    display: flex;
    flex-direction: column;
}

div#searchtop, div#searchbottom {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: 1500px;
}

div#searchtop > *, div#searchbottom > * {
    flex-grow: 1;
    flex-basis: 0;
}

.vendorheader, div.searchheader {
    background: #159f4b;
    color: white;
    font-size: 16px;
    line-height: 54px;
    padding-left: 15px;
    padding-right: 15px;
    font-weight: 600;
    white-space: nowrap;
}
body.dark-mode div.vendorheader, body.dark-mode div.searchheader {
    color: black;
}

div#searchtop div.searchheader:first-child {
    border-top-left-radius: 5px;
}
div#searchtop div.searchheader:last-child {
    border-top-right-radius: 5px;
}
div#searchbottom div.searchheader:first-child {
    border-bottom-left-radius: 5px;
}
div#searchbottom div.searchheader:last-child {
    border-bottom-right-radius: 5px;
}

div.searchheader li {
   padding: 0px;
   margin: 0px;
   text-align: center;
   list-style-type:none;
}
div.searchheader .previous_page {
   text-align: left;
}

div.searchheader .next_page {
    text-align: right;
}

div.searchheader li a {
    text-decoration: none;
    color: white;
}
body.dark-mode div.searchheader li a {
    color: black;
}

div.pagination {
    padding: 0px;
    margin: 0px;
    text-align: center;
}

div.pagination ul {
    list-style-type: none;
    padding: 0px;
    margin: 0px;
}

div.pagination ul li {
    margin: 0px;
    padding: .2em;
    display: inline;
}

div.pagination ul li a {
    text-decoration: none;
    color: white;
    display: inline;
}
body.dark-mode div.pagination ul li a {
    color: black;
}

div.paginate2 div.pagination ul li a {
    color: black;
}

div.pagination li.disabled a {
    color: #e0e0e0;
}

div.article div.pagination li.disabled a {
    color: #808080;
}

div.article div.pagination ul li a {
    color: black;
}

div#vendorlist > div.vendorheader:first-child {
    border-top-left-radius: 5px;
    border-right: 1px solid #22bf61;
}
div#vendorlist >*:nth-child(3) {
    border-top-right-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-left: 1px solid #22bf61;
}

div.vendorheader label {
    text-decoration: none;
    color: white;
    font-size: 14px;
    line-height: 14px;
    background: #22c061;
    padding: 5px 10px;
    white-space: nowrap;
}
body.dark-mode div.vendorheader label {
    color: black;
    background: #0f4f27;
}

div#searchresultlist {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 180px 5fr 1fr;
    grid-template-columns: 180px 5fr 1fr;
    background: white;
    max-width: 1500px;
}
body.dark-mode div#searchresultlist {
    background: black;
}

div#searchresultlist.cartlist {
    -ms-grid-columns: 180px 1fr 1fr 1fr;
    grid-template-columns: 180px 40px auto auto;
}

div#searchresultlist > .searchcell {
    padding: 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-bottom: 1px solid #e0e0e0;
}
body.dark-mode div#searchresultlist > .searchcell {
    border-bottom-color: #333;
}

.searchcell.itemimg img {
    display: block;
    max-width: 100px;
    max-height: 100px;
    object-fit: contain;
    object-position: center top;
    align-self: center;
}

.searchcell.bestprice {
    flex: 0 0 200px;
}

.searchcell.bestprice.multibestprice {
    flex: 0 0 250px;
}

div#searchresultlist .multibestprice .price {
    display: inline;
}

.searchcell.itemimg a {
    display: flex;
    flex-direction: column;
}

#searchresultlist > .multicell {
    border-bottom: 1px solid #e0e0e0;
    align-items: center;
}
body.dark-mode #searchresultlist > .multicell {
    border-bottom-color: #333;
}

div#searchresultlist > .divider {
    border-right: 1px solid #e0e0e0;
}
body.dark-mode div#searchresultlist > .divider {
    border-right-color: #333;
}

div#searchresultlist .name a, div#searchresultlist .price, .itemresultlist .name a, .itemresultlist .price {
    color: #323232;
    line-height: 25px;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    display: block;
}
body.dark-mode div#searchresultlist .name a, body.dark-mode div#searchresultlist .price, body.dark-mode .itemresultlist .name a, body.dark-mode .itemresultlist .price {
    color: #cdcdcd;
}

div#searchresultlist .stock, .itemresultlist .stock {
    color: #323232;
    font-weight: 400;
    line-height: 20px;
    font-size: 14px;
    padding-top: 10px;
}
body.dark-mode div#searchresultlist .stock {
    color: #cdcdcd;
}

div#searchresultlist .seeprices a span {
    color: white;
    font-weight: 600;
    text-align: center;
    font-size: 18px;
    width: 120px;
}

div#searchresultlist .seeprices a {
    text-decoration: none;
    height: 100px;
    width: 120px;
    background-color: #6736f3;
    display: flex;
    align-self: flex-end;
    flex-direction: column;
    justify-content: center;
}

div#searchresultlist h2 {
    -ms-grid-column: 1 / -1;
    grid-column: 1 / -1;
    border-bottom: none;
}

input.expander {
    display: none;
}

input.expander:checked ~ .expandee {
    display: flex;
}

.expandee {
    display: none;
}

div.productdetails {
    display: block;
    display: contents;
}

label#productdetailstoggle {
    display: none;
}

.listfiltercontainer {
    -ms-grid-column: 1 / -1;
    grid-column: 1 / -1;
    flex-direction: column;
    background: #f1f8f4;
}

body.dark-mode .listfiltercontainer {
    background: #111;
    color: white;
}

div.listfiltercontainer > form {
    align-items: flex-start;
    display: flex;
}

div.listfiltercontainer > form > div {
    padding: 15px 15px;
    flex-grow: 1;
}

div.listfiltercontainer {
    font-size: 14px;
}
div.listfiltercontainer div > p {
    margin: 15px;
}

div.pickuplist {
    overflow-y: auto;
    height: 170px;
    min-width: 250px;
    max-width: 350px;
    background: white;
}
body.dark-mode div.pickuplist {
    background: black;
}

.vendordetail {
    background: white;
    color: #323232;
    font-weight: 400;
    font-size: 14px;
    padding: 15px;
    border-bottom: 1px solid #e0e0e0;
    display: flex;
    align-items: center;
}
body.dark-mode .vendordetail {
    background: black;
    color: #cdcdcd;
    border-bottom-color: #333;
}

.vendorstock {
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.vendorstatus {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 0;
    justify-content: space-between;
}

.infocontainer {
    flex: 5;
    align-items: center;
}

.storeitemname {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 2px;
    color: #888;
    font-size: 80%;
}

div.vendorlogo {
    border-right: 1px solid #e0e0e0;
}
body.dark-mode div.vendorlogo {
    border-right-color: #333;
}

div.vendorlogo img {
    max-width: 150px;
    width: 100%;
}

.vendorprice {
    border-left: 1px solid #e0e0e0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
body.dark-mode .vendorprice {
    border-left-color: #333;
}

.pricedetails {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    flex-grow: 2;
    margin-right: 15px;
    white-space: nowrap;
}

div.vendorprice div.total {
    font-size: 14px;
    font-weight: 600;
}

div.pricedetails div:nth-child(2n) {
    text-align: right;
}

.buylink,.buylinkdiscount,.nobuylink {
    text-decoration: none;
    width: 125px;
    background: #6736f3;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: white;
    line-height: 50px;
    cursor: pointer;
    white-space: nowrap
}


.nobuylink {
    background: #eaeaea;
    border-left: 1px solid #e0e0e0;
    cursor: no-drop;
}


.buylink:hover {
    background-color: #8054FF;
}


.buylinkdiscount {
    padding: 10px 50px;
}

.modal {
    border: 1px solid #ccc;
    background: #eee;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 14px;
}
body.dark-mode .modal {
    background: #222;
}

.button {
    text-decoration: none;
    width: 125px;
    background: #6736f3;
    font-weight: 600;
    text-align: center;
    color: white;
    margin: 0;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: .5em 1em;
    border: 1px solid transparent;
    font-size: inherit;
    font-family: 'Montserrat', sans-serif;
    cursor: pointer;
}

.multicell {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0px;
}

.multicell > * {
    padding-left: 15px;
    flex: 0 1 auto;
}

#menutoggle {
    display: none;
}

.stockyes:before {
  content: "\25CF";
  margin-right: 5px;
  color: #22c061;
  position: relative;
  top: -2px;
}
.stockno:before {
  content: "\25CF";
  margin-right: 5px;
  color: #f23535;
  position: relative;
  top: -2px;
}
.stockmaybe:before {
  content: "\25CF";
  margin-right: 5px;
  color: #e8b52f;
  position: relative;
  top: -2px;
}
.stockpreorder:before {
  content: "\25CF";
  margin-right: 5px;
  color: #2fa0e8;
  position: relative;
  top: -2px;
}

.ratingcount {
    font-size: 80%;
    color: #666;
    display: block;
}
body.dark-mode .ratingcount {
    color: #aaa;
}

.star-rating {
  unicode-bidi: bidi-override;
  color: #ddd;
  position: relative;
  padding: 0;
  text-shadow: 0px 1px 0 #a2a2a2;
  width: min-content;
  display: inline-block;
}

.star-rating-top {
  color: #e8b52f;
  position: absolute;
  z-index: 1;
  display: block;
  top: 0;
  left: 0;
  overflow: hidden;
}

.star-rating-bottom {
  padding: 0;
  display: block;
  z-index: 0;
}

.discountview {
    text-align: center;
    position: fixed;
    height: 100%;
    width: 100%;
    margin: auto;
    background: black;
    color: white;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.9);
    z-index: 25;
}

.discountview .discountcenter {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 18px;
    color: white;
    user-select: none;
    transform: translate(-50%,-50%);
    text-align: center;
}

.discountcode {
    color: #f88;
    font-size: 150%;
    font-weight: bold;
    display: block;
}

.article {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    margin: 20px auto;
    flex-grow: 1;
}

.article > *, .frontblock > * {
    margin: auto;
    padding: 10px;
    background: white;
    width: 100%;
    max-width: 1000px;
    box-sizing: border-box;
    font-size: 16px;
}

.expandedArticle > * {
    margin-left: 10px;
    margin-right: 10px;
    max-width: unset;
    width: auto;
}

.frontblockcontainer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background: #22c061;
    justify-content: space-between;
    padding: 0;
    gap: 20px;
}

.frontblockcontainer > * {
    padding: 0;
    margin-top: 0;
    flex: 1;
}

.frontblock {
    background: none;
    padding-bottom: 20px;
}

.itemresultlist {
    display: flex;
    flex-direction: column;
    padding: 0;
    min-width: 600px;
}

.itemresult {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-bottom: 1px solid #e0e0e0;
}

.itemresultimage, .itemresultprice, .itemresultgo {
    padding: 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;

}

.itemresultimage a {
    display: flex;
    width: 149px;
    flex-direction: column;
}

.itemresultimage img {
    display: block;
    max-height: 100px;
    max-width: 100px;
    object-fit: contain;
    object-position: center top;
    align-self: center;
}

.itemresultprice {
    display: flex;
    flex-direction: column;
}

.itemresultmulticell {
    flex: 10;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.itemresultmulticell {
    display: block;
    flex: 10;
    padding: 15px;
}
.itemresultmulticell > * {
    padding: 0;
}

.itemresultinfo {
    display: flex;
    flex-direction: column;
    justify-content: center;

}

.itemresultlist .seeprices a span {
    color: white;
    font-weight: 600;
    text-align: center;
    font-size: 18px;
    width: 120px;
}

.itemresultlist .seeprices a {
    text-decoration: none;
    height: 100px;
    width: 120px;
    background-color: #6736f3;
    display: flex;
    align-self: flex-end;
    flex-direction: column;
    justify-content: center;
}


body.dark-mode .article > *, body.dark-mode .frontblock > * {
    color: white;
    background: black;
}

.article > div#searchresultlist {
    padding: 0px;
    max-width: 1000px;
}

.article > div {
    margin-bottom: 30px;
}

.article > h1, .frontblock > h1 {
    background: #159f4b;
    color: white;
    line-height: 54px;
    font-size: 20px;
    font-weight: 600;
    width: 100%;
    padding: 0px 20px;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
}
body.dark-mode .article > h1, body.dark-mode .frontblock > h1 {
    background: #159f4b;
    color: black;
}

.article > h2, .frontblock > h2 {
    background: #159f4b;
    color: white;
    line-height: 54px;
    font-size: 20px;
    font-weight: 600;
    width: 100%;
    padding: 0px 20px;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
}
body.dark-mode .article > h2, body.dark-mode .frontblock > h2 {
    background: #159f4b;
    color: black;
}

.article a {
	color: green;
	text-decoration: none;
}

.article a.button {
    color: white;
    box-sizing: border-box;
    display: inline-block;
}

.article h1 a {
    color: white;
}

.article h2 a {
    color: white;
}

.article label {
    display: block;
}

#topmessage {
    text-align: center;
    padding: 10px;
    background: yellow;
    color: black;
    font-size: 16px;
    line-height: 40px;
}


div.news span.title {
    display: block;
    background: greenyellow;
    padding: 2px 10px 2px 10px;
    color: black;
}

div.news span.content {
    display: block;
    padding: 2px 10px 20px 10px;
    font-size: 80%;
}

div.news span.byline {
    padding-right: 10px;
    padding-left: 5px;
    float: right;
    text-align: right;
    font-size: 80%;
    font-style: italic;
    color: #888;
}
table.alerts {
    border-collapse: collapse;
    white-space: nowrap;
    font-size: 80%;
}

table.alerts td:first-child {
    white-space: normal;
}

table.alerts td {
    border: 1px solid #ccc;
    padding-right: 10px;
    padding-left: 10px;
}

.select2-results {
    font-size: 80%;
}
.select2-selection img {
    vertical-align: middle;
}
.select2-dropdown img {
    vertical-align: middle;
    line-height: 28px;
}


.newsletter input#subject {
    display: none;
}
.newsletter input#category {
    display: none;
}
.newsletter input#fullname {
    display: none;
}

.newsletter {
    position: fixed;
    bottom: 0;
    right: 0;
    margin: 0px 10px;
    z-index: 20;
    flex-direction: column;
    color: white;
    max-width: 400px;
    font-size: 14px;
}

.newsletter > * {
    padding: 10px;
    margin: 0px;
    background: #22c061;
    border-left: 1px solid #1b783f;
    border-right: 1px solid #1b783f;
}

.newsletter > h3 {
    background: #159f4b;
    border-top-left-radius: 5px;
    border-top: 1px solid #1b783f;
    border-top-right-radius: 5px;
}

.newsletter > h3 .closer {
    float: right;
    cursor: pointer;
}

.newsletter .prize {
    height: 250px;
    position: absolute;
    left: -230px;
    top: 0;
    z-index: -1;
}

.newsletter form {
    margin-top: 20px;
}

div.excludelist {
    overflow-y: auto;
    height: 150px;
    width: 315px;
    border: 1px solid #ccc;
}

#content > ins {
    display: none;
}

.cartedit {
  display: flex;
  flex-direction: column;
  padding-right: 10px;
}

.vendorheader-wrapper {
    background-color: #159f4b;
}

.vendorinfo {
    flex: 0 1 145px;
    white-space: nowrap;
}
body.dark-mode .vendorinfo img {
    background: white;
    padding: 1px;
}

.cartlist .searchcell.itemname {
  display: flex;
  flex-direction: row;
}

.carteditbutton {
    margin: 0;
    font-size: 0;
    width: auto;
}

.carteditbutton input {
    display: none
}

.carteditbutton:before, .cartbuttondelete:before {
    content: '\02715';
    width: 30px;
    height: 30px;
    display: block;
    background-color: #6736f3;
    font-size: 16px;
    color: white;
    text-align: center;
    line-height: 30px;
}

.cartbuttonup:before {
    content: '\02191';
    font-size: 20px;
}

.cartbuttondown:before {
    content: '\02193';
    font-size: 20px;
}


.vendorheader-wrapper {
    background-color: #159f4b;
}


/* Apply flexbox to icons in the vendor info div */
.vendorinfo {
    flex: 0 1 145px;
    white-space: nowrap;
    padding-left: 15px;
    padding-right: 15px;
}

.informationcolumn {
    flex: 0 1 145px;
}


.flag-icon {
    height: 1em;
}

/* Give all icons a default height, width is implicit */
.vendorinfo-icon {
    height: 1.2em;
}

/* Boost star rating size */
.star-rating-top, .star-rating-bottom {
  font-size: 1.4em;
}


/* Specify rating col header and cell size */
.ratingcolumn, .vendorrating {
    flex: 0 1 150px;
    padding-right: 15px;
}


/* Specify stock status col header and cell size */
.stockcolumn, .vendorstock {
    flex: 0 1 125px;
    white-space: nowrap;
    padding-left: 15px;
    padding-right: 15px;
}

/* Emphasize stock status */
.stockyes, .stockno, .stockmaybe, .stockpreorder {
    font-weight: bold;
    color: #666;
    font-size: 90%;
}

/* Dot booster */
.stockyes:before, .stockno:before, .stockmaybe:before, .stockpreorder:before {
    font-size: 18px;
    display: inline-block;
    position: relative;
    top: 1px;
}

.warning-icon {
    height: 1.25em;
}

.expandee label .flag-icon {
    height: 1.25em;
    position: relative;
    top: .15em;
}

.error {
    color: red;
    font-weight: bold;
}

input.buylistcheck {
    margin: 0px;
    padding: 0px;
    display:none;
}

input.buylistcheck + label {
    display: inline-block;
    cursor:pointer;
    border: 1px solid #ccc;
    background: #eee;
    padding: 5px;
    margin-bottom: 3px;
    line-height: 18px;
}

.loading label {
    background: #eee !important;
    color: #ddd !important;
    cursor: wait !important;
}

input.buylistcheck:checked + label {
    background: #22c061;
    border-color: #159f4b;
}


table.buylist .versionname {
    display: block;
}
table.buylist .name a {
    display: block;
    font-weight: 600;
    color: #323232;
    font-size: 18px;
    line-height: 25px;
}

table.buylist {
    width: 100%;
}
table.buylist td {
    border-bottom: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
    padding: 0px;
}
table.buylist td:first-child {
    border-left: none;
}
table.buylist td.center {
    text-align: center;
}

.notice {
    display: block;
	background: yellow;
	text-align: center;
	margin-bottom: 20px;
	padding: 5px;
	border-radius: 5px;
}

#cookiePopup {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    margin: auto;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    z-index: 30;
    justify-content: center;
    align-items: center;
}

#cookiePopup > div {
    background: #22c061;
    border: 1px solid #1b783f;
    border-radius: 5px;
}

#cookiePopup > div > * {
    padding: 10px;
    margin: 0px;
    width: 450px;
}

#cookiePopup > div > h3 {
    background: #1b783f;
}

#cookiePopup a.action {
    text-decoration: none;
    height: 50px;
    width: 120px;
    background-color: #6736f3;
    display: flex;
    align-self: flex-end;
    flex-direction: column;
    justify-content: center;
    margin-left: 15px;
}

#cookiePopup a.action span {
    color: white;
    font-weight: 600;
    text-align: center;
    font-size: 18px;
    width: 120px;
}

.producttools {
    display: flex;
    flex-display: row;
    justify-content: flex-end;
    max-width: 1500px;
    height: 40px;
    align-items: flex-end;
    padding: 0;
    list-style: none;
    gap: 10px;
    margin: 0px;
    margin-bottom: 4px;
}

.producttools li {
    padding: 2px 5px;
    color: #444;
    font-size: 14px;
}

.producttools li label {
    cursor: pointer;
}

.producttools li:hover {
    background: #159f4b;
}

.fullmodal {
    position: fixed;
    height: 100%;
    width: 100%;
    margin: auto;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.5);
    z-index: 10;
}

.fullmodal > * {
    background: white;
    border: 1px solid black;
    padding: 10px 20px;
    max-width: 400px;
}

.buylistlist {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    max-height: 400px;
    overflow-y: scroll;
    margin: 20px 0px;
}

.buylistlist button {
    width: 250px;
    margin-right: 20px;
}

.inputfieldrow {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 10px;
}

.inputfieldrow input, .inputfieldrow select, .inputfieldrow textarea {
    width: 220px;
    -ms-box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
}

img.storeimage {
    height: 50px;
    width: 150px;
}


/*****************/


@media screen and (max-width: 1279px) {
    /** Compress information columns */


    .ratingcolumn, .stockcolumn {
        display: none;
    }

    div.vendorstock {
        flex-direction: column;
        justify-content: start;
        align-items: start;
    }

    .multicell {
		display: block;
    }

    .multicell > * {
        padding: 0;
        flex: unset;
    }
    .searchcell.bestprice, .searchcell.bestprice.multibestprice {
        min-width: unset;
        flex: unset;
    }

    .itemresultlist {
        min-width: unset;
    }

    .itemresultmulticell {
        display: block;
        flex: 10;
        padding: 15px;
    }
    .itemresultmulticell > * {
        padding: 0;
    }

    #searchresultlist > div.searchinfocontainer {
        align-items: flex-start;
        padding: 15px;
    }
    div.infocontainer {
        align-items: flex-start;
        padding: 15px;
        justify-content: center;
    }

    div.infocontainer > div.vendordetail {
        border-bottom: none;
        padding: 0px;
    }

    div.vendorinfo {
        padding-top: .75em !important;
        display: block;
    }

    .vendorinfo,
    .informationcolumn,
    .vendorrating {
        flex: 1;
    }

}

/* Totally Optional hack to target IE11/Windows */
@media screen and (max-width: 1279px) and (-ms-high-contrast: none) {
    .vendorrating {
        padding-bottom: 2.5em
    }
}


@media screen and (max-width: 1023px) {
    /*** Move product details on top and make burger menu ***/

    #content > ins {
        display: block;
    }
    #menutoggle {
        display: block;
        position: relative;
        margin: 0;
        z-index: 1;
        -webkit-user-select: none;
        user-select: none;
    }
    #menutoggle input {
        display: block;
        width: 40px;
        height: 32px;
        position: absolute;
        top: -7px;
        lefT: -5px;
        cursor: pointer;
        opacity: 0;
        z-index: 200;
        -webkit-touch-callout: none;
    }

    #menutoggle span {
        display: block;
        width: 22px;
        height: 3px;
        margin-bottom: 4px;
        position: relative;
        background: #6b3bf3;
        border-radius: 3px;
        z-index: 100;
        transform-origin: 4px 0px;
    }

    #menutoggle span:first-child {
        transform-origin: 0% 0%;
    }
    #menutoggle span:nth-last-child(2) {
        transform-origin: 0% 100%;
    }
    #menutoggle input:checked ~ span {
        opacity: 1;
        transform: rotate(45deg) translate(-1px, -1px);
        background: #e7e7e7;
    }
    #menutoggle input:checked ~span:nth-last-child(3) {
        opacity: 0;
        transform: rotate(0deg) scale(0.2, 0.2);
    }
    #menutoggle input:checked ~span:nth-last-child(2) {
        transform: rotate(-45deg) translate(3px, -1px);
    }
    #menu {
        position: absolute;
        width: 375px;
        margin: -65px 0 0 -280px;
        padding: 0;
        padding-top: 30px;
        background: #fff;
        list-style-type: none;
        -webkit-font-smoothing: antialiased;
        transform-origin: 0% 0%;
        transform: translate(100%, 0);
        transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
        z-index: 50;
        display: none;
    }
    #menu li {
        padding: 10px 25px;
        font-size: 16px;
        border-bottom: 1px solid #e0e0e0;
    }

    #menu {
        margin-top: -65px;
    }
    #menu li {
        padding: 10px 25px;
        font-size: 16px;
    }
    #menu a {
        text-decoration: none;
    }
    #menutoggle input:checked ~ ul
    {
        display: block;
        transform: none;
    }
    #menutoggle input:checked ~ div#cover {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: black;
        z-index: 1;
        opacity: 0.4;
    }

    body div#topmenu {
        display: none;
    }
    div#header div.wishlistheader {
        display: none;
    }

    div#footer {
        font-size: 19px;
        line-height: 45px;
        padding: 15px;
        padding-bottom: 60px;
    }

    div#main {
        flex-direction: column;
        background: #22c061;
        width: 100%;
    }

    div#sidebar {
        margin: 15px;
        margin-bottom: 0px;
        width: auto;
        min-width: auto;
        background: white;
        border-radius: 5px;
    }

    div.searchfiltersettings {
        display: none;
    }

    .backlink {
        display: none;
    }

    div#sidebar > div {
        flex-direction: column;
    }


    label#productdetailstoggle {
        display: block;
        background: #e0e0e0;
        height: 30px;
        border-top: 1px solid #e0e0e0;
        text-align: center;
        line-height: 30px;
        background-color: #f1f8f4;
        border-radius: 0px 0px 5px 5px;
        cursor: pointer;
        color: #888;
    }

    input#productdetails:checked ~ label#productdetailstoggle span {
        display: none;
    }
    input#productdetails:checked ~ label#productdetailstoggle:after {
        content: "Collapse details"
    }

    div.productdetails {
        display: none;
    }

    div#content {
        padding: 15px;
    }

}

@media screen and (max-width: 1380px) {
    /** switch to mobile display for vendor list */

    div#vendorlist {
        -ms-grid-columns: 180px 1fr 1fr;
        grid-template-columns: 180px auto auto;
    }

    .listfiltercontainer {
        flex-direction: column;
    }

    div.vendorprice {
        margin: 0px;
        padding: 0px;
        align-items: stretch;
    }
    .pricedetails {
        align-self: center;
        margin: 15px;
    }

    .buylink,.nobuylink {
        margin: 0;
        font-size: 0;
        width: auto;
    }

    .nobuylink:before, .buylink:before {
        background:url('/img/svg/external-icon.svg') 50% 50% no-repeat;
        background-size: 25px 25px;
    }

    .nobuylink:before {
        content: ' ';
        width: 50px;
        height: 100%;
        display: block;
    }

    .buylink:before {
        content: 'h';
        width: 50px;
        height: 100%;
        display: block;
    }



}

@media screen and (max-width: 1000px) {
    /** search results on mobile */
    div#searchresultlist {
        grid-template-columns: auto auto auto;
    }
    div#searchresultlist.cartlist {
        -ms-grid-columns: 1fr 1fr 1fr 1fr;
        grid-template-columns: auto 40px auto auto;
    }
    div.searchinfocontainer {
        display: flex;
        flex-direction: column;
    }
    div#searchresultlist div.searchinfocontainer > * {
        border: none;
    }
    div.searchinfocontainer {
        border-bottom: 1px solid #e0e0e0;
    }
    div#searchresultlist .seeprices a span, .itemresultlist .seeprices a span {
        display: none;
    }
    div#searchresultlist .seeprices a, .itemresultlist .seeprices a  {
        margin: 0;
        font-size: 0;
        width: auto;
        height: 100%;
        border-bottom: 1px solid #e0e0e0;
    }
    div#searchresultlist .seeprices, .itemresultlist .seeprices {
        padding: 0px;
    }

    div#searchresultlist .seeprices a:before, .itemresultlist .seeprices a:before {
        content: 'h';
        width: 50px;
        height: 100%;
        display: block;
        background:url('/img/outlink.png') 50% 50% no-repeat;
    }
}

@media screen and (max-width: 1024px) {
    /** make header into mobile menu */

    div#header .logo {
        height: 50px;
    }

    div#header > div {
        margin-left: 15px;
        margin-right: 15px;
    }
    div#header .tagline {
        display: none;
    }
    div#header h2 {
        font-size: 34px;
        margin-top: 12px;
        margin-left: 10px;
    }
    div#header .headergroup {
        margin-top: 20px;
    }
    div#header div.headergroup > * {
        margin-bottom: 10px;
    }
    div#toolbar > div {
        justify-content: space-between;
    }
    div#toolbar select {
        margin-right: 20px;
        margin-left: 0;
    }
    div#toolbar form#search input {
        color: #323232;
        width: 250px;
        background: white;
        border: 0;
        padding-left: 35px;
        box-sizing: border-box;
        border-radius: 5px;
        background-image: url('/img/icon_search.png');
        background-repeat: no-repeat;
        background-position: 6px 8px;
    }

    .article > *, .article > div#searchresultlist {
        max-width: 570px;
    }


    div.listfiltercontainer > form {
        flex-direction: column;
    }

    div.listfiltercontainer > form > div:nth-child(2) {
        order: 99;
    }

    .vendorinfo-icon {
        height: 1.1em;
    }
}


@media screen and (max-width: 600px) {
    /* Go to small mobile view */
    label.newsletter {
        display: none;
    }

    div#header .logo {
        height: 25px;
    }

    div#header h2 {
        font-size: 17px;
        margin-top: 6px;
        margin-bottom: 5px;
        line-height: 13px;
        margin-left: 5px;
    }

    div#toolbar form#search {
        margin: 10px 15px;
        align-self: stretch;
        width: 100%;
    }
    div#toolbar form#search input, form#searchmain input {
        width: 100%;
        font-size: 12px;
        line-height: 20px;
        background-size: 15px;
        background-position: 0px 4px;
        padding-left: 22px
    }

    form#searchmain {
        width: unset;
    }

    div#toolbar > div {
        flex-direction: column;
    }

    div#toolbar select {
        margin-left: 10px;
        font-size: 12px;
        background-size: 6px;
        height: 30px;
        line-height: 24px;
    }
    div#sidebar {
        margin: 5px;
    }
    div#sidebar div.productname {
        padding: 10px 15px;
    }
    div#sidebar h1 {
        font-size: 16px;
    }
    div#sidebar span.itemversion {
        font-size: 14px;
    }
    div#sidebar img.product {
        max-width: 200px;
        max-height: 200px;
    }
    div#sidebar ul.actions li > a {
        font-size: 12px;
    }
    div#sidebar ul.actions li > label {
        font-size: 12px;
    }
    div#sidebar ul.actions li button {
        font-size: 12px;
    }

    div#content {
        padding: 5px;
    }

    div#vendorlist {
        -ms-grid-columns: 85px 1fr 1fr;
        grid-template-columns: minmax(75px,125px) auto auto;
    }
    div.vendorheader, div.searchheader {
        font-size: 12px;
        line-height: 34px;
        padding-left: 5px;
        padding-right: 5px;
    }
    .vendordetail {
        padding: 5px;
        font-size: 12px;
    }

    .ratingcount {
        display: none;
    }
    div.infocontainer {
        padding: 5px;
    }

    div.storeitemname {
        display: none;
    }

    .pricedetails {
        font-size: 10px;
        margin: 5px;
    }
    div.vendorprice div.total {
        font-size: 14px;
    }

    .buylink, .nobuylink, div#searchresultlist .seeprices a, .itemresultlist .seeprices a  {
        line-height: 36px;
    }
    .buylink:before, .nobuylink:before, div#searchresultlist .seeprices a::before, .itemresultlist .seeprices a::before {
        width: 30px;
        background-size: 14px;
    }

    div#content > p {
        font-size: 12px;
    }

    div#footer {
        font-size: 10px;
        line-height: 30px;
    }

    div.vendorheader label {
        font-size: 10px;
        line-height: 13px;
        padding: 3px 5px;
    }
    div.listfiltercontainer div > p {
        margin: 5px;
    }

    div.listfiltercontainer {
        font-size: 12px;
    }

    .modal {
        font-size: 12px;
    }
    div.excludelist {
        width: 235px;
    }

    div#searchresultlist .name a, div#searchresultlist .price, .itemresultlist .name a, .itemresultlist .price {
        font-size: 14px;
        line-height: 20px;
    }
    div#searchresultlist .itemversion {
        font-size: 12px;
        line-height: 16px;

    }

    div#searchresultlist .stock, .itemresultlist .stock {
        font-size: 12px;
        padding-top: 5px;
        line-height: 12px;
    }

    .itemresultimage a {
        width: 85px;
    }

    .searchcell.itemimg img, .itemresultimage img {
        max-width: 75px;
        max-height: 75px;
    }


    .article {
        margin: 5px;
    }
    .article > * {
        font-size: 12px;
        max-width: auto;
    }
    .article  h1 {
        font-size: 14px;
        line-height: 35px;
        padding: 0px 10px;
    }
    .article  h2 {
        font-size: 14px;
        line-height: 35px;
        padding: 0px 10px;
    }

   div.vendorprice div.total {
        font-size: 10px;
    }

    div.vendorprice div.grand-total {
        font-size: 13px;
    }

    #cookiePopup > div > * {
        width: auto;
    }
    #cookiePopup > div {
        margin: 10px;
    }

    .producttools {
        height: 20px;
        gap: 5px;

    }

    .producttools li {
        padding: 1px 3px;
        color: #444;
        font-size: 12px;
    }


    .inputfieldrow {
        flex-direction: column;
    }

    .shiptext {
        font-size: 9px;
        line-height: 18px;
    }

    img.storeimage {
        height: auto;
    }

}

@media screen and (max-width: 359px) {

    div.vendorprice {
        flex-direction: column;
    }
    
    .vendorinfo-icon {
        height: 1em;
    }
    .vendorinfo {
        display: none
    }
    .buylink:before {
        display: none;
    }
    .buylink {
        font-size: 12px;
        height: auto;
        line-height: 30px;
        margin: 5px;
    }

    div.storeitemname {
        display: none;
    }

    .producttools li {
        padding: 1px 2px;
        color: #444;
        font-size: 10px;
    }
}

/*** wayland **/
.waylandsmall, .waylandsmall2, .waylandlarge2 {
    display: none;
}

@media screen and (max-width: 1600px) {
    .waylandlarge {
        display: none;
    }
    .waylandsmall {
        display: block;
    }
}
@media screen and (max-width: 1024px) {
    .waylandsmall {
        display: none;
    }
    .waylandlarge2 {
        display: flex;
        margin-bottom: 10px;
        width: 100%;
        justify-content: center;
    }
}
@media screen and (max-width: 758px) {
    .waylandsmall2 {
        display: flex;
        margin-bottom: 10px;
        width: 100%;
        justify-content: center;
    }
    .waylandlarge2 {
        display: none;
    }
}
