html,body {
  margin: 0px !important;
  padding: 0px !important;
  border: 0px !important;
}

.menubtn span[role="button"] {
  padding: 2px;
  border: 1px solid transparent;
}

.menubtn span[role="button"]:hover {
  background-color: #fff;
  border: 1px solid #ff6600;
  border-radius: 2px;
}

.menubtn span.fa {
  font-size: 1.5em;
  padding: .5em;
}

.menubtn:hover {
  text-decoration: none;
}

[type="button"] {
  -webkit-appearance: none;
  appearance: none;
}

[class^=carousel-control-] {
  background-color: transparent;
  border: 0px;
}

.header-wrapper {
  z-index: 1040 !important;
  background-color: rgba(255,255,255,0.8);
}

.header-wrapper header {
  color: black;
}

.header-wrapper header.nav-up {
  height: 0px;
  opacity: 0;
  transition: height 0ms 400ms, opacity 400ms 0ms;
}

.header-wrapper header.nav-down {
  height: auto;
  opacity: 1;
  transition: height 0ms 0ms, opacity 400ms 0ms;
}

div.headertop {
  font-size: .8em;
  color: white;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  background-color: #ff6600;
}

div.headertop a {
  color: white;
}

div.headertop a {
  color: white !important;
  cursor: pointer;
}

div.header_container {
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

div.header_container div.logo {
  flex-basis: 150px;
  flex-grow: 0;
  flex-shrink: 1;
  min-width: 0px;
  display: flex;
  align-items: center;
}

@media (min-width: 992px) {
  div.header_container div.logo {
    flex-basis: 250px;
  }
}

div.header_container a.logo {
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0px;
  max-width: 100%;
  display: flex;
  align-items: center;
}

div.header_container img.logo {
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0px;
  max-width: 100%;
}

div.header_container div.search {
  flex-grow: 1;
  display: flex;
  align-items: center;
}

div.header_container div.search > form {
  flex-grow: 1;
}

div.header_container div.shopinfo {
  display: flex;
  align-items: baseline;
  justify-content: space-around;
  font-size: .8em;
}

a:not(.btn) {
  color: #ff6600;
}

a:not(.btn):hover {
  color: #ff6664;
}

a.nounder:hover,
a.btn:hover {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

.bg-green {
  background-color: #ff6600;
}

.text-green {
  color: #ff6600;
}

.shadow-hover:hover {
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
}

.input-group.min-text-100 .input-group-text {
  min-width: 100px;
}

.input-group.min-text-200 .input-group-text {
  min-width: 200px;
}

body > div[id|="rxp"] {
  z-index: 1100 !important;
}

/*
.collapsing {
  transition: none;
}
*/

#navbarCollapse {
  position: fixed;
  z-index: 1050;
  top: 0px;
  left: 0px;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 15px;
  max-width: 75%;
  height: 100%;
}

#navbarCollapse.collapsing {
  left: -75%;
  transition: height 0s ease;
}

#navbarCollapse {
  left: 0;
  transition: left 300ms ease-in-out;
}

.arrow-links a {
  display: block;
  font-weight: lighter;
}

.arrow-links a:hover {
  text-decoration: none;
}

.arrow-links a:before {
  font-family: "FontAwesome", "Font Awesome 5 Free","Font Awesome 5 Brands";
  content: "\f054";
  margin-right: .5em;
  transition: margin .25s ease;
  font-weight: 900;
}

.arrow-links a:hover:before {
  margin-right: 1em;
}

.weak,
.font-weak {
  font-weight: lighter;
}

.cursor-pointer {
  cursor: pointer;
}

.flex-grow,
.f-grow,
.fgrow {
  -webkit-box-flex: 1;      /* OLD - iOS 6-, Safari 3.1-6 */
  -moz-box-flex: 1;         /* OLD - Firefox 19- */
  -webkit-flex: 1;          /* Chrome */
  -ms-flex: 1;              /* IE 10 */
  flex-grow: 1 !important;
  min-width: 0%;
  min-height: 0%;
}

.flex-nogrow,
.f-grow-0,
.fgrow-0 {
  -webkit-box-flex: 0;      /* OLD - iOS 6-, Safari 3.1-6 */
  -moz-box-flex: 0;         /* OLD - Firefox 19- */
  -webkit-flex: 0;          /* Chrome */
  -ms-flex: 0;              /* IE 10 */
  flex-grow: 0 !important;
  min-width: 0%;
  min-height: 0%;
}

.flex-shrink,
.f-shrink,
.fshrink {
  flex-shrink: 1 !important;
  min-width: 0%;
  min-height: 0%;
  max-width: 100%;
  max-height: 100%;
}

.flex-shrink-0,
.flex-noshrink,
.f-shrink-0,
.fshrink-0 {
  flex-shrink: 0 !important;
  min-width: 0%;
  min-height: 0%;
}

