/* BerlysiaCRM — Shared styles across pages */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0B0F1A;--surface:#101729;--surface-2:#172033;--line:rgba(255,255,255,.08);--line-strong:rgba(255,255,255,.18);
  --text:#E5E9F2;--muted:#8794A8;--accent:#5B7CFF;--accent-2:#9F7BFF;--success:#34D399;--warning:#FBBF24;
  --gradient:linear-gradient(135deg,#5B7CFF 0%,#9F7BFF 100%);
  --radius:14px;--radius-lg:20px;--ease:cubic-bezier(.2,.8,.2,1);
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.55;color:var(--text);background:var(--bg);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
img,svg{display:block;max-width:100%}
ul,ol{list-style:none}
.container{width:100%;max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}

.demo-badge{position:fixed;top:18px;right:18px;z-index:1000;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(11,15,26,.85);backdrop-filter:blur(10px);border:1px solid var(--line-strong);font-size:12px;letter-spacing:.04em;color:var(--text)}
.demo-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--success);animation:pulse 2s ease-in-out infinite}
.demo-badge a{color:var(--accent);font-weight:500}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

header.site{position:sticky;top:0;z-index:50;background:rgba(11,15,26,.7);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.02em}
.logo-mark{width:28px;height:28px;border-radius:8px;background:var(--gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}
.nav-links{display:flex;gap:28px;align-items:center;font-size:14px;color:var(--muted)}
.nav-links a{padding:6px 0;border-bottom:1px solid transparent;transition:border-color .25s,color .25s}
.nav-links a:hover,.nav-links a.active{color:var(--text);border-color:var(--accent)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:10px;font-weight:500;font-size:14px;transition:all .2s ease;border:1px solid transparent}
.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 4px 20px rgba(91,124,255,.3)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 28px rgba(91,124,255,.45)}
.btn-ghost{border-color:var(--line-strong);color:var(--text)}
.btn-ghost:hover{background:var(--surface)}
@media(max-width:768px){.nav-links{display:none}}

.page-hero{padding:80px 0 60px;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;top:-150px;left:50%;width:700px;height:700px;transform:translateX(-50%);background:radial-gradient(circle,rgba(91,124,255,.12) 0%,transparent 60%);pointer-events:none}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(91,124,255,.1);border:1px solid rgba(91,124,255,.3);font-size:12px;color:#A5B4FF;font-weight:500}
.page-hero h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.05;letter-spacing:-.035em;font-weight:700;margin:24px 0 18px;position:relative}
.page-hero h1 .grad{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.page-hero p{font-size:1.1rem;color:var(--muted);max-width:60ch;margin:0 auto;position:relative}

section{padding:80px 0}
.section-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;display:inline-block}
h2{font-size:clamp(2rem,4vw,3rem);font-weight:700;letter-spacing:-.025em;line-height:1.1}
h3{font-weight:600;letter-spacing:-.01em}

footer.site{border-top:1px solid var(--line);padding:40px 0;text-align:center;color:var(--muted);font-size:13px;margin-top:60px}
footer.site a{color:var(--accent);font-weight:500}

.cta-section{padding:100px 0;text-align:center;background:linear-gradient(180deg,var(--bg),var(--surface))}
.cta-section h2 .grad{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta-section p{color:var(--muted);margin:18px auto 32px;max-width:50ch}

/* data-reveal : visible par défaut, animation IN si JS s'active (pas de blocage) */
[data-reveal]{opacity:1;transform:translateY(0);transition:opacity .8s var(--ea