/* Product archive: official source images, original card geometry and restrained system hierarchy. */
.post-type-archive-henner_product .henner-catalogue-hero:not(.has-custom-hero-image) {
  background-image: linear-gradient(90deg,rgba(17,20,24,.84),rgba(17,20,24,.6) 52%,rgba(17,20,24,.22)),url('../images/products/Henner-Product-Hero-01.png');
  background-position: center;
}
.post-type-archive-henner_product .v87-system-intro { padding-block: 96px 82px; }
.v87-system-intro .henner-section-head { margin-bottom: 46px; }
.v87-system-visual { background: #fff; }
.v88-system-lineup { display: grid; grid-template-columns: 1.15fr .8fr .8fr 1fr; align-items: end; gap: clamp(14px,3vw,46px); min-height: 245px; padding: 24px clamp(24px,4vw,64px); }
.v88-system-lineup__item { display: grid; place-items: center; min-width: 0; height: 200px; }
.v88-system-lineup__item img { display: block; width: auto; max-width: 100%; height: auto; max-height: 195px; object-fit: contain; }
.v88-system-lineup__item:first-child img { max-width: 235px; }
.v88-system-lineup__item:nth-child(2) img,
.v88-system-lineup__item:nth-child(3) img { max-height: 190px; }
.v88-system-lineup__item:last-child img { max-width: 185px; }
.v87-system-roles { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 30px; }
.v87-system-roles > div { padding: 20px 18px 0; }
.v87-system-roles span { margin-bottom: 18px; }
.v87-system-roles strong { font-size: clamp(17px,1.45vw,22px); }
.v87-system-roles p { font-size: 13px; line-height: 1.45; }
.v87-product-card__image.v88-product-stage { height: 310px; padding: 22px; background: #fff; }
.v88-product-stage > img { width: auto; max-width: 100%; height: auto; max-height: 265px; object-fit: contain; }
.v88-product-card--aac-wall-panels .v88-product-stage > img { max-width: 100%; }
.v88-product-card--thin-bed-adhesive .v88-product-stage > img { max-height: 278px; }
.v88-tools-composition { display: grid; grid-template-columns: 1fr 1fr; align-items: center; justify-items: center; gap: 4px 16px; width: min(100%,500px); }
.v88-tools-composition img { display: block; width: auto; max-width: 100%; height: auto; max-height: 155px; object-fit: contain; }
.v88-tools-composition img:last-child { grid-column: 1 / -1; max-height: 72px; }
.v87-product-family--finishing .v88-product-stage { height: 360px; }
.v88-finishing-composition { display: flex; align-items: end; justify-content: center; gap: clamp(8px,1.6vw,24px); width: 100%; }
.v88-finishing-composition > span { display: flex; flex: 1 1 0; min-width: 0; flex-direction: column; align-items: center; gap: 9px; }
.v88-finishing-composition img { display: block; width: auto; max-width: 100%; height: auto; max-height: 265px; object-fit: contain; }
.v88-finishing-composition small { color: #50575d; font-size: 11px; font-weight: 700; line-height: 1.2; text-align: center; }
.v88-finishing-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin: 22px 0 0; padding: 18px 0 0; border-top: 1px solid var(--henner-line); list-style: none; }
.v88-finishing-list li { color: var(--henner-graphite); font-size: 12px; font-weight: 700; line-height: 1.35; }
.v88-system-summary { padding-block: 45px 50px; border-top: 1px solid var(--henner-line); background: #fff; }
.v88-system-summary > .henner-wrap { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); gap: 30px 54px; align-items: center; }
.v88-system-summary .henner-eyebrow { margin-bottom: 11px; }
.v88-system-summary h2 { max-width: 390px; margin: 0; font-size: clamp(25px,2.35vw,36px); line-height: 1.1; letter-spacing: -.03em; text-transform: uppercase; }
.v88-system-summary__steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; align-items: end; margin: 0; padding: 0; list-style: none; }
.v88-system-summary__steps li { position: relative; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; justify-content: end; gap: 10px; min-height: 105px; }
.v88-system-summary__steps li:not(:last-child)::after { position: absolute; right: -15px; bottom: 4px; color: var(--henner-red); font-size: 18px; content: '→'; }
.v88-system-summary__steps img { display: block; width: auto; max-width: 92px; height: auto; max-height: 67px; object-fit: contain; }
.v88-system-summary__steps span { max-width: 125px; color: var(--henner-graphite); font-size: 11px; font-weight: 800; line-height: 1.3; letter-spacing: .03em; text-transform: uppercase; }
.v88-system-summary.henner-widget-theme--dark { border-color: #454b50; background: #1e2227; color: #fff; }
.v88-system-summary.henner-widget-theme--red { border-color: rgba(255,255,255,.25); background: var(--henner-red); color: #fff; }
.v88-system-summary.henner-widget-theme--dark .v88-system-summary__steps span,
.v88-system-summary.henner-widget-theme--red .v88-system-summary__steps span { color: #fff; }
.v88-system-summary.henner-widget-theme--dark .henner-eyebrow,
.v88-system-summary.henner-widget-theme--red .henner-eyebrow { color: #fff; }
@media (max-width: 1023px) {
  .v87-system-roles { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .v87-system-roles > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .v88-system-summary > .henner-wrap { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .post-type-archive-henner_product .v87-system-intro { padding-block: 64px; }
  .v87-system-intro .henner-section-head { margin-bottom: 28px; }
  .v88-system-lineup { grid-template-columns: repeat(2,minmax(0,1fr)); min-height: 0; gap: 8px 18px; padding: 20px; }
  .v88-system-lineup__item { height: 130px; }
  .v88-system-lineup__item img,
  .v88-system-lineup__item:nth-child(2) img,
  .v88-system-lineup__item:nth-child(3) img { max-height: 120px; }
  .v88-system-lineup__item:first-child img,
  .v88-system-lineup__item:last-child img { max-width: 100%; }
  .v87-system-roles { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; margin-top: 18px; }
  .v87-system-roles > div,
  .v87-system-roles > div:first-child { padding: 16px 10px 16px 0; border-bottom: 1px solid var(--henner-line); }
  .v87-system-roles > div:nth-child(even) { padding-left: 14px; border-left: 1px solid var(--henner-line); }
  .v87-system-roles span { margin-bottom: 8px; }
  .v87-system-roles strong { font-size: 17px; }
  .v87-product-card__image.v88-product-stage { height: 260px; }
  .v87-product-family--finishing .v88-product-stage { height: 280px; }
  .v88-finishing-composition img { max-height: 195px; }
  .v88-finishing-composition small { font-size: 10px; }
  .v88-finishing-list { grid-template-columns: 1fr; gap: 6px; }
  .v88-system-summary { padding-block: 38px 44px; }
  .v88-system-summary__steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 26px; }
  .v88-system-summary__steps li { min-height: 88px; }
  .v88-system-summary__steps li:nth-child(2)::after { content: none; }
}
