/* Listing scenery is separate from the unchanged native product photograph. */
.catalog-rig-image-wrap{position:relative;flex-shrink:0;container-type:inline-size}
.product-card .catalog-rig-replacement{
 position:absolute;left:3%;bottom:3%;z-index:5;width:56%;height:20%;max-width:205px;
 display:flex;align-items:center;gap:2px;box-sizing:border-box;padding:5px 7px 5px 0;
 background:#fff;border:2px solid #171b1e;border-radius:4px;color:#171b1e;
 text-decoration:none;box-shadow:0 2px 4px #0002;
}
.product-card .catalog-rig-replacement>img{
 display:block;width:40%;height:100%;min-width:0;object-fit:contain;flex:none;
 margin:0;padding:0;transform:none;filter:none;mix-blend-mode:normal;
}
.product-card .catalog-rig-replacement>span{
 flex:1;min-width:0;font:700 clamp(11px,4.2cqw,16px)/1.25 Arial,sans-serif;
 text-decoration:underline;text-underline-offset:3px;
}
.product-card .catalog-rig-replacement:hover{background:#fff3aa}
.product-card .catalog-rig-replacement:focus-visible{outline:3px solid #1458a3;outline-offset:3px}
.product-card .card-image.catalog-product-art {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#e9e7e2;
  mix-blend-mode:normal;
}
.product-card .card-image.catalog-product-art::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(rgba(255,255,255,.19),rgba(255,255,255,.31));
}
.product-card .card-image.catalog-product-art > .catalog-product-art-background {
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  filter:blur(4px);
  transform:scale(1.04);
  mix-blend-mode:normal;
  pointer-events:none;
}
.product-card .card-image.catalog-product-art > .catalog-product-art-background[data-product-art-position="top"] {object-position:center top}
.product-card .card-image.catalog-product-art > .catalog-product-art-background[data-product-art-position="bottom"] {object-position:center bottom}
.product-card .card-image.catalog-product-art > .catalog-product-art-background[data-product-art-position="left"] {object-position:left center}
.product-card .card-image.catalog-product-art > .catalog-product-art-background[data-product-art-position="right"] {object-position:right center}
.product-card .card-image.catalog-product-art > img:not([data-product-art-layer]),
.product-card .card-image.catalog-product-art > .tool-card-photo-frame,
.product-card .card-image.catalog-product-art > .viking-photo-stage {
  position:relative;
  z-index:2;
  mix-blend-mode:normal!important;
}
/* Preserve every original product pixel. Only a photograph's existing alpha
   may reveal the scene; opaque white mattes and bright metal stay intact.
   Reset nested crop frames as well as the older global card-image rule. */
.product-card .card-image.catalog-product-art img[data-catalog-tool-photo="source"],
.product-card .card-image.catalog-product-art :has(img[data-catalog-tool-photo="source"]) {
  mix-blend-mode:normal!important;
  filter:none!important;
}
.product-card .card-image.catalog-product-art > .catalog-product-art-mascot {
  position:absolute;
  inset:auto 9px 9px auto;
  z-index:3;
  width:29%;
  height:37%;
  max-width:118px;
  object-fit:contain;
  object-position:right bottom;
  mix-blend-mode:normal;
  pointer-events:none;
  filter:drop-shadow(0 3px 2px rgba(0,0,0,.12));
}
@media(max-width:760px) {
  .product-card .card-image.catalog-product-art > .catalog-product-art-mascot {
    inset:auto 7px 7px auto;
    width:28%;
    height:35%;
  }
}
/* Gold-standard hammer images: full bleed backdrop, native photo, badge/inset. */
.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]{height:auto;aspect-ratio:368/525;padding:0;border-bottom:4px solid #ffe034;display:block}
.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose="chipping"]{aspect-ratio:368/410}
.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]>[data-catalog-tool-photo="source"]{position:absolute;z-index:2;left:var(--catalog-tool-left,43%);top:var(--catalog-tool-top,50%);width:var(--catalog-tool-width,70%);height:var(--catalog-tool-height,85%);max-width:none;max-height:none;padding:0;margin:0;object-fit:contain;transform-origin:var(--catalog-tool-origin,50% 50%);transform:translate(var(--catalog-tool-x,-50%),var(--catalog-tool-y,-50%)) rotate(var(--catalog-tool-degrees,14deg));clip-path:inset(var(--catalog-tool-clip,0));pointer-events:none}



.product-card[data-card-standard="owner"] .catalog-stroke-badge{position:absolute;left:auto;right:14px;top:14px;z-index:4;padding:8px 12px;background:#ffe034;color:#111;border:3px solid #111;border-radius:3px;font:400 clamp(19px,6cqw,23px)/1.2 "Owner Catalog Anton",Impact,sans-serif;white-space:nowrap}
@media(max-width:760px){.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose="rivet"]{aspect-ratio:368/515}}

/* Non-hammer tools share the same foreground fit without changing their pose. */
.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose="tool"]{aspect-ratio:368/460}


