/* Shop Page Customizations */
/*FacetWP CSS*/
/* Wrap the badge so the tooltip can be positioned reliably */
.fitment-badge-wrap {
  position: relative;
  display: inline-block;
  line-height: 0;
}

/* Tooltip bubble with wrapping + your spacing tweaks */
.fitment-badge-wrap::after {
  content: "Dieses Werkzeug passt zu deinem ausgewählten Fahrzeug²";
  position: absolute;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.9);
  color: #fff;
  padding: 10px 11px;
  border-radius: 4px;
  font-size: 11px;
  max-width: 100%;/* constrain to wrapper width */ 
  width: 80%;
  white-space: normal;        /* allow multi-line */
  overflow-wrap: anywhere;    /* break long words if needed (German compounds) */
  word-break: break-word;     /* extra safety for older browsers */
  line-height: 1.25;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
  z-index: 999999;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Tooltip bubble for bundle products */
.fitment-badge-bundle-wrap::after {
  content: "Dieses Werkzeug passt (inkl. ausgewählter Zusatzwerkzeuge) zu deinem ausgewählten Fahrzeug²";
}

/* Show on hover/focus */
.fitment-badge-wrap:hover::after,
.fitment-badge-wrap:focus-within::after {
  opacity: 1;
}

  .facetwp-facet-pagination
  #facetwp-reset-all {
    display: none;
  }
  #facet-reset .facetwp-facet-reset button.facetwp-reset {
    color: #e30517;
    font-weight: 500;
    list-style: none;
    line-height: 1;
    box-sizing: border-box;
    margin: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    background: transparent;
    margin-right: 10px;
    cursor: pointer;
    background-size: 12px 12px;
    background-repeat: no-repeat;
    background-color: #fff;
    border: 1px solid #e30517;
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 20px;
    display: block;
    font-size: 12px;
    transition: all 300ms ease 0ms;
    margin-top: 10px;
}
  #facet-reset .facetwp-facet-reset button.facetwp-reset:hover {
    color: #fff;
    background-color: #e30517;
  }
  .facetwp-facet {
    margin-bottom: 0px !important;
  }
  div.fs-option.disabled.deactivated {
    display: block;
    opacity: 1;
    color: #000;
    font-weight: 600;
  }
  div.fs-option.disabled.deactivated:focus, div.fs-option.disabled.deactivated:hover {
    background: none;
	}
  	.facetwp-autocomplete-update {
      display: none;
  }
    .facetwp-selections > ul > li[data-facet="haynespro"] > .facetwp-selection-hp {
      width: max-content;
    }
  .fs-wrap.multiple .fs-option.selected .fs-checkbox i {
    background-image: url(/wp-content/themes/Divi-child/resources/checkbox_checked.png);
  }
  .fs-wrap.multiple .fs-option .fs-checkbox i {
    background-image: url('/wp-content/themes/Divi-child/resources/checkbox.png');
    background-size: 16px 16px;
  }
  .fs-wrap.multiple .fs-option .fs-checkbox i:hover {
    background-image: url('/wp-content/themes/Divi-child/resources/checkbox_hover.png');
  }
  .fs-wrap.multiple .fs-option .fs-checkbox i {
    width: 16px!important;
    height: 16px!important;
    border: 0px!important;
  }
  .filter-param-tags {
    display: none!important;
  }
  .grid-item-cont > .et_pb_section {
    padding: 0px!important;
  }
  .facetwp-facet-suche, .facetwp-facet-sortierung, .facetwp-facet-kategorie, .facet-wp-facet-result_count {
    margin-bottom: 10px!important;
  }
  .facetwp_suche_mobile > div > div > h5 {
    display: none;
  }
  div.facetwp_suche_mobile {
    margin-bottom: 10px!important;
  }
  .facetwp-facet-oe_nr, .facetwp-facet-kfz_ersatzteilnr, .facetwp-facet-motorcodes, .facetwp-facet-getriebecodes, .facetwp-facet-mm {
    margin-bottom: 10px!important;
  }
  .facetwp-selections, .facetwp-facet-sortierung select, .facetwp-facet-result_count {
    font-size: 12px;
  }
  .facetwp-selection-value {
    margin-top: 5px;
    margin-bottom: 5px;
  }
  .fcomplete-wrap {
    z-index: 2;
  }
  
  .facetwp-selections li {
    display: inline-flex!important;
    flex-direction: row;
  }
  
    .facetwp-selection-label {
      order: 0;
      padding-top: 10px;
      padding-right: 5px;
  }
  div.facetwp-facet-reset {
    margin-bottom: 0px;
  }
  .show_repairs_btn, .hide_repairs_btn {
    margin-bottom: 10px;
    display: block;
  }
  .show_repairs_btn, .hide_repairs_btn {
    background-color: #e30517!important;
    color: #fff!important;
    border: 1px solid #fff;
    padding: 0.3em 1em!important;
    line-height: 1.7em!important;
    letter-spacing: 1px;
    border-radius: 3px;
    -webkit-transition-duration: .2s;
    transition-duration: .2s;
    transition-property: all!important;
    -webkit-transition-property: all!important;
    font-weight: 500;
    cursor: pointer;
    right: 0px;
  }
  .show_repairs_btn:hover, .hide_repairs_btn:hover {
    background-color: #fff!important;
    color: #e30517!important;
    border-color: #e30517!important;
  }
  .facetwp-facet-motorcodes > .fcomplete-wrap, .facetwp-facet-kfz_ersatzteilnr > .fcomplete-wrap {
    display: none;
  }
  
  @media (max-width: 767px) {
    .facet-wrap {
      margin-bottom: 10px;
    }
    .facetwp-facet {
      display: none;
      }
    .facet-wrap.expanded .facetwp-facet {
      display: block;
      }
    .facetwp-type-reset.facetwp-hidden {
      display: none!important;
    }
    .facetwp-type-reset, .facetwp-type-search, .facetwp-type-pager, .facetwp-type-sort {
      display: block!important;
    }
    .facet-wrap h5 {
      cursor: pointer;
    }
    .facet-wrap h5:after {
      content: "";
      font-family: "ETModules";
      font-weight: normal;
      color: #e30517;
      font-size: 1.2em;
      float: right;
    }
    .facet-wrap.expanded h5:after  {
    content: "";
    }
  }
  .facetwp-selections .facetwp-selection-value {
    background-position: right 10px center!important;
    background-color: #eeeeee;
    padding-right: 26px!important;
    padding-left: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 20px;
  }
  .facetwp-selections > ul > li[data-facet="haynespro"] > .facetwp-selection-value {
    display: none!important;
  }
  @media (max-width: 767px) {
    .facetwp-selections > ul > li[data-facet="haynespro"] {
      display: inline-block!important;
      }
    .facetwp-selections > ul > li[data-facet="haynespro"] > .facetwp-selection-hp {
    display: flex;
    }
  }
  .facetwp-selections > ul > li[data-facet="haynespro"] > .facetwp-selection-hp {
    margin-right: 10px;
    cursor: pointer;
    padding-right: 16px;
    background-image: url('/wp-content/plugins/facetwp/assets/images/icon-close.png');
    background-size: 12px 12px;
    background-repeat: no-repeat;
    background-position: right 10px center!important;
    background-color: #eeeeee;
    padding-right: 26px!important;
    padding-left: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 20px;
    margin-top: 5px;
    margin-bottom: 5px;
  }
  .hidden {
    display: none;
  }
  .new-item {
    content: '';
    background-image: url(/wp-content/uploads/2023/08/neu.svg);
    background-size: 48px 48px;
    height: 48px;
    width: 48px;
  }
  .facetwp-autocomplete-update {
    position: absolute;
    right: 0px;
    height: 48px;
    width: 60px;
    background-color: white;
    border: 1px solid #333;
    color: #333;
    border-radius: 3px;
    font-weight: 500;
    }
  .facetwp-autocomplete-update:hover {
    cursor: pointer;
    }
  input.facetwp-autocomplete.fcomplete-enabled {
    width: 100%!important
  }
  /* Hide counts in a specific Checkboxes facet */
  .facetwp-facet-mm .facetwp-counter {
    display: none;
  }
  /* Results Loop */
  @media all and (max-width: 767px) {
    .fwpl-layout.el-qyhr7k {
      grid-template-columns: repeat(2, minmax(0, 1fr))!important;
    }
  }
  @media all and (min-width: 768px) and (max-width: 980px) {
    .fwpl-layout.el-qyhr7k {
      grid-template-columns: repeat(3, minmax(0, 1fr))!important;
    }
  }
  div.fwpl-item.el-wtool.et_pb_button {
    text-align: center;
    padding: 0px!important;
    margin-top: auto;
  }
  div.fwpl-item.el-wtool.et_pb_button:hover {
    color: #e30517!important;
  }
  div.fwpl-item.el-wtool.et_pb_button > a {
    display: block;
    width: 100%!important;
    height: 100%!important;
    color: #ffffff!important;
    padding: .3em 1em!important;
  }
  div.fwpl-item.el-wtool.et_pb_button > a:hover {
    color: unset!important;
  }
  
  div.fwpl-item.el-lhq0ck {
    text-align: right;
    margin-bottom: -30px;
    position: relative;
  }
  div.fwpl-item.el-lhq0ck > a.jvm_add_to_wishlist.button {
    padding-top: 4px!important;
    padding-bottom: 6px!important;
    padding-left: 5px!important;
    padding-right: 5px!important;
    top: 10px;
  }
  .fwpl-item.el-e68iwm {
    height: 0px;
  }
  .fwpl-col {
    max-width: 100%;
  }
  .fwpl-item {
    word-wrap: break-word;
    overflow-wrap: anywhere;
  }
  .el-4g9t9u {
    min-height: 150px;
  }
  .el-4g9t9u > a > img {
    width: 100%;
  }
  .el-b27r8r {
    height: 48px;
    width: 48px;
    position: absolute;
    z-index: 11;
  }
  .fwpl-result {
    height: 100%;
  }
  .fwpl-row {
    height: 100%;
  }
  .fwpl-col {
    height: 100%;
    display: contents;
  }
  .loop-title h4 a{
    color: #333 !important;
  }
  .loop-sku:before {
    content: "Artikelnummer: ";
  }
  .loop-category:before {
    content: "Kategorien: ";
  }
  .loop-sku, .loop-category {
    font-size: 12px;
  }
  .loop-price:before {
    content: "ab ";
    font-size: 12px;
    font-weight: 500;
  }
  .loop-price {
    font-size: 16px;
    font-weight: 600;
  }
  .loop-price:after {
    content: "€";
  }
  .loop-stock {
    color: #5fa644;
  }
  .loop-stock:before {
    background-image: url(/wp-content/themes/Divi-child/resources/box.svg)!important;
    background-size: 32px 20px;
    width: 32px;
    height: 20px;
    margin-bottom: -5px;
    margin-left: -5px;
    content: ""!important;
    display: inline-block;
  }
  .loop-out-of-stock:before {
    display:none!important;
  }
  @media all and (max-width: 767px) {
    div.fwpl-item.el-y7ryk {
      font-size: 16px;
    }
  }
  /*END Results Loop */
  
  button.facetwp-load-more {
    margin-top: 10px;
    background-color: #e30517;
    color: #fff;
    border-width: 1px;
    letter-spacing: 1px;
    font-size: 14px;
    font-weight: 500;
    padding: .3em 1em;
    line-height: 1.7em !important;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    position: relative;
    border: 1px solid;
    border-radius: 3px;
    transition-duration: .2s;
    transition-property: all !important;
    cursor: pointer;
  }
  button.facetwp-load-more:hover {
    color: #e30517;
    background-color: #fff;
    border-color: #e30517;
  }
  #facetwp-reset-all {
    display: none;
  }
  /* FacetWP Flexbox */
  div.facetwp-template {
    display: flex;
  }
  div.fwpl-layout.fwpl-layout-shop {
    grid-gap: unset;
  }
  div.fwpl-layout {
    display: flex;
    gap: 10px !important;
    flex-wrap: wrap;
    flex-direction: row;
    height: auto;
    width: 100%;
  }
  div.fwpl-result {
    height: auto;
  }
  div.fwpl-row {
    display: flex;
	}
	div.fwpl-col {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
	}
	div.fwpl-item {
    display: block;
    line-height: 1.3em;
	}
  div.fwp-btn {
    width: 100%;
  }
  div.loop-image {
    flex: 0 1;
  }
  div.loop-title {
    flex: 1 0;
  }
  @media (min-width: 981px) {
    div.fwpl-result {
      flex: 0 0 calc(25% - 8px);
    }
  }
  
    @media (min-width: 768px) and (max-width: 980px) {
    div.fwpl-result {
      flex: 0 0 calc(33.33333% - 7px);
    }
  }
  
  @media (max-width: 767px) {
    div.fwpl-result {
      flex: 0 0 calc(50% - 5px);
    }
  }
    /* END FacetWP Flexbox */
