:root {
  --dark-bg: #0a0a14;
  --primary-blue: #00ffff;
  --light-blue: #7DF9FF;
  --text-color: #e0e0e0;
  --text-muted: #a0a0a0;
  --container-bg: #10101e;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body, button, input, select, textarea {
  font-family: 'Poppins', sans-serif;
}
body {
  background: var(--dark-bg);
  color: var(--text-color);
  line-height: 1.6;
}
h1, h2, h3 { color: #fff; }
h1 { font-size: clamp(2rem, 5vw, 3.5rem); text-align: center; }
h2 { font-size: clamp(1.8rem, 4vw, 2.5rem); margin-bottom: 2rem; text-align: center; }
h3 { font-size: 1.5rem; color: var(--primary-blue); margin-bottom: 1rem; }
a { color: var(--primary-blue); text-decoration: none; }
.container { max-width: 900px; margin: auto; padding: 8rem 2rem 4rem; }

.back-link {
  display: inline-flex; /* Utilise Flexbox pour l'alignement */
  align-items: center; /* Centre verticalement l'icône et le texte */
  gap: 0.5rem; /* Espace entre l'icône et le texte */
  margin-bottom: 2rem;
  color: var(--text-muted);
  transition: color 0.3s;
}
.back-link svg {
  width: 1em;
  height: 1em;
  stroke: currentColor; /* L'icône prend la couleur du lien */
}
.back-link:hover {
  color: var(--primary-blue);
}

/* Header */
.header { position: fixed; top: 0; left: 0; width: 100%; padding: 1rem 5%; display: flex; justify-content: space-between; align-items: center; background: rgba(10,10,20,0.85); backdrop-filter: blur(10px); z-index: 1000; }
.logo { font-weight: bold; color: #fff; font-size: 1.5rem; }
.nav { display: flex; gap: 2rem; }
.nav a { font-weight: 500; transition: color 0.3s; }
.nav a:hover { color: var(--light-blue); }
.burger { display: none; font-size: 1.8rem; color: white; cursor: pointer; }

/* Service Detail Page */
.service-detail h1 { margin-bottom: 1rem; }
.service-description { font-size: 1.1rem; color: var(--text-muted); max-width: 700px; margin: 0 auto 3rem; text-align: center; }
.skills-section { background: var(--container-bg); padding: 2rem; border-radius: 12px; }
.skills-list { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; }
.skills-section h2 {
  margin-bottom: 1.5rem;
}

.skills-section h3 {
  font-size: 1.2rem;
  color: var(--primary-blue);
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #333;
  padding-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.skills-section h3 {
  font-size: 1.2rem;
  color: var(--primary-blue);
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #333;
  padding-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.skills-section h3::before {
  content: '';
  display: inline-block;
  width: 22px;
  height: 22px;
  background-color: var(--primary-blue);
  -webkit-mask-size: contain;
  mask-size: contain;
}

/* Icônes par catégorie */
.cat-code::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>'); }
.cat-frontend::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>'); }
.cat-backend::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 00-1-1.73l-7-4a2 2 0 00-2 0l-7 4A2 2 0 002 8v8a2 2 0 001 1.73l7 4a2 2 0 002 0l7-4A2 2 0 0021 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 00-1-1.73l-7-4a2 2 0 00-2 0l-7 4A2 2 0 002 8v8a2 2 0 001 1.73l7 4a2 2 0 002 0l7-4A2 2 0 0021 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>'); }
.cat-lowcode::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.7-3.7a1 1 0 00-1.4-1.4L16 7.6l-1.3-1.3a1 1 0 00-1.4 0zM11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5"></path><path d="M11 14H4a1 1 0 01-1-1V4a1 1 0 011-1h7"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.7-3.7a1 1 0 00-1.4-1.4L16 7.6l-1.3-1.3a1 1 0 00-1.4 0zM11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5"></path><path d="M11 14H4a1 1 0 01-1-1V4a1 1 0 011-1h7"></path></svg>'); }
.cat-cms::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>'); }
.cat-support::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 006 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 01-3.46 0"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 006 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 01-3.46 0"></path></svg>'); }
.cat-admin::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg>'); }
.cat-network::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 12v-2M12 8V6M12 18v-2M12 22v-2M20 12h-2M6 12H4M17.66 17.66l-1.41-1.41M8.34 8.34l-1.41-1.41M17.66 6.34l-1.41 1.41M8.34 15.66l-1.41 1.41"></path><circle cx="12" cy="12" r="2"></circle></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 12v-2M12 8V6M12 18v-2M12 22v-2M20 12h-2M6 12H4M17.66 17.66l-1.41-1.41M8.34 8.34l-1.41-1.41M17.66 6.34l-1.41 1.41M8.34 15.66l-1.41 1.41"></path><circle cx="12" cy="12" r="2"></circle></svg>'); }
.cat-maintenance::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2l4 4L6 20H2v-4L14 2z"></path><path d="M3 21h18"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2l4 4L6 20H2v-4L14 2z"></path><path d="M3 21h18"></path></svg>'); }
.cat-hardware::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h.01"></path><path d="M12 4h.01"></path><path d="M20 12h.01"></path><path d="M4 12h.01"></path><path d="M17.66 17.66h.01"></path><path d="M6.34 6.34h.01"></path><path d="M17.66 6.34h.01"></path><path d="M6.34 17.66h.01"></path><path d="M12 12a4 4 0 100-8 4 4 0 000 8z"></path><path d="M12 12v8"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h.01"></path><path d="M12 4h.01"></path><path d="M20 12h.01"></path><path d="M4 12h.01"></path><path d="M17.66 17.66h.01"></path><path d="M6.34 6.34h.01"></path><path d="M17.66 6.34h.01"></path><path d="M6.34 17.66h.01"></path><path d="M12 12a4 4 0 100-8 4 4 0 000 8z"></path><path d="M12 12v8"></path></svg>'); }
.cat-software::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 18L22 12 16 6"></path><path d="M8 6L2 12 8 18"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 18L22 12 16 6"></path><path d="M8 6L2 12 8 18"></path></svg>'); }
.cat-security::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>'); }
.cat-training::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 006 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 01-3.46 0"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 006 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 01-3.46 0"></path></svg>'); }
.cat-strategy::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z"></path><path d="M8 12h8M12 8v8"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z"></path><path d="M8 12h8M12 8v8"></path></svg>'); }
.cat-project::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline></svg>'); }
.cat-architecture::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"></path></svg>'); }
.cat-performance::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z"></path></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z"></path></svg>'); }
.cat-seo::before { -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>'); mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>'); }

.skills-list li {

  background: var(--dark-bg);

  padding: 1rem;

  border-radius: 8px;

    border-left: 3px solid var(--primary-blue);

    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;

  }

  

  /* Section Exemples de Prestations */

  .prestation-examples {

    margin: 4rem 0;

  }

  .prestation-list {

    list-style: none;

    padding: 0;

    display: flex;

    flex-direction: column;

    gap: 1rem;

  }

  .prestation-list li {

    background: var(--container-bg);

    padding: 1.25rem 1.5rem;

    border-radius: 8px;

    display: flex;

    align-items: center;

    gap: 1rem;

    text-align: left;

    font-size: 1.1rem;

    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;

  }

  

  .prestation-list li:hover {

    transform: scale(1.03);

    box-shadow: 0 4px 20px rgba(0, 255, 255, 0.1);

  }

  .prestation-list li svg {

    width: 24px;

    height: 24px;

    stroke: var(--primary-blue);

    flex-shrink: 0;

  }



.skills-list li:hover {

  transform: scale(1.04);

  box-shadow: 0 4px 20px rgba(0, 255, 255, 0.1);

}

/* Footer */
.footer { text-align: center; padding: 2rem; color: var(--text-muted); border-top: 1px solid #222; }

/* Mobile */
@media (max-width: 768px) {
  .nav { display: none; flex-direction: column; background: var(--container-bg); position: absolute; top: 70px; right: 5%; padding: 1rem; border-radius: 8px; }
  .nav.active { display: flex; }
  .burger { display: block; }
  .container { padding: 6rem 1rem 3rem; }
}
