/* ============================================
   Vault-box — carte de capture email + accès étude payante
   Réutilise les variables de _variables.css / style.css existant :
   --ink --grey --paper --mist --line --accent --serif --sans
   Design flat, coins à 2px (cohérent avec .lang-switch existant), pas d'ombre.
   ============================================ */

.vault-box{
  background:var(--paper);
  border:1px solid var(--line);
  padding:clamp(28px,3.4vw,40px);
  max-width:420px;
}

.vault-eyebrow{
  font-size:13px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--accent);
  margin-bottom:14px;
}

.vault-box h3{
  font-family:var(--serif);
  font-size:22px;
  font-weight:600;
  color:var(--ink);
  margin-bottom:10px;
}

.vault-box > p{
  font-size:15px;
  color:var(--grey);
  margin-bottom:18px;
}

.vault-checklist{
  list-style:none;
  margin:0 0 26px;
  padding:0;
}
.vault-checklist li{
  position:relative;
  padding-left:24px;
  margin-bottom:10px;
  font-size:14.5px;
  color:var(--ink);
}
.vault-checklist li:last-child{ margin-bottom:0; }
.vault-checklist li svg{
  position:absolute;
  left:0;
  top:3px;
  width:15px;
  height:15px;
  color:var(--accent);
}

.vault-email-capture{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.vault-email-capture input[type="email"]{
  font-family:var(--sans);
  font-size:15px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:2px;
  background:var(--paper);
  color:var(--ink);
  width:100%;
}
.vault-email-capture input[type="email"]:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-color:var(--accent);
}
.vault-email-capture input[type="email"]::placeholder{ color:#8a92a0; }

.vault-email-capture .rgpd-inline{
  display:flex;
  align-items:flex-start;
  gap:9px;
  font-size:12.5px;
  line-height:1.5;
  color:var(--grey);
  cursor:pointer;
}
.vault-email-capture .rgpd-inline input[type="checkbox"]{
  margin-top:2px;
  width:15px;
  height:15px;
  flex:0 0 auto;
  accent-color:var(--accent);
}
.vault-email-capture .rgpd-inline a{
  color:var(--accent);
  text-decoration:underline;
}

.vault-cta{
  display:inline-block;
  font-family:inherit;
  font-size:15px;
  font-weight:600;
  padding:13px 24px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:#fff;
  transition:background .18s, opacity .18s;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  text-align:center;
}
.vault-cta:hover{ background:#0d1722; }
.vault-cta:disabled{ opacity:.6; cursor:default; }

.vault-error{
  font-size:13px;
  color:#b3261e;
  margin-top:-2px;
  display:none;
}
.vault-error.is-visible{ display:block; }

.vault-bottom-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid var(--line);
}

.vault-price{
  font-family:var(--serif);
  font-size:20px;
  font-weight:600;
  color:var(--ink);
}
.vault-price .vault-price-note{
  display:block;
  font-family:var(--sans);
  font-size:12px;
  font-weight:400;
  color:var(--grey);
  margin-top:2px;
}

.vault-success{
  display:none;
  text-align:center;
  padding:12px 0;
}
.vault-success.is-visible{ display:block; }
.vault-success p{ font-size:14.5px; color:var(--grey); }

@media(max-width:480px){
  .vault-box{ max-width:100%; }
}
