/* Shared product cards: compact copy, a generous photograph and aligned controls. */
.product-card{position:relative;display:flex;flex-direction:column;min-width:0;height:100%;border:1px solid #e0e6ed;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 2px 7px #122d5005;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;isolation:isolate;container:product-card / inline-size}
.product-card .card-media{position:relative;aspect-ratio:1;width:100%;min-height:0;flex:0 0 auto;margin:0;background:#fff;overflow:hidden}
.product-card .card-media .card-image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;aspect-ratio:1;padding:42px 10px 15px;background:#fff;border:0;border-radius:0;overflow:hidden}
.product-card .card-media .card-image>img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.product-card .card-media>.condition-recycle{position:absolute;top:9px;left:10px;width:30px;height:30px;padding:5px;box-shadow:0 2px 6px #0b956316;z-index:4}
.product-card .card-media>.condition-recycle img{width:20px;height:20px}
.product-card .card-media>.rc30-card-brand{position:absolute;top:9px;right:10px;display:flex;align-items:center;height:30px;min-height:0;margin:0;z-index:4;background:#fff}
.product-card .rc30-card-brand .rc26-brand-mark{width:124px;height:30px}
.product-card .card-photo-dots{position:absolute;bottom:1px;left:50%;right:auto;transform:translateX(-50%);display:flex;justify-content:center;align-items:center;gap:2px;width:max-content;max-width:calc(100% - 24px);min-width:0;height:18px;min-height:0;padding:0 4px;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none;z-index:3;overflow:hidden}
.product-card .card-photo-dots button{display:grid;place-items:center;min-width:16px;width:16px;height:18px;min-height:18px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.product-card .card-photo-dots button:after{content:'';width:11px;max-width:11px;height:3px;min-height:3px;border-radius:3px;background:#d1dbe6;box-shadow:none}
.product-card .card-photo-dots button[aria-pressed=true]:after{background:#1955e8}
.product-card .card-body{display:flex;flex-direction:column;flex:1;align-items:stretch;gap:6px;padding:11px 13px 9px;margin:0;border:0;background:#fff;min-width:0}
.product-card .card-title{display:block;min-height:42px;flex:1;color:#122d50;text-decoration:none}
.product-card .card-title h3{font-size:14px;line-height:1.5;font-weight:600;letter-spacing:-.15px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.product-card .card-body .stock{font-size:11px;line-height:1.4;min-height:16px;margin:0;gap:6px}
.product-card .card-actions{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px;padding:0 12px 12px;margin-top:auto;align-items:stretch}
.product-card .card-actions .card-add,.product-grid .product-card .card-actions .card-add{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:5px;min-height:42px;height:42px;border-radius:9px;font-size:12px;padding:8px 7px;line-height:1.3;min-width:0}
.product-card .card-actions .card-add strong,.product-grid .product-card .card-actions .card-add strong{font-size:12px;margin:0;white-space:nowrap}
.product-card .card-actions .card-add .icon{width:16px;height:16px;flex:0 0 auto}
.product-card .card-actions .card-share,.product-grid .product-card .card-actions .card-share{width:42px;height:42px;min-height:42px;min-width:42px;border-radius:9px;background:#0b9563;color:#fff;padding:11px}
.product-card .card-actions .card-add:disabled{background:#f0f2f5;color:#7a8795;border-color:#e5e9ee;cursor:not-allowed;box-shadow:none}
.product-card .card-actions .card-add:disabled:hover{background:#f0f2f5;color:#7a8795}
.product-card :is(a,button):focus-visible{outline:2px solid #1955e8;outline-offset:2px}
.rc21-boiler-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
#side-menu.rc-menu [data-menu-brand="Saunier Duval"]{--brand-image-width:106%;--brand-shift-x:-50.43%;--brand-shift-y:-50.14%}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .product-card:hover,.rc21-boiler-card:hover{transform:translateY(-4px);border-color:#c0cde0;box-shadow:0 9px 20px #122d5010}
 .product-card:active,.rc21-boiler-card:active{transform:translateY(-1px)}
}
@media(max-width:680px){
 .product-card .card-media .card-image{padding:32px 7px 13px}
 .product-card .card-media>.condition-recycle{top:6px;left:7px;width:23px;height:23px;padding:4px}
 .product-card .card-media>.condition-recycle img{width:15px;height:15px}
 .product-card .card-media>.rc30-card-brand{top:6px;right:7px;height:23px}
 .product-card .rc30-card-brand .rc26-brand-mark{width:92px;height:23px}
 .product-card .card-body{padding:9px 9px 8px;gap:5px}
 .product-card .card-title{min-height:36px}
 .product-card .card-title h3{font-size:12px;line-height:1.5}
 .product-card .card-body .stock{font-size:10px;min-height:14px}
 .product-card .card-actions{grid-template-columns:minmax(0,1fr) 32px;gap:5px;padding:0 8px 9px}
 .product-card .card-actions .card-add,.product-grid .product-card .card-actions .card-add{min-height:40px;height:40px;padding:7px 4px;gap:3px;font-size:10px}
 .product-card .card-actions .card-add strong,.product-grid .product-card .card-actions .card-add strong{font-size:10px}
 .product-card .card-actions .card-add .icon{width:13px;height:13px}
 .product-card .card-actions .card-share,.product-grid .product-card .card-actions .card-share{min-width:32px;width:32px;min-height:40px;height:40px;padding:8px}
}
/* Container queries also protect narrow desktop grids and small browser panels. */
@container product-card (max-width:185px){
 .product-card .card-media .card-image{padding:32px 7px 13px}
 .product-card .card-media>.condition-recycle{top:6px;left:7px;width:23px;height:23px;padding:4px}
 .product-card .card-media>.condition-recycle img{width:15px;height:15px}
 .product-card .card-media>.rc30-card-brand{top:6px;right:7px;height:23px}
 .product-card .rc30-card-brand .rc26-brand-mark{width:84px;height:23px}
}
@container product-card (max-width:140px){
 .product-card .card-media .card-image{padding:28px 5px 12px}
 .product-card .card-media>.condition-recycle{top:5px;left:5px;width:20px;height:20px;padding:3px}
 .product-card .card-media>.condition-recycle img{width:14px;height:14px}
 .product-card .card-media>.rc30-card-brand{top:5px;right:5px;height:20px}
 .product-card .rc30-card-brand .rc26-brand-mark{width:64px;height:20px}
 .product-card .card-body{padding:8px 7px 7px;gap:5px}
 .product-card .card-title{min-height:33px}
 .product-card .card-title h3{font-size:11px;line-height:1.5}
 .product-card .card-actions{grid-template-columns:minmax(0,1fr) 28px;gap:4px;padding:0 6px 8px}
 .product-card .card-actions .card-add,.product-grid .product-card .card-actions .card-add{gap:3px;padding:5px 3px;font-size:10px;flex-wrap:wrap;align-content:center;line-height:1.1}
 .product-card .card-actions .card-add strong,.product-grid .product-card .card-actions .card-add strong{font-size:10px}
 .product-card .card-actions .card-add .icon{width:11px;height:11px}
 .product-card .card-actions .card-share,.product-grid .product-card .card-actions .card-share{width:28px;min-width:28px;padding:6px}
}
@media(prefers-reduced-motion:reduce){.product-card,.rc21-boiler-card{transition:none!important;transform:none!important}}
