/* Formulaire bêta, partagé par les pages française et anglaise. */
.lp .beta-enrolment { padding:72px 28px; text-align:left; scroll-margin-top:56px; background:linear-gradient(130deg,#17123a,#2b2058); }
.beta-layout { max-width:1184px; margin:auto; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; align-items:start; }
.lp .beta-copy .beta-kicker { margin:0 0 20px; font:11px var(--font-mono); letter-spacing:.15em; color:#bba4f4; }
.lp .beta-enrolment h2 { font-size:clamp(32px,3.4vw,44px); line-height:1.08; letter-spacing:-.04em; text-wrap:balance; }
.lp .beta-copy > p { margin:23px 0 0; max-width:45ch; font-size:15px; line-height:1.7; color:#c4bbdb; }
.beta-how { margin-top:36px; }.lp .beta-how h3 { font:600 17px var(--font-sans); color:#fff; }.beta-how ol { list-style:none; padding:0; margin:24px 0 0; }.beta-how li { display:flex; gap:14px; margin-top:23px; }.beta-how li > span { width:30px; height:30px; display:grid; place-items:center; border:1px solid #68518d; border-radius:50%; flex-shrink:0; font:10px var(--font-mono); color:#c9b1f5; }.lp .beta-how h4 { font:550 14px var(--font-sans); color:#ede6fb; margin:4px 0 0; }.lp .beta-how li p { margin:7px 0 0; font-size:13px; line-height:1.6; color:#ac9fc4; max-width:36ch; }
.lp .beta-copy .beta-terms { padding-top:22px; border-top:1px solid #a78cce35; margin-top:30px; font-size:12px; color:#ab9cc2; }.lp .beta-copy .beta-contact { font-size:13px; }.beta-contact a { color:#dec9ff; text-decoration:underline; text-underline-offset:3px; }
.beta-form-card { min-width:0; background:#fff; color:#241b37; border:1px solid #e5dcf2; border-radius:20px; padding:30px; box-shadow:0 18px 45px -24px #0009; }
.lp .beta-form-card > h3 { font-size:23px; letter-spacing:-.035em; }.lp .beta-form-card .beta-required { color:#8a7e98; font-size:11px; margin:8px 0 12px; }
.lp .beta-enrolment .form { max-width:none; margin:0; }
.lp .beta-enrolment .form label > span { color:#62556f; font-size:12px; }.lp .beta-enrolment .form label > span > small { font-size:10px; color:#9a8da8; font-weight:400; }
.lp .beta-enrolment .form input[type="text"],.lp .beta-enrolment .form input[type="email"],.lp .beta-enrolment .form textarea,.lp .beta-enrolment .form select { width:100%; background:#fbf9fe; border:1px solid #ddd4eb; color:#30213f; border-radius:8px; font:14px var(--font-sans); }
.lp .beta-enrolment .form select { height:42px; padding:0 10px; }.lp .beta-enrolment .form textarea { min-height:96px; padding:10px 12px; line-height:1.5; }.lp .beta-enrolment .form ::placeholder { color:#a79bb2; opacity:1; font-size:12px; }
.lp .beta-enrolment .form input:focus,.lp .beta-enrolment .form textarea:focus,.lp .beta-enrolment .form select:focus { outline:none; border-color:#8d69d6; box-shadow:0 0 0 3px #efe7fc; }
.lp .beta-enrolment .roles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:18px; }.lp .beta-enrolment .roles legend { float:none; color:#62556f; font-size:12px; margin:0 0 8px; }.lp .beta-enrolment .roles label { min-height:42px; display:flex; gap:7px; justify-content:center; padding:8px 5px; border:1px solid #e3d9ef; border-radius:8px; background:#fbf9fe; }.lp .beta-enrolment .roles label:has(:checked) { background:#eee5fc; border-color:#b499df; }.lp .beta-enrolment .roles label > span { margin:0; font-size:12px; }.lp .beta-enrolment .roles input { accent-color:#7048be; margin:0; width:14px; height:14px; flex-shrink:0; }
.lp .beta-enrolment .form .consent { margin-top:20px; }.lp .beta-enrolment .form .consent > span { color:#766582; font-size:11px; line-height:1.55; }.lp .beta-enrolment .form .consent small { color:#9c90a5; font-size:10px; margin-top:7px; }.lp .beta-enrolment .form .consent input { accent-color:#7048be; }
.lp .beta-enrolment .form .msg { color:#a12c40; font-size:12px; margin:15px 0 0; max-width:none; }.lp .beta-enrolment .form .msg:focus { outline:2px solid #c8b2e6; outline-offset:4px; }.lp .beta-enrolment .form button[type="submit"] { margin-top:20px; min-height:44px; height:auto; padding:12px 15px; white-space:normal; text-align:center; line-height:1.4; }.lp .beta-enrolment .form button:disabled { opacity:.65; cursor:wait; }
.lp .beta-enrolment .sent { max-width:none; margin:22px 0 0; padding:20px; border-radius:12px; background:#f1ebfb; color:#3a2851; }.lp .beta-enrolment .sent p { color:#766183; font-size:13px; margin:12px 0 0; }.lp .beta-enrolment .sent .sent-title { color:#573684; font-size:19px; font-weight:650; margin:0; }.lp .beta-enrolment .sent p:last-child { font-size:11px; color:#95849f; }
@media(max-width:1000px) { .beta-layout { gap:35px; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }.beta-form-card { padding:24px; } }
@media(max-width:760px) { .beta-layout { grid-template-columns:minmax(0,1fr); max-width:560px; gap:30px; }.lp .beta-copy > p { max-width:none; }.beta-how { margin-top:25px; }.lp .beta-enrolment { padding:48px 20px; } }
@media(max-width:440px) { .beta-form-card { padding:23px 18px; border-radius:16px; }.lp .beta-enrolment .form .row { grid-template-columns:minmax(0,1fr); }.lp .beta-enrolment { padding:42px 14px; }.lp .beta-form-card > h3 { font-size:21px; }.lp .beta-enrolment .roles { gap:5px; }.lp .beta-enrolment .roles label > span { font-size:11px; } }

/* Parcours sur le fond du site : le trait suit la lecture, dans les deux sens. */
.lp .beta-enrolment{background:transparent;color:#17123a;padding:64px 28px 72px}
.beta-layout{gap:56px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.lp .beta-enrolment h2{color:#17123a;text-wrap:initial;font-size:clamp(32px,3.7vw,48px);line-height:1.08}
.lp .beta-enrolment h2>span{color:#6344d9}
.lp .beta-copy>.beta-intro{color:#625773;margin:24px 0 0;font-size:15px}
.lp .beta-copy .beta-kicker{margin:0 0 20px}
.beta-how{margin-top:36px}
.lp .beta-how h3{color:#17123a;font-size:18px}
.beta-how ol{position:relative;isolation:isolate;margin-top:24px;--beta-route-length:0px;--beta-progress:0}
.beta-how ol::before,.beta-how ol::after{content:"";position:absolute;left:20px;top:21px;width:3px;height:var(--beta-route-length);border-radius:3px;z-index:-1;pointer-events:none}
.beta-how ol::before{background:#e5dff2}
.beta-how ol::after{background:#7851e8;transform:scaleY(var(--beta-progress));transform-origin:top;box-shadow:0 0 9px #8b62e844}
.beta-how li{position:relative;gap:22px;margin:0;padding:0 0 30px}
.beta-how li:last-child{padding-bottom:0}
.beta-how li>span{width:42px;height:42px;background:#fff;border:1px solid #dfd4f6;color:#6344d9;font:500 13px var(--font-sans);transition:background .2s,color .2s,box-shadow .2s,border-color .2s}
.beta-how li.is-reached>span{background:#6344d9;color:#fff;border-color:#6344d9}
.beta-how li.is-current>span{box-shadow:0 0 0 5px #eee7fc,0 0 0 8px #f7f3fe,0 0 22px #8c63df55}
.lp .beta-how h4{margin:9px 0 0;color:#241b37;font-size:15px;font-weight:600}
.lp .beta-how li p{color:#786a8c;font-size:13px;margin:8px 0 0;max-width:37ch}
.lp .beta-copy .beta-terms{border-color:#e2ddec;color:#786a8c;margin-top:30px;padding-top:18px}
.lp .beta-copy .beta-contact{color:#786a8c;margin:17px 0 0}
.beta-contact a{color:#6344d9}
.beta-form-card{border-color:#c9b6ef;border-radius:22px;box-shadow:0 16px 46px -30px #6344d966}
@media(max-width:1000px){.beta-layout{gap:32px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
@media(max-width:760px){.beta-layout{grid-template-columns:minmax(0,1fr);gap:36px}.lp .beta-enrolment{padding:48px 20px}.lp .beta-enrolment h2{font-size:36px}.beta-how li{padding-bottom:30px}}
@media(max-width:440px){.lp .beta-enrolment{padding:42px 14px}.lp .beta-enrolment h2{font-size:34px}.beta-how li{gap:17px}.beta-form-card{padding:23px 18px}}
@media(prefers-reduced-motion:reduce){.beta-how li>span{transition:none}}
/* Reflet lumineux du bouton d'inscription. */
.lp .beta-enrolment .form button[type="submit"]{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 0 16px #7852df35;animation:beta-submit-glow 3.4s ease-in-out infinite}
.lp .beta-enrolment .form button[type="submit"]::after{content:"";position:absolute;inset:-50% auto -50% -55%;width:38%;pointer-events:none;background:linear-gradient(90deg,transparent,#ffffff38,transparent);transform:skewX(-20deg);animation:beta-submit-stream 3.4s ease-in-out infinite}
.lp .beta-enrolment .form button[type="submit"]:disabled,.lp .beta-enrolment .form button[type="submit"]:disabled::after{animation:none}
@keyframes beta-submit-stream{0%,15%{left:-55%;opacity:0}25%{opacity:1}70%,100%{left:125%;opacity:0}}
@keyframes beta-submit-glow{0%,100%{box-shadow:0 0 14px #7852df35}50%{box-shadow:0 0 24px #7852df66}}
@media(prefers-reduced-motion:reduce){.lp .beta-enrolment .form button[type="submit"],.lp .beta-enrolment .form button[type="submit"]::after{animation:none}.lp .beta-enrolment .form button[type="submit"]::after{display:none}}

/* Accès direct au formulaire depuis les boutons de toutes les pages. */
#beta-registration{scroll-margin-top:calc(var(--site-header-height,104px) + 22px)}
