/* Infobulle Pack service */
.tip-wrap{position:relative;display:inline;vertical-align:baseline}
.tip-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;
  padding:0;border:1px solid rgba(1,47,55,.35);border-radius:50%;background:transparent;
  color:var(--ink);font-size:.72rem;line-height:1;cursor:pointer;flex:none;vertical-align:middle}
.tip-btn:hover,.tip-btn[aria-expanded="true"]{border-color:var(--gold);color:var(--gold);background:rgba(198,154,51,.12)}

/* Lien-texte souligné (style d’origine du hero, partout) */
.tip-btn.tip-btn--text{
  display:inline;width:auto;height:auto;padding:0;border:0;border-radius:0;
  background:transparent;color:var(--ink);font:inherit;font-weight:700;
  text-decoration:underline;text-decoration-color:rgba(1,47,55,.35);
  text-underline-offset:3px;cursor:help;vertical-align:baseline;white-space:nowrap;
  box-shadow:none;text-transform:none;letter-spacing:inherit;line-height:inherit
}
.tip-btn.tip-btn--text:hover,
.tip-btn.tip-btn--text[aria-expanded="true"]{
  background:transparent;border:0;color:var(--ink);
  text-decoration-color:var(--ink);box-shadow:none
}

.tip-bubble{position:absolute;z-index:60;width:min(280px,calc(100vw - 32px));padding:12px 14px;
  border-radius:12px;background:var(--paper,#fffaf2);color:var(--ink,#012f37);font-size:.8rem;line-height:1.45;
  font-weight:400;text-transform:none;letter-spacing:0;text-align:left;
  box-shadow:0 10px 28px rgba(0,0,0,.22);border:1px solid var(--line,rgba(1,47,55,.14));
  bottom:calc(100% + 10px);left:0;white-space:normal;opacity:1}
.tip-bubble[hidden]{display:none!important}
.tip-bubble::after{content:"";position:absolute;top:100%;left:14px;
  border:7px solid transparent;border-top-color:var(--paper,#fffaf2)}
.tip-bubble .tip-close{position:absolute;top:6px;right:6px;width:28px;height:28px;border:0;
  background:transparent;color:var(--ink,#012f37);font-size:1.1rem;line-height:1;cursor:pointer;
  border-radius:6px;opacity:.55}
.tip-bubble .tip-close:hover{opacity:1;background:rgba(1,47,55,.08)}
.tip-bubble .tip-text{display:block;padding-right:22px}

/* Variante hero : bulle alignée à droite */
.hero-offer .tip-wrap{display:inline-block;position:relative;white-space:nowrap}
.hero-offer .tip-bubble{left:auto;right:0}
.hero-offer .tip-bubble::after{left:auto;right:18px}

.lines li.ligne-offre .tip-wrap{margin-right:2px}
.calc-footnote .tip-wrap,
.budget-note .tip-wrap,
.fine .tip-wrap{white-space:nowrap}

/* Calculateur : fond --ink → le lien Pack service doit rester lisible */
.calc .tip-btn.tip-btn--text{
  color:var(--cream,#F7F1E9);
  text-decoration-color:rgba(247,241,233,.45)
}
.calc .tip-btn.tip-btn--text:hover,
.calc .tip-btn.tip-btn--text[aria-expanded="true"]{
  color:var(--gold);
  text-decoration-color:var(--gold)
}
