/* ventedeliens.fr : éléments de conversion (liens affiliés cliquables) */
a.podium-marche, a.barre-ligne, a.choix-carte, a.offre { text-decoration: none; color: inherit; transition: transform .15s, box-shadow .15s, filter .15s; }
a.podium-marche { color: #fff; }
a.podium-marche:hover { filter: brightness(1.08); transform: translateY(-3px); color: #fff; }
a.barre-ligne { border-radius: 10px; padding: .25rem .4rem; margin: 0 -.4rem; }
a.barre-ligne:hover { background: var(--vdl-bleu-pale); }
a.barre-ligne:hover .barre-val { color: var(--vdl-bleu); }
.lien-offre { font-weight: 700; color: var(--vdl-accent-fonce); white-space: nowrap; }
.lien-offre::after { content: " →"; }
.choix-carte .lien-offre { display: inline-block; margin-top: .4rem; }
a.choix-carte:hover { box-shadow: var(--vdl-ombre); transform: translateY(-2px); color: inherit; }
.duel-tete a { color: inherit; text-decoration: none; border-bottom: 2px solid var(--vdl-accent); }
.contenu td a.btn-mini, .btn-mini { display: inline-block; white-space: nowrap; font-size: .82rem; font-weight: 700; color: #fff; background: var(--vdl-accent); border-radius: 8px; padding: .3rem .7rem; text-decoration: none; }
.btn-mini:hover { background: var(--vdl-accent-fonce); color: #fff; }
.capture a { display: block; position: relative; }
.capture a::after { content: "Voir l'offre →"; position: absolute; right: 1rem; bottom: 1rem; background: var(--vdl-accent); color: #fff; font-weight: 700; font-size: .85rem; padding: .45rem .9rem; border-radius: 10px; box-shadow: 0 6px 18px rgba(255,107,53,.35); opacity: .95; }
.capture a:hover::after { opacity: 1; background: var(--vdl-accent-fonce); }

/* Code promo */
.code-promo { display: flex; align-items: center; gap: .6rem; background: var(--vdl-accent-pale); border: 2px dashed #ffb894; border-radius: 12px; padding: .6rem .7rem; margin-top: .8rem; }
.code-promo-texte { flex: 1; font-size: .8rem; color: #7a3412; line-height: 1.3; }
.code-promo-texte b { display: block; font-family: var(--vdl-titre); font-size: 1.05rem; color: var(--vdl-nuit); letter-spacing: .04em; }
.code-promo button { border: 0; background: var(--vdl-nuit); color: #fff; font-weight: 700; font-size: .8rem; border-radius: 8px; padding: .4rem .7rem; cursor: pointer; }
.code-promo button.copie { background: var(--vdl-vert); }
.mini-cta .code-promo { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.3); }
.mini-cta .code-promo-texte { color: rgba(255,255,255,.7); }
.mini-cta .code-promo-texte b { color: #fff; }

/* Barre d'offre mobile */
.barre-offre { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1050; display: flex; align-items: center; gap: .8rem; padding: .7rem 1rem calc(.7rem + env(safe-area-inset-bottom)); background: rgba(15,27,51,.97); color: #fff; box-shadow: 0 -8px 24px rgba(15,27,51,.25); }

.barre-offre-texte { flex: 1; min-width: 0; font-size: .8rem; line-height: 1.3; color: rgba(255,255,255,.75); }
.barre-offre-texte b { display: block; color: #fff; font-size: .92rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.barre-offre .btn-accent { padding: .55rem .9rem; font-size: .9rem; box-shadow: none; white-space: nowrap; }
@media (max-width: 991.98px) { body.a-offre { padding-bottom: 76px; } body.a-offre .haut { bottom: 88px; } }

/* Boîte à outils / offres */
.outils-reco { margin: 2.2rem 0; }
.outils-reco-titre { font-family: var(--vdl-titre); font-weight: 800; color: var(--vdl-nuit); font-size: 1.1rem; margin-bottom: .2rem; }
.outils-reco-sous { color: var(--vdl-gris); font-size: .9rem; margin-bottom: 1rem; }
.offres { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: .9rem; }
a.offre { display: flex; flex-direction: column; gap: .3rem; padding: 1.2rem; border-radius: 16px; background: #fff; border: 1px solid var(--vdl-trait); position: relative; }
a.offre:hover { box-shadow: var(--vdl-ombre); transform: translateY(-3px); color: inherit; border-color: #ffc9ad; }
.offre-badge { align-self: flex-start; font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: #fff; background: var(--vdl-accent); border-radius: 99px; padding: .2rem .6rem; }
.offre-badge.vert { background: var(--vdl-vert); }
.offre-badge.bleu { background: var(--vdl-bleu); }
.offre-nom { font-family: var(--vdl-titre); font-weight: 800; font-size: 1.1rem; color: var(--vdl-nuit); margin-top: .3rem; }
.offre-desc { color: var(--vdl-gris); font-size: .9rem; line-height: 1.45; flex: 1; }
.offre-code { font-size: .82rem; color: var(--vdl-gris); }
.offre-code b { color: var(--vdl-nuit); font-family: var(--vdl-titre); letter-spacing: .03em; background: var(--vdl-accent-pale); border: 1px dashed #ffb894; border-radius: 6px; padding: .05rem .4rem; }
.offre-cta { margin-top: .5rem; display: block; text-align: center; font-weight: 700; color: #fff; background: var(--vdl-accent); border-radius: 10px; padding: .55rem; }
a.offre:hover .offre-cta { background: var(--vdl-accent-fonce); }
.mention-offres { font-size: .8rem; color: var(--vdl-gris); margin-top: .8rem; }

.bandeau-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin: 2.2rem 0; padding: 1.3rem 1.5rem; border-radius: 16px; background: linear-gradient(120deg, var(--vdl-nuit), var(--vdl-nuit-2)); color: #fff; }
.bandeau-cta p { margin: 0; color: rgba(255,255,255,.85); font-size: .97rem; }
.bandeau-cta b { color: #fff; font-family: var(--vdl-titre); font-size: 1.08rem; display: block; }
