/* Barre-Traction / Studio produit 2026-10-28. Only applies to product pages. */
body:has(.detail-hero) {
  --bt-p-bg: var(--bt-product-background, #FAFAF8);
  --bt-p-card: var(--bt-product-card, #fff);
  --bt-p-text: var(--bt-product-text, #171B24);
  --bt-p-line: var(--bt-product-border, #E5E5E0);
  --bt-p-gold: var(--bt-product-rating, #F2B544);
  background: var(--bt-p-bg);
  color: var(--bt-p-text);
}
body:has(.detail-hero) .breadcrumb {padding-top:18px;padding-bottom:18px;color:var(--bt-muted,#565c63);font-size:.83rem}
body:has(.detail-hero) .detail-hero {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:clamp(24px,3.4vw,52px);padding-top:0;padding-bottom:48px}
body:has(.detail-hero) .detail-hero > * {min-width:0}
body:has(.detail-hero) .detail-photo {background:var(--bt-p-card);border:1px solid var(--bt-p-line);border-radius:18px;box-shadow:0 10px 32px rgba(21,27,35,.035)}
body:has(.detail-hero) .bt22-stage {border:0;background:var(--bt-p-card);border-radius:13px;aspect-ratio:1.12}
body:has(.detail-hero) .bt22-thumbs {gap:10px}
body:has(.detail-hero) .bt22-thumb {background:#fff;border:1px solid var(--bt-p-line);border-radius:11px;transition:border-color .15s ease,box-shadow .15s ease}
body:has(.detail-hero) .bt22-thumb[aria-pressed=true], body:has(.detail-hero) .bt22-thumb:focus-visible {border:2px solid var(--bt-accent,#FFE33B);box-shadow:0 0 0 2px rgba(240,184,75,.11)}
body:has(.detail-hero) .bt22-counter {color:var(--bt-muted,#62676d);font-size:.77rem}
body:has(.detail-hero) .detail-info .kicker,body:has(.detail-hero) .detail-main .kicker {color:var(--bt-primary,#EB1208);font-size:.72rem;letter-spacing:.13em;font-weight:800}
body:has(.detail-hero) .detail-info h1 {font-size:clamp(1.9rem,3.3vw,3rem);line-height:1.09;font-weight:850;letter-spacing:-.045em;color:var(--bt-p-text);margin:.52em 0 .48em}
body:has(.detail-hero) .detail-tags span {background:var(--bt-p-bg);color:var(--bt-p-text);border:1px solid var(--bt-p-line);border-radius:99px;padding:6px 12px}
body:has(.detail-hero) .bt-opinion-card,body:has(.detail-hero) .buy-box {background:var(--bt-p-card);border:1px solid var(--bt-p-line);border-radius:16px;box-shadow:0 12px 32px rgba(14,21,30,.045);padding:clamp(19px,2.3vw,30px)}
body:has(.detail-hero) .bt-opinion-card {margin-top:18px;background:color-mix(in srgb, var(--bt-p-bg) 65%, var(--bt-p-card) 35%)}
body:has(.detail-hero) .bt-opinion-heading {color:var(--bt-p-text);letter-spacing:.12em;font-size:.73rem}
body:has(.detail-hero) .bt-opinion-score {font-size:clamp(2rem,3.3vw,3.25rem);font-weight:800;line-height:1.1;color:var(--bt-p-text)}
body:has(.detail-hero) .bt-opinion-stars-fill {color:var(--bt-p-gold)}
body:has(.detail-hero) .bt-opinion-explain {color:var(--bt-p-text);margin-top:8px;font-size:.92rem;line-height:1.5}
body:has(.detail-hero) .buy-box {margin-top:16px}
body:has(.detail-hero) .buy-box-top {font-size:.77rem;letter-spacing:.06em}
body:has(.detail-hero) .buy-price {font-size:clamp(2rem,3vw,2.8rem);font-weight:830;line-height:1.15;color:var(--bt-p-text);letter-spacing:-.035em}
body:has(.detail-hero) .price-updated {color:var(--bt-muted,#5b636d);font-size:.8rem;margin-bottom:18px}
body:has(.detail-hero) .buy-box .btn-accent {background:var(--bt-accent,#FFE33B);color:var(--bt-button-text,#171B24);border-radius:11px;font-weight:800;box-shadow:none;min-height:48px}
body:has(.detail-hero) .buy-box .btn-accent:hover {filter:brightness(.96)}
body:has(.detail-hero) .buy-legal {font-size:.73rem;line-height:1.5;color:var(--bt-muted,#5b636d)}
body:has(.detail-hero) .detail-check {color:var(--bt-p-text);font-weight:650;margin-top:14px;display:flex;align-items:center;gap:10px}
body:has(.detail-hero) .detail-check input {accent-color:var(--bt-primary,#EB1208);width:17px;height:17px}
body:has(.detail-hero) .section-cream {background:var(--bt-p-bg);border-top:1px solid var(--bt-p-line)}
body:has(.detail-hero) .detail-grid {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.85fr);gap:clamp(30px,5vw,80px);align-items:start}
body:has(.detail-hero) .detail-main h2 {color:var(--bt-p-text);font-size:clamp(1.6rem,2.6vw,2.25rem);letter-spacing:-.035em;line-height:1.18}
body:has(.detail-hero) .detail-main .text-panel {color:var(--bt-p-text);font-size:1rem;line-height:1.75;max-width:75ch}
body:has(.detail-hero) .spec-panel {background:var(--bt-p-card);color:var(--bt-p-text);border:1px solid var(--bt-p-line);border-radius:16px;padding:24px;box-shadow:0 10px 25px rgba(14,21,30,.035)}
body:has(.detail-hero) .spec-panel h3 {color:var(--bt-p-text);font-size:1.25rem;margin-bottom:15px}
body:has(.detail-hero) .spec-panel dl > div {border-bottom:1px solid var(--bt-p-line);padding:8px 0}
body:has(.detail-hero) .spec-panel dl > div:last-child {border-bottom:0}
body:has(.detail-hero) .spec-panel dt {color:var(--bt-muted,#59616d)}
body:has(.detail-hero) .spec-panel dd {color:var(--bt-p-text);font-weight:650;text-align:right}
body:has(.detail-hero) .bt-product-extra,body:has(.detail-hero) .pros-cons {margin-top:30px}
@media(max-width:900px){body:has(.detail-hero) .detail-hero{grid-template-columns:1fr;gap:24px}body:has(.detail-hero) .detail-grid{grid-template-columns:1fr;gap:22px}body:has(.detail-hero) .detail-info h1{font-size:clamp(1.8rem,6vw,2.65rem)}}
@media(max-width:560px){body:has(.detail-hero) .detail-hero{padding-bottom:30px}body:has(.detail-hero) .detail-photo{border-radius:13px}body:has(.detail-hero) .bt22-thumbs{gap:5px}body:has(.detail-hero) .bt-opinion-card,body:has(.detail-hero) .buy-box{padding:18px}}
