:root{
    --text:#0f172a;
    --muted:#475569;
    --brand:#11a8a0;
    --white:#fff;
    --card:#f8fafc;
  }
  
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  body{font-family:Inter,system-ui,Arial;background:#fff;color:var(--text)}
  .container{max-width:1100px;margin:0 auto;padding:0 20px}
  
  .topbar{position:sticky;top:0;background:#fff;border-bottom:1px solid #e2e8f0;z-index:10}
  .nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
  .brand{display:flex;align-items:center;gap:8px;font-weight:800}
  .logo{font-size:20px}
  .menu{display:flex;gap:16px;flex-wrap:wrap}
  .menu a{color:var(--muted);text-decoration:none}
  .menu a:hover{color:#000}
  .logo-img {
    height: 32px;
    width: auto;
    border-radius: 6px; /* enlève si tu veux pas arrondi */
  }
  /* ===== Menu hamburger ===== */
.menu-toggle {
    display: none;
    font-size: 28px;
    cursor: pointer;
    padding: 6px 10px;
  }
  
  /* mobile */
  @media (max-width: 900px) {
    .menu {
      display: none;
      flex-direction: column;
      background: #fff;
      padding: 15px;
      position: absolute;
      top: 64px;
      right: 20px;
      width: 180px;
      border-radius: 10px;
      box-shadow: 0 5px 18px rgba(0,0,0,0.1);
      z-index: 999;
    }
  
    .menu.show {
      display: flex;
    }
  
    .menu-toggle {
      display: block;
    }
  
    .btn.call {
      display: none;
    }
  }
  /* Fix services grid on mobile */
.checks {
    width: 100%;
  }
  
  .checks label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 15px;
  }
  
  .checks input[type="checkbox"] {
    width: 20px;
    height: 20px;
  }
  
  /* 2-column layout on mobile */
  @media (max-width: 600px) {
    .checks {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px 15px;
    }
  
    .checks legend {
      grid-column: span 2;
    }
  }
  
  

  
  
  
  
  .btn{display:inline-block;padding:12px 18px;border-radius:10px;text-decoration:none;border:1px solid #e2e8f0}
  .btn.primary{background:var(--brand);border-color:var(--brand);color:#002a28;font-weight:700}
  .btn.ghost{background:#fff;color:var(--text)}
  .btn.call{background:#111827;color:#fff;border-color:#111827}
  
  .hero{background:linear-gradient(180deg,#e6fffb, #fff);padding:48px 0}
  .hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
  .hero h1{font-size:42px;line-height:1.1;margin:0 0 10px}
  .hero p{font-size:18px;color:#1f2937;margin:0 0 12px}
  .cta-row{display:flex;gap:12px;margin:10px 0 6px}
  .badges{display:flex;gap:14px;list-style:none;padding:0;margin:10px 0 0;color:#0b5c58;font-weight:600}
  
  .hero-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.05)}
  .hero-card h3{margin:0 0 10px}
  .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  input,select,textarea{width:100%;padding:10px;border:1px solid #e5e7eb;border-radius:10px;font-size:15px}
  fieldset.checks{border:1px dashed #cbd5e1;border-radius:10px;padding:8px 10px;margin:8px 0}
  fieldset.checks label{display:inline-flex;align-items:center;gap:6px;margin:6px 10px 0 0}
  button[type=submit]{cursor:pointer;margin-top:6px}
  .msg{min-height:20px;font-size:14px}
  
  .section{padding:56px 0}
  .section.alt{background:#f8fafc}
  .section h2{font-size:32px;margin:0 0 10px}
  .lead{color:#334155}
  .grid{display:grid;gap:16px}
  .services{grid-template-columns:repeat(3,1fr)}
  .card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px}
  .center{text-align:center;margin-top:14px}
  .gallery{grid-template-columns:repeat(4,1fr)}
  .gallery .ph{aspect-ratio:1.3/1;background:linear-gradient(135deg,#e2e8f0,#f1f5f9);border-radius:10px}
  
  .reviews{grid-template-columns:repeat(3,1fr)}
  .reviews .card p{margin:0 0 6px}
  .who{color:#64748b;font-size:14px}
  
  .contact{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
  .contact-list{list-style:none;padding:0;margin:0 0 10px}
  .contact-list li{margin:8px 0}
  
  .map{width:100%;height:320px;border:0;border-radius:12px}
  
  .footer{background:#0b1321;color:#cbd5e1;padding:24px 0}
  .foot{display:flex;flex-direction:column;gap:8px;align-items:center}
  .footer .menu a{color:#cbd5e1}
  .footer .menu a:hover{color:#fff}
  
  @media (max-width: 900px){
    .hero-inner{grid-template-columns:1fr}
    .services{grid-template-columns:1fr 1fr}
    .reviews{grid-template-columns:1fr}
    .gallery{grid-template-columns:1fr 1fr}
    .contact{grid-template-columns:1fr}
    .row{grid-template-columns:1fr}
  }
  