/* Public price references remain distinct from availability and supplier costs. */
.pb-price{color:var(--ink);font-family:var(--body);text-align:left}
.pb-price--fiche{margin:25px 0 21px}
.pb-price .pb-price-value{display:block;margin:0;font-family:var(--display);font-size:clamp(32px,3.3vw,45px);font-weight:600;line-height:1.08;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.pb-price .pb-price-label{display:block;font-size:13px;line-height:1.6;margin-top:6px;color:var(--muted)}
.pb-price .pb-price-scope{display:block;font-size:13px;line-height:1.6;margin-top:3px;color:var(--ink)}
.pb-price--consult .pb-price-value{font-family:var(--body);font-size:19px;font-weight:500;line-height:1.5;letter-spacing:0}
.pb-price .pb-price-validity{display:block;font-size:12px;line-height:1.6;margin-top:4px;color:var(--ink)}
.pb-price-details{margin-top:6px;max-width:49ch}
.pb-price-details summary{display:inline-flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;font-size:12px;line-height:1.5;list-style:none;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.pb-price-details summary::-webkit-details-marker{display:none}
.pb-price-details summary svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
.pb-price-details[open] summary svg{transform:rotate(45deg)}
.pb-price .pb-price-details>p{font-family:var(--body);font-size:12px;line-height:1.7;color:var(--muted);margin:3px 0 0;max-width:49ch}
.pb-price-details summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.pb-price--card{display:grid;align-content:start;min-height:78px;margin:13px 0 4px}
.pb-price--card .pb-price-value{font-size:28px;line-height:1.1}
.pb-price--card .pb-price-label{font-size:12px;margin-top:4px}
.pb-price--card .pb-price-scope{font-size:11px;margin-top:2px;line-height:1.55}
.pb-price--card.pb-price--consult .pb-price-value{font-size:14px;font-weight:500;line-height:1.6}
.accessory-copy .pb-price--card .pb-price-value{font-size:38px}
.pb-price-notice{max-width:1720px;margin:0 auto;padding:5px var(--gutter) 30px;font:400 12px/1.7 var(--body);color:var(--muted)}
.pb-price--home{margin:15px 0 5px}
.pb-price--home .pb-price-value{font-size:30px}
.pb-price--home .pb-price-label{font-size:12px;margin-top:3px}
.pb-price--home.pb-price--consult .pb-price-value{font:500 14px/1.6 var(--body)}
.pb-equipment-tile .pb-price--home{text-align:center}
@media(max-width:760px){.pb-price--fiche{margin-top:22px;margin-bottom:18px}.pb-price .pb-price-value{font-size:36px}.pb-price--consult .pb-price-value{font-size:18px}.pb-price--card{min-height:77px;margin-top:12px}.pb-price--card .pb-price-value{font-size:25px}.pb-price--card .pb-price-label{font-size:11px}.pb-price--card .pb-price-scope{font-size:11px}.pb-price--card.pb-price--consult .pb-price-value{font-size:13px}.accessory-copy .pb-price--card .pb-price-value{font-size:34px}.pb-price-notice{padding-bottom:25px;font-size:11px}}

/* Keep price alignment in mixed grids; a consultation-only grid needs no blank price rows.
   Each grid responds independently to filtering and the commercial freshness guard. */
.catalog-grid:not(:has(> .catalog-card:not([hidden]) .pb-price--card:not(.pb-price--consult))) > .catalog-card:not([hidden]) .pb-price--card.pb-price--consult{min-height:0}
