/* 20260724175321 - v2 */
.gui,
.gui-block-linklist li a {
  color: #000000;
}

.gui-page-title,
.gui a.gui-bold,
.gui-block-subtitle,
.gui-table thead tr th,
.gui ul.gui-products li .gui-products-title a,
.gui-form label,
.gui-block-title.gui-dark strong,
.gui-block-title.gui-dark strong a,
.gui-content-subtitle {
  color: #000000;
}

.gui-block-inner strong {
  color: #666666;
}

.gui a {
  color: #000000;
}

.gui-input.gui-focus,
.gui-text.gui-focus,
.gui-select.gui-focus {
  border-color: #000000;
  box-shadow: 0 0 2px #000000;
}

.gui-select.gui-focus .gui-handle {
  border-color: #000000;
}

.gui-block,
.gui-block-title,
.gui-buttons.gui-border,
.gui-block-inner,
.gui-image {
  border-color: #000000;
}

.gui-block-title {
  color: #000000;
  background-color: #000000;
}

.gui-content-title {
  color: #000000;
}

.gui-form .gui-field .gui-description span {
  color: #000000;
}

.gui-block-inner {
  background-color: #000000;
}

.gui-block-option {
  border-color: #d8d8d8;
  background-color: #f2f2f2;
}

.gui-block-option-block {
  border-color: #d8d8d8;
}

.gui-block-title strong {
  color: #000000;
}

.gui-line,
.gui-cart-sum .gui-line {
  background-color: #8c8c8c;
}

.gui ul.gui-products li {
  border-color: #b2b2b2;
}

.gui-block-subcontent,
.gui-content-subtitle {
  border-color: #b2b2b2;
}

.gui-faq,
.gui-login,
.gui-password,
.gui-register,
.gui-review,
.gui-sitemap,
.gui-block-linklist li,
.gui-table {
  border-color: #b2b2b2;
}

.gui-block-content .gui-table {
  border-color: #d8d8d8;
}

.gui-table thead tr th {
  border-color: #8c8c8c;
  background-color: #f2f2f2;
}

.gui-table tbody tr td {
  border-color: #d8d8d8;
}

.gui a.gui-button-large,
.gui a.gui-button-small {
  border-color: #000000;
  color: #000000;
  background-color: #000000;
}

.gui a.gui-button-large.gui-button-action,
.gui a.gui-button-small.gui-button-action {
  border-color: #000000;
  color: #000000;
  background-color: #000000;
}

.gui a.gui-button-large:active,
.gui a.gui-button-small:active {
  background-color: #000000;
  border-color: #000000;
}

.gui a.gui-button-large.gui-button-action:active,
.gui a.gui-button-small.gui-button-action:active {
  background-color: #000000;
  border-color: #000000;
}

.gui-input,
.gui-text,
.gui-select,
.gui-number {
  border-color: #ffffff;
  background-color: #ffffff;
}

.gui-select .gui-handle,
.gui-number .gui-handle {
  border-color: #ffffff;
}

.gui-number .gui-handle a {
  background-color: #ffffff;
}

.gui-input input,
.gui-number input,
.gui-text textarea,
.gui-select .gui-value {
  color: #000000;
}

.gui-progressbar {
  background-color: #000000;
}

/* custom */
.list-btn.a {
    max-width: 1120px !important;
    margin: 0 auto 20px !important;
}

/* Mobiel: originele thema-waarden behouden */
#root .m55 {
    margin-bottom: 55px;
}

#root .m20 {
    margin-bottom: 20px;
}

article .heading-mobile.m55 {
    margin-bottom: 0 !important;
}

/* Desktop: meer ruimte */
@media only screen and (min-width: 768px) {
    #root .m55 {
        margin-bottom: 90px;
    }

    #root .m20 {
        margin-bottom: 90px;
    }
}

.list-brands li {
    padding: 55px 0px 10px !important;
}


/* ============================================================
   PRODUCT PAGINA VERBETERINGEN
   ============================================================ */


/* ------------------------------------------------------------
   LAGE VOORRAAD ALERT
   ------------------------------------------------------------ */
.low-stock-alert {
  color: #c0392b;
  font-weight: 600;
  font-size: 0.9em;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}


/* ------------------------------------------------------------
   VARIANT BLOKKEN — uitverkocht doorgestreept
   ------------------------------------------------------------ */
