/* Stage 8: deliberate width parity for archive and contact pages.
   Cards and structural sections share Katie's approved 1360px shell; long
   reading text on individual Blog articles remains the comfortable 860px.
   New manufacturer packs are the unaltered Wix Media originals. */

.legacy-article.legacy-article--archive {
  width: min(calc(100% - 2 * clamp(18px,3.2vw,54px)),1360px);
  max-width: 1360px;
  min-width: 0;
  margin-inline: auto;
}
.legacy-article--archive :is(.archive-intro,.guide-next) {
  max-width: 78ch;
}
.legacy-article--archive .archive-group {
  width: 100%;
}
.legacy-article--archive ul.archive-grid {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(16px,2vw,28px);
  align-items: stretch;
}
.legacy-article--archive .archive-grid li {
  min-width: 0;
}
.legacy-article--archive .advice-next-steps {
  width: 100%;
}

/* Same horizontal gutters as /services, /products and homepage: keep the
   established two-column contact form and manual Wix Inbox delivery intact. */
.contact-page-v23 .container {
  width: min(calc(100% - 2 * clamp(18px,3.2vw,54px)),1360px);
  margin-inline: auto;
}
.contact-page-v23 :is(.enquiry-layout,.enquiry-panel,.enquiry-intro,
  .contact-grid-v23,.contact-visit-v23,.contact-alternatives-v23) {
  min-width: 0;
}
.contact-page-v23 .pagehero .lead {
  max-width: 72ch;
}

/* Informational introductions only; supplier prices are not trade prices. */
.products-page .other-brands-intro {
  margin: clamp(22px,2.8vw,36px) 0;
  border: 1px solid #e6d7e8;
  border-left: 4px solid #ab84b1;
  border-radius: 0 13px 13px 0;
  padding: clamp(19px,2.4vw,31px);
  background: linear-gradient(115deg,#fcf8fc,#fffdfd);
  color: #423449;
}
.products-page .other-brands-intro .smallcaps {
  color: #74517c;
}
.products-page .other-brands-intro h3 {
  margin: 8px 0 11px;
  font-size: clamp(1.4rem,2.1vw,2.1rem);
  font-weight: 500;
  text-wrap: balance;
}
.products-page .other-brands-intro p {
  margin: 0;
  max-width: 78ch;
  line-height: 1.7;
}
.products-page .retail-product .retail-price-label {
  font-weight: 600;
}
.products-page :is(.retail-brush-product,.retail-styling-product) .product-visual {
  background: linear-gradient(180deg,#fff,#fbfafc);
}
.products-page :is(.retail-brush-product,.retail-styling-product) .product-shot {
  object-fit: contain;
  width: 100%;
  max-width: 100%;
}
@media (max-width: 1024px) {
  .legacy-article--archive ul.archive-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 680px) {
  .legacy-article--archive ul.archive-grid {
    grid-template-columns: minmax(0,1fr);
  }
}
@media (max-width: 390px) {
  .products-page .other-brands-intro {
    padding: 18px;
  }
}
