
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;scroll-padding-top:84px}
  body{font-family:'IBM Plex Sans',system-ui,sans-serif;color:#0E1B26;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:clip}
  ::selection{background:#00A650;color:#fff}
  input,textarea,button{font-family:inherit}
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #006FB8;outline-offset:2px}
  @keyframes floatUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
  @media (prefers-reduced-motion:reduce){*{animation:none !important;scroll-behavior:auto !important}}
  a,button{transition:background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease}
  .reveal{transition:opacity .7s cubic-bezier(.16,.84,.44,1),transform .7s cubic-bezier(.16,.84,.44,1)}
  .reveal.pre{opacity:0;transform:translateY(26px)}
  .card{transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}
  .card:hover{border-color:#006FB8;transform:translateY(-3px);box-shadow:0 20px 40px -28px rgba(14,27,38,.4)}
  .clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .blograil{scrollbar-width:thin;scrollbar-color:#CBD9E4 transparent}
  .blograil::-webkit-scrollbar{height:7px}
  .blograil::-webkit-scrollbar-thumb{background:#CBD9E4;border-radius:99px}
  .blograil::-webkit-scrollbar-track{background:transparent}
  .exprow{transition:background .25s ease}
  .exprow:hover h3{color:#5FD08C}
  .g-sect span{transition:border-color .2s ease,color .2s ease,transform .2s ease}
  .g-sect span:hover{transform:translateY(-2px)}
  .skiplink{position:absolute;left:-9999px;top:0;z-index:100;background:#006FB8;color:#fff;padding:12px 20px;border-radius:0 0 10px 0;font-size:14px;font-weight:600;text-decoration:none}
  .skiplink:focus{left:0}
  .hdr{transition:box-shadow .25s ease}
  .hdr.scrolled{box-shadow:0 10px 30px -24px rgba(14,27,38,.55)}
  .navlink{position:relative}
  .navlink.active{color:#006FB8}
  .navlink.active::after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:2px;background:linear-gradient(90deg,#006FB8,#00A650)}
  .mobilelink{transition:background .2s ease,color .2s ease}
  .totop{opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}
  .totop.on{opacity:1;pointer-events:auto;transform:none}
  .burger{display:none}
  image-slot{display:block !important;width:100% !important;height:100% !important}
  .mainnav a,.navcta{white-space:nowrap}
  h1{font-size:clamp(32px,4.7vw,56px) !important;line-height:1.06 !important}
  @media (min-width:1101px){h1{font-size:56px !important}}
  h2{font-size:clamp(25px,3.6vw,38px) !important}
  h3{font-size:clamp(18px,2.1vw,23px) !important}
  .herosub{font-size:clamp(16px,1.8vw,18.5px) !important}
  .secsub,.bodytext{font-size:clamp(15px,1.5vw,16.5px) !important}
  .cardtext{font-size:clamp(14.5px,1.35vw,15.5px) !important}
  @media (max-width:1060px){.mainnav{display:none !important}.burger{display:flex !important}}
  @media (max-width:900px){
    .g-cta{grid-template-columns:minmax(0,1fr) !important;gap:26px !important}
    .g-foot{grid-template-columns:minmax(0,1fr) !important;gap:34px !important}
    .g-app{grid-template-columns:minmax(0,1fr) !important}
    .g-app>*{min-width:0 !important}
    .g-appkpi{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important}
    .g-appsplit{grid-template-columns:minmax(0,1fr) !important}
    .g-approw{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) !important}
    .g-hero{grid-template-columns:minmax(0,1fr) !important;gap:44px !important}
    .g-hero>*,.g-about>*,.g-contact>*,.g-exp>*,.g-soft>*,.g-posts>*{min-width:0 !important}
    .g-formrow{grid-template-columns:minmax(0,1fr) !important;gap:14px !important}
    .g-about{grid-template-columns:minmax(0,1fr) !important;gap:40px !important}
    .g-exp{grid-template-columns:minmax(0,1fr) !important;gap:44px !important}
    .g-soft{grid-template-columns:minmax(0,1fr) !important}
    .g-contact{grid-template-columns:1fr !important;gap:40px !important}
    .g-posts{grid-template-columns:minmax(0,1fr) !important}
    .g-stats{grid-template-columns:1fr minmax(0,1fr) !important;gap:28px 20px !important}
    .g-steps{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:36px 24px !important}
    .steprail{display:none !important}
    .expcol{position:static !important}
    .mainnav{display:none !important}
    .burger{display:flex !important}
    .sec-pad{padding-top:52px !important;padding-bottom:52px !important}
  }
  @media (max-width:1100px){
    .g-appkpi{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important}
  }
  @media (max-width:1060px) and (min-width:641px){
    .g-posts{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important}
  }
  @media (max-width:640px){
    .dropsm{display:none !important}
    .g-posts{grid-template-columns:minmax(0,1fr) !important}
    .g-appkpi{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important}
    .g-stats{grid-template-columns:minmax(0,1fr) !important;gap:22px !important}
    .g-foot{gap:28px !important}
  }
  @media (max-width:700px){
    .explink{min-height:44px;display:inline-flex !important;align-items:center}
    .footlink{min-height:40px;display:inline-flex !important;align-items:center}
    .footlink{min-height:40px}
  }
  @media (max-width:420px){
    .blogcard{flex:0 0 84vw !important}
    .heroimg{aspect-ratio:4/3 !important}
  }
  @media (max-width:900px){
    .appside{border-right:none !important;border-bottom:1px solid #223546 !important;padding:14px 0 0 !important;overflow:hidden}
    .appbrand{display:none !important}
    .appfoot{display:none !important}
    .apptabs{flex-direction:row !important;overflow-x:auto;gap:0;scrollbar-width:none;padding:0 6px 2px}
    .apptabs::-webkit-scrollbar{display:none}
    .apptabs button{white-space:nowrap;border-left:none !important;border-bottom:2px solid transparent}
    .apptabs button[aria-selected=true]{border-bottom-color:#00A650 !important;background:transparent !important;color:#0E1B26 !important}
  }
  @media (max-width:900px){
    .langbtn{min-width:44px;min-height:44px;justify-content:center}
    .burger{min-width:44px;min-height:44px;align-items:center !important;justify-content:center !important}
    .railbtn{width:44px !important;height:44px !important}
    .blogread{min-height:44px !important;display:inline-flex !important;align-items:center}
    .appmain{padding:18px 16px 24px !important;gap:18px !important;height:auto !important;overflow:visible !important}
  }
  @media (max-width:700px){
    .mobilebar{display:flex !important}
    .totop{display:none !important}
    footer{padding-bottom:78px}
    .appc2,.appc3{display:none !important}
    .g-approw{grid-template-columns:minmax(0,1fr) 128px !important;gap:12px !important}
  }
  @media (max-width:640px){.navcta{display:none !important}}
  @media (max-width:560px){
    .g-steps{grid-template-columns:minmax(0,1fr) !important}
    .pad-x{padding-left:20px !important;padding-right:20px !important}
  }
  @media (prefers-reduced-motion:reduce){.reveal.pre{opacity:1 !important;transform:none !important}}


/* etats survol et focus repris des attributs du gabarit */
.xh1:hover{color:#006FB8}
.xh2:hover{background:#005a96}
.xh3:hover{border-color:#006FB8}
.xh4:hover{border-color:#00A650;color:#00A650}
.xh5:hover{border-color:#5FD08C}
.xh6:hover{background:#132434}
.xh7:hover{background:#F0F6FB;color:#0E1B26}
.xh8:hover{border-color:#006FB8;color:#0E1B26}
.xh9:hover{border-color:#5FD08C;color:#5FD08C}
.xh10:hover{border-color:#006FB8;background:#F2F8FC}
.xh11:hover{color:#00A650}
.xf12:focus{border-color:#006FB8}
.xh13:hover{color:#5FD08C}
.xh14:hover{border-color:#006FB8;background:#F2F7FB}
.xh15:hover{color:#00A650;border-color:#00A650}