.variant-blocks-improved li.sold-out a {
  position: relative;
  opacity: 0.5;
  text-decoration: line-through;
  cursor: not-allowed;
}

.variant-blocks-improved li.sold-out a:hover {
  background: transparent;
  border-color: #ccc;
  color: inherit;
}


/* ------------------------------------------------------------
   WHATSAPP SHARE KNOP
   ------------------------------------------------------------ */
.whatsapp-share {
  margin-top: 0;
  padding-top: 0;
  display: flex;
  justify-content: center;
}

.whatsapp-share a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #25D366;
  font-size: 0.9em;
  font-weight: 500;
  text-decoration: none;
  padding: 8px 0;
}

.whatsapp-share a:hover {
  opacity: 0.8;
}

.whatsapp-share .icon-whatsapp {
  font-size: 1.2em;
}


/* ------------------------------------------------------------
   PRODUCT USP BALK — inclusief verzendtimer
   ------------------------------------------------------------ */
.product-usps {
  background: #f8f6f4;
  border-radius: 8px;
  padding: 12px 16px !important;
  margin-top: 16px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  list-style: none !important;
  width: 100%;
  box-sizing: border-box;
}

.product-usps li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-size: 1em;
  border-bottom: 1px solid #ede9e4;
}

.product-usps li:last-child {
  border-bottom: none;
}

.product-usps li i {
  color: #9b6b6b;
  flex-shrink: 0;
  font-size: 1.1em;
}

/* Verzendtimer — gecentreerd, geen icon */
.product-usps .countdown {
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  padding: 4px 0;
  gap: 6px;
}

.product-usps .countdown i {
  display: none !important;
}

.product-usps .countdown b {
  font-size: 1.3em;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #2c2c2a;
}

ul.list-usp.product-usps {
  max-width: 100% !important;
}

.list-usp li:first-child {
  padding-left: 0 !important;
}

@media only screen and (min-width: 768px) {
  .product-usps li {
    font-size: 1.05em;
  }

  .product-usps .countdown b {
    font-size: 1.4em;
  }
}


/* ------------------------------------------------------------
   DIRECT AFREKENEN KNOP
   ------------------------------------------------------------ */
.checkout-direct {
  margin-top: 8px !important;
}

.checkout-direct a {
  display: block;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}


/* ------------------------------------------------------------
   MERK NAAM BOVEN TITEL
   ------------------------------------------------------------ */
.product-brand {
  margin-bottom: 4px !important;
}

.product-brand a {
  font-size: 0.85em;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #9b6b6b;
  text-decoration: none;
  font-weight: 500;
}

.product-brand a:hover {
  text-decoration: underline;
}


/* ------------------------------------------------------------
   TABS — tekst links uitlijnen
   ------------------------------------------------------------ */
.tabs-a > nav ul a {
  text-align: left !important;
}


/* ------------------------------------------------------------
   MOBIELE PRODUCT PAGINA — algemene verbeteringen
   ------------------------------------------------------------ */
@media (max-width: 767px) {

  /* Prijs wat groter op mobiel */
  .module-product .price {
    font-size: 1.2em;
  }

  /* Variant blokken — makkelijker tikken op mobiel */
  .variant-blocks-improved li a {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
  }

  /* Add to cart knop volledige breedte */
  .submit .add-to-cart-button {
    width: 100%;
    padding: 16px;
    font-size: 1em;
  }

  /* Tabs beschrijving netter op mobiel */
  .tabs-a nav ul {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Thema margin override voor USP items */
  .form-product .list-usp li {
    margin-bottom: 0;
  }

}

footer .list-social {
  justify-content: flex-start !important;
}

#nav > ul:first-child {
  width: 100% !important;
  justify-content: space-between !important;
}

#nav {
  max-width: 100% !important;
}

details {
  border-bottom: 1px solid #e5e5e5;
}

details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 14px 0;
  font-size: 16px;
  font-weight: 600;
  list-style: none;
  gap: 16px;
}

details summary::-webkit-details-marker {
  display: none;
}

details summary::after {
  content: '▸';
  flex-shrink: 0;
  font-size: 18px;
  color: #C18080;
  transition: transform 0.2s ease;
}

details[open] summary::after {
  transform: rotate(90deg);
}

details p {
  padding: 4px 0 16px;
  color: #555;
}