/* END FacetWP Customizations */

/* Divi Shop Page Customizations */
/* Header */
.et-db #et-boc .et-l > div > .et_pb_section > .mobile-menu-row > .et_flex_column {
    --vertical-gap: 0px !important;
}
.et-db #et-boc .et-l > div > div.et_pb_section {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    --vertical-gap: 0px !important;
}
.et-db #et-boc .et-l > div > div > div.et_flex_row > div.et_flex_column {
    --vertical-gap: 30px !important;
}
.mobile-menu-row {
    height: 100vh !important;
    min-height: 100vh !important;
    position: fixed !important;
}
  
.mobile-menu-row-main {
    position: unset !important;
}
  
.mobile-menu-row-main .et_pb_column:last-of-type {
    flex-direction: row !important;
}
.mobile-menu-row-main .et_pb_column:first-of-type {
    align-items: flex-start;
}
#et-boc header.et-l--header .hamburger-icon > .et_pb_icon_wrap > .et-pb-icon {
    font-size: 32px;
}
#et-boc header.et-l--header .search-icon-mobile > .et_pb_icon_wrap > .et-pb-icon {
    font-size: 22px;
}
@media only screen and (max-width: 768px) {
    #et-boc header.et-l--header .search-icon-mobile > .et_pb_icon_wrap > .et-pb-icon {
        font-size: 20px;
    }
}
.et-db #et-boc .et-l > div > #sticky-header-bottom > div.et_flex_row > div.et_flex_column {
    --vertical-gap: 0px !important
}
.et-db #et-boc .et-l > div > #sticky-header-bottom {
    padding-bottom: 5px !important;
}
#menu-header_main .menu-item > a {
    color: #000000 !important;
}
.et_pb_menu_2_tb_header.et_pb_menu ul li a {
    color: var(--gcid-n4u89i9d3u) !important;
}
.header-top-fix {
	top: 24px !important;
}
/* End Header */
/* Footer */
.footer_contact_row a, .footer_bottom_row a {
    color: var(--gcid-b1a4ce42-a5a7-4acf-86b6-a1c0ee3c96f0) !important;
}
.footer_contact_row .et_pb_social_icon a {
    border-radius: 50px !important;
}
footer.et-l--footer .footer_bottom_row .et_pb_column:last-of-type {
    --horizontal-gap: 10px !important;
    flex-direction: row !important;
    justify-content: end !important;
}
#et-main-area footer.et-l--footer .footer_bottom_row div.et_pb_column.et_flex_column:first-of-type {
    --vertical-gap: 0px !important;
}
#et-boc #et-main-area footer.et-l.et-l--footer .footer_info_section {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
#et-boc #et-main-area footer.et-l.et-l--footer .footer_info_section .footer_info_row .et_pb_column, #et-boc #et-main-area footer.et-l.et-l--footer .footer_contact_section .footer_contact_row .et_pb_column {
    --vertical-gap: 10px !important;
}
#et-boc #et-main-area footer.et-l.et-l--footer .footer_contact_section, #et-boc #et-main-area footer.et-l.et-l--footer .footer_bottom_section {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}
  
