/* Polymermax catalog: unified nested spare-parts cards, v7.
   Same restraint and dimensions as equipment category cards.
   This file scopes all rules to explicitly marked category pages only. */
.pm-spares-nested {
  --pm-border:#dfe5e3;--pm-ink:#26302f;--pm-muted:#62716e;--pm-lime:#93be00;
}
.pm-spares-nested :is(.spare-grid,.spare-lubrication-grid,#products.product-grid,
.nz-product-grid,.clamp-product-grid,.heater-types,.hyd-category-grid,.hyd-group-rows,.sd-card-grid) {
  gap:18px!important;align-items:stretch!important;
}
/* Category navigation, same design as equipment cards */
.pm-spares-nested :is(.spare-grid,.spare-lubrication-grid,.hyd-category-grid){
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.pm-spares-nested :is(.spare-card,.spare-lubrication-card,.hyd-category-card){
  box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
  padding:20px!important;min-width:0!important;min-height:320px!important;height:100%!important;
  margin:0!important;position:relative!important;overflow:hidden!important;
  background:#fff!important;border:1px solid var(--pm-border)!important;border-radius:13px!important;
  box-shadow:none!important;transform:none!important;text-decoration:none!important;
  color:var(--pm-ink)!important;
}
.pm-spares-nested :is(.spare-card,.spare-lubrication-card,.hyd-category-card):hover {
  border-color:#bac9bf!important;box-shadow:0 5px 18px rgba(20,35,28,.045)!important;
}
.pm-spares-nested :is(.spare-card,.spare-lubrication-card,.hyd-category-card):focus-visible {
  outline:3px solid #a4d900!important;outline-offset:3px!important;
}
.pm-spares-nested :is(.spare-photo,.spare-lubrication-photo,.hyd-category-card>.hyd-photo){
  width:100%!important;height:174px!important;min-height:174px!important;max-height:174px!important;
  flex:0 0 174px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;padding:0 0 8px!important;margin:0 0 10px!important;
  background:#fff!important;border:0!important;border-radius:0!important;overflow:hidden!important;
}
.pm-spares-nested :is(.spare-photo,.spare-lubrication-photo,.hyd-category-card>.hyd-photo) img {
  display:block!important;width:100%!important;height:100%!important;max-width:100%!important;
  max-height:100%!important;object-fit:contain!important;object-position:center!important;
  margin:0!important;padding:0!important;mix-blend-mode:normal!important;
}
.pm-spares-nested :is(.spare-photo,.spare-lubrication-photo) .preview-composition{
  width:100%!important;height:100%!important;min-height:0!important;padding:0!important;gap:7px!important;
  background:#fff!important;overflow:hidden!important;
}
.pm-spares-nested :is(.spare-caption,.spare-lubrication-copy,.hyd-category-card>div:last-child){
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
  width:100%!important;min-width:0!important;box-sizing:border-box!important;
  margin:0!important;padding:0!important;gap:0!important;
}
.pm-spares-nested :is(.spare-caption,.spare-lubrication-copy,.hyd-category-card>div:last-child) h3{
  color:var(--pm-ink)!important;font-size:19px!important;font-weight:750!important;
  line-height:1.3!important;letter-spacing:-.025em!important;margin:0 0 6px!important;
  overflow-wrap:break-word!important;word-break:normal!important;
}
.pm-spares-nested :is(.spare-caption,.spare-lubrication-copy,.hyd-category-card>div:last-child) p{
  color:var(--pm-muted)!important;font-size:12px!important;line-height:1.55!important;
  margin:0 0 18px!important;overflow-wrap:break-word!important;
}
.pm-spares-nested :is(.spare-caption,.spare-lubrication-copy,.hyd-category-card>div:last-child) > :is(span:last-child,strong:last-child){
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  color:var(--pm-ink)!important;font-size:12px!important;font-weight:700!important;
  margin-top:auto!important;padding:8px 0 0!important;border:0!important;
  background:none!important;text-transform:none!important;letter-spacing:normal!important;
}
/* The number on hydraulic navigation cards is factual, keep it but make it neutral */
.pm-spares-nested .hyd-category-card>div:last-child>span:first-child{
  margin:0 0 6px!important;color:#697975!important;font-size:10px!important;
}
/* Product tiles: images -> names -> parameters -> action, no fake prices */
.pm-spares-nested #products.product-grid {
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.pm-spares-nested #products.product-grid > article.product {
  box-sizing:border-box!important;min-width:0!important;min-height:320px!important;
  height:100%!important;display:flex;flex-direction:column!important;
  margin:0!important;padding:20px!important;overflow:hidden!important;
  background:#fff!important;border:1px solid var(--pm-border)!important;border-radius:13px!important;
  box-shadow:none!important;transition:border-color .2s,box-shadow .2s!important;
}
.pm-spares-nested #products.product-grid > article.product:hover {
  border-color:#bac9bf!important;box-shadow:0 5px 18px rgba(20,35,28,.045)!important;
}
.pm-spares-nested #products.product-grid > article.product>a:first-child {
  display:flex!important;flex-direction:column!important;min-width:0!important;
  color:var(--pm-ink)!important;text-decoration:none!important;
}
.pm-spares-nested #products.product-grid .product-preview {
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;box-sizing:border-box!important;
  aspect-ratio:auto!important;height:174px!important;min-height:174px!important;max-height:174px!important;
  padding:0 0 8px!important;margin:0 0 10px!important;border:0!important;
  background:#fff!important;overflow:hidden!important;
}
.pm-spares-nested #products.product-grid .product-preview :is(.preview-composition,.preview-crop){
  width:100%!important;height:100%!important;max-height:100%!important;min-height:0!important;
  margin:0!important;padding:0!important;gap:6px!important;background:#fff!important;
}
.pm-spares-nested #products.product-grid .product-preview img {
  display:block!important;width:100%!important;height:100%!important;max-width:100%!important;
  max-height:100%!important;object-fit:contain!important;object-position:center!important;
  padding:0!important;margin:0!important;
}
.pm-spares-nested #products.product-grid .product h3{
  color:var(--pm-ink)!important;font-size:19px!important;font-weight:750!important;
  line-height:1.3!important;letter-spacing:-.025em!important;
  margin:0 0 9px!important;overflow-wrap:break-word!important;word-break:normal!important;
}
.pm-spares-nested #products.product-grid .product .specs{
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;
  width:100%!important;margin:0 0 12px!important;
}
.pm-spares-nested #products.product-grid .product .specs span{
  font-size:11px!important;line-height:1.4!important;color:#4d5d59!important;
  background:#f2f5f5!important;border:0!important;border-radius:4px!important;
  padding:4px 7px!important;letter-spacing:normal!important;
}
.pm-spares-nested #products.product-grid .product .catalog-price{
  font-size:11px!important;line-height:1.4!important;color:#70807a!important;
  margin:0 0 10px!important;
}
.pm-spares-nested #products.product-grid .product>a.btn.light{
  display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:10px!important;align-self:flex-start!important;
  margin-top:auto!important;padding:8px 0 0!important;
  color:var(--pm-ink)!important;background:none!important;border:0!important;
  box-shadow:none!important;font-size:12px!important;font-weight:700!important;
  text-decoration:none!important;min-height:0!important;border-radius:0!important;
}
.pm-spares-nested #products.product-grid .product>a.btn.light span{
  color:var(--pm-lime)!important;font-size:20px!important;font-weight:400!important;
}
/* Equipment-style presentation for dedicated technical subgroup layouts */
.pm-spares-nested :is(.nz-product-grid,.clamp-product-grid,.heater-types){
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.pm-spares-nested :is(.nozzle-page .nz-product,.clamp-card,.heater-type){
  box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
  min-width:0!important;min-height:320px!important;height:100%!important;
  padding:20px!important;margin:0!important;overflow:hidden!important;
  border:1px solid var(--pm-border)!important;border-radius:13px!important;
  background:#fff!important;box-shadow:none!important;transform:none!important;
}
.pm-spares-nested :is(.nozzle-page .nz-product,.clamp-card,.heater-type):hover{
  border-color:#bac9bf!important;box-shadow:0 5px 18px rgba(20,35,28,.045)!important;
}
.pm-spares-nested :is(.nz-product-visual,.clamp-card-image,.heater-type-photo){
  width:100%!important;box-sizing:border-box!important;display:flex!important;
  align-items:center!important;justify-content:center!important;flex:0 0 174px!important;
  height:174px!important;min-height:174px!important;max-height:174px!important;
  overflow:hidden!important;border:0!important;margin:0 0 10px!important;padding:0 0 8px!important;background:#fff!important;
}
.pm-spares-nested :is(.nz-product-visual,.clamp-card-image,.heater-type-photo) img{
  width:100%!important;height:100%!important;max-width:100%!important;
  max-height:100%!important;object-fit:contain!important;margin:0!important;padding:0!important;
}
.pm-spares-nested :is(.nz-product-content,.clamp-card-body,.heater-type-body){
  display:flex!important;flex-direction:column!important;flex:1 1 auto!important;
  min-height:0!important;min-width:0!important;width:100%!important;padding:0!important;margin:0!important;
}
.pm-spares-nested :is(.nz-product-content,.clamp-card-body,.heater-type-body) h3{
  font-size:19px!important;font-weight:750!important;line-height:1.3!important;
  letter-spacing:-.025em!important;color:var(--pm-ink)!important;
  overflow-wrap:break-word!important;margin:0 0 8px!important;
}
.pm-spares-nested :is(.nz-product-content,.clamp-card-body,.heater-type-body) p{
  font-size:12px!important;line-height:1.55!important;color:var(--pm-muted)!important;margin:0 0 12px!important;
}
.pm-spares-nested :is(.nz-product-content,.clamp-card-body,.heater-type-body) :is(.nz-link,.clamp-link,.heater-text-link){
  display:inline-flex!important;align-items:center!important;align-self:flex-start!important;
  margin-top:auto!important;padding:10px 0 0!important;
  font-size:12px!important;font-weight:700!important;color:var(--pm-ink)!important;
  background:none!important;border:0!important;text-decoration:none!important;
}
.pm-spares-nested :is(.nz-index,.nz-eyebrow,.clamp-card-kicker,.heater-type-index){
  font-size:10px!important;line-height:1.5!important;color:#71817c!important;
  background:none!important;padding:0!important;margin:0 0 6px!important;
  letter-spacing:normal!important;
}
.pm-spares-nested :is(.clamp-card-spec,.heater-type-body ul){
  margin:0 0 12px!important;font-size:11px!important;color:#52615c!important;
}
/* SHENG DA: preserve all expandable specifications and checkbox controls */
.pm-spares-nested .sd-card-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.pm-spares-nested .sd-item{
  box-sizing:border-box!important;grid-template-columns:minmax(0,1fr)!important;
  min-width:0!important;min-height:320px!important;
  background:#fff!important;border:1px solid var(--pm-border)!important;
  border-radius:13px!important;box-shadow:none!important;
}
.pm-spares-nested .sd-item:has(.sd-item-details[open]){
  grid-column:1/-1!important;
  grid-template-columns:minmax(0,220px) minmax(0,1fr)!important;
}
.pm-spares-nested .sd-item-photo{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;box-sizing:border-box!important;
  height:174px!important;min-height:174px!important;max-height:174px!important;
  background:#fff!important;border-right:0!important;border-bottom:0!important;
  padding:12px!important;overflow:hidden!important;
}
.pm-spares-nested .sd-item-photo img{
  width:100%!important;height:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center!important;
}
.pm-spares-nested .sd-item-content{min-width:0!important;padding:0 20px 20px!important}
.pm-spares-nested .sd-item h4{
  color:var(--pm-ink)!important;font-size:19px!important;line-height:1.3!important;
  letter-spacing:-.025em!important;
}
/* Hydraulic navigation categories and detailed technical rows; keep selection and filtering functional */
.pm-spares-nested .hyd-group-rows{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  border:0!important;
}
.pm-spares-nested .hyd-catalog-item{
  min-width:0!important;min-height:320px!important;height:100%!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:min-content!important;
  align-content:start!important;align-items:stretch!important;gap:9px!important;
  padding:18px!important;margin:0!important;
  border:1px solid var(--pm-border)!important;border-radius:13px!important;
  background:#fff!important;box-shadow:none!important;
}
.pm-spares-nested .hyd-catalog-item .hyd-check{
  grid-row:1!important;grid-column:1!important;justify-self:end!important;
  flex-direction:row!important;min-height:20px!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-photo{
  grid-row:2!important;grid-column:1!important;display:flex!important;
  width:100%!important;height:174px!important;min-height:174px!important;max-height:174px!important;
  justify-content:center!important;align-items:center!important;
  background:#fff!important;margin:0!important;overflow:hidden!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-photo img{
  display:block!important;width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;object-fit:contain!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-item-main{
  grid-row:3!important;grid-column:1!important;min-width:0!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-item-main h4{
  color:var(--pm-ink)!important;font-size:19px!important;line-height:1.3!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-item-tech{grid-row:4!important;grid-column:1!important;min-width:0!important}
.pm-spares-nested .hyd-catalog-item>.hyd-item-action{
  grid-row:5!important;grid-column:1!important;display:flex!important;
  flex-wrap:wrap!important;flex-direction:column!important;align-items:flex-start!important;
  margin-top:auto!important;gap:8px!important;
}
.pm-spares-nested .hyd-catalog-item>.hyd-item-action a{font-size:12px!important;line-height:1.5!important}
/* Tablet/mobile: no narrow leftover columns, no clipping of product titles */
@media(max-width:1100px){
  .pm-spares-nested :is(.spare-grid,.spare-lubrication-grid,.hyd-category-grid,
  #products.product-grid,.nz-product-grid,.clamp-product-grid,.heater-types,.hyd-group-rows,.sd-card-grid){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  .pm-spares-nested :is(.spare-grid,.spare-lubrication-grid,.hyd-category-grid,
  #products.product-grid,.nz-product-grid,.clamp-product-grid,.heater-types,.hyd-group-rows,.sd-card-grid){
    grid-template-columns:minmax(0,1fr)!important;gap:14px!important;
  }
  .pm-spares-nested :is(.spare-card,.spare-lubrication-card,.hyd-category-card,
  #products.product-grid>.product,.nozzle-page .nz-product,.clamp-card,.heater-type,
  .hyd-catalog-item,.sd-item){min-height:300px!important;height:auto!important;}
  .pm-spares-nested .sd-item:has(.sd-item-details[open]){
    grid-column:auto!important;grid-template-columns:minmax(0,1fr)!important;
  }
  .pm-spares-nested .hyd-catalog-item>.hyd-photo{height:174px!important}
}
/* JS filters/search set the hidden attribute. Never allow card layout rules to reveal hidden items. */
.pm-spares-nested [hidden] {display:none!important;}
