/* Detail produit — handoff. */
.crumb{padding-top:22px;font-size:13px;color:var(--ink-soft);display:flex;align-items:center;gap:9px;}
.crumb a:hover{color:var(--petrol);}
.crumb span{opacity:.5;}
.crumb b{color:var(--ink);font-weight:600;}

.product{padding:18px 0 26px;}
.product .wrap{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:start;}

/* Galerie */
.gallery{display:grid;grid-template-columns:84px 1fr;gap:16px;position:sticky;top:96px;}
.thumbs{display:flex;flex-direction:column;gap:12px;}
.thumb{aspect-ratio:1;border-radius:11px;border:1px solid var(--line);cursor:pointer;transition:.2s;
  overflow:hidden;background:var(--bg-soft);padding:0;}
.thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.thumb.active{border-color:var(--petrol);box-shadow:0 0 0 2px var(--petrol-tn);}
.thumb:hover{border-color:var(--ink-soft);}
.stage{position:relative;aspect-ratio:4/4.7;border-radius:var(--radius);overflow:hidden;background:var(--bg-soft);}
.stage img{width:100%;height:100%;object-fit:cover;display:block;}
.stage .badge-marq{position:absolute;top:16px;left:16px;background:#fff;border:1px solid var(--line);
  font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--petrol);
  padding:6px 13px;border-radius:999px;z-index:2;display:inline-flex;align-items:center;gap:7px;}

/* Info */
.info .ref{font-size:12.5px;color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-weight:600;}
.info h1{font-size:34px;font-weight:800;color:var(--ink);margin-top:8px;line-height:1.08;}
.price-row{margin-top:22px;display:flex;align-items:baseline;gap:12px;}
.price-row .now{font-family:"Archivo";font-weight:800;font-size:34px;color:var(--ink);}
.price-row .unit{font-size:13.5px;color:var(--ink-soft);}

.opt{margin-top:26px;}
.opt .opt-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.opt .opt-head h4{font-family:"Hanken Grotesk";font-size:13px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--ink);margin:0;}
.opt .opt-head .pick{font-size:13.5px;color:var(--ink-soft);}
.opt .opt-head .pick b{color:var(--ink);font-weight:600;}

.colors{display:flex;gap:10px;flex-wrap:wrap;}
.color{width:38px;height:38px;border-radius:10px;cursor:pointer;position:relative;
  border:1px solid oklch(0% 0 0/.12);transition:.15s;padding:0;}
.color::after{content:"";position:absolute;inset:-4px;border-radius:13px;border:2px solid transparent;transition:.15s;}
.color.active::after{border-color:var(--petrol);}

.sizes{display:flex;gap:9px;flex-wrap:wrap;}
.size{min-width:48px;padding:11px 8px;text-align:center;border:1px solid var(--line);border-radius:10px;
  font-weight:600;font-size:14px;color:var(--ink);cursor:pointer;background:#fff;transition:.15s;font-family:inherit;}
.size:hover{border-color:var(--ink-soft);}
.size.active{border-color:var(--petrol);background:var(--petrol);color:#fff;}

/* Encart personnalisation (upload logo) */
.perso{margin-top:28px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;}
.perso-top{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;background:var(--petrol-tn);}
.perso-top .pic{width:42px;height:42px;border-radius:11px;background:var(--petrol);color:#fff;flex:none;display:grid;place-items:center;}
.perso-top .pic svg{width:22px;height:22px;color:#fff;}
.perso-top .pic svg *{stroke-width:1.7;}
.perso-top h4{font-size:16px;font-weight:700;color:var(--petrol-dk);margin:0;font-family:"Hanken Grotesk";}
.perso-top p{font-size:13.5px;color:var(--petrol-dk);opacity:.85;margin:3px 0 0;}
.perso-body{padding:16px 20px;}
.perso-body input[type="file"]{font:inherit;font-size:13.5px;}
.perso-body .hint{display:block;margin-top:7px;font-size:12.5px;color:var(--ink-soft);}

/* Quantite + CTA */
.buy{margin-top:26px;display:flex;gap:14px;align-items:stretch;flex-wrap:wrap;}
.qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff;}
.qty button{width:46px;height:100%;border:none;background:#fff;font-size:20px;color:var(--ink);cursor:pointer;transition:.15s;font-family:inherit;}
.qty button:hover{background:var(--bg-soft);}
.qty input{width:56px;text-align:center;border:none;font-size:16px;font-weight:700;font-family:"Archivo";color:var(--ink);background:#fff;}
.qty input:focus{outline:none;}
.buy .btn-primary{flex:1;justify-content:center;}

.reassure{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.re{display:flex;align-items:center;gap:11px;font-size:13.5px;color:var(--ink);}
.re .ri{width:34px;height:34px;border-radius:9px;background:var(--bg-soft);border:1px solid var(--line);display:grid;place-items:center;color:var(--petrol);flex:none;}
.re .ri svg{width:17px;height:17px;}
.re .ri svg *{stroke-width:1.7;}
.re b{font-weight:600;}
.re span{display:block;color:var(--ink-soft);font-size:12px;}

@media(max-width:980px){
  .product .wrap{grid-template-columns:1fr;gap:32px;}
  .gallery{position:static;}
  .reassure{grid-template-columns:1fr;}
}