@media only screen and (max-width: 767px) {
    #et-main-area > footer > div > div.footer_bottom_section > div > div.et_pb_column:nth-of-type(2) {
        --horizontal-gap: 5px !important;
    }
}
/* End Footer */
/* Shop Page */
div#facet-selections, .facetwp-selections > ul > li[data-facet="haynespro"], .facetwp-selection-hp {
    max-width: 100%;
}
.z_index {
    z-index: 10!important;
}
.z-index-et-main-area {
    z-index: 99999 !important;
}
.slide-in-menu {
    padding: 10px;
}
.facetwp-kategorie p, .facetwp-oe-nr p, .facetwp-kfz-ersatzteilnr p {
    padding-bottom: 0px;
}
/*add icon to the opened accordion*/
.pa-accordion .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
    display: block!important;
}
.et_pb_accordion_item {
    padding: 0px!important;
    margin-bottom: 20px!important;
}
div.et_pb_toggle_close > h5.et_pb_toggle_title:before {
	content: "\3b"!important;
}
.facetwp-motorcodes, .facetwp-kfz_ersatzteilnr, .facetwp-oe_nr, .facetwp-kategorie {
    margin-bottom: 0px!important;
}
.et_pb_toggle_close {
    background-color: #ffffff!important;
}
.et_pb_accordion .et_pb_toggle_open .et_pb_toggle_title:before {
    display: block!important;
    float: right;
}
.et_pb_accordion .et_pb_toggle_close .et_pb_toggle_title:before {
    display: block!important;
    float: right;
}
  
