/* Native Avada sidebar: the domain may override --ms-category-accent and ink.
 * These rules affect only widgets successfully enhanced by the companion JS.
 */
.ms-category-widget {
  --ms-category-accent: var(--primary_color, #2563eb);
  --ms-category-ink: #172b41;
  --ms-category-surface: #fff;
  --ms-category-line: #dce3ea;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  max-height: var(--ms-category-panel-height, 960px);
  padding: 18px 14px;
  background: var(--ms-category-surface);
  border-top: 4px solid var(--ms-category-accent) !important;
  border-radius: 8px;
  color: var(--ms-category-ink);
}
.ms-category-widget > .heading {
  flex: 0 0 auto;
  margin: 0 0 12px;
}
.ms-category-widget .widget-title {
  margin: 0;
  color: var(--ms-category-ink);
  font-size: 18px;
  line-height: 1.35;
  font-weight: 700;
}
.ms-category-widget ul.product-categories {
  flex: 0 1 auto;
  min-height: 0;
  margin: 0;
  padding: 0 4px 0 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #8a99a7 transparent;
  list-style: none;
}
.ms-category-widget ul.product-categories ul.children {
  margin: 0 0 0 12px;
  padding: 0 0 0 8px;
  border-left: 1px solid var(--ms-category-line);
  list-style: none;
}
.ms-category-widget ul.product-categories li {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
}
.ms-category-widget ul.product-categories li > a {
  display: block;
  box-sizing: border-box;
  min-height: 44px;
  padding: 10px 7px;
  border-bottom: 1px solid var(--ms-category-line);
  color: var(--ms-category-ink);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.ms-category-widget ul.product-categories li > a::before {
  display: none;
}
.ms-category-widget ul.product-categories .ms-category-has-children > a {
  padding-right: 46px;
}
.ms-category-widget ul.product-categories li > a:hover,
.ms-category-widget ul.product-categories li.current-cat > a {
  background: #f0f4f8;
  background: color-mix(in srgb, var(--ms-category-accent) 9%, white);
  color: var(--ms-category-ink);
}
.ms-category-widget ul.product-categories li.current-cat > a {
  font-weight: 750;
  box-shadow: inset 3px 0 var(--ms-category-accent);
}
.ms-category-widget .ms-category-branch-toggle {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: var(--ms-category-ink);
  cursor: pointer;
  appearance: none;
}
.ms-category-widget .ms-category-branch-toggle:hover {
  background: #e7edf3;
}
.ms-category-widget .ms-category-branch-toggle::before,
.ms-category-widget .ms-category-branch-toggle::after {
  position: absolute;
  top: 21px;
  left: 16px;
  width: 12px;
  height: 2px;
  background: currentColor;
  content: "";
}
.ms-category-widget .ms-category-branch-toggle::after {
  transform: rotate(90deg);
}
.ms-category-widget .ms-category-branch-toggle[aria-expanded="true"]::after {
  transform: rotate(0deg);
}
.ms-category-widget .ms-category-mobile-toggle {
  flex: 0 0 auto;
  box-sizing: border-box;
  min-height: 48px;
  width: 100%;
  padding: 12px 16px;
  margin: 0;
  border: 1px solid var(--ms-category-line);
  border-radius: 5px;
  background: #edf2f7;
  color: var(--ms-category-ink);
  font: inherit;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.ms-category-widget .ms-category-mobile-toggle::after {
  float: right;
  content: "+";
  font-size: 20px;
  line-height: 1;
}
.ms-category-widget .ms-category-mobile-toggle[aria-expanded="true"]::after {
  content: "−";
}
.ms-category-widget .ms-category-more {
  display: block;
  box-sizing: border-box;
  min-height: 44px;
  width: 100%;
  margin: 3px 0 8px;
  padding: 9px 7px;
  border: 1px solid var(--ms-category-line);
  border-radius: 4px;
  background: #edf2f7;
  color: var(--ms-category-ink);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
}
.ms-category-widget .ms-category-more:hover {
  background: #dce6ef;
}
.ms-category-widget a:focus-visible,
.ms-category-widget button:focus-visible {
  outline: 3px solid var(--ms-category-ink);
  outline-offset: -3px;
}
.ms-category-widget [hidden] {
  display: none !important;
}
@media (max-width: 800px) {
  .ms-category-widget {
    max-height: none;
    padding: 12px;
  }
  .ms-category-widget ul.product-categories {
    max-height: min(65vh, 620px);
    margin-top: 10px;
  }
}

/* Native Avada columns and Icon elements remain editable in the Builder.
 * Add ms-category-tile to each of the six native columns, and
 * ms-category-icon to its native Icon element. Do not add a second anchor.
 */
.fusion-layout-column.ms-category-tile {
  width: 16.666667% !important;
  flex: 0 0 16.666667%;
  align-self: stretch;
}
.ms-category-tile > .fusion-column-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  min-height: 132px;
}
.ms-category-tile > .fusion-column-wrapper > .fusion-title {
  order: 2;
  width: 100%;
  text-align: center;
}
.ms-category-tile > .fusion-column-wrapper > .fusion-fa-align-center,
.ms-category-tile .ms-category-icon {
  order: 1;
}
.ms-category-tile .ms-category-icon {
  display: block;
  float: none;
  margin: 0 auto;
  font-size: 32px;
  line-height: 1.2;
}
@media (min-width: 801px) and (max-width: 1024px) {
  .fusion-layout-column.ms-category-tile {
    width: 33.333333% !important;
    flex-basis: 33.333333%;
  }
}
@media (max-width: 800px) {
  .fusion-layout-column.ms-category-tile {
    width: 50% !important;
    flex-basis: 50%;
  }
  .ms-category-tile > .fusion-column-wrapper {
    min-height: 112px;
  }
}

/* Native color settings remain editable in Avada. This component darkens the
 * domain's primary color for small white labels; the footer/global palette is
 * untouched. Avada paints linked columns on a sibling inner-background layer.
 */
body.ms-category-navigation .ms-category-tile .fusion-column-inner-bg-image,
body.ms-category-navigation .ms-category-tile:not(:has(.fusion-column-inner-bg-image)) > .fusion-column-wrapper {
  background-color: #172b41 !important;
  background-color: color-mix(in srgb, var(--primary_color) 78%, #000) !important;
}
body.ms-category-navigation .ms-category-tile .fusion-title h4,
body.ms-category-navigation .ms-category-tile .ms-category-icon {
  color: #fff !important;
}

/* Preserve each site's existing native Image elements and individual icons.
 * The white image card keeps both transparent drawings and raster art legible.
 */
body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element {
  order: 1;
  flex: 0 0 76px;
  box-sizing: border-box;
  width: 76px;
  height: 76px;
  max-width: 76px;
  margin: 0 !important;
  padding: 6px;
  border-radius: 10px;
  background: #fff;
}
body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element .fusion-imageframe {
  display: block;
  width: 64px;
  height: 64px;
  max-width: 64px !important;
  max-height: 64px;
  border-radius: 0;
  overflow: hidden;
  background: #fff;
}
body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element img {
  display: block;
  width: 64px;
  height: 64px;
  max-height: 64px;
  object-fit: contain;
}

/* REVIEW ONLY — native Avada Search element, classic design, products only.
 * Add ms-shop-product-search in the element's CSS Class field. A visible
 * native Title immediately above it may use ms-shop-search-label.
 * No new form, submission handler, product query or DOM relocation is created.
 */
body.ms-category-navigation .ms-shop-search-label {
  margin: 0 0 7px !important;
}
body.ms-category-navigation .ms-shop-search-label :is(h2, h3, h4) {
  margin: 0 !important;
  color: #172b41;
  font-size: 16px !important;
  font-weight: 700;
  line-height: 1.4;
}
body.ms-category-navigation .ms-shop-product-search {
  --ms-product-search-button: #172b41;
  --ms-product-search-button: color-mix(in srgb, var(--primary_color) 78%, #000);
  margin: 0 0 18px !important;
}
body.ms-category-navigation .ms-shop-product-search .searchform {
  margin: 0;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-form-content {
  display: flex;
  align-items: stretch;
  border-radius: 8px !important;
  overflow: visible !important;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-field {
  flex: 1 1 auto;
  min-width: 0;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-field input[name="s"] {
  box-sizing: border-box;
  width: 100%;
  height: 52px !important;
  min-width: 0;
  padding: 11px 14px !important;
  border: 1px solid #9caebe !important;
  border-radius: 8px 0 0 8px !important;
  background: #fff !important;
  color: #172b41 !important;
  font-size: 16px !important;
  line-height: 1.5;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-field input[name="s"]::placeholder {
  color: #526477 !important;
  opacity: 1;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-button {
  position: static !important;
  flex: 0 0 52px;
  width: 52px;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-button input[type="submit"] {
  box-sizing: border-box;
  width: 52px !important;
  height: 52px !important;
  margin: 0;
  padding: 0;
  border: 1px solid transparent !important;
  border-radius: 0 8px 8px 0 !important;
  background: var(--ms-product-search-button) !important;
  color: #fff !important;
  font-size: 20px !important;
  line-height: 50px !important;
  cursor: pointer;
}
body.ms-category-navigation .ms-shop-product-search .fusion-search-button input[type="submit"]:hover {
  filter: brightness(.9);
}
body.ms-category-navigation .ms-shop-product-search input:focus-visible {
  outline: 3px solid #172b41;
  outline-offset: 2px;
}

/* Avada's native select decoration is redundant only after Woo Select2 has
 * enhanced that select. Keep the normal select/fallback arrow otherwise. */
body.ms-category-navigation .ms-shop-category-select .avada-select-parent:has(> select.select2-hidden-accessible) > .select-arrow {
  display: none !important;
}

/* One mobile category selector: retain the native dropdown next to the search
 * and hide the dedicated sidebar, which contains only the category tree.
 * Desktop retains both controls. No elements are moved or cloned.
 */
@media (max-width: 800px) {
  body.ms-category-navigation .fusion-kategoriesklepu {
    display: none !important;
  }
  body.ms-category-navigation .ms-shop-product-search {
    margin-bottom: 12px !important;
  }
  body.ms-category-navigation .ms-shop-category-select {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
  }
  body.ms-category-navigation .ms-shop-category-select :is(select, .select2-selection--single) {
    box-sizing: border-box;
    min-height: 44px;
    border-radius: 6px;
    border-color: #9caebe;
    color: #172b41;
    background: #fff;
    font-size: 16px;
  }
  body.ms-category-navigation .ms-shop-category-select .select2-selection__rendered {
    line-height: 42px;
  }
  body.ms-category-navigation .ms-shop-category-select .select2-selection__arrow {
    height: 42px;
  }
}

/* REVIEW ONLY — archive-specific phone layout. The native dropdown is the
 * single mobile category selector; no native controls are moved or cloned.
 */
@media (max-width: 800px) {
  body.ms-category-navigation .fusion-layout-column.ms-category-tile {
    width: 33.333333% !important;
    flex: 0 0 33.333333%;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
    --awb-margin-top-small: 0px;
    --awb-margin-bottom-small: 8px;
    --awb-spacing-left-small: 4px;
    --awb-spacing-right-small: 4px;
  }
  body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper {
    box-sizing: border-box;
    min-height: 90px;
    padding: 4px 5px !important;
    gap: 4px;
  }
  body.ms-category-navigation .ms-category-tile .fusion-column-inner-bg {
    margin-left: 4px;
    margin-right: 4px;
  }
  body.ms-category-navigation .ms-category-tile .fusion-title {
    margin: 0 !important;
  }
  body.ms-category-navigation .ms-category-tile .fusion-title h4 {
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 700;
    line-height: 1.25 !important;
    white-space: normal;
    overflow-wrap: normal;
  }
  body.ms-category-navigation .ms-category-tile .ms-category-icon {
    font-size: 26px !important;
    line-height: 1.15;
  }
  body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
    max-width: 44px;
    padding: 4px;
    border-radius: 8px;
  }
  body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element .fusion-imageframe,
  body.ms-category-navigation .ms-category-tile > .fusion-column-wrapper > .fusion-image-element img {
    width: 36px;
    height: 36px;
    max-width: 36px !important;
    max-height: 36px;
    object-fit: contain;
  }
  body.ms-category-navigation .fusion-fullwidth:has(.ms-shop-product-search) {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    --awb-margin-top-small: 0px;
    --awb-margin-bottom-small: 16px;
    --awb-padding-top-small: 0px;
    --awb-padding-bottom-small: 0px;
  }
  body.ms-category-navigation .fusion-fullwidth:has(.ms-shop-product-search) > .fusion-builder-row > .fusion-layout-column:not(.ms-category-tile) {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }
  body.ms-category-navigation .ms-shop-category-heading {
    margin: 0 0 10px !important;
  }
  body.ms-category-navigation .ms-shop-category-heading :is(h2, h3, h4) {
    margin: 0 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
  }
}

/* REVIEW ONLY — a native Home CTA and compact legacy mobile header.
 * This stylesheet is additionally loaded on the nine sites' front pages.
 * The sidebar JS remains archive-only. No hero/slider is hidden or resized.
 */
body.ms-home-shopping .ms-home-shop-entry {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.ms-home-shopping .ms-home-shop-entry .fusion-layout-column {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.ms-home-shopping .ms-home-shop-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 52px;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  background: #172b41 !important;
  background: color-mix(in srgb, var(--primary_color) 78%, #000) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-decoration: none;
}
body.ms-home-shopping .ms-home-shop-button :is(.fusion-button-text, i) {
  color: #fff !important;
}
body.ms-home-shopping .ms-home-shop-button:hover {
  filter: brightness(.9);
}
body.ms-home-shopping .ms-home-shop-button:focus-visible {
  outline: 3px solid #172b41;
  outline-offset: 3px;
}

@media (max-width: 800px) {
  body.ms-home-shopping .ms-home-shop-button {
    width: 100%;
  }
  body.ms-home-shopping .ms-home-shop-entry .fusion-alignleft,
  body.ms-home-shopping .ms-home-shop-entry .fusion-alignright {
    width: 100%;
  }

  /* The legacy Avada header has these exact classes. The native custom
   * Theme Builder headers on Budowlanka and Sandwich-panel.eu are untouched.
   * No fixed outer height: an opened mobile menu can still grow normally.
   */
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-secondary-header {
    padding: 4px 16px !important;
    min-height: 0;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-secondary-header .fusion-contact-info {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.2;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-secondary-header a[href^="tel:"] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 26px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-header {
    padding: 10px 16px !important;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-header .fusion-logo {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-header .fusion-logo img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 56px !important;
    object-fit: contain;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-mobile-nav-holder {
    margin-top: 8px !important;
  }
  body:is(.ms-category-navigation, .ms-home-shopping) .fusion-header-wrapper .fusion-mobile-selector {
    min-height: 44px;
  }

  /* Only archive main-spacing and existing slider section gutters.
   * Sliders retain their existing native dimensions and all their slides.
   */
  body.ms-category-navigation #main {
    padding-top: 8px !important;
  }
  body.ms-category-navigation #content {
    margin-top: 0 !important;
  }
  body.ms-category-navigation .fusion-page-title-bar .fusion-fullwidth:has(.fusion-slider-container) {
    padding-top: 12px !important;
    padding-bottom: 0 !important;
    --awb-padding-top-small: 12px;
    --awb-padding-bottom-small: 0px;
  }
  body.ms-category-navigation .fusion-page-title-bar .fusion-layout-column:has(.fusion-slider-container) {
    margin-bottom: 4px !important;
  }
}

/* Native Avada elements retained; presentation scoped to the nine shop/home routes. */
body.ms-category-navigation.post-type-archive-product .post-content > .fusion-fullwidth:has(h1):not(:has(.fusion-woo-archives-tb, .ms-shop-product-search)) {
  display: none !important;
}
/* Ecoprofil-only design pilot. Other brands wait for user acceptance. */
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  min-height: 64px;
  padding: 12px 14px 12px 22px !important;
  background: linear-gradient(115deg, #ae0d1c 0%, #d92332 100%) !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  border-radius: 15px !important;
  box-shadow: 0 8px 22px rgba(82,5,14,.24), inset 0 1px 0 rgba(255,255,255,.16);
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  letter-spacing: -.2px;
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button .fusion-button-text {
  color: #fff !important;
  text-align: left;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button::after {
  content: '';
  position: static;
  display: block;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 11px;
  background: rgba(255,255,255,.13) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / 24px no-repeat;
  opacity: 1;
  transform: none;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:hover {
  background: linear-gradient(115deg, #960918 0%, #c31929 100%) !important;
  box-shadow: 0 10px 25px rgba(82,5,14,.32);
  transform: translateY(-2px);
  filter: none;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:active {
  transform: translateY(0);
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
  box-shadow: 0 0 0 6px #151515;
}
@media (max-width: 800px) {
  body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button {
    min-height: 66px;
    width: 100%;
    padding: 13px 15px 13px 20px !important;
  }
  body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-entry {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button {
    transition: none;
    transform: none !important;
  }
}
/* Graphic shop mark requested instead of a conventional text-on-red button.
 * Geometric Poppins ExtraBold is outlined in the SVG: no font request.
 * The original native Avada link and its accessible text are retained. */
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button,
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:hover {
  display: block !important;
  width: 340px;
  max-width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 10 / 3;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent url('ecoprofil-shop-mark.bb9470c3ed65cca3.svg') center / contain no-repeat !important;
  box-shadow: none;
  filter: drop-shadow(0 7px 12px rgba(0,0,0,.2));
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button .fusion-button-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button::after {
  display: none;
  content: none;
}
body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:focus-visible {
  outline: 3px solid #17191c;
  outline-offset: 4px;
  box-shadow: 0 0 0 7px #fff;
}
@media (max-width: 800px) {
  body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button,
  body.ms-home-shopping.ms-home-shop-pilot .ms-home-shop-button:hover {
    width: 100%;
    min-height: 0;
    padding: 0 !important;
  }
}
body.ms-category-navigation .fusion-fullwidth:has(.ms-shop-product-search) {
  margin-bottom: 12px !important;
  padding-bottom: 0 !important;
}
body.ms-category-navigation .fusion-layout-column:has(> .fusion-column-wrapper > .ms-shop-category-select) {
  margin-bottom: 0 !important;
}
body.ms-category-navigation .post-content > .fusion-fullwidth:has(.fusion-woo-archives-tb):not(:has(.ms-shop-product-search)) {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* Keep the meaningful category name, with compact spacing. */
body.ms-category-navigation.tax-product_cat .post-content > .fusion-fullwidth:has(h1):not(:has(.fusion-woo-archives-tb, .ms-shop-product-search)) {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
body.ms-category-navigation.tax-product_cat .post-content > .fusion-fullwidth:has(h1):not(:has(.fusion-woo-archives-tb, .ms-shop-product-search)) .fusion-layout-column {
  margin-bottom: 0 !important;
}
@media (min-width: 801px) {
  body.ms-home-shopping .ms-home-shop-entry {
    position: absolute !important;
    top: var(--ms-hero-cta-top, 24px) !important;
    left: var(--ms-hero-cta-left, auto) !important;
    right: 24px !important;
    width: max-content !important;
    max-width: calc(100% - 32px) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 20 !important;
    pointer-events: none;
    background: transparent !important;
  }
  body.ms-home-shopping .ms-home-shop-entry > .fusion-builder-row {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }
  body.ms-home-shopping .ms-home-shop-entry .fusion-layout-column {
    width: 100% !important;
    margin: 0 !important;
  }
  body.ms-home-shopping .ms-home-shop-entry .fusion-column-wrapper {
    margin: 0 !important;
    padding: 0 !important;
  }
  body.ms-home-shopping .ms-home-shop-button {
    pointer-events: auto;
    min-height: 56px;
    padding: 15px 26px !important;
    background: #c8202e !important;
    color: #fff !important;
    border: 2px solid #fff !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.3);
    font-size: 18px !important;
    font-weight: 700 !important;
  }
  body.ms-home-shopping .ms-home-shop-button:hover {
    background: #a90f1d !important;
    filter: none;
  }
  body.ms-home-shopping .ms-home-shop-button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 4px;
    box-shadow: 0 0 0 7px #172b41;
  }
}

/* Approved graphic shop links; original native Avada Button remains editable. */
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button,
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button:hover {
  display: block !important;
  width: min(340px, var(--ms-hero-button-max-width, 340px));
  max-width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 10 / 3;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent var(--ms-shop-mark) center / contain no-repeat !important;
  box-shadow: none;
  filter: drop-shadow(0 7px 12px rgba(0,0,0,.22));
  transition: transform .16s ease, filter .16s ease;
}
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button:hover {
  transform: translateY(-2px);
  filter: drop-shadow(0 9px 14px rgba(0,0,0,.28));
}
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button:active {transform: translateY(0)}
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button::after {display:none;content:none}
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button .fusion-button-text {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}
body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button:focus-visible {
  outline: 3px solid var(--ms-shop-focus, #17191c);
  outline-offset: 4px;
  box-shadow: 0 0 0 7px #fff;
}
@media (max-width: 800px) {
  body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button,
  body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button:hover {
    width: 100%; max-width: 360px; margin-inline: auto;
  }
  body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-entry {
    padding-top: 10px !important; padding-bottom: 12px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.ms-home-shopping.ms-home-shop-branded .ms-home-shop-button {transition:none;transform:none !important}
}

body.ms-home-shop-brand-3{--ms-shop-mark:url("shop-mark-izoprofil-pl.79148e6e97794d30.svg");--ms-shop-focus:#ff6600;}

body.ms-home-shop-brand-4{--ms-shop-mark:url("shop-mark-izoprofil-eu.c677998232a63fc1.svg");--ms-shop-focus:#fbbf24;}

body.ms-home-shop-brand-5{--ms-shop-mark:url("shop-mark-sandwich-panel-pl.9630f9894fd58a39.svg");--ms-shop-focus:#059669;}

body.ms-home-shop-brand-6{--ms-shop-mark:url("shop-mark-izoprofil-com.8a633974c9a5ceeb.svg");--ms-shop-focus:#d60012;}

body.ms-home-shop-brand-7{--ms-shop-mark:url("shop-mark-izoprofil-org.1ff2a42e08ccfdbf.svg");--ms-shop-focus:#bf5727;}

body.ms-home-shop-brand-8{--ms-shop-mark:url("shop-mark-izoprofil-net.d2193e66107d6fdd.svg");--ms-shop-focus:#087f8c;}

body.ms-home-shop-brand-9{--ms-shop-mark:url("shop-mark-budowlanka-org.7d794da285413ea6.svg");--ms-shop-focus:#146cff;}

body.ms-home-shop-brand-10{--ms-shop-mark:url("shop-mark-sandwich-panel-eu.ea7e6f7fc7455d4b.svg");--ms-shop-focus:#ec846c;}
