/* Wholesale page-only layout fixes. Loaded last to avoid stale shared CSS rules. */
.wholesale-page .catalog-header nav a,
.wholesale-page .catalog-header nav a:hover,
.wholesale-page .catalog-header nav a:focus,
.wholesale-page .catalog-header nav a:active,
.wholesale-page .catalog-header nav a.active {
  text-decoration: none !important;
  text-decoration-line: none !important;
  box-shadow: none !important;
}

.wholesale-page .catalog-header nav a::before,
.wholesale-page .catalog-header nav a::after,
.wholesale-page .catalog-header nav a:hover::before,
.wholesale-page .catalog-header nav a:hover::after,
.wholesale-page .catalog-header nav a.active::before,
.wholesale-page .catalog-header nav a.active::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.wholesale-page .catalog-header nav a {
  padding: 13px 17px !important;
  border-radius: 999px !important;
  line-height: 1.2 !important;
}

.wholesale-page .catalog-header nav a.active {
  color: #c71018 !important;
  background: #fff0f1 !important;
}

.wholesale-page .wholesale-proof {
  min-width: 285px;
  justify-content: flex-start;
}

.wholesale-page .wholesale-b2b-logo {
  display: block;
  width: 116px;
  height: 96px;
  flex: 0 0 116px;
  object-fit: cover;
  border: 0 !important;
  border-radius: 0;
  outline: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  clip-path: inset(8% 7% 8.5% 7% round 22%);
  transform: scale(1.14);
  transform-origin: center;
}

.wholesale-page .wholesale-proof span {
  color: #c71018;
  font-weight: 800;
  letter-spacing: .09em;
}

/* Shared card rules make these panels white, so reset their inherited
   dark-section text colors here in the page-specific stylesheet. */
.wholesale-page .business-callout {
  background: #fff !important;
  color: #111820 !important;
  border: 1px solid #e4dcd5 !important;
}

.wholesale-page .business-callout h2 {
  color: #111820 !important;
}

.wholesale-page .business-callout p {
  color: #5c6670 !important;
}

.wholesale-page .business-callout .eyebrow {
  color: #c71018 !important;
}

.wholesale-page .catalog-assurance {
  gap: 12px !important;
  background: transparent !important;
}

.wholesale-page .catalog-assurance article {
  color: #111820 !important;
  border: 1px solid #e4dcd5 !important;
  border-radius: 20px !important;
  background: #fff !important;
}

.wholesale-page .catalog-assurance strong {
  color: #111820 !important;
}

.wholesale-page .catalog-assurance p {
  color: #5c6670 !important;
}

.wholesale-page .wholesale-rules {
  width: min(calc(100% - 40px), 1252px) !important;
  margin: 28px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1px !important;
  overflow: hidden !important;
  border: 1px solid #e4dcd5 !important;
  border-radius: 22px !important;
  background: #e4dcd5 !important;
}

.wholesale-page .wholesale-rules article {
  min-width: 0 !important;
  padding: 24px !important;
  display: grid !important;
  align-content: start !important;
  gap: 7px !important;
  background: #fff !important;
}

.wholesale-page .wholesale-rules small,
.wholesale-page .wholesale-rules strong,
.wholesale-page .wholesale-rules span {
  display: block !important;
  margin: 0 !important;
}

.wholesale-page .wholesale-rules small {
  color: #c71018 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.wholesale-page .wholesale-rules strong {
  color: #111820 !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}

.wholesale-page .wholesale-rules span {
  color: #667078 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

@media (max-width: 900px) {
  .wholesale-page .wholesale-proof {
    display: flex !important;
    min-width: 0;
    width: 100%;
    margin-top: 24px;
    padding: 22px 0 0;
    border-left: 0;
    border-top: 1px solid #e4dcd5;
  }

  .wholesale-page .wholesale-b2b-logo {
    width: 92px;
    height: 76px;
    flex-basis: 92px;
    border-radius: 18px;
  }
}

@media (max-width: 700px) {
  html,
  body.wholesale-page {
    width: 100%;
    max-width: 100%;
    overflow-x: clip !important;
    background: #f7f5f1 !important;
  }

  .wholesale-page main,
  .wholesale-page main > section,
  .wholesale-page .catalog-results,
  .wholesale-page .catalog-grid,
  .wholesale-page .catalog-card,
  .wholesale-page .catalog-card > a,
  .wholesale-page .catalog-copy {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .wholesale-page .catalog-hero {
    width: calc(100% - 28px) !important;
    margin: 16px auto !important;
    padding: 24px 18px !important;
    border: 1px solid #e4dcd5 !important;
    border-radius: 20px !important;
    background: #fff !important;
  }

  .wholesale-page .catalog-hero h1 {
    color: #111820 !important;
    font-size: clamp(38px, 12vw, 52px) !important;
    line-height: .96 !important;
    overflow-wrap: anywhere;
  }

  .wholesale-page .catalog-hero p,
  .wholesale-page .wholesale-rules span,
  .wholesale-page .catalog-copy .description {
    color: #5c6670 !important;
  }

  .wholesale-page .wholesale-proof {
    gap: 14px !important;
    padding-top: 18px !important;
  }

  .wholesale-page .wholesale-b2b-logo {
    width: 86px;
    height: 70px;
    flex-basis: 86px;
    border-radius: 0;
  }

  .wholesale-page .catalog-results {
    padding: 36px 14px !important;
  }

  .wholesale-page .catalog-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }

  .wholesale-page .catalog-card {
    width: 100% !important;
    border: 1px solid #e1ddd8 !important;
    border-radius: 18px !important;
    box-shadow: none !important;
  }

  .wholesale-page .catalog-image {
    height: 270px !important;
  }

  .wholesale-page .catalog-copy {
    padding: 18px !important;
  }

  .wholesale-page .wholesale-metrics,
  .wholesale-page .catalog-price-row {
    align-items: start !important;
    gap: 10px !important;
  }

  .wholesale-page footer {
    width: 100% !important;
    padding: 24px 16px calc(100px + env(safe-area-inset-bottom)) !important;
    gap: 16px !important;
  }

  .wholesale-page .wholesale-rules {
    width: calc(100% - 28px) !important;
    margin-top: 18px !important;
    grid-template-columns: 1fr !important;
    gap: 1px !important;
    border-radius: 18px !important;
  }

  .wholesale-page .wholesale-rules article {
    padding: 20px !important;
  }

  .wholesale-page .business-callout {
    min-height: 0 !important;
    align-items: flex-start !important;
    gap: 20px !important;
  }

  .wholesale-page .catalog-assurance {
    gap: 10px !important;
    background: transparent !important;
  }

  .wholesale-page .catalog-assurance article {
    min-height: 0 !important;
    padding: 20px !important;
    border: 1px solid #e4dcd5 !important;
  }
}
