/* Finitions premium partagées */
:root{--night:#080F29;--lime:#C9FF00;--cream:#FAFAF7}
body{font-family:'IBM Plex Sans','Manrope',system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.005em}
h1,h2,h3,.font-display{font-family:'IBM Plex Sans',system-ui,sans-serif!important;letter-spacing:-.02em}
h1{line-height:1.02!important}
h2{line-height:1.08}
::selection{background:var(--lime);color:var(--night)}
a,button{transition:all .2s ease}
.bg-lime,a.bg-lime,button.bg-lime{box-shadow:0 8px 24px -10px rgba(201,255,0,.7)}
.bg-lime:hover{transform:translateY(-1px);box-shadow:0 14px 30px -10px rgba(201,255,0,.85)}
.rounded-2xl,.rounded-3xl{border-color:rgba(8,15,41,.08)}
.bg-white.rounded-2xl,.bg-white.rounded-3xl{box-shadow:0 1px 2px rgba(8,15,41,.04),0 12px 32px -16px rgba(8,15,41,.14)}
.card-hover:hover{transform:translateY(-4px)!important;box-shadow:0 24px 48px -20px rgba(8,15,41,.25)!important}
input,select,textarea{border-radius:.75rem!important}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(201,255,0,.55)!important;border-color:var(--night)!important}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
section{scroll-margin-top:90px}
.header-scrolled{background:rgba(8,15,41,.85)!important;backdrop-filter:saturate(160%) blur(16px)!important}
img{image-rendering:auto}
