/* Spare-part catalogue cards: image, reference, stock/price and direct purchase. */
.parts-catalog .parts-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:22px;align-items:stretch}
.parts-catalog .piece-card{border:1px solid #e4e8e7;border-radius:5px;box-shadow:none;padding:14px;background:#fff;overflow:visible}
.parts-catalog .piece-card .part-image{width:100%;aspect-ratio:1;min-height:0;height:auto;padding:16px;border:1px solid #e4e8e7;border-radius:2px;background:#fff;position:relative;overflow:hidden}
.parts-catalog .piece-card .part-image img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:none}
.parts-catalog .piece-card .part-image img.is-fallback-image{max-width:80%;max-height:80%}
.parts-catalog .piece-card .part-content{padding:19px 0 0;gap:0}
.parts-catalog .piece-reference{font-size:12px;color:#68716e;line-height:1.5;margin-bottom:5px}
.parts-catalog .piece-card h2{font-size:13px;line-height:1.5;font-weight:700;text-transform:uppercase;min-height:59px;margin:0 0 12px;overflow-wrap:anywhere}
.parts-catalog .piece-card h2 a:hover{color:var(--green-dark)}
.parts-catalog .piece-details-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:14px;min-height:31px}
.parts-catalog .piece-brand{min-width:0;font-size:12px;color:#68716e}
.parts-catalog .piece-brand summary{cursor:pointer;list-style:none;padding:6px 0}
.parts-catalog .piece-brand summary::-webkit-details-marker{display:none}
.parts-catalog .piece-brand summary::before{content:"›";display:inline-block;margin-right:6px;color:#273832}
.parts-catalog .piece-brand[open] summary::before{transform:rotate(90deg)}
.parts-catalog .piece-brand p{font-size:11px;color:#273832;line-height:1.5;overflow-wrap:anywhere}
.parts-catalog .piece-compare{flex:none;width:30px;height:30px;min-height:30px;padding:0;border:0;border-radius:3px;background:#f1f3f2;color:#53665f;font-size:13px;cursor:pointer}
.parts-catalog .piece-stock-price{margin-top:auto;min-height:112px;padding:16px 12px;background:#f2f4f3;color:#1d2925;display:flex;flex-direction:column;gap:14px}
.parts-catalog .piece-stock-price>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
.parts-catalog .piece-stock-price dt{font-size:11px;line-height:1.45;font-weight:400}
.parts-catalog .piece-stock-price dd{font-size:13px;line-height:1.5;font-weight:700;text-align:right;white-space:nowrap}
.parts-catalog .piece-stock-price .nh-price-link{min-height:30px!important;padding:4px 7px!important;font-size:11px!important;background:#fff!important}
.parts-catalog .piece-stock-price .piece-out{color:#8f4a46}
.parts-catalog .piece-availability{font-size:11px;color:#8f4a46;margin-top:-5px}
.parts-catalog .piece-order{margin-top:18px;display:grid;gap:7px}
.parts-catalog .piece-quantity{height:38px;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;border:1px solid #bdc9c4;border-radius:3px;background:#fff;overflow:hidden}
.parts-catalog .piece-quantity button{border:0;background:#fff;color:#273832;font-size:20px;line-height:1;cursor:pointer}
.parts-catalog .piece-quantity button:hover{background:#edf5f2}
.parts-catalog .piece-quantity input{width:100%;min-width:0;border:0;background:#fff;color:#273832;text-align:center;font-size:13px;appearance:textfield;-moz-appearance:textfield}
.parts-catalog .piece-quantity input::-webkit-inner-spin-button,.parts-catalog .piece-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.parts-catalog .piece-add{height:42px;width:100%;border:0;border-radius:3px;background:var(--green);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.2px;cursor:pointer;transition:background .15s}
.parts-catalog .piece-add:hover{background:var(--green-dark)}
.parts-catalog .piece-add:disabled,.parts-catalog .piece-quantity button:disabled,.parts-catalog .piece-quantity input:disabled{cursor:not-allowed;background:#e9edeb;color:#8d9792}
.parts-catalog .piece-card a:focus-visible,.parts-catalog .piece-card button:focus-visible,.parts-catalog .piece-card input:focus-visible,.parts-catalog .piece-card summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(min-width:1500px){.parts-catalog .parts-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.parts-catalog .parts-grid{grid-template-columns:1fr;gap:20px}.parts-catalog .piece-card{padding:15px}.parts-catalog .piece-card h2{min-height:0;font-size:14px}.parts-catalog .piece-stock-price{min-height:100px}.parts-catalog .piece-stock-price dt{font-size:12px}.parts-catalog .piece-add{height:46px;font-size:12px}}
