/* ============================================================
   INNER PAGES — compléments à style.css
   ============================================================ */

/* --- Bandeau d'en-tête compact --- */
.page-hero{
  position:relative;
  padding:130px 0 70px;
  background:linear-gradient(135deg,var(--vert-fonce) 0%,var(--vert) 100%);
  color:#fff;text-align:center;overflow:hidden;
}
.page-hero::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(900px 420px at 50% 0%,rgba(106,168,79,.28),transparent 70%);
  pointer-events:none;
}
.page-hero-inner{position:relative;z-index:1;max-width:760px;margin-inline:auto;}
.page-hero .eyebrow{color:#b7dd9c;}
.page-hero h1{color:#fff;margin-bottom:.7rem;}
.page-hero p{color:rgba(255,255,255,.88);margin:0 auto;}

/* --- Fil d'ariane --- */
.breadcrumb{
  display:flex;justify-content:center;flex-wrap:wrap;
  gap:.5rem;list-style:none;padding:0;margin:0 0 1.1rem;
  font-size:.82rem;color:rgba(255,255,255,.65);
}
.breadcrumb li+li::before{content:"/";margin-right:.5rem;color:rgba(255,255,255,.4);}
.breadcrumb a{color:rgba(255,255,255,.85);}
.breadcrumb a:hover{color:#fff;}

/* --- Lien actif dans la nav --- */
.main-nav a.active{color:var(--vert-fonce);}
.main-nav a.active::after{width:100%;}

/* --- Blocs deux colonnes --- */
.split{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(2rem,5vw,4rem);align-items:center;
}
.split.reverse .media{order:-1;}
@media (max-width:880px){
  .split{grid-template-columns:1fr;}
  .split.reverse .media{order:0;}
}

/* --- Liste d'étapes verticales (méthode) --- */
.method-list{display:grid;gap:1.1rem;max-width:880px;margin-inline:auto;}
.method-item{
  display:grid;grid-template-columns:64px 1fr;gap:1.4rem;
  padding:1.6rem 1.8rem;background:#fff;
  border:1px solid var(--bordure);border-radius:var(--radius);
  transition:transform var(--transition),box-shadow var(--transition);
}
.method-item:hover{transform:translateY(-3px);box-shadow:var(--ombre);}
.method-item .num{
  display:grid;place-items:center;
  width:56px;height:56px;border-radius:50%;
  background:var(--vert-pale);color:var(--vert-fonce);
  font-family:Georgia,serif;font-weight:700;font-size:1.35rem;
}
.method-item h3{margin-bottom:.3rem;}
.method-item p{margin:0;color:var(--texte-doux);font-size:.94rem;}
@media (max-width:620px){
  .method-item{grid-template-columns:1fr;gap:.8rem;}
}

/* --- Galerie masonry (réalisations) --- */
.gallery-masonry{columns:3;column-gap:1rem;}
.gallery-masonry .media{
  break-inside:avoid;margin:0 0 1rem;
  border-radius:var(--radius-sm);aspect-ratio:auto;
  cursor:zoom-in;
}
.gallery-masonry .media img{aspect-ratio:4/3;height:auto;}
.gallery-masonry .media:nth-child(3n+1) img{aspect-ratio:1/1;}
.gallery-masonry .media:nth-child(5n+2) img{aspect-ratio:4/5;}
@media (max-width:900px){.gallery-masonry{columns:2;}}
@media (max-width:560px){.gallery-masonry{columns:1;}}

/* --- Filtres (chips décoratifs) --- */
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;margin-bottom:2rem;}
.chip{
  padding:.55rem 1.15rem;border-radius:100px;
  border:1px solid var(--bordure);background:#fff;
  font-size:.85rem;font-weight:600;color:var(--texte);
  cursor:pointer;transition:all var(--transition);
}
.chip:hover{border-color:var(--vert-clair);color:var(--vert-fonce);}
.chip.active{background:var(--vert);color:#fff;border-color:var(--vert);}

/* --- Grille de cartes d'info --- */
.info-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1.3rem;
}
.info-card{
  background:#fff;border:1px solid var(--bordure);border-radius:var(--radius);
  padding:1.7rem 1.6rem;
  transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);
}
.info-card:hover{transform:translateY(-4px);box-shadow:var(--ombre);border-color:#cfe0c3;}
.info-card .ic{
  display:grid;place-items:center;
  width:46px;height:46px;border-radius:12px;
  background:var(--vert-pale);color:var(--vert-fonce);
  font-size:1.25rem;margin-bottom:1rem;
}
.info-card h3{font-size:1.05rem;margin-bottom:.35rem;}
.info-card p{margin:0;font-size:.9rem;color:var(--texte-doux);}
.info-card a{font-weight:600;}

/* --- Layout contact --- */
.contact-layout{
  display:grid;grid-template-columns:1fr 1.1fr;
  gap:clamp(2rem,5vw,3.5rem);align-items:start;
}
@media (max-width:900px){.contact-layout{grid-template-columns:1fr;}}

.contact-form{
  background:#fff;border:1px solid var(--bordure);border-radius:var(--radius);
  padding:clamp(1.8rem,4vw,2.6rem);box-shadow:var(--ombre);
}
.contact-form h2{margin-bottom:1.3rem;}
.contact-form .field{margin-bottom:1rem;}
.contact-form label{
  display:block;font-size:.82rem;font-weight:600;
  color:var(--vert-fonce);margin-bottom:.4rem;letter-spacing:.03em;
}
.contact-form input,
.contact-form textarea,
.contact-form select{
  width:100%;padding:.85rem 1.1rem;
  border-radius:10px;border:1.5px solid var(--bordure);
  background:#fff;font:inherit;font-size:.95rem;color:var(--texte);
  transition:border-color var(--transition),box-shadow var(--transition);
}
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus{
  outline:none;border-color:var(--vert-clair);
  box-shadow:0 0 0 4px rgba(106,168,79,.15);
}
.contact-form textarea{min-height:130px;resize:vertical;}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
@media (max-width:560px){.contact-form .row{grid-template-columns:1fr;}}
.contact-form button{width:100%;margin-top:.5rem;}

/* --- Bande de stats --- */
.stat-strip{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1.5rem;padding:2.2rem clamp(1.5rem,4vw,2.8rem);
  background:var(--vert-pale);border-radius:var(--radius);text-align:center;
}
.stat-strip .stat strong{
  display:block;font-family:Georgia,serif;
  font-size:clamp(1.8rem,3.5vw,2.4rem);
  color:var(--vert);line-height:1;margin-bottom:.4rem;
}
.stat-strip .stat span{font-size:.85rem;color:var(--texte-doux);}

/* --- Contenu étroit --- */
.narrow{max-width:780px;margin-inline:auto;}

/* --- Liste à puces avec coche --- */
.feature-list{display:grid;gap:.75rem;margin:1.4rem 0 1.6rem;padding:0;list-style:none;}
.feature-list li{display:flex;align-items:flex-start;gap:.7rem;font-size:.95rem;color:var(--texte);}
.feature-list li::before{
  content:"✓";display:grid;place-items:center;
  width:22px;height:22px;flex-shrink:0;margin-top:1px;
  border-radius:50%;background:var(--vert-pale);color:var(--vert);
  font-size:.72rem;font-weight:700;
}

/* --- Bande CTA pleine largeur --- */
.cta-band{
  background:linear-gradient(135deg,var(--vert) 0%,var(--vert-fonce) 100%);
  color:#fff;border-radius:calc(var(--radius) + 6px);
  padding:clamp(2.2rem,5vw,3.4rem);
  text-align:center;position:relative;overflow:hidden;
}
.cta-band::before{
  content:"";position:absolute;inset:auto -60px -110px auto;
  width:280px;height:280px;border-radius:50%;
  background:rgba(255,255,255,.07);
}
.cta-band h2{color:#fff;position:relative;margin-bottom:.6rem;}
.cta-band p{color:#cfe0c6;max-width:56ch;margin:0 auto 1.6rem;position:relative;}
.cta-band .btn{position:relative;}