/* Complément isolé pour les visuels pré-générés — phase de test. */
.tll-visuel-card{padding:24px 28px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:linear-gradient(120deg,#263259,#202849 65%,#36304d)}
.tll-visuel-heading h2{font-size:24px;line-height:1.28;letter-spacing:-.5px;margin:6px 0 8px;color:#fff}
.tll-visuel-heading p{font-size:13px;line-height:1.5;color:#c5cbe1;margin:0 0 20px}
.tll-banniere-lien{display:block;max-width:900px;margin:0 auto;border-radius:15px;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#0b1429}
.tll-banniere-image{display:block;width:100%;height:auto;object-fit:contain}
.tll-visuel-actions{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:19px}
.tll-apercu-carre{margin-left:auto;display:inline-flex;gap:8px;align-items:center;color:#edf1ff;text-decoration:none;font-size:12px}
.tll-apercu-carre img{width:56px;height:56px;object-fit:cover;border-radius:9px;border:1px solid rgba(255,255,255,.2)}
.tll-visuel-attente{padding:12px 14px;color:#d2d9e8;font-size:12px;border:1px solid rgba(255,255,255,.13);border-radius:12px}
@media(max-width:560px){.tll-visuel-card{padding:19px 17px}.tll-visuel-heading h2{font-size:20px}.tll-visuel-actions{flex-direction:column;align-items:stretch}.tll-visuel-actions>.action{width:100%;text-align:center}.tll-apercu-carre{margin-left:0;justify-content:flex-start}}

/* QR compact : bouton sous le texte à gauche, QR-code à droite.
   Une seule ligne évite la grande zone vide sous la carte. */
.qr-resource{
  display:grid;
  grid-template-columns:minmax(0,1fr) 185px;
  column-gap:26px;
  align-items:center;
}
.qr-resource .resource-text{min-width:0}
.qr-resource .resource-text p{margin-bottom:0}
.qr-resource .qr-large{justify-self:end}
.qr-resource .resource-text .tll-qr-actions{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  margin-top:16px;
}
.qr-resource .tll-qr-actions>.action{
  width:auto;
  max-width:100%;
  padding:10px 15px;
  border-radius:11px;
  text-align:center;
  border-color:rgba(255,191,123,.30);
  background:rgba(255,191,123,.10);
}
.qr-resource .tll-qr-actions>.action:hover{
  background:rgba(255,191,123,.19);
}
@media(max-width:560px){
  .qr-resource{grid-template-columns:minmax(0,1fr);row-gap:18px}
  .qr-resource .qr-large{justify-self:center;align-self:center}
  .qr-resource .resource-text .tll-qr-actions{margin-top:16px}
}

/* Espace vertical entre la carte QR-code et la carte bannière. */
.resources-area{row-gap:34px}
@media(max-width:560px){.resources-area{row-gap:26px}}
