/* site.css — utilisé par : 35 pages */
:root{
  --surface:#F6F5FB;--surface-2:#FFFFFF;--surface-3:#EFEDF9;
  --line:rgba(26,23,48,.10);--line-strong:rgba(26,23,48,.16);
  --ink:#1A1730;--muted:rgba(26,23,48,.66);--muted-2:rgba(26,23,48,.62);
  --violet:#6D5CE0;--violet-bright:#5B4BC4;--signal:#E8991C;--signal-ink:#2A1D05;
}
html{
  scroll-behavior:smooth;
}
body{
  background:var(--surface);color:var(--ink);font-family:'Inter',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
::selection{
  background:var(--signal);color:var(--signal-ink);
}
.display{
  font-family:'Space Grotesk',sans-serif;letter-spacing:-.02em;line-height:1.04;
}
.mono{
  font-family:'Space Mono',monospace;
}
.eyebrow{
  font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--violet-bright);
}
.grad{
  background:linear-gradient(100deg,var(--violet),var(--violet-bright));-webkit-background-clip:text;background-clip:text;color:transparent;
}
a{
  color:inherit;
}
.link-v{
  color:var(--violet-bright);text-decoration:none;
}
.link-v:hover{
  color:var(--ink);
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-weight:600;border-radius:9999px;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease;text-decoration:none;line-height:1;
}
.btn-primary{
  background:var(--signal);color:var(--signal-ink);padding:.95rem 1.6rem;box-shadow:0 14px 30px -14px rgba(232,153,28,.5);
}
.btn-primary:hover{
  transform:translateY(-2px);box-shadow:0 18px 36px -14px rgba(232,153,28,.65);
}
.btn-ghost{
  border:1px solid var(--line-strong);color:var(--ink);padding:.95rem 1.5rem;background:rgba(26,23,48,.03);
}
.btn-ghost:hover{
  border-color:var(--violet);background:rgba(109,92,224,.08);
}
.card{
  background:var(--surface-2);border:1px solid var(--line);border-radius:18px;box-shadow:0 1px 2px rgba(26,23,48,.04);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.card:hover{
  transform:translateY(-4px);border-color:var(--line-strong);box-shadow:0 18px 40px -24px rgba(45,35,90,.22);
}
.chip{
  display:inline-flex;align-items:center;gap:.4rem;font-size:12.5px;padding:.4rem .8rem;border-radius:9999px;border:1px solid var(--line-strong);background:rgba(26,23,48,.03);color:var(--muted);
}
.nav-link{
  position:relative;color:var(--muted);font-weight:500;font-size:14.5px;transition:color .2s ease;
}
.nav-link:hover,.nav-link.active{
  color:var(--ink);
}
#site-nav.scrolled{
  background:rgba(246,245,251,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);
}
.glow{
  position:absolute;border-radius:50%;filter:blur(90px);opacity:.16;pointer-events:none;z-index:0;
}
@keyframes floatY{
  0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}
}
.float{
  animation:floatY 6s ease-in-out infinite;
}
.answer-card{
  background:linear-gradient(180deg,#FFFFFF,#F5F3FD);border:1px solid var(--line-strong);border-radius:22px;box-shadow:0 30px 70px -45px rgba(45,35,90,.28);
}
.answer-field{
  background:var(--surface-3);border:1px solid var(--line);border-radius:12px;
}
.cite-name{
  background:linear-gradient(transparent 60%, rgba(232,153,28,.40) 60%);font-weight:600;color:var(--ink);
}
.faq-item[open] .faq-icon{
  transform:rotate(45deg);
}
.faq-icon{
  transition:transform .25s ease;color:var(--violet-bright);
}
.faq-item{
  border:1px solid var(--line);border-radius:16px;background:var(--surface-2);
}
.faq-item summary{
  list-style:none;cursor:pointer;
}
.faq-item summary::-webkit-details-marker{
  display:none;
}
[data-reveal]{
  opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
[data-reveal].in{
  opacity:1;transform:none;
}
.text-white{
  color:var(--ink)!important;
}
.text-white\/80{
  color:rgba(26,23,48,.82)!important;
}
.text-white\/75{
  color:rgba(26,23,48,.78)!important;
}
.text-white\/70{
  color:rgba(26,23,48,.72)!important;
}
.text-white\/65{
  color:rgba(26,23,48,.68)!important;
}
.text-white\/60{
  color:rgba(26,23,48,.64)!important;
}
.text-white\/55{
  color:rgba(26,23,48,.66)!important;
}
.text-white\/45{
  color:rgba(26,23,48,.63)!important;
}
.text-white\/40{
  color:rgba(26,23,48,.62)!important;
}
.text-white\/35{
  color:rgba(26,23,48,.62)!important;
}
.text-white\/30{
  color:rgba(26,23,48,.61)!important;
}
.text-white\/25{
  color:rgba(26,23,48,.62)!important;
}
.border-white\/5{
  border-color:rgba(26,23,48,.06)!important;
}
.border-white\/10{
  border-color:var(--line)!important;
}
.border-white\/20{
  border-color:var(--line-strong)!important;
}
.ring-white\/20{
  --tw-ring-color:rgba(26,23,48,.14)!important;
}
.hover\:text-white:hover{
  color:var(--ink)!important;
}
a:focus-visible,button:focus-visible,summary:focus-visible,.btn:focus-visible{
  outline:2px solid var(--signal);outline-offset:3px;border-radius:8px;
}
@media{
  (prefers-reduced-motion:reduce) *{
  animation:none!important;transition:none!important;
  }
}
@media{
  (prefers-reduced-motion:reduce) [data-reveal]{
  opacity:1;transform:none;
  }
}
.social-link{
  display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:rgba(26,23,48,.03);color:var(--muted);font-size:20px;transition:transform .2s ease,color .2s ease,border-color .2s ease,background-color .2s ease;
}
.social-link:hover{
  transform:translateY(-3px);color:var(--violet-bright);border-color:var(--violet);background:rgba(109,92,224,.08);
}
.social-link svg{
  width:22px;height:22px;fill:currentColor;
}
.svc-steps{
  list-style:none;margin:.9rem 0 0;padding:0;counter-reset:svc;
}
.svc-steps li{
  position:relative;padding-left:1.5rem;margin-bottom:.45rem;font-size:13px;line-height:1.5;color:rgba(26,23,48,.6);counter-increment:svc;
}
.svc-steps li:before{
  content:counter(svc);position:absolute;left:0;top:.05rem;font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;color:var(--violet-bright);
}
.svc-steps-label{
  font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(26,23,48,.4);margin-top:1rem;display:block;
}
.banniere-temoins{
  position:fixed;left:0;right:0;bottom:0;z-index:140;
  background:var(--surface-2);border-top:1px solid var(--line-strong);
  box-shadow:0 -18px 50px -24px rgba(45,35,90,.35);padding:22px 0;
}
.bt-inner{
  max-width:1100px;margin:0 auto;padding:0 20px;display:grid;
  grid-template-columns:1fr auto;gap:24px;align-items:center;
}
.bt-titre{
  font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;margin-bottom:6px;
}
.bt-txt{
  font-size:14px;line-height:1.6;color:var(--muted);max-width:640px;
}
.bt-txt a{
  color:var(--violet-bright);text-decoration:underline;
}
.bt-actions{
  display:flex;gap:10px;flex-shrink:0;
}
.bt-btn{
  font-weight:600;border-radius:9999px;padding:.7rem 1.5rem;font-size:14.5px;
  border:1px solid var(--line-strong);background:transparent;color:var(--ink);
  cursor:pointer;transition:.18s;white-space:nowrap;font-family:'Inter',sans-serif;
}
.bt-btn:hover{
  border-color:var(--violet);
}
.bt-btn.accepter{
  background:var(--signal);color:var(--signal-ink);border-color:var(--signal);
}
@media(max-width:760px){
  .bt-inner{
  grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .bt-actions{
  width:100%;
  }
}
@media(max-width:760px){
  .bt-btn{
  flex:1;
  }
}
