/* ===== page Boutique : maillot + partenaires ===== */
/* héros : photo du dos (plein écran sur téléphone, en panneau à droite sur grand écran pour garder la netteté) */
.bq-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;padding:120px 0 70px}
.bq-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%}
.bq-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b0b0b 4%,rgba(11,11,11,.55) 40%,rgba(11,11,11,.2) 100%)}
.bq-hero .wrap{position:relative;z-index:2}.bq-hero h1{font-size:clamp(56px,9vw,130px);max-width:900px}
.bq-hero .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
@media(min-width:1101px){
.bq-hero{align-items:center;padding:130px 0 90px}
/* la photo se fond dans le noir sur ses bords gauche et bas (masque), sans bord net */
.bq-hero>img{left:auto;right:0;width:56%;object-position:50% 12%;
-webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.55) 22%,#000 48%),linear-gradient(0deg,transparent 0,#000 26%);-webkit-mask-composite:source-in;
mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.55) 22%,#000 48%),linear-gradient(0deg,transparent 0,#000 26%);mask-composite:intersect}
.bq-hero:after{background:linear-gradient(0deg,#0b0b0b 0%,transparent 22%)}
.bq-hero h1{max-width:640px}}
/* bandeau qui défile */
.bq-mq{background:var(--y);color:#111;overflow:hidden;padding:14px 0;border-top:1px solid #111;border-bottom:1px solid #111}
.bq-mq div{display:flex;width:max-content;animation:bqm 26s linear infinite;font-family:'Bebas Neue',sans-serif;font-size:34px;letter-spacing:.04em}
.bq-mq span{padding:0 26px;white-space:nowrap}.bq-mq span:after{content:"✦";margin-left:52px}
@keyframes bqm{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.bq-mq div{animation:none}}
/* fiche produit */
.bq-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.bq-main{position:relative;border-radius:26px;overflow:hidden;background:radial-gradient(circle at 50% 35%,#2b2306,#0f0f0f 72%);border:1px solid #3a3208;aspect-ratio:2/3;max-height:720px;margin:0 auto}
.bq-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.bq-tag{position:absolute;top:16px;left:16px;background:var(--y);color:#111;font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:7px 14px;border-radius:999px}
.bq-thumbs{display:flex;gap:12px;margin-top:14px}
.bq-thumbs button{flex:0 0 78px;height:98px;border-radius:14px;overflow:hidden;border:2px solid #333;padding:0;background:#111;cursor:pointer}
.bq-thumbs button.on{border-color:var(--y)}.bq-thumbs img{width:100%;height:100%;object-fit:cover}
.bq-info .lead{margin-top:16px}
.bq-price{display:flex;align-items:baseline;gap:14px;margin:26px 0 4px}
.bq-price b{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:68px;line-height:1;color:var(--y)}.bq-price span{color:var(--mut)}
.bq-opts{display:grid;gap:12px;margin:20px 0}
.bq-opts div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.bq-opts small{width:78px;color:var(--mut);font-size:13px;text-transform:uppercase;letter-spacing:.1em}
.bq-opts span{border:1.5px solid #444;border-radius:999px;padding:6px 14px;font-weight:700;font-size:14px}
.bq-list{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:10px}
.bq-list li{display:flex;gap:11px;color:#dcdcdc}.bq-list li:before{content:"✓";color:var(--y);font-weight:800}
.bq-note{font-size:13.5px;color:var(--mut);margin-top:14px}.bq-note a{color:var(--y)}
/* partenaires */
.bq-ps{display:grid;gap:22px;margin-top:46px}
.bq-p{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:26px;padding:34px}
.bq-pl{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.bq-logo{background:#fff;border-radius:14px;padding:12px 18px;min-height:62px;display:flex;align-items:center}
.bq-logo img{display:block;height:auto;max-height:50px;width:auto;max-width:170px}
.bq-pl small.t{color:var(--y);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.bq-pl p{margin:0;color:#cfcfcf;max-width:420px}
.bq-off{font-family:'Bebas Neue',sans-serif;font-size:64px;line-height:.95;color:#fff}.bq-off small{display:block;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--mut);margin-top:4px}
.bq-pr{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bq-prod{text-decoration:none;color:inherit;display:block}
.bq-prod .im{display:block;border-radius:16px;overflow:hidden;aspect-ratio:1;position:relative;background:#f3f0e8}
.bq-prod .im.cover img{width:100%;height:100%;object-fit:cover}
.bq-prod .im.contain img{width:100%;height:100%;object-fit:contain;padding:8%}
.bq-prod .im img{display:block;transition:transform .4s}.bq-prod:hover .im img{transform:scale(1.05)}
.bq-prod .nm{display:block;margin-top:9px;font-size:14px;font-weight:600;line-height:1.3;color:#e6e6e6}
.bq-disc{font-size:13px;color:var(--mut);max-width:760px;margin:30px auto 0;text-align:center}
/* codes de réduction (ticket) */
.cp{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px;border:2px dashed #7a6500;background:#1b1700;border-radius:14px;padding:10px 12px 10px 16px;width:100%;max-width:420px}
.cpl{min-width:0}.cp small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.cp b{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:26px;letter-spacing:.06em;color:var(--y);line-height:1;overflow-wrap:anywhere}
.cpb{display:inline-flex;align-items:center;gap:7px;font:inherit;font-weight:700;font-size:14px;background:var(--y);color:#111;border:0;border-radius:999px;padding:10px 16px;cursor:pointer;white-space:nowrap}
.cpb.ok{background:#2fbf6a;color:#fff}
/* barre fixe « Commander » (téléphone) */
.shirtbar{display:none}
@media(max-width:900px){
.bq-grid{grid-template-columns:1fr;gap:30px}.bq-hero{min-height:88svh}.bq-p{grid-template-columns:1fr;gap:26px;padding:26px 20px}
}
@media(max-width:700px){
.shirtbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:90;padding:22px 14px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(0deg,rgba(11,11,11,.97) 62%,rgba(11,11,11,0));transform:translateY(115%);transition:transform .32s;pointer-events:none}
.shirtbar.on{transform:none}.shirtbar a{display:flex;width:100%;pointer-events:auto;box-shadow:0 8px 26px rgba(242,194,0,.25)}
body:has(.ckb) .shirtbar{transform:translateY(115%)}
.bq-hero .ctas{justify-content:center}.bq-hero .wrap,.bq-info,.bq-pl{text-align:center;align-items:center}
.bq-price{justify-content:center}.bq-opts div{justify-content:center}.bq-opts small{width:100%}.bq-list li{text-align:left}.bq-thumbs{justify-content:center}.bq-mq div{font-size:26px}
.bq-pl p{margin-left:auto;margin-right:auto}.bq-off{font-size:56px}
.bq-pr{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -20px;padding:2px 20px 8px;scrollbar-width:none}
.bq-pr::-webkit-scrollbar{display:none}.bq-prod{flex:0 0 62%;scroll-snap-align:center;text-align:center}
.bq-ps .rv{opacity:1!important;transform:none!important}
.bq-main{aspect-ratio:4/5}.bq-main img{object-position:50% 16%}
.cp{justify-content:center;text-align:center}.cpl{width:100%}
}
