body{margin:0;background:#F6F1E8;color:#14213A;font-family:'Instrument Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#A8432C}a:hover{color:#7E2F1D}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;box-sizing:border-box}
.serif{font-family:'Fraunces',Georgia,serif}
.navlink{color:#14213A;text-decoration:none;font-size:15px;padding:12px 4px}
.navlink:hover{color:#A8432C}
.btn{display:inline-flex;align-items:center;min-height:48px;padding:0 26px;border-radius:999px;text-decoration:none;font-weight:600;font-size:16px;transition:transform .2s ease}
.btn:hover{transform:translateY(-2px)}
.card{transition:transform .25s ease,box-shadow .25s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(20,33,58,.10)}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.g5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:56px;align-items:center}
.marquee{display:flex;width:max-content;animation:slide 38s linear infinite}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.train{position:absolute;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;background:#E9B44C;box-shadow:0 0 0 6px rgba(233,180,76,.25);animation:trip 7s ease-in-out infinite alternate}
@keyframes trip{from{left:0}to{left:calc(100% - 18px)}}
.pulse{animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.word{animation:fadein .6s ease}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:980px){.g5{grid-template-columns:repeat(2,minmax(0,1fr))}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:minmax(0,1fr)}.g2{grid-template-columns:minmax(0,1fr);gap:32px}.hero{grid-template-columns:minmax(0,1fr)}.hidesm{display:none !important}}
.nw{white-space:nowrap}
@media (max-width:560px){.nw{white-space:normal}.g5{grid-template-columns:minmax(0,1fr)}.g4{grid-template-columns:minmax(0,1fr)}.wrap{padding:0 16px}h1.big{font-size:44px !important}}
@media (prefers-reduced-motion:reduce){.marquee,.train,.pulse,.word{animation:none}}
/* --- ajout conversion : navigation visible sur mobile --- */
@media (max-width:980px){
  header nav.hidesm{display:flex !important;flex-wrap:wrap;
    gap:4px 14px;justify-content:flex-end;max-width:66%}
  header nav.hidesm .navlink{font-size:13px;padding:6px 2px}
  header .wrap{height:auto !important;min-height:88px;padding-top:12px;padding-bottom:12px}
}
@media (max-width:560px){
  header nav.hidesm{max-width:100%;justify-content:flex-start;margin-top:4px}
  header .wrap{flex-wrap:wrap;row-gap:4px}
  header nav.hidesm .navlink{font-size:14px;padding:8px 0}
  header img{width:64px !important;height:64px !important}
}
/* l'en-tete sur deux lignes mangerait un quart de l'ecran : on le defige */
@media (max-width:700px){ header{position:static !important} }
img{max-width:100%}