.list-social {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: 12px;
}

#nav > ul > li.custom-brands-menu > .custom-brands-dropdown > .brand-col {
  border-right: 1px solid #e5e5e5;
}

#nav > ul > li.custom-brands-menu > .custom-brands-dropdown {
  row-gap: 18px;
}

@media only screen and (max-width: 47.5em) {
  .list-brands,
  header + .list-brands {
    margin-left: 0 !important;
  }
}

@media only screen and (max-width: 47.5em) {
  .list-brands {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-left: 0 !important;
  }

  .list-brands a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 90px;
    padding: 12px;
    box-sizing: border-box;
    text-align: center;
  }

  .list-brands img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 47.5em) {
  .list-brands li {
    width: 100% !important;
    padding: 25px 0 25px 20px;
  }
}

.sticky-contact-widget,
#sticky-contact-widget {
  position: fixed !important;
  right: 20px !important;
  bottom: 20px !important;
  z-index: 99999 !important;
  display: block !important;
}

.sticky-contact-menu,
#sticky-contact-menu {
  position: absolute !important;
  right: 0 !important;
  bottom: 66px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 8px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease !important;
}

.sticky-contact-widget.open .sticky-contact-menu,
#sticky-contact-widget.open #sticky-contact-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

.sticky-contact-toggle,
#sticky-contact-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #C18080 !important;
  color: #ffffff !important;
  cursor: pointer !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.12) !important;
  white-space: nowrap !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.sticky-contact-toggle > span:not(.sticky-contact-custom-icon),
#sticky-contact-toggle > span:not(.sticky-contact-custom-icon) {
  display: none !important;
}

.sticky-contact-toggle .sticky-contact-custom-icon,
#sticky-contact-toggle .sticky-contact-custom-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  flex-shrink: 0 !important;
}

.sticky-contact-toggle .sticky-contact-custom-icon svg,
#sticky-contact-toggle .sticky-contact-custom-icon svg {
  display: block !important;
  width: 32px !important;
  height: 32px !important;
}

.sticky-contact-toggle .sticky-icon-bg,
#sticky-contact-toggle .sticky-icon-bg {
  fill: transparent !important;
}

.sticky-contact-toggle .sticky-icon-bubble,
#sticky-contact-toggle .sticky-icon-bubble {
  fill: #ffffff !important;
}

.sticky-contact-toggle .sticky-icon-line,
#sticky-contact-toggle .sticky-icon-line {
  fill: #C18080 !important;
}

.sticky-contact-link,
#sticky-contact-menu .sticky-contact-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 48px !important;
  padding: 12px 16px !important;
  border: 1px solid #e8e3de !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #2c2c2a !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.12) !important;
  box-sizing: border-box !important;
}

.sticky-contact-link i,
#sticky-contact-menu .sticky-contact-link i {
  font-size: 16px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

.sticky-contact-link:hover,
#sticky-contact-menu .sticky-contact-link:hover {
  background: #f8f8f8 !important;
}

@media only screen and (max-width: 47.5em) {
  .sticky-contact-widget,
  #sticky-contact-widget {
    right: 15px !important;
    bottom: 15px !important;
  }

  .sticky-contact-menu,
  #sticky-contact-menu {
    bottom: 60px !important;
  }

  .sticky-contact-toggle,
  #sticky-contact-toggle {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
  }

  .sticky-contact-link,
  #sticky-contact-menu .sticky-contact-link {
    min-height: 44px !important;
    padding: 11px 14px !important;
    font-size: 13px !important;
  }
}

div#toggle {
  display: none !important;
}

/* Sticky contact custom SVG icon fix */
#sticky-contact-toggle .sticky-contact-custom-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 46px !important;
  height: 46px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
}

#sticky-contact-toggle .sticky-contact-custom-icon svg {
  display: block !important;
  width: 46px !important;
  height: 46px !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
}

#sticky-contact-toggle .sticky-contact-custom-icon .sticky-icon-bg {
  fill: transparent !important;
}

#sticky-contact-toggle .sticky-contact-custom-icon .sticky-icon-bubble {
  fill: #ffffff !important;
}

#sticky-contact-toggle .sticky-contact-custom-icon .sticky-icon-line {
  fill: #C18080 !important;
}

#sticky-contact-toggle > span:not(.sticky-contact-custom-icon) {
  display: none !important;
}