.blur10-behind {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.screen-max-height {
  max-height: 100vh;
  max-height: 100dvh;
}

div.headermargin {
  background: #ff6600;
  margin-top: 110px;
}

/*
#navbarCollapse,
.sticky-top:not(.header-wrapper) {
  top: 92px;
}
*/

.sticky-bottom {
  position: -webkit-sticky;
  position: sticky;
  bottom: env(safe-area-inset-bottom);
  z-index: 1020;
}

@media (max-width: 767px) {
/*
  #navbarCollapse,
  .sticky-top:not(.header-wrapper) {
    top: 146px;
  }
*/
}

h2.sticky-top {
  background-color: rgba(255,255,255,0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.atb .PopupClose {
  position: absolute;
  right: -15px;
  top: -13px;
  background: red;
  font-size: 1.3rem;
  border-radius: 20px;
  color: #fff;
  border: 2px solid #fff;
  cursor: pointer;
  width: 30px;
  height: 30px;
  text-align: center;
  padding-top: 3px;
}

div.basket {position:relative; } 

.overflow-x {
  overflow-x: auto;
}

.overflow-y {
  overflow-y: auto;
}

a span.basketitems {
  color: #fff;
  font-size: 0.6rem;
  position: absolute;
  top: .1em;
  right: .5em;
  box-shadow: 0px 1px 2px #666;
}

.cookie-consent-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2147483645;
  box-sizing: border-box;
  width: 100%;
  background-color: #F1F6F4;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
}

.cookie-consent-banner__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 32px;
}

.cookie-consent-banner__copy {
  margin-bottom: 16px;
}

.cookie-consent-banner__header {
  margin-bottom: 8px;

  font-family: "CeraPRO-Bold", sans-serif, arial;
  font-weight: normal;
  font-size: 16px;
  line-height: 24px;
}

.cookie-consent-banner__description {
  font-family: "CeraPRO-Regular", sans-serif, arial;
  font-weight: normal;
  color: #838F93;
  font-size: 16px;
  line-height: 24px;
}

.cookie-consent-banner__cta {
  box-sizing: border-box;
  display: inline-block;
  min-width: 164px;
  padding: 11px 13px;
  border-radius: 2px;
  background-color: #2CE080;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  font-family: "CeraPRO-Regular", sans-serif, arial;
  font-weight: normal;
  font-size: 16px;
  line-height: 20px;
}

.cookie-consent-banner__cta--secondary {
  padding: 9px 13px;
  border: 2px solid #3A4649;
  background-color: transparent;
  color: #2CE080;
}

.cookie-consent-banner__cta:hover {
  background-color: #20BA68;
}

.cookie-consent-banner__cta--secondary:hover {
  border-color: #838F93;
  background-color: transparent;
  color: #22C870;
}

.cookie-consent-banner__cta:last-child {
  margin-left: 16px;
}

.brandlink {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 9rem;
  height: 8rem;
  margin: 1rem;
}

.brandlink img {
  width: 100%;
}

.section_item {
}

.section_image {
  max-width: 80px;
  height: 80px;
}

/* From products.html */
.listing_item {
  border: 1px solid #dee2e6;
  border-radius: 5px;
  padding: 0px;
}

.listing_item:hover {
  border: 1px solid #ff6600;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
}

.listing_item a {
  color: #6a6b71;
  text-decoration: none;
  display: block;
}

.listing_item:hover a {
  color: #ff6600;
}

.listing_item a > span {
  font-size: 13px;
}

div.listing_image_wrap a {
  min-height: 172px;
  display: flex;
}

div.listing_image_wrap a picture {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

div.listing_image_wrap a picture img {
  border: none;
  max-width: 172px;
  max-height: 172px;
}

@media (max-width: 320px) {
  div.listing_image_wrap a {
    min-height: 100px;
  }

  div.listing_image_wrap a picture img {
    max-width: 100px;
    max-height: 100px;
  }
}

@media  (max-width: 991px) {
  div.listing_image_wrap a {
    min-height: 140px;
  }

  div.listing_image_wrap a picture img {
    max-width: 140px;
    max-height: 140px;
  }
}

.collapsing {
  transition: none;
}

.text-sm {
  font-size: 0.8em;
}

label {
  cursor: pointer;
}


.card dl dd:last-of-type { margin-bottom: 0px; }

#product-main { filter: drop-shadow(.075rem .125rem .25rem rgba(0,0,0,0.075)); }

#product-thumbs { overflow-x: auto; white-space: nowrap; text-align: center; }
.product-thumb { max-height: 75px; }
.product-thumb:hover { border: 1px solid #ff6600; cursor: pointer; }
dd { margin-left: 2em; font-weight: lighter; }
.btn-cave { background-color:#fc6621; color:white; }
