/* =========================================================
   ANNONCE PRODUIT — fiche détaillée
   ========================================================= */
.annonce{ padding-block:clamp(32px,5vw,56px) clamp(56px,8vw,96px); }
.annonce-back{
  display:inline-flex; align-items:center; gap:.4em;
  font-family:var(--display); font-size:.86rem; color:var(--ink-mute);
  margin-bottom:2rem; transition:color .2s;
}
.annonce-back:hover{ color:var(--ink); }
.annonce-back svg{ width:1.1em; height:1.1em; }

.annonce-grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,5vw,64px); align-items:start; }

/* média */
.annonce-media{
  position:relative; background:#fff; border-radius:8px; overflow:hidden;
  border:1px solid var(--line-strong); aspect-ratio:1; display:grid; place-items:center;
}
.annonce-media img{ width:82%; height:82%; object-fit:contain; }
.annonce-flag{
  position:absolute; top:16px; left:16px; z-index:2;
  font-family:var(--display); font-weight:600; font-size:.78rem; letter-spacing:.04em;
  background:var(--red); color:#fff; padding:.45em .9em; border-radius:3px;
}

/* infos */
.annonce-info h1{ font-size:clamp(1.9rem,4vw,2.7rem); margin:.9rem 0 .5rem; }
.annonce-ref{ color:var(--ink-faint); font-size:.85rem; margin:0 0 1.4rem; }
.annonce-price{ display:flex; align-items:baseline; gap:.9rem; flex-wrap:wrap; padding:1.2rem 0; border-block:1px solid var(--line); }
.annonce-price .now{ font-family:var(--display); font-weight:700; font-size:2.6rem; color:var(--ink); line-height:1; }
.annonce-price .was{ font-size:1.25rem; color:var(--ink-faint); text-decoration:line-through; }
.annonce-price .save{ font-family:var(--display); font-weight:600; font-size:.85rem; background:var(--red); color:#fff; padding:.4em .8em; border-radius:3px; }
.annonce-lead{ color:var(--ink-soft); margin:1.4rem 0; }

.annonce-highlights{ display:flex; flex-direction:column; gap:.9rem; margin:1.4rem 0; }
.hl{ display:flex; gap:.9rem; align-items:center; }
.hl svg{ width:26px; height:26px; color:var(--red); flex-shrink:0; }
.hl b{ font-family:var(--display); display:block; font-size:.95rem; }
.hl span{ color:var(--ink-mute); font-size:.85rem; }

.annonce-actions{ display:flex; gap:.8rem; flex-wrap:wrap; margin-top:1.6rem; }
.annonce-note{ font-size:.76rem; color:var(--ink-faint); margin-top:1rem; }

/* specs */
.annonce-specs{ margin-top:clamp(48px,7vw,80px); }
.annonce-specs h2{ font-size:clamp(1.5rem,3vw,2rem); margin-bottom:1.8rem; }
.specs-cols{ display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(20px,3vw,36px); }
.spec-block{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1.6rem; }
.spec-block h3{ font-family:var(--display); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--brass); margin-bottom:1.1rem; }
.spec-block ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.6rem; }
.spec-block li{ display:flex; justify-content:space-between; gap:1rem; font-size:.9rem; border-bottom:1px solid var(--line); padding-bottom:.6rem; }
.spec-block li:last-child{ border-bottom:0; padding-bottom:0; }
.spec-block li span{ color:var(--ink-mute); }
.spec-block li b{ color:var(--ink); font-weight:600; text-align:right; }
.prog-list{ color:var(--ink-soft); font-size:.88rem; line-height:1.7; margin:0 0 1rem; }
.spec-dims{ color:var(--ink-mute); font-size:.85rem; margin:0; padding-top:.8rem; border-top:1px solid var(--line); }
.spec-dims b{ color:var(--ink); }

/* CTA bas */
.annonce-cta{
  margin-top:clamp(40px,6vw,64px);
  background:linear-gradient(100deg, var(--red-deep), var(--red-band));
  border-radius:8px; padding:clamp(1.8rem,4vw,2.8rem);
  display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap;
}
.annonce-cta h2{ color:#fff; font-size:clamp(1.4rem,3vw,1.9rem); }
.annonce-cta p{ color:rgba(255,255,255,.88); margin:.6rem 0 0; max-width:48ch; }
.annonce-cta-actions{ display:flex; gap:.8rem; flex-wrap:wrap; }

@media (max-width:860px){
  .annonce-grid{ grid-template-columns:1fr; }
  .specs-cols{ grid-template-columns:1fr; }
  .annonce-cta{ flex-direction:column; align-items:flex-start; }
}

/* tags sur fiche produit générique */
.annonce-info .prod-tags{ display:flex; flex-wrap:wrap; gap:.4rem; }
.annonce-info .prod-tags span{ font-size:.76rem; color:var(--ink-soft); border:1px solid var(--line-strong); border-radius:20px; padding:.3em .8em; background:var(--surface); }

/* mention livraison fiche produit */
.annonce-livraison{
  display:flex; align-items:center; gap:.5em; margin:1rem 0 0;
  font-size:.9rem; color:var(--brass); font-family:var(--display); font-weight:500;
}
.annonce-livraison svg{ width:18px; height:18px; flex-shrink:0; }