/* Tooltip text */
.tooltiptext {
    visibility: hidden;
    opacity: 0;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    position: absolute;
    border-radius: 6px;
    width: 300px;
    max-width: 100%;
    right: 0px;
    display: inline-flex;
    transition: opacity 0.5s;
}
#engine-field-tooltiptext {
    transform: translate(0px, -75px);
}
#spare-part-tooltiptext {
    transform: translate(0px, -108px);
    z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
#engine-field-tooltip-hint:hover~#engine-field-tooltiptext {
    visibility: visible;
    opacity: 1;
}
  
#spare-part-tooltip-hint:hover~#spare-part-tooltiptext {
    visibility: visible;
    opacity: 1;
}
  
.tooltiptext::after {
    content: " ";
    position: absolute;
    top: 100%;
    left: 96%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: black transparent transparent transparent;
}

#engine-field-tooltip-hint, #spare-part-tooltip-hint {
    content: url(/wp-content/themes/Divi-child/resources/tooltip-hint.svg);
    display: flex;
    width: 16px;
    height: 16px;
    position: absolute;
    right: 5px;
    padding: 0px;
    cursor: pointer;
    z-index: 2;
}

#engine-field-tooltip-hint {
    margin-top: 5px;
}

#spare-part-tooltip-hint {
    margin-top: -53px;
}