/* The chuck shape and words work together; color is never the only identifier. */
.product-card[data-card-standard="owner"] .catalog-shank-badge{position:absolute;left:14px;top:64px;z-index:4;display:flex;align-items:center;gap:7px;background:rgba(255,255,255,.96);color:#111;padding:4px 8px;border-radius:2px;font:700 12px/1.2 Arial,sans-serif}
.product-card[data-card-standard="owner"] .catalog-shank-badge[data-catalog-shank="hex"]{background:#8fd179}
.product-card[data-card-standard="owner"] .catalog-shank-badge[data-catalog-shank="round"]{background:#ffe034}
.catalog-shank-icon{display:inline-block;width:16px;height:16px;flex:none;background:#1b2023}
.catalog-shank-icon--hex{clip-path:polygon(25% 7%,75% 7%,100% 50%,75% 93%,25% 93%,0 50%)}
.catalog-shank-icon--round{border-radius:50%}
.product-card[data-card-standard="owner"] .card-variant-title,.product-card[data-card-standard="owner"] .card-variant-retainer{display:block;font:700 15px/1.4 Arial,sans-serif;margin-top:8px;color:#24313a}
.product-card[data-card-standard="owner"] .card-variant-retainer{font-size:14px;margin-top:4px}

/* One square footprint for the whole mascot pool, including complete props.
   Contain preserves each supplied pose; no image is cropped or stretched. */
.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]>.catalog-product-art-mascot{inset:auto 10px 10px auto;width:29%;height:auto;aspect-ratio:1/1;max-width:none;max-height:none;object-fit:contain;object-position:center bottom;padding:0;margin:0}

/* Brand identity stays crisp above the scene, beside the stroke/chuck badges. */
.product-card .card-image.catalog-product-art>.catalog-product-art-logo{
  position:absolute;inset:14px 10px auto auto;z-index:4;
  width:24%;height:16%;max-width:112px;max-height:76px;
  object-fit:contain;object-position:center;transform:none;
  padding:0;margin:0;mix-blend-mode:normal;pointer-events:none;
}

/* Non-chipping stroke badges stay clear of the upper-right tool handle. */
.product-card[data-card-standard="owner"] .catalog-product-art:not([data-product-art-category="1"]) .catalog-stroke-badge[data-catalog-badge="stroke"]{left:14px;right:auto}

/* Mixed tool families need one image baseline per grid. Category-only grids
   retain their approved proportions; phone cards keep their natural poses. */
@media(min-width:761px){
  :is(.product-grid,.catalog-grid,.variant-search-results):has(>.product-card [data-catalog-pose="chipping"]):has(>.product-card [data-catalog-pose]:not([data-catalog-pose="chipping"]))>.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose],
  :is(.product-grid,.catalog-grid,.variant-search-results):has(>.product-card [data-catalog-pose="rivet"]):has(>.product-card [data-catalog-pose="tool"])>.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]{aspect-ratio:368/525;flex-shrink:0}
}

/* Weight-class tools: two readable corner badges, with room for the larger tool. */
.product-card[data-card-standard="owner"] .catalog-product-art:is([data-product-art-category="2"],[data-product-art-category="9"],[data-product-art-category="12"]){aspect-ratio:368/625!important}
.product-card[data-card-standard="owner"] .catalog-stroke-badge[data-catalog-badge="weight"]{left:auto;right:14px;top:14px}
.product-card[data-card-standard="owner"] .catalog-chuck-badge{
 position:absolute;left:14px;bottom:14px;top:auto;right:auto;z-index:4;
 max-width:calc(100% - 112px);box-sizing:border-box;padding:7px 10px;
 background:#ffe034;color:#111;border:3px solid #111;border-radius:3px;
 font:400 clamp(16px,5.2cqw,21px)/1.2 "Owner Catalog Anton",Impact,sans-serif;
 white-space:normal;text-align:left;overflow-wrap:normal;
}
.product-card[data-card-standard="owner"] .catalog-chuck-badge::before{content:"CHUCK SIZE";display:block;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.06em;margin-bottom:3px}

/* Search and brand results keep neighboring image baselines together. */
@media(min-width:761px){
 :is(.product-grid,.catalog-grid,.variant-search-results):has(>.product-card [data-product-art-category]:is([data-product-art-category="2"],[data-product-art-category="9"],[data-product-art-category="12"])):has(>.product-card [data-product-art-category]:not([data-product-art-category="2"],[data-product-art-category="9"],[data-product-art-category="12"]))>.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]{aspect-ratio:368/625!important;flex-shrink:0}
}

/* Tall tampers need more vertical room so the complete tool reads clearly. */
.product-card[data-card-standard="owner"] .catalog-product-art[data-product-art-category="15"]{aspect-ratio:368/580!important}

/* A tamper in a mixed row shares the same image baseline as adjacent tools. */
@media(min-width:761px){
 :is(.product-grid,.catalog-grid,.variant-search-results):has(>.product-card[data-card-category="15"]):has(>.product-card[data-card-category]:not([data-card-category="15"]))>.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]{aspect-ratio:368/580!important;flex-shrink:0}
 :is(.product-grid,.catalog-grid,.variant-search-results):has(>.product-card[data-card-category="15"]):has(>.product-card:is([data-card-category="2"],[data-card-category="9"],[data-card-category="12"]))>.product-card[data-card-standard="owner"] .catalog-product-art[data-catalog-pose]{aspect-ratio:368/625!important}
}
