:root{--ink:#0A2540;--ink-2:#12365B;--gold:#C9963A;--gold-text:#8F6A20;--gold-pale:#F6ECD8;--white:#fff;--paper:#FBFAF8;
    --grey-200:#E6E9EE;--grey-300:#D5DBE1;--grey-400:#9AA5B1;--grey-500:#6B7683;--green:#2E7D32;
    --font:'DM Sans',system-ui,-apple-system,sans-serif;}
  *{box-sizing:border-box;margin:0;padding:0}
  body{font-family:var(--font);background:var(--paper);color:var(--ink);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
  .top{padding:22px 6%;display:flex;align-items:center;justify-content:space-between}
  .logo{font-weight:700;letter-spacing:2.5px;font-size:1.2rem}.logo span{color:var(--gold)}
  .top .soon{font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-text);background:var(--gold-pale);padding:6px 13px;border-radius:100px}

  main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 6% 60px}
  .hero{max-width:640px;width:100%}
  .kicker{font-size:.76rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold-text);margin-bottom:22px}
  h1{font-size:clamp(2.2rem,5.4vw,3.4rem);font-weight:600;line-height:1.06;letter-spacing:-1px;margin-bottom:20px}
  .lead{font-size:1.08rem;color:var(--grey-500);max-width:560px;margin-bottom:24px}
  .lead b{color:var(--ink);font-weight:600}
  .values{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-direction:column;gap:13px;max-width:548px}
  .values li{font-size:.92rem;color:var(--grey-500);padding-left:20px;position:relative;line-height:1.5}
  .values li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--gold)}
  .values li span{display:block;color:var(--ink);font-weight:600;font-size:.97rem;margin-bottom:1px}

  form{display:flex;gap:10px;max-width:480px;margin-bottom:14px;flex-wrap:wrap}
  input[type=email]{flex:1;min-width:220px;padding:14px 16px;border:1.5px solid var(--grey-300);border-radius:10px;font-family:inherit;font-size:1rem;color:var(--ink);background:var(--white)}
  input[type=email]:focus{outline:none;border-color:var(--gold)}
  button{background:var(--ink);color:var(--white);border:none;padding:14px 26px;border-radius:10px;font-family:inherit;font-weight:700;font-size:1rem;cursor:pointer;transition:background .15s;white-space:nowrap}
  button:hover{background:var(--ink-2)}
  button:disabled{opacity:.5;cursor:default}
  a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
  .msg{font-size:.9rem;margin-bottom:14px;min-height:1.2em;display:none}
  .msg.ok{display:block;color:var(--green)}
  .msg.err{display:block;color:#B23A48}
  .rgpd{font-size:.78rem;color:var(--grey-400);max-width:480px;margin-bottom:34px}

  .trust{font-size:.82rem;color:var(--grey-500);border-top:1px solid var(--grey-200);padding-top:20px;letter-spacing:.2px}
  .trust b{color:var(--ink);font-weight:600}

  footer{padding:22px 6%;border-top:1px solid var(--grey-200);font-size:.76rem;color:var(--grey-400);display:flex;gap:6px;flex-wrap:wrap;justify-content:space-between}
  footer a{color:var(--grey-500)}
  @media(max-width:520px){form{flex-direction:column}button{width:100%}}

/* A11Y-12 — respect du reglage systeme "mouvement reduit". */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
