/* JASP · Pied de page — cotes Figma (fond 127:809 : y 8843.16, 1838 × 1134), repère = coin du fond */
.j-footer-wrap { display: block; max-width: 1920px; margin: calc(117.51 * var(--u)) auto calc(51.48 * var(--u)); }
.j-footer {
  height: calc(1134.38 * var(--u)); color: var(--j-white);
  background: linear-gradient(180deg, var(--j-blue) 0%, var(--j-ink) 100%);
}
.j-footer > * { position: absolute; }
.j-footer__motif { inset: 0; width: 100%; height: 100%; pointer-events: none; }

.j-footer__advice { left: calc(111.43 * var(--u)); top: calc(116.28 * var(--u)); display: grid; gap: calc(30 * var(--u)); }
.j-footer__advice h2 {
  width: calc(742.66 * var(--u)); font-weight: 400; font-size: max(28px, calc(65 * var(--u)));
  line-height: 1; letter-spacing: -0.02em; color: var(--j-white);
}
.j-footer__advice p { width: calc(632.81 * var(--u)); font-size: max(15px, calc(24 * var(--u))); line-height: 1.2; }

.j-footer__signup {
  display: flex; align-items: center; justify-content: flex-end;
  padding: calc(10 * var(--u)) calc(10 * var(--u)) calc(10 * var(--u)) calc(35 * var(--u));
  background: var(--j-white); border-radius: calc(70 * var(--u));
}
.j-footer__signup input {
  min-width: 0; border: 0; padding: 0; background: none; outline: none;
  font-family: var(--j-font); font-size: max(15px, calc(24 * var(--u))); line-height: 1.08; letter-spacing: -0.02em; color: var(--j-black);
}
.j-footer__signup input::placeholder { color: var(--j-grey-text); opacity: 1; }
.j-footer__signup:focus-within { box-shadow: 0 0 0 2px #d4ff5f; }
.j-footer__signup button { border: 0; cursor: pointer; }
.j-footer__signup--big { right: calc(117.66 * var(--u)); top: calc(130 * var(--u)); gap: calc(134 * var(--u)); }
.j-footer__signup--big input { width: calc(226 * var(--u)); }
.j-footer__signup--small { left: calc(1282.48 * var(--u)); top: calc(717.77 * var(--u)); gap: calc(22 * var(--u)); }
.j-footer__signup--small input { width: calc(226 * var(--u)); }
.j-footer__btn-lime { gap: calc(10 * var(--u)); background: #d4ff5f; color: var(--j-ink); }
.j-footer__btn-lime:hover { background: #c4f23f; }
.j-icon--mail { width: calc(23.58 * var(--u)); height: calc(18.86 * var(--u)); }

.j-footer__note { left: calc(1169.71 * var(--u)); top: calc(308.28 * var(--u)); font-size: max(13px, calc(24 * var(--u))); line-height: 1.08; letter-spacing: -0.02em; color: #ffbd94; white-space: nowrap; }
.j-footer__rule { left: calc(111.43 * var(--u)); top: calc(450.52 * var(--u)); width: calc(1615.27 * var(--u)); height: 1px; margin: 0; border: 0; background: var(--j-white); }

.j-footer__brand { left: calc(111.43 * var(--u)); top: calc(562.77 * var(--u)); display: grid; gap: calc(24 * var(--u)); }
.j-footer__brand img { width: calc(192.33 * var(--u)); height: auto; }
.j-footer__brand p { width: calc(393.82 * var(--u)); font-size: max(14px, calc(24 * var(--u))); line-height: 1.2; }

.j-footer__col { top: calc(562.77 * var(--u)); display: grid; gap: calc(24 * var(--u)); align-content: start; }
.j-footer__col--1 { left: calc(608.71 * var(--u)); }
.j-footer__col--2 { left: calc(969.71 * var(--u)); }
.j-footer__col--news { left: calc(1297.71 * var(--u)); }
.j-footer__col h3 { font-weight: 700; font-size: max(13px, calc(24 * var(--u))); line-height: 1; letter-spacing: .3em; text-transform: uppercase; color: var(--j-white); white-space: nowrap; }
.j-footer__col ul { display: grid; gap: calc(10 * var(--u)); list-style: none; }
.j-footer__col a, .j-footer__col p { font-size: max(14px, calc(24 * var(--u))); line-height: 1.2; color: var(--j-blue); white-space: nowrap; transition: color .2s ease; }
.j-footer__col p { width: calc(270.14 * var(--u)); white-space: normal; }
.j-footer__col a:hover { color: var(--j-white); }

.j-footer__copy, .j-footer__legal { top: calc(1016.78 * var(--u)); transform: translateY(-50%); font-size: max(13px, calc(24 * var(--u))); line-height: 1.2; }
.j-footer__copy { left: calc(111.43 * var(--u)); }
.j-footer__legal { right: calc(111.43 * var(--u)); text-align: right; white-space: nowrap; }
.j-footer__legal a { text-decoration: underline; text-underline-offset: .15em; }
.j-footer__legal a:hover { color: #d4ff5f; }

@media (max-width: 989px) {
  .j-footer-wrap { margin: 56px auto 12px; }
  .j-footer { height: auto; padding: 40px 24px 28px; display: grid; gap: 28px; }
  .j-footer > *:not(.j-footer__motif) { position: relative; inset: auto; transform: none; }
  .j-footer__advice h2, .j-footer__advice p, .j-footer__brand p, .j-footer__col p { width: auto; }
  .j-footer__signup { justify-content: space-between; gap: 12px !important; }
  .j-footer__signup input { width: 100% !important; flex: 1; }
  .j-footer__note { white-space: normal; margin-top: -16px; }
  .j-footer__rule { width: 100%; }
  .j-footer__legal { text-align: left; white-space: normal; }
}
