/* ANDPRO Wave B — catalog, filter and PDP. Visual-only layer; commerce semantics stay in existing owners. */
html.ap-wave-a-v1.ap-wave-b-v1 {
  --ap-wb-canvas: var(--ap-wa-canvas, #eef1f6);
  --ap-wb-surface: var(--ap-wa-surface, #fff);
  --ap-wb-soft: var(--ap-wa-soft, #eef1ff);
  --ap-wb-ink: var(--ap-wa-ink, #172238);
  --ap-wb-muted: var(--ap-wa-muted, #5a6b7a);
  --ap-wb-line: var(--ap-wa-line, #dfe3f1);
  --ap-wb-brand: var(--ap-wa-brand, #4d57c7);
  --ap-wb-brand-hover: var(--ap-wa-brand-hover, #3f48b3);
  --ap-wb-amber: var(--ap-wa-amber, #f6c15f);
  --ap-wb-green: var(--ap-wa-green, #2f7a65);
  --ap-wb-radius-control: var(--ap-wa-radius-control, 10px);
  --ap-wb-radius-card: var(--ap-wa-radius-card, 16px);
  --ap-wb-shadow: var(--ap-wa-shadow, 0 8px 22px rgba(34, 36, 102, .05));
  color: var(--ap-wb-ink);
  background: var(--ap-wb-canvas);
}

html.ap-wave-b-v1 .content-block > .container,
html.ap-wave-b-v1 .content-block__container {
  max-width: 1280px;
}

html.ap-wave-b-v1 .content-block h1 {
  color: var(--ap-wb-ink);
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.18;
  letter-spacing: -.025em;
  font-weight: 700;
}

html.ap-wave-b-v1 .content-block h2 {
  color: var(--ap-wb-ink);
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.25;
  letter-spacing: -.02em;
  font-weight: 700;
}

html.ap-wave-b-v1 .breadcrumbs,
html.ap-wave-b-v1 .breadcrumb {
  color: var(--ap-wb-muted);
}

/* Catalog hub and category surfaces inherit the shared Wave A grammar. */
html.ap-wave-b-v1 .cat-block,
html.ap-wave-b-v1 .category-block,
html.ap-wave-b-v1 .catalog-sections__item,
html.ap-wave-b-v1 .catalog-section-list__item {
  overflow: hidden;
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-card);
  box-shadow: none;
}

html.ap-wave-b-v1 .cat-block:hover,
html.ap-wave-b-v1 .category-block:hover,
html.ap-wave-b-v1 .catalog-sections__item:hover,
html.ap-wave-b-v1 .catalog-section-list__item:hover {
  border-color: rgba(87, 95, 207, .42);
  box-shadow: var(--ap-wb-shadow);
  transform: none;
}

/* Listing: stable two-owner composition with no data or handler changes. */
html.ap-wave-b-v1 .content-block__row {
  gap: 28px;
  align-items: start;
}

html.ap-wave-b-v1 .content-block__side {
  flex: 0 0 260px;
  width: 260px;
}

html.ap-wave-b-v1 .content-block__catalog {
  min-width: 0;
}

html.ap-wave-b-v1 .catalog-head__filters {
  min-height: 46px;
  gap: 8px;
}

html.ap-wave-b-v1 .catalog-head__filters li a,
html.ap-wave-b-v1 .ap-v3-chip-toggle__button,
html.ap-wave-b-v1 .ap-facet-applied a,
html.ap-wave-b-v1 .ap-catalog-applied-filters a {
  min-height: 46px;
  padding: 10px 14px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  font-weight: 700;
}

html.ap-wave-b-v1 .catalog-row {
  min-height: 64px;
  margin: 18px 0;
  padding: 10px 12px;
  align-items: center;
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-control);
  box-shadow: none;
}

html.ap-wave-b-v1 .catalog-sort__selected,
html.ap-wave-b-v1 .catalog-controls__btn {
  min-height: 46px;
  border-radius: var(--ap-wb-radius-control);
}

html.ap-wave-b-v1 .catalog-filter {
  overflow: hidden;
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-card);
  box-shadow: none;
}

html.ap-wave-b-v1 .filter-block {
  border-color: var(--ap-wb-line);
}

html.ap-wave-b-v1 .filter-block__title {
  min-height: 48px;
  padding-top: 12px;
  padding-bottom: 12px;
  display: flex;
  align-items: center;
  color: var(--ap-wb-ink);
  font-weight: 700;
}

html.ap-wave-b-v1 .filter-block .form-check,
html.ap-wave-b-v1 .filter-block .form-check-label,
html.ap-wave-b-v1 .filter-block .form-check-label a.--nolink {
  min-height: 48px;
}

html.ap-wave-b-v1 .filter-block .form-check {
  display: flex;
  align-items: center;
}

html.ap-wave-b-v1 .filter-block .form-check-label,
html.ap-wave-b-v1 .filter-block .form-check-label a.--nolink {
  display: flex;
  align-items: center;
}

html.ap-wave-b-v1 .filter-block .form-check-input {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
}

html.ap-wave-b-v1 .filter-btn,
html.ap-wave-b-v1 .catalog-filter__apply,
html.ap-wave-b-v1 .catalog-filter__clear,
html.ap-wave-b-v1 .show_button {
  min-height: 48px;
  border-radius: var(--ap-wb-radius-control);
  font-weight: 700;
}

html.ap-wave-b-v1 .filter-btn.--apply,
html.ap-wave-b-v1 .catalog-filter__apply,
html.ap-wave-b-v1 .show_button {
  color: var(--ap-wb-ink);
  background: var(--ap-wb-amber);
  border-color: var(--ap-wb-amber);
}

html.ap-wave-b-v1 .filter-btn.--clear,
html.ap-wave-b-v1 .catalog-filter__clear {
  color: var(--ap-wb-brand);
  background: var(--ap-wb-surface);
  border-color: var(--ap-wb-line);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] {
  gap: 14px;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card {
  overflow: hidden;
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-card);
  box-shadow: none;
  transform: none;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card:hover {
  border-color: rgba(87, 95, 207, .42);
  box-shadow: var(--ap-wb-shadow);
  transform: none;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card__title {
  color: var(--ap-wb-ink);
  font-size: 15px;
  line-height: 1.45;
  font-weight: 700;
  overflow-wrap: anywhere;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card__price {
  color: var(--ap-wb-ink);
  font-size: 22px;
  line-height: 1.2;
  font-weight: 700;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-stock {
  color: var(--ap-wb-green);
  background: rgba(22, 135, 91, .08);
  border-radius: 999px;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card__btn,
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-btn,
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-footer button,
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-footer a {
  min-width: 46px;
  min-height: 48px;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-btn.--buy {
  color: var(--ap-wb-ink);
  background: var(--ap-wb-amber);
  border-color: var(--ap-wb-amber);
  border-radius: var(--ap-wb-radius-control);
  font-weight: 700;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-btn.--buy:hover {
  color: var(--ap-wb-ink);
  border-color: var(--ap-wb-ink);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .card-btn.--like,
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card__btn {
  background-color: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-control);
}

/* PDP: one compact decision surface with brand navigation and amber commitment. */
html.ap-wave-b-v1 .itempage-head {
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--ap-wb-line);
}

html.ap-wave-b-v1 .ap-wave-b-pdp__mobile-title {
  display: none;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] {
  gap: 32px;
  padding: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(380px, .9fr);
  align-items: start;
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-card);
  box-shadow: var(--ap-wb-shadow);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-col,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content {
  min-width: 0;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content {
  padding: 0;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__pricebox {
  margin-bottom: 18px;
  padding: 0 0 18px;
  border-bottom: 1px solid var(--ap-wb-line);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__price {
  color: var(--ap-wb-ink);
  font-size: clamp(30px, 3vw, 40px);
  line-height: 1.15;
  font-weight: 700;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .price-meta-info,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__desc {
  color: var(--ap-wb-muted);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-specchips {
  gap: 8px;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-specchips__chip {
  min-height: 34px;
  padding: 7px 11px;
  display: inline-flex;
  align-items: center;
  color: var(--ap-wb-brand);
  background: var(--ap-wb-soft);
  border: 1px solid transparent;
  border-radius: 999px;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-tldr {
  margin: 18px 0;
  padding: 18px;
  background: rgba(22, 135, 91, .07);
  border: 0;
  border-left: 4px solid var(--ap-wb-green);
  border-radius: var(--ap-wb-radius-control);
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-invoice-btn,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-price-alert-open,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .card-quant__btn,
html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .card-quant__num-select {
  min-height: 48px;
}

/* ANDPRO-PDP-DESKTOP-STICKY-BUY-CORRECTIVE1: owner-scoped decision zone; mobile flow stays unchanged. */
@media (min-width: 1024px) {
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content {
    align-self: stretch;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock {
    position: sticky;
    top: 16px;
    z-index: 3;
    padding: 12px;
    background: var(--ap-wb-surface);
    border: 1px solid var(--ap-wb-line);
    border-radius: var(--ap-wb-radius-card);
  }
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock .card-btn.--buy,
html.ap-wave-b-v1 .itempage-stickybar__buy {
  min-height: 48px;
  color: var(--ap-wb-ink);
  background: var(--ap-wb-amber);
  border-color: var(--ap-wb-amber);
  border-radius: var(--ap-wb-radius-control);
  font-weight: 700;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-invoice-btn,
html.ap-wave-b-v1 .itempage-stickybar__invoice {
  min-height: 48px;
  color: #fff;
  background: var(--ap-wb-brand);
  border-color: var(--ap-wb-brand);
  border-radius: var(--ap-wb-radius-control);
  font-weight: 700;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-price-alert-open {
  color: var(--ap-wb-brand);
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-control);
  font-weight: 700;
}

html.ap-wave-b-v1 .itempage-info,
html.ap-wave-b-v1 .itempage-dopitem {
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-card);
  box-shadow: none;
}

html.ap-wave-b-v1 .itempage-info__tab-link,
html.ap-wave-b-v1 .itempage-dopitem__tab-link,
html.ap-wave-b-v1 .itempage-dopitem__prev,
html.ap-wave-b-v1 .itempage-dopitem__next {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
}

html.ap-wave-a-v1.ap-wave-b-v1 .content-block .itempage-info .itempage-info__tabs .itempage-info__tab-link {
  height: 48px;
  min-height: 48px;
}

html.ap-wave-b-v1 :is(button, a, input, select, textarea, summary, [role="button"], [role="link"]):focus-visible {
  outline: 3px solid #0b70e0 !important;
  outline-offset: 3px !important;
}

@media (min-width: 720px) {
  html.ap-wave-b-v1 .content-block__side {
    display: block;
  }

  html.ap-wave-b-v1 .filter-btn.--mobile {
    display: none;
  }

  html.ap-wave-b-v1 .catalog-filter {
    display: block;
    visibility: visible;
    opacity: 1;
    transform: none;
  }
}

/* Tablet keeps filter context and products visible together. */
@media (min-width: 720px) and (max-width: 1023px) {
  html.ap-wave-b-v1 .content-block__row {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 18px;
  }

  /* F413: search results have no filter sidebar. */
  html.ap-wave-b-v1 .catalog-subcat.--search-results + .content-block__row {
    grid-template-columns: minmax(0, 1fr);
  }

  html.ap-wave-b-v1 .content-block__side {
    position: static;
    width: auto;
    min-width: 0;
    display: block;
  }

  html.ap-wave-b-v1 .filter-btn.--mobile {
    display: none;
  }

  html.ap-wave-b-v1 .catalog-filter {
    position: sticky;
    inset: auto;
    top: 12px;
    width: 100%;
    height: auto;
    max-height: calc(100vh - 24px);
    display: block;
    visibility: visible;
    overflow: auto;
    opacity: 1;
    transform: none;
  }

  html.ap-wave-b-v1 .content-block__catalog {
    width: auto;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"],
  html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"].--row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] {
    grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr);
    gap: 22px;
    padding: 22px;
  }
}

@media (max-width: 719px) {
  html.ap-wave-b-v1 .content-block__side {
    flex: 0 0 auto;
    height: auto;
  }

  html.ap-wave-b-v1 .content-block__head div:has(> h1) {
    display: none;
  }

  /* F367: retain product metadata independently of the mobile H1. */
  html.ap-wave-b-v1 .content-block__col:has(> [data-ap-wave-b-owner="pdp"]) > .itempage-head {
    display: flex;
    flex-wrap: wrap;
    height: auto;
    min-width: 0;
    gap: 12px;
  }

  html.ap-wave-b-v1 .content-block__col:has(> [data-ap-wave-b-owner="pdp"]) {
    display: flex;
    flex-direction: column;
  }

  html.ap-wave-b-v1 .content-block__col:has(> [data-ap-wave-b-owner="pdp"]) > [data-ap-wave-b-owner="pdp"] {
    order: -1;
  }

  html.ap-wave-b-v1 .ap-wave-b-pdp__mobile-title {
    min-width: 0;
    overflow-wrap: anywhere;
    margin: 18px 0 10px;
    display: block;
    color: var(--ap-wb-ink);
    font-size: 32px;
    line-height: 40px;
  }

  html.ap-wave-b-v1 .content-block h1 {
    font-size: 28px;
    line-height: 1.2;
  }

  html.ap-wave-b-v1 .catalog-row {
    margin: 14px 0;
    padding: 8px;
  }

  html.ap-wave-b-v1 .filter-btn.--mobile {
    width: 100%;
    height: 48px;
    min-height: 48px;
    max-height: 48px;
    align-self: start;
    color: #fff;
    background: var(--ap-wb-brand);
    border-color: var(--ap-wb-brand);
    border-radius: var(--ap-wb-radius-control);
  }

  html.ap-wave-b-v1 .catalog-filter {
    border-radius: 0;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"],
  html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"].--row {
    gap: 12px;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card {
    border-radius: 12px;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    padding: 18px;
    border-radius: 12px;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-col,
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-content {
    display: contents;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-slider {
    order: 1;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-controls {
    order: 2;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-slider__control {
    min-width: 0;
    max-width: 100%;
    flex-wrap: wrap;
    order: 3;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-wave-b-pdp__mobile-title {
    order: 4;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content > * {
    order: 6;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__oldprice,
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__pricebox {
    order: 5;
  }

  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__price {
    font-size: 30px;
  }

  html.ap-wave-b-v1 .itempage-info,
  html.ap-wave-b-v1 .itempage-dopitem {
    border-radius: 12px;
  }
}



/* A/B closure: factual target and native-control hooks owned by source markup. */
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] [data-ap-wave-b-control="product-title"] {
  min-height: 46px;
  display: flex;
  align-items: center;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] [data-ap-wave-b-control="gallery-thumbnail"] {
  width: 100%;
  min-width: 46px;
  height: 100%;
  min-height: 46px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  background: transparent;
  border: 0;
  border-radius: inherit;
  cursor: pointer;
}

html.ap-wave-b-v1 [data-ap-wave-b-control="sold-pdp-cta"] {
  min-height: 46px;
  padding: 10px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ap-wb-brand);
  background: var(--ap-wb-surface);
  border: 1px solid var(--ap-wb-line);
  border-radius: var(--ap-wb-radius-control);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

html.ap-wave-b-v1 [data-ap-wave-b-owner="filter"] input[type="range"],
html.ap-wave-b-v1 [data-ap-wave-b-owner="filter"] [data-ap-wave-b-control="range"] {
  min-height: 46px;
}

@media (prefers-reduced-motion: reduce) {
  html.ap-wave-b-v1 *,
  html.ap-wave-b-v1 *::before,
  html.ap-wave-b-v1 *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* ANDPRO-STRICT-CLOSURE-CATALOG-PDP-V1 */
html.ap-wave-b-v1 :is(.itempage-info__tab-link,.itempage-dopitem__tab-link,.catalog-subcat a,.cat-block__title,.cat-block__others,.nwheader-search__cat a,.nwheader-search__history a,.catalog-search-zero-quick a){min-height:46px;display:inline-flex;align-items:center}
html.ap-wave-a-v1.ap-wave-b-v1 .content-block .itempage-info .itempage-info__tabs .itempage-info__tab-link,
html.ap-wave-a-v1.ap-wave-b-v1 .content-block .itempage-dopitem .itempage-dopitem__tab-link{box-sizing:border-box;height:46px!important;min-height:46px!important}
html.ap-wave-b-v1 :is(.ap-quick-card,.ap-route-card,.ap-info-card,.ap-topic-card){box-shadow:none}
html.ap-wave-b-v1 :is(.ap-category-hero__content,.ap-category-hero__side,.ap-quick-selection,.ap-route-section,.ap-compatibility-cta,.ap-category-content){box-shadow:none}
html.ap-wave-b-v1 .content-block h1{font-size:40px;line-height:48px}
html.ap-wave-b-v1 :is(a,button,input,select,textarea,summary,[role="button"],[role="link"]):focus-visible{outline:3px solid #0b70e0!important;outline-offset:3px!important}
@media(max-width:767px){html.ap-wave-b-v1 .content-block h1{font-size:32px;line-height:40px}}

@media (max-width: 719px) {
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-wave-b-pdp__mobile-title {
    margin: 12px 0 8px;
    font-size: 28px;
    line-height: 34px;
  }
}

/* ANDPRO-STRICT-100-COMMERCE-HIERARCHY-V1: repeated list/recommendation
   actions stay commercial but no longer compete with the single decision-zone
   commit. */
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card .card-btn.--buy,
html.ap-wave-b-v1 .itempage-dopitem .catalog-card .card-btn.--buy{
  color:var(--ap-wb-brand);
  background:var(--ap-wb-soft);
  border-color:var(--ap-wb-line);
}
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card .card-btn.--buy:hover,
html.ap-wave-b-v1 .itempage-dopitem .catalog-card .card-btn.--buy:hover{
  color:#fff;
  background:var(--ap-wb-brand);
  border-color:var(--ap-wb-brand);
}
html.ap-wave-b-v1 .filter-btn.--clear{min-height:46px;height:46px}
html.ap-wave-b-v1 .catalog-head__filters li.--clear-filter a{min-height:46px;display:inline-flex;align-items:center}
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card .card-btn.--buy{min-height:46px}
html.ap-wave-b-v1 .itempage-viewed{display:none}
html.ap-wave-b-v1 :is(.itempage-info,.itempage-dopitem){box-shadow:none}
html.ap-wave-b-v1 .content-block__catalog .catalog-footer{display:block;columns:2 320px;column-gap:32px;padding-top:22px}
html.ap-wave-b-v1 .content-block__catalog .catalog-footer>*{break-inside:avoid;margin-top:0;margin-bottom:12px}
html.ap-wave-b-v1 .itempage-dopitem{padding:20px}
@media(max-width:767px){
 html.ap-wave-b-v1 .cat-block__content,
 html.ap-wave-b-v1 .cat-block__box.--open{padding:12px 14px}
 html.ap-wave-b-v1 .cat-block__links li{margin-bottom:2px}
 html.ap-wave-b-v1 .cat-block__links li:nth-child(n+5){display:none}
 html.ap-wave-b-v1 .cat-block__others{display:inline-flex;min-height:46px;align-items:center;margin-top:4px}
 html.ap-wave-b-v1 .content-block__catalog .catalog-footer{columns:1;padding-top:18px}
 html.ap-wave-b-v1 .itempage-dopitem{padding:16px}
}

/* ANDPRO-G40-CATALOG-COMPOSITION-V1 */
html.ap-wave-b-v1 .ap-catalog-more-products{flex:1 0 100%;grid-column:1/-1;width:100%;margin:8px 0 0;border:0}
html.ap-wave-b-v1 :is(.ap-catalog-more-products,.ap-catalog-guide-disclosure)>summary{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;border-top:1px solid var(--ap-wb-line,#dfe6f1);border-bottom:1px solid var(--ap-wb-line,#dfe6f1);padding:10px 4px;color:var(--ap-wb-brand,#303787);font-weight:750;cursor:pointer;list-style:none}
html.ap-wave-b-v1 :is(.ap-catalog-more-products,.ap-catalog-guide-disclosure)>summary::-webkit-details-marker{display:none}
html.ap-wave-b-v1 :is(.ap-catalog-more-products,.ap-catalog-guide-disclosure)>summary::after{content:'+';font-size:24px;font-weight:400}
html.ap-wave-b-v1 :is(.ap-catalog-more-products,.ap-catalog-guide-disclosure)[open]>summary::after{content:'−'}
html.ap-wave-b-v1 .ap-catalog-more-products__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;padding:18px 0 4px}
html.ap-wave-b-v1 .ap-catalog-more-products:not([open])>.ap-catalog-more-products__grid{display:none}
html.ap-wave-b-v1 .ap-catalog-more-products[open]>.ap-catalog-more-products__grid{display:grid}
html.ap-wave-b-v1 .ap-catalog-more-products__grid>.catalog-card{width:auto;min-width:0;margin:0}
html.ap-wave-b-v1 .ap-catalog-guide-disclosure{width:100%;margin:18px 0 0;border:0}
html.ap-wave-b-v1 .ap-catalog-guide-disclosure__body{padding:16px 0 0}
html.ap-wave-b-v1 .ap-catalog-guide-disclosure:not([open])>.ap-catalog-guide-disclosure__body{display:none!important}
html.ap-wave-b-v1 .ap-catalog-guide-disclosure[open]>.ap-catalog-guide-disclosure__body{display:block!important}
html.ap-wave-b-v1 .content-block__catalog .ap-catalog-guide-disclosure__body .catalog-footer{columns:auto;column-count:1;width:100%;max-width:none;padding-top:0}
@media(max-width:767px){
 html.ap-wave-b-v1 .ap-catalog-more-products__grid{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:14px}
 html.ap-wave-b-v1 .ap-catalog-guide-disclosure{margin-top:14px}
}

/*ANDPRO-P1-MOBILE-CODE-RESTORE-V1*/
html.ap-wave-b-v1.ap-wave-b-pdp__mobile-cody{display:none}
@media(max-width:719px){
html.ap-wave-b-v1[data-ap-wave-b-owner="pdp"].ap-wave-b-pdp__mobile-cody{display:block;order:4;margin:12px08px;color:var(--ap-wb-ink);font-size:14px;font-weight:700}
html.ap-wave-b-v1[data-ap-wave-b-owner="pdp"].ap-wave-b-pdp__mobile-title{order:5}
}

/* ANDPRO-P1-MOBILE-CODE-SPACING-V1 */
@media (max-width:719px){html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-wave-b-pdp__mobile-code>span{margin-inline-start:.25em}}

/* F401: restore PDP gallery column in the measured tablet gap. */
@media (min-width: 768px) and (max-width: 900px) {
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-col { flex-direction: column; }
}

/* F412: allow the sold-card notification CTA to wrap without stacked glyphs. */
html.ap-wave-b-v1 [data-ap-wave-b-owner="catalog-grid"] .catalog-card .card-footer .card-btn.--buy.form {
  height: auto !important;
  min-height: 46px !important;
  padding: 5px 10px;
  line-height: 1.25;
  white-space: normal;
}

/* M1 v3 appended after existing wave-a/wave-b cascade; author payload below. */
/* ANDPRO M1 15.10 — мобильная фильтр-страница: текст сверху, одна иконка в аккордеоне, компактные крошки */
@media (max-width: 767px) {
  /* 1. Вводный блок (ap-intro) сразу под крошками, до товаров */
  html.ap-v3-catalog-preview .content-block > .container:has(> .banner_html[data-url*="/filter/"]) > .banner_html[data-url*="/filter/"] { order: 2; margin-top: 8px; margin-bottom: 16px; }
  html.ap-v3-catalog-preview .content-block > .container:has(> .banner_html[data-url*="/filter/"]) > .offer_all_pages_aggregate.apc-statbar { order: 3; }
  html.ap-v3-catalog-preview .content-block > .container:has(> .banner_html[data-url*="/filter/"]) > .content-block__row { order: 4; }
  /* 3. Хлебные крошки: одна строка «← Родительский раздел» вместо обрезанных плашек */
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb { display: block !important; overflow: visible !important; padding: 0 !important; margin: 0 0 4px !important; border: 0 !important; background: none !important; }
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li { display: none !important; }
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li:nth-last-child(2) { display: block !important; width: auto !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li:nth-last-child(2)::before, html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li:nth-last-child(2)::after { content: none !important; display: none !important; }
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li:nth-last-child(2) > a { display: inline-block !important; max-width: 100% !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; padding: 6px 0 !important; border: 0 !important; background: none !important; font-size: 15px !important; font-weight: 600 !important; color: #3a43c9 !important; text-decoration: none !important; }
  html.ap-v3-catalog-preview main.content-block .content-block__head ul.breadcrumb > li:nth-last-child(2) > a::before { content: "← "; }
  /* 4. Плашки «N моделей / цены» переносятся, а не обрезаются справа */
  html.ap-v3-catalog-preview .offer_all_pages_aggregate.apc-statbar, html.ap-v3-catalog-preview .offer_all_pages_aggregate.apc-statbar > * { flex-wrap: wrap !important; overflow: visible !important; }
}
/* 2. Аккордеон «Подбор, совместимость…»: одна иконка (как у «Показать остальные товары») */
html.ap-v3-catalog-preview .ap-catalog-below-fullwidth details.ap-catalog-guide-disclosure > summary::before { content: none !important; display: none !important; }
/* 5. Видимый H1 на телефоне (раньше спрятан визуально в andpro-wave-a-shell-home.css @max-width:719px) */
@media (max-width: 719px) {
  html.ap-wave-b-v1 main:not(:has(.itempage-container)) .content-block__head div:has(> h1) { display: block !important; position: static !important; width: auto !important; height: auto !important; margin: 0 0 8px !important; padding: 0 !important; overflow: visible !important; clip: auto !important; clip-path: none !important; white-space: normal !important; }
  html.ap-wave-b-v1 main:not(:has(.itempage-container)) .content-block__head div:has(> h1) > h1 { font-size: 24px !important; line-height: 1.2 !important; margin: 0 !important; text-wrap: balance; }
}
/* 6. Значки «авторизованный партнёр» — только на странице фильтра по ЭТОМУ бренду (временный CSS до привязки значков к бренду в шаблоне, M2) */
html .trust_badge_block { display: none !important; }
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-zyxel/"]) .trust_badge_block:has(img[src*="zyxel" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-msi/"]) .trust_badge_block:has(img[src*="msi" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-keenetic/"]) .trust_badge_block:has(img[src*="keenetic" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-netcraze/"]) .trust_badge_block:has(img[src*="netcraze" i]) { display: block !important; }
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-zyxel/"]) .trust_badge_block > :not(:has(img[src*="zyxel" i])):not(img[src*="zyxel" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-msi/"]) .trust_badge_block > :not(:has(img[src*="msi" i])):not(img[src*="msi" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-keenetic/"]) .trust_badge_block > :not(:has(img[src*="keenetic" i])):not(img[src*="keenetic" i]),
html:has(.catalog-filter[data-path*="cml2_manufacturer-is-netcraze/"]) .trust_badge_block > :not(:has(img[src*="netcraze" i])):not(img[src*="netcraze" i]) { display: none !important; }
/* 7. Блок сортировки на телефоне: без лишних рамок; переключатель «плитка/список» скрыт (на 402 px плитка всё равно в одну колонку, у кнопки плитки пустая иконка) */
@media (max-width: 767px) {
  html.ap-v3-catalog-preview .content-block__catalog .catalog-row { border: 0 !important; background: none !important; padding: 0 !important; box-shadow: none !important; }
  html.ap-v3-catalog-preview .content-block__catalog .catalog-controls { display: none !important; }
  /* 8. Двойная рамка вокруг товаров: у карточек своя рамка, у общей сетки — убираем */
  html.ap-v3-catalog-preview .content-block__catalog .catalog-container.ap-wave-b-catalog-grid { border: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; }
}
/* 4.1 (M1.1, 15.10) — на 320 px плашка «Счёт с НДС…» (nowrap) вылезала за край на 19 px: разрешаем перенос текста внутри плашек */
@media (max-width: 767px) {
  html.ap-v3-catalog-preview .offer_all_pages_aggregate.apc-statbar .apc-statbar__chip { white-space: normal !important; max-width: 100% !important; flex-wrap: wrap; }
  html.ap-v3-catalog-preview .offer_all_pages_aggregate.apc-statbar .apc-statbar__chip * { white-space: normal !important; }
}

/* ANDPRO-PDP-MOBILE-BUY-FIRST-SCREEN-V1 (кандидат 20.10.2026, Claude; не выпущен)
   Куда: в КОНЕЦ /local/templates/new/css/andpro-wave-b-catalog-filter-pdp.css
   (этот файл уже владеет мобильной раскладкой карточки: [data-ap-wave-b-owner="pdp"], display:contents, order 1..6).
   Часть A — телефон (<=719px, где колонки карточки уже «расплющены» display:contents).
   Часть B — планшет 720–1023px (две колонки): «Купить» сразу под ценой. Десктоп >=1024px не затронут.
   Только CSS: порядок, высота фото, компоновка buyblock. Разметка и JS не меняются. */

/* --- Часть A: телефон --- */
@media (max-width: 719px) {
  /* 1. Купить сразу под ценой: buyblock получает тот же order, что pricebox (5),
        и по порядку в DOM встаёт сразу после него; чипы, «Главное», счёт и пр. — ниже (order 6). */
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content > .itempage-content__buyblock { order: 5; }

  /* 2. Сравнение/избранное и миниатюры галереи — под блок покупки (были между фото и заголовком, ~150 px). */
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-controls,
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-slider__control { order: 6; }

  /* 3. Фото ниже: 200 -> 150 px (изображение вписывается, не обрезается). */
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-slider { max-height: 150px; overflow: hidden; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-slider img { max-height: 150px; width: auto; max-width: 100%; object-fit: contain; }

  /* 4. Заголовок плотнее: 28/34 -> 22/28 (длинные названия серверов занимали 4 строки). */
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .ap-wave-b-pdp__mobile-title { margin: 0; font-size: 22px; line-height: 28px; }

  /* 5. Количество и «Купить» в одну строку; пустой блок уведомлений не занимает места. */
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock { flex-flow: row nowrap; align-items: center; gap: 12px; padding-bottom: 0; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .notifications_block:not(:has(*)) { display: none; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .notifications_block:has(*) { flex: 1 0 100%; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock:has(> .notifications_block *) { flex-wrap: wrap; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .card-quant { flex: 0 0 auto; width: auto; margin: 0; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .card-quant .card-quant__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .card-quant .card-quant__box { margin-left: 0; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] .itempage-content__buyblock > .card-btn.--buy { flex: 1 1 auto; width: auto; min-width: 0; }
}

/* --- Часть B: планшет 720–1023px, правая колонка --- */
@media (min-width: 720px) and (max-width: 1023px) {
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-content > .itempage-content__pricebox { order: 1; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-content > .itempage-content__buyblock { order: 2; padding-bottom: 16px; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-content > .itempage-content__buyblock > .card-quant { margin-bottom: 12px; }
  html.ap-wave-b-v1 [data-ap-wave-b-owner="pdp"] > .itempage-content > :not(.itempage-content__pricebox):not(.itempage-content__buyblock):not(.itempage-content__oldprice) { order: 3; }
}

/* F390203: when the main buy block is visible and F270 is hidden, keep
   the compact public consent notice below the measured 128px mobile header.
   Only phone PDPs; visible F270, other routes, tablets and desktop keep the
   installed consent layout. Preserve the existing focus clearance mechanism. */
@media (max-width: 719px) {
  html.ap-wave-a-v1.ap-wave-b-v1:has([data-ap-wave-b-owner="pdp"]):has(#andpro-consent.andpro-consent--compact-public:not([hidden])):not(:has(#apStickybar:not([aria-hidden="true"]))) {
    scroll-padding-top: 250px;
  }
  html.ap-wave-a-v1.ap-wave-b-v1:has([data-ap-wave-b-owner="pdp"]):has(#andpro-consent.andpro-consent--compact-public:not([hidden])):not(:has(#apStickybar:not([aria-hidden="true"]))) #andpro-consent.andpro-consent--compact-public {
    top: 138px;
    bottom: auto;
  }
}
