

#promesse .v2-texte { font-size: clamp(39.6px, 4.86vw, 73.8px); }

#haut .p-ix-badge { left: auto; right: var(--gout); max-width: none; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; text-align: right; }
.p-ix-badge-img { display: block; width: auto; height: 40px; }
.p-ix-badge-txt { font-family: var(--texte); font-size: 14px; font-weight: 500; line-height: 1; letter-spacing: .02em; color: rgba(249, 247, 242, .62); white-space: nowrap; }

@media (min-width: 768px) {

  #haut.v2-heros { --p-ix-bas: calc(clamp(48px, 9vh, 96px) + 96px); justify-content: center; padding-top: var(--barre); padding-bottom: var(--p-ix-bas); }
  #haut .v2-heros-desc:not(.p-ix-badge) { max-width: 440px; }
}

@media (min-width: 768px) and (max-height: 820px) {
  #haut.v2-heros { --p-ix-bas: calc(clamp(48px, 9vh, 96px) + 84px); }
  .p-ix-badge-img { height: 36px; }
}

@media (max-width: 767px) {
  #haut .p-ix-badge { align-items: center; text-align: center; margin-top: 26px; }
  .p-ix-badge-img { height: 34px; }
}

.p-ix-desc { display: none; }
.js:not(.v2-final) #haut .p-ix-desc { opacity: 0; }
@media (max-width: 991px) {
  #haut.v2-heros { height: auto; min-height: 100vh; justify-content: center; padding: calc(var(--barre) + 12px) var(--gout) 12px; }
  @supports (height: 100lvh) {
    #haut.v2-heros { min-height: 100lvh; padding-bottom: calc(100lvh - 100svh + 12px); }
  }
  #haut > .v2-heros-desc { display: none; }
  #haut .p-ix-desc { display: block; max-width: 25em; margin-top: 24px; font-family: var(--texte); font-size: 17px; line-height: 1.45; text-align: center;
    color: rgba(249, 247, 242, .78); text-wrap: pretty; }
  #haut .v2-actions { flex-wrap: nowrap; gap: 10px; margin-top: 28px; }
  #haut .v2-arc { top: auto; bottom: -14vh; height: 32vh; width: 21.3vh; }
  #haut .v2-arc--g { left: -12vh; }
  #haut .v2-arc--d { right: -12vh; }
}
@media (min-width: 768px) and (max-width: 991px) {
  #haut .p-ix-desc { max-width: 520px; margin-top: 28px; font-size: 19px; }
  #haut .v2-actions { margin-top: 34px; }
  #haut .v2-als { left: 50% !important; right: auto; top: auto !important; bottom: clamp(28px, 6vh, 64px) !important; transform: translate(-50%, 10px); }
  #haut .v2-als.v2-als--on { transform: translate(-50%, 0); }
}
@media (max-width: 479px) {
  #haut .v2-actions { gap: 8px; }
  #haut .v2-actions .v2-cta { height: 46px; gap: 7px; padding: 0 12px 0 4px; font-size: min(15px, calc((100vw - 132px) / 17)); }
  #haut .v2-actions .v2-cta-ico { width: 28px; height: 28px; background-size: 14px 14px; }
  #haut .v2-actions .v2-cta--contour .v2-cta-ico svg { width: 9px; height: 10px; }
}
