/* styles.css - simple responsive design */
:root{
  --green: #1e7a3a;
  --dark: #12311f;
  --muted: #666;
  --bg: #ffffff;
  --max-width: 1100px;
}
*{box-sizing:border-box}
body{
  font-family: 'Open Sans', Arial, sans-serif;
  margin:0;
  color:#122;
  background:var(--bg);
  line-height:1.5;
}
.container{
  max-width:var(--max-width);
  margin:0 auto;
  padding:20px;
}
.site-header{
  border-bottom:4px solid rgba(30,122,58,0.08);
  background:#f8fff8;
}
.header-inner{
  display:flex;
  align-items:center;
  gap:20px;
}
.brand{display:flex;gap:12px;align-items:center}
.brand h1{margin:0;font-size:1.25rem;color:var(--green)}
.tagline{margin:0;color:var(--muted);font-weight:600}
.logo-img{width:72px;height:72px;object-fit:cover;border-radius:6px;background:#fff;padding:4px;border:1px solid rgba(0,0,0,0.06)}

.main-nav{margin-left:auto;display:flex;gap:16px}
.main-nav a{color:var(--dark);text-decoration:none;font-weight:600}
.nav-toggle{display:none;background:none;border:0;font-size:1.2rem;margin-left:auto;padding:8px}

.hero{
  display:grid;
  grid-template-columns:1fr 420px;
  gap:24px;
  align-items:center;
  padding:40px 0;
}
.hero-text h2{color:var(--green);font-size:2rem;margin:0 0 12px}
.hero-text p{margin:0 0 18px;color:#163}
.btn-primary{
  display:inline-block;background:var(--green);color:#fff;padding:12px 18px;border-radius:8px;text-decoration:none;font-weight:700
}
.hero-image img{width:100%;border-radius:8px;border:1px solid rgba(0,0,0,0.06)}

.services h3,.tarifs h3,.about h3,.contact h3{color:var(--dark)}
.services .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:16px}
.card{background:#fff;padding:18px;border-radius:8px;border:1px solid rgba(0,0,0,0.04)}
.card h4{margin:10px 0 6px}
.card p{margin:0;color:var(--muted)}

.tarifs ul{list-style:disc;margin-left:18px;color:var(--muted)}
.contact form{max-width:700px;margin-top:12px;display:grid;gap:10px}
.contact input,.contact textarea{padding:10px;border:1px solid rgba(0,0,0,0.09);border-radius:6px}
.contact label{font-weight:600}
.form-note{color:var(--muted);font-size:0.95rem;margin-top:6px}
.hidden{display:none}

.site-footer{background:#f2f6f2;padding:18px 0;margin-top:32px;text-align:center;color:var(--muted)}

@media (max-width:900px){
  .hero{grid-template-columns:1fr; padding:28px 0}
  .services .grid{grid-template-columns:repeat(2,1fr)}
  .main-nav{display:none}
  .nav-toggle{display:block}
}
@media (max-width:560px){
  .services .grid{grid-template-columns:1fr}
  .brand h1{font-size:1rem}
  .logo-img{width:56px;height:56px}
}
