
:root{--ink:#263b4d;--muted:#718698;--blue:#7c9db5}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:radial-gradient(ellipse at 85% 12%,#b9d1e0 0,transparent 35%),linear-gradient(120deg,#f5f6fa,#e5eaf2 55%,#cfdfeb);min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.top{position:sticky;top:0;z-index:10;backdrop-filter:blur(25px);background:#eaf0f7c9;border-bottom:1px solid #ffffffa6}.topin{max-width:1200px;margin:auto;padding:20px 26px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-size:31px;font-weight:850;letter-spacing:-2px}.brand span{color:#7e9cb5}.topnav{display:flex;align-items:center;gap:10px}.pill,.tile,.glass{background:linear-gradient(125deg,#ffffffc9,#e5eef5a8 55%,#bed3e3a1);border:1px solid #fff;box-shadow:inset 0 2px 3px #ffffffd9,0 12px 26px #6f8da022;border-radius:25px}.pill{padding:12px 20px}.primary{background:#29435b;color:white;border-color:#29435b}.menu{position:relative}.menu summary{list-style:none;cursor:pointer;font-size:23px}.menu summary::-webkit-details-marker{display:none}.menu nav{position:absolute;right:0;top:48px;min-width:230px;max-height:70vh;overflow:auto;background:#edf4f9f5;border:1px solid white;border-radius:20px;padding:14px;box-shadow:0 20px 40px #38587340}.menu nav a{display:block;padding:9px 12px;border-radius:10px}.menu nav a:hover{background:#d6e5f1}.wrap{max-width:1160px;margin:auto;padding:36px 24px 110px}.eyebrow{text-transform:uppercase;letter-spacing:5px;font-size:12px;font-weight:700;color:#67849a}.hero{padding:45px 8px 34px}.hero h1{font-size:clamp(40px,6vw,72px);letter-spacing:-3px;line-height:1.08;margin:18px 0}.hero h1 em{font-style:normal;color:#85a4bc}.lead{font-size:19px;color:#71879a;line-height:1.6;max-width:730px}.section{margin:22px 0}.section h2{font-size:25px;letter-spacing:-.6px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{padding:25px;min-height:140px}.card h3{margin:8px 0 10px;font-size:19px}.card p,.muted{color:#71869a;line-height:1.6}.card .ico{font-size:25px}.row{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.field{width:100%;border:1px solid #fff;background:#ffffffad;border-radius:15px;padding:15px;color:#263b4d;outline:none}.field:focus{border-color:#86a9c7}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.formgrid label{display:grid;gap:7px}.stack{display:grid;gap:12px}.line{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:15px 5px;border-bottom:1px solid #ffffffb0}.orb{position:fixed;right:20px;bottom:20px;z-index:20;width:66px;height:66px;border-radius:50%;border:5px solid #7890a3;background:radial-gradient(circle at 37% 24%,#fff 0%,#c5e1f2 18%,#6587a2 45%,#2f4c65 70%,#e4f3fa 88%,#607c92 100%);box-shadow:inset 0 0 8px #fff,0 4px 12px #48677a75;cursor:pointer}.assistant{position:fixed;right:22px;bottom:98px;z-index:21;width:min(350px,calc(100vw - 44px));padding:20px;display:none}.assistant.show{display:block}.assistant input{margin:12px 0}.notice{font-size:13px;color:#72899a}.hidden{display:none!important}footer{padding:40px;text-align:center;color:#7b90a2}@media(max-width:600px){.wrap{padding:20px 17px 100px}.hero{padding:28px 0}.hero h1{font-size:43px}.topin{padding:17px}.card{padding:20px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card h3{font-size:16px}.card p{font-size:14px}.topnav .pill{padding:10px 12px}}
.ioi-clickable{display:block;text-decoration:none;color:inherit;position:relative;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.ioi-clickable:hover,.ioi-clickable:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px #294b6d20}.ioi-arrow{position:absolute;right:18px;top:16px;color:#4e6a83}.menu nav{max-height:75vh;overflow:auto}.menu nav a[aria-current="page"]{font-weight:750;background:#dce8f255;border-radius:12px}

/* Ajouts de livraison : focus clavier visible, apparition douce, animations réduites */
:focus-visible{outline:2px solid #5f85a3;outline-offset:3px;border-radius:12px}
.js-reveal:not(.in){opacity:0;transform:translateY(10px)}
.js-reveal{transition:opacity .28s ease,transform .28s ease,box-shadow .18s ease}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-reveal:not(.in){opacity:1;transform:none}}
