@font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:400;
    src:url('/fonts/barlow-condensed-400.woff2') format('woff2'); font-display:swap; }
  @font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:600;
    src:url('/fonts/barlow-condensed-600.woff2') format('woff2'); font-display:swap; }
  @font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:700;
    src:url('/fonts/barlow-condensed-700.woff2') format('woff2'); font-display:swap; }
  @font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:900;
    src:url('/fonts/barlow-condensed-900.woff2') format('woff2'); font-display:swap; }

  :root{ --navy:#1a2e4a; --fire:#e63000; --ember:#ff6a00; --silver:#5a6a80; --border:#dde3ef; --bg:#f7f8fa; }
  *{ box-sizing:border-box; }
  body{ margin:0; font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif; color:var(--navy); background:var(--bg); overflow-x:hidden; }
  a{ color:inherit; text-decoration:none; }

  nav{ position:fixed; top:0; left:0; right:0; z-index:1000; background:rgba(255,255,255,0.97);
       height:64px; display:flex; align-items:center; padding:0 2rem; gap:2rem;
       border-bottom:1px solid var(--border); box-shadow:0 2px 12px rgba(26,46,74,0.08); }
  nav img{ height:34px; width:auto; max-width:62vw; }
  .nav-links{ display:flex; gap:1.6rem; margin-left:auto; }
  .nav-links a{ font-size:0.82rem; font-weight:700; letter-spacing:1px; text-transform:uppercase; transition:color 0.2s; }
  .nav-links a:hover{ color:var(--fire); }
  @media(max-width:760px){ .nav-links a:nth-child(n+3){ display:none; } nav{ padding:0 1rem; gap:1rem; } }

  .band{ background:linear-gradient(rgba(26,46,74,0.42),rgba(26,46,74,0.42)),
         url('/img/fond-motopompes-v4.webp') 35% center / cover no-repeat fixed; padding:7rem 1.5rem 3.5rem; }
  .wrap{ max-width:820px; margin:0 auto; }
  .eyebrow{ display:inline-block; font-size:0.75rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase;
            color:#fff; border:1px solid rgba(255,255,255,0.55); border-radius:100px; padding:0.35rem 1rem;
            margin-bottom:1.2rem; text-shadow:0 1px 6px rgba(0,0,0,0.5); }
  h1{ font-size:clamp(2rem,4.6vw,3.2rem); font-weight:900; line-height:1.1; color:#fff;
      text-shadow:0 2px 14px rgba(0,0,0,0.6); margin:0 0 1rem; }
  .lede{ font-size:1.2rem; font-weight:600; line-height:1.55; color:#fff;
         text-shadow:0 1px 10px rgba(0,0,0,0.65); max-width:680px; margin:0; }

  /* Trois chiffres qui posent le probleme */
  .chiffres{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:2rem; }
  .chiffre{ background:rgba(255,255,255,0.95); border-radius:8px; padding:1rem 1.1rem; border-left:5px solid var(--fire); }
  .chiffre b{ display:block; font-size:2.1rem; font-weight:900; line-height:1; color:var(--fire); }
  .chiffre span{ font-size:0.88rem; font-weight:600; color:var(--navy); line-height:1.4; display:block; margin-top:0.35rem; }
  @media(max-width:600px){ .chiffres{ grid-template-columns:1fr; } }

  /* Contenu en cartes blanches posees sur la photo, comme la page d'accueil */
  .paper{ background:linear-gradient(rgba(26,46,74,0.35),rgba(26,46,74,0.35)),
          url('/img/fond-motopompes-v4.webp') 35% center / cover no-repeat fixed; padding:2.5rem 1.5rem 3rem; }
  .card{ background:#fff; border-radius:12px; padding:1.6rem 1.8rem; margin-bottom:1.25rem;
         box-shadow:0 2px 10px rgba(26,46,74,0.14); }
  .card > h2:first-child, .card > h3:first-child{ margin-top:0; }
  @media(max-width:600px){ .card{ padding:1.2rem 1.1rem; } }
  .paper h2{ font-size:1.6rem; font-weight:900; color:var(--navy); margin:2.8rem 0 0.9rem; text-align:center; }
  .paper h2:first-of-type{ margin-top:0; }
  .paper h3{ font-size:1.1rem; margin:1.8rem 0 0.5rem; text-align:center; }
  .paper p, .paper li{ font-size:1rem; line-height:1.7; color:#33404f; }
  .paper ul{ margin:0 0 1rem 1.2rem; padding:0; }
  .paper li{ margin-bottom:0.5rem; }

  /* Les etapes de l audit : une sequence, donc numerotee */
  .etapes{ list-style:none; counter-reset:e; margin:1.5rem 0 0; padding:0; }
  .etapes li{ counter-increment:e; position:relative; padding:0 0 1.4rem 3.2rem; }
  .etapes li::before{ content:counter(e); position:absolute; left:0; top:0;
    width:2.2rem; height:2.2rem; border-radius:50%; background:var(--navy); color:#fff;
    display:flex; align-items:center; justify-content:center; font-weight:900; font-size:1.1rem; }
  .etapes b{ display:block; color:var(--navy); font-size:1.05rem; margin-bottom:0.2rem; }

  .duo{ display:grid; grid-template-columns:1fr 1fr; gap:0.75rem; max-width:540px; margin:1.5rem auto 0.4rem; }
  .duo img{ width:100%; height:auto; border-radius:10px; border:1px solid var(--border); display:block; }
  .caption{ font-size:0.78rem; font-style:italic; color:#6b7280; text-align:center; max-width:540px; margin:0 auto 1.5rem; }
  @media(max-width:600px){ .duo{ grid-template-columns:1fr; } }

  .encart{ background:#f7f9fc; border-left:5px solid var(--fire); border-radius:0 8px 8px 0;
           padding:1.2rem 1.4rem; margin:1.8rem 0; }
  .encart p{ margin:0 0 0.6rem; }
  .encart p:last-child{ margin-bottom:0; }

  .cta{ background:linear-gradient(rgba(26,46,74,0.45),rgba(26,46,74,0.45)),
        url('/img/fond-motopompes-v4.webp') 35% center / cover no-repeat fixed; padding:3.5rem 1.5rem; text-align:center; }
  .cta h2{ font-size:1.8rem; font-weight:900; color:#fff; text-shadow:0 2px 12px rgba(0,0,0,0.6); margin:0 0 0.6rem; }
  .cta p{ color:#fff; text-shadow:0 1px 8px rgba(0,0,0,0.65); font-size:1.05rem; margin:0 0 1.6rem; }
  .btn{ display:inline-block; background:#fff; color:var(--fire); font-weight:700; font-size:1rem;
        letter-spacing:1px; text-transform:uppercase; padding:0.9rem 2.2rem; border-radius:100px;
        transition:background 0.2s, transform 0.2s; }
  .btn:hover{ background:#fff8f4; transform:translateY(-2px); }
  .btn:focus-visible{ outline:3px solid #fff; outline-offset:3px; }

  footer{ background:linear-gradient(rgba(26,46,74,0.45),rgba(26,46,74,0.45)),
          url('/img/fond-motopompes-v4.webp') 35% center / cover no-repeat fixed; color:#fff;
          text-shadow:0 1px 6px rgba(0,0,0,0.75); padding:2.5rem 1.5rem; text-align:center; font-size:0.85rem; }
  footer a{ text-decoration:underline; }
  footer .sep{ margin:0 0.6rem; opacity:0.5; }
  @media(prefers-reduced-motion:reduce){ *{ transition:none !important; } }

  img.zoomable { cursor: zoom-in; }
  #visionneuse {
    position: fixed; inset: 0; z-index: 9999; display: none;
    background: rgba(10,14,26,0.94); padding: 2rem 1rem;
    align-items: center; justify-content: center; flex-direction: column;
    cursor: zoom-out; -webkit-tap-highlight-color: transparent;
  }
  #visionneuse.ouverte { display: flex; }
  #visionneuse img {
    max-width: min(1100px, 94vw); max-height: 82vh;
    width: auto; height: auto; border-radius: 8px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.6); background: #fff;
  }
  #visionneuse figcaption {
    color: #e7ecf5; font-size: 0.9rem; line-height: 1.5; text-align: center;
    max-width: min(700px, 90vw); margin-top: 1rem;
  }
  #visionneuse .fermer {
    position: absolute; top: 1rem; right: 1.25rem;
    width: 44px; height: 44px; border: 0; border-radius: 50%;
    background: rgba(255,255,255,0.14); color: #fff;
    font-size: 1.6rem; line-height: 1; cursor: pointer;
  }
  #visionneuse .fermer:hover { background: rgba(255,255,255,0.26); }
