/* Comptoir Clair — pièces d'origine BMW par référence. */
.ref-shop{max-width:1180px;margin:auto;padding:54px 24px 88px;color:var(--sp-encre)}
.ref-shop .eyebrow{margin:0 0 14px;color:var(--sp-bronze);letter-spacing:.16em;font:11px var(--mono);text-transform:uppercase}
.ref-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.72fr);gap:clamp(28px,7vw,100px);align-items:end;padding:34px 0 48px;border-bottom:1px solid var(--sp-ligne)}
.ref-hero h1{margin:0;color:var(--sp-encre);font:700 clamp(42px,6vw,76px)/.97 var(--display);letter-spacing:-.06em}.ref-hero h1 em{color:var(--sp-bronze);font-family:var(--sp-police-accent);font-weight:400}
.ref-shop .intro{max-width:640px;margin:24px 0 0;color:var(--sp-gris);font-size:19px;line-height:1.6}
.ref-help{padding:24px;background:var(--sp-craie);border:1px solid var(--sp-ligne);border-radius:12px}.ref-help>p{margin:0 0 12px;color:var(--sp-bronze);font:11px var(--mono);letter-spacing:.15em}
.ref-help ul{margin:0;padding-left:18px;color:var(--sp-gris);font-size:14px;line-height:1.55}.ref-help li+li{margin-top:8px}.ref-help b{color:var(--sp-encre)}
.ref-help code{padding:1px 5px;background:var(--sp-blanc);border-radius:4px;color:var(--sp-encre);font:12px var(--mono);white-space:nowrap}
.ref-search{padding:44px 0 20px}.ref-search label{display:block;margin-bottom:10px;color:var(--sp-gris);font-size:14px}
.ref-field{display:flex;gap:10px;max-width:760px}
.ref-field input{flex:1;min-width:0;padding:16px 18px;background:var(--sp-blanc);border:1px solid var(--sp-ligne);border-radius:9px;color:var(--sp-encre);font:17px var(--mono);letter-spacing:.04em}
.ref-field input:focus,.ref-request input:focus,.ref-request textarea:focus{outline:2px solid var(--sp-bronze);outline-offset:1px;border-color:var(--sp-bronze)}
.ref-field button,.ref-button{padding:15px 22px;border:1px solid var(--sp-bronze);border-radius:9px;background:var(--sp-bronze);color:var(--sp-blanc);font:600 15px var(--corps);cursor:pointer}
.ref-field button:hover,.ref-button:hover{background:var(--sp-bronze);border-color:var(--sp-bronze)}.ref-button:disabled{opacity:.6;cursor:wait}
#ref-status{min-height:22px;margin:16px 0;color:var(--sp-gris);font-size:15px;line-height:1.5}#ref-status b{color:var(--sp-encre);font-family:var(--mono)}
.ref-results{display:grid;gap:14px;max-width:900px}
.ref-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:18px;background:var(--sp-blanc);border:1px solid var(--sp-ligne);border-radius:10px;box-shadow:0 6px 20px #30362e08}
.ref-photo{display:block;aspect-ratio:1;background:var(--sp-blanc);border:1px solid var(--sp-craie);border-radius:8px;overflow:hidden}.ref-photo img{width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box}
.ref-card h2{margin:2px 0 6px;font:600 20px/1.25 var(--display);letter-spacing:-.02em}.ref-card h2 a{color:var(--sp-encre);text-decoration:none}.ref-card h2 a:hover{color:var(--sp-bronze)}
.ref-brand{margin:0;color:var(--sp-bronze);font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.ref-code{margin:0 0 10px;color:var(--sp-bronze);font:12px var(--mono)}.ref-card strong{display:block;font:600 22px var(--display);letter-spacing:-.03em}
.ref-fits{margin:12px 0 6px;color:var(--sp-gris);font-size:13px}.ref-vehicles{display:flex;flex-wrap:wrap;gap:6px}
.ref-vehicles a{padding:6px 10px;border:1px solid var(--sp-ligne);border-radius:999px;color:var(--sp-encre);font-size:13px;text-decoration:none}.ref-vehicles a:hover{border-color:var(--sp-bronze);color:var(--sp-bronze)}
.ref-other{margin:6px 0 0;color:var(--sp-gris);font-size:14px}.ref-other button{padding:0;border:0;background:none;color:var(--sp-bronze);font:inherit;text-decoration:underline;cursor:pointer}
.ref-request{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px;margin-top:30px;padding:34px;background:var(--sp-blanc);border:1px solid var(--sp-ligne);border-radius:12px;scroll-margin-top:90px}
.ref-request h2{margin:0;font:600 clamp(26px,3vw,36px)/1.1 var(--display);letter-spacing:-.04em}.ref-request>div>p:last-child{margin:14px 0 0;color:var(--sp-gris);line-height:1.6}
.ref-request form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ref-request label{display:grid;gap:6px;color:var(--sp-gris);font-size:13px}.ref-request .ref-wide{grid-column:1/-1}
.ref-request input,.ref-request textarea{padding:12px 13px;background:#fbfaf6;border:1px solid var(--sp-ligne);border-radius:7px;color:var(--sp-encre);font:15px var(--corps)}
.ref-request #r-ref,.ref-request #r-vin{font-family:var(--mono);letter-spacing:.03em}
.ref-request .ref-button{grid-column:1/-1}.ref-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
#ref-request-status{grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}#ref-request-status[data-state=error]{color:#a33a2a}#ref-request-status[data-state=success]{color:#4C5459}
@media(max-width:850px){.ref-hero,.ref-request{grid-template-columns:1fr}.ref-help{max-width:520px}}
@media(max-width:580px){.ref-shop{padding:28px 16px 62px}.ref-hero{padding:18px 0 34px}.ref-hero h1{font-size:46px}.ref-shop .intro{font-size:16px}
.ref-field{flex-direction:column}.ref-card{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:14px}.ref-card h2{font-size:17px}
.ref-request{padding:22px 18px}.ref-request form{grid-template-columns:1fr}}
.ref-vehicles details{width:100%}.ref-vehicles summary{display:inline-block;padding:6px 10px;color:var(--sp-bronze);font-size:13px;cursor:pointer}.ref-vehicles details .ref-vehicles{margin-top:6px}
.ref-request[hidden]{display:none}