@media all and (max-width: 980px) {
    div#et-main-area {
       z-index: 2;
        position: relative;
    }
}

#main-content .section_shop .et_pb_row:first-of-type .et_pb_column:last-of-type {
    --vertical-gap: 0px !important;
}

#main-content .section_shop .et_pb_row:first-of-type .et_pb_column:first-of-type {
    --vertical-gap: 5px !important;
}

.et-db #et-boc .et-l .section_shop .et_pb_accordion .et_pb_accordion_item {
	border-style: none !important;
}

.et-db #et-boc .et-l .section_shop .et_pb_toggle_title:before {
	color: #e30517 !important;
}

.et-db #et-boc .et-l .section_shop .et_pb_row:first-of-type {
	padding-top: 10px !important;
}

.et-db #et-boc .et-l .section_shop .et_pb_row:first-of-type .et_pb_column .et_pb_row {
	padding: 0px !important;
}

#main-content .section_shop .row_shop .et_flex_column div.et_pb_module a#slide-in-open::before, #main-content .section_shop .row_shop .et_flex_column div.et_pb_module a#slide-in-open:hover::before {
    margin-left: -14px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: unset !important;
}

#main-content {
    margin-top: -1px;
}

.darken {
    box-shadow: 0 0 0 max(100vh, 100vw) rgba(0, 0, 0, .5);
}

#overlay {
    width: 100%;
    height: calc(100% + 120px);
    overflow: visible;
    top: -120px;
    position: fixed;
    z-index: 99998;
}

#slide-in-close:hover {
    cursor: pointer;
}
  /* End Shop Page */