/* NV Digital — styles partagés */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#04050F;color:#fff;font-family:'Space Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
a{color:#7FEBFF}a:hover{color:#fff}
:focus-visible{outline:2px solid #7FEBFF;outline-offset:3px}
#sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.space{position:relative;min-height:100vh;overflow:hidden;background:
radial-gradient(ellipse 60% 45% at 20% 25%, rgba(109,59,255,.35) 0, transparent 70%),
radial-gradient(ellipse 50% 40% at 85% 20%, rgba(25,211,255,.22) 0, transparent 70%),
radial-gradient(ellipse 70% 50% at 60% 75%, rgba(200,70,255,.18) 0, transparent 70%),
radial-gradient(ellipse 120% 80% at 50% 120%, rgba(120,90,255,.35) 0, transparent 60%),#04050F}
@keyframes rise{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}

/* En-tête */
.site-header{position:relative;z-index:5;max-width:1200px;margin:0 auto;padding:28px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.brand span{font-family:'Unbounded',sans-serif;font-weight:600;font-size:18px;letter-spacing:.04em}
.site-nav{display:flex;flex-wrap:wrap;gap:28px;font-size:15px}
.site-nav a{text-decoration:none;color:#D9DCF5}
.site-nav a[aria-current="page"]{color:#7FEBFF}

/* Titres de page */
.wrap{position:relative;max-width:1200px;margin:0 auto;padding:30px 24px 110px}
.kicker{margin:0 0 14px;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.2em;color:#7FEBFF}
.h1{margin:0;max-width:820px;font-family:'Unbounded',sans-serif;font-weight:700;font-size:clamp(32px,5vw,58px);line-height:1.08;text-shadow:0 0 40px rgba(140,110,255,.6)}
.lead{margin:18px 0 48px;max-width:580px;font-size:18px;line-height:1.55;color:#C3C7E6}

.glass{border-radius:26px;background:linear-gradient(160deg,rgba(255,255,255,.11),rgba(255,255,255,.03) 50%,rgba(140,110,255,.08));border:1px solid rgba(127,235,255,.4);box-shadow:0 0 60px rgba(109,59,255,.25),inset 0 0 40px rgba(127,235,255,.06);animation:rise .8s cubic-bezier(.2,.85,.2,1) both}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;border:none;text-decoration:none;font-family:'Space Grotesk',system-ui,sans-serif;font-weight:700;font-size:16px;cursor:pointer}
.cta-main{background:#7FEBFF;color:#05061A;box-shadow:0 0 30px rgba(127,235,255,.5)}
.cta-main:hover{color:#05061A;box-shadow:0 0 44px rgba(127,235,255,.8)}
.cta-ghost{background:transparent;color:#fff;border:1px solid rgba(127,235,255,.7)}
.tag{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.05);font-size:13px;color:#D9DCF5}

/* Formulaires */
.field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#C3C7E6;font-family:'JetBrains Mono',monospace;letter-spacing:.08em}
.field input,.field textarea{font-family:'Space Grotesk',system-ui,sans-serif;font-size:15px;letter-spacing:0;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:12px 14px;min-height:46px;outline:none;width:100%;transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field textarea:focus{border-color:#7FEBFF;box-shadow:0 0 0 3px rgba(127,235,255,.2)}
.field input::placeholder,.field textarea::placeholder{color:rgba(255,255,255,.4)}
.row{display:flex;flex-wrap:wrap;gap:16px}.row>*{flex:1 1 220px;min-width:0}
.stack{display:flex;flex-direction:column;gap:18px}
.hidden-field{display:none}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.error{margin:0;padding:12px 16px;border-radius:12px;background:rgba(255,90,140,.12);border:1px solid rgba(255,120,160,.6);color:#FFD3E0;font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.04);color:#D9DCF5;font-family:'Space Grotesk',sans-serif;font-size:14px;letter-spacing:0;cursor:pointer;transition:all .2s}
.chip input:checked+span{border-color:#7FEBFF;background:rgba(127,235,255,.18);color:#fff;box-shadow:0 0 16px rgba(127,235,255,.35)}
.chip input:focus-visible+span{outline:2px solid #7FEBFF;outline-offset:2px}

/* Mobile : moins de couches animées */
@media (max-width:700px){.paused .disk2,.paused .float{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
