/* produit.css — styles pages produit */
.pp-hero{position:relative;height:90vh;min-height:560px;max-height:800px;display:flex;align-items:flex-end;overflow:hidden;}
.pp-hero-img{position:absolute;inset:0;}
.pp-hero-photo{width:100%;height:100%;object-fit:cover;object-position:center;}
.pp-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.15) 40%,rgba(0,0,0,.75) 100%);}
.pp-hero-content{position:relative;z-index:2;width:100%;padding-bottom:64px;}
.pp-breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,.65);margin-bottom:20px;flex-wrap:wrap;}
.pp-breadcrumb a{color:rgba(255,255,255,.65);text-decoration:none;transition:color .2s;}
.pp-breadcrumb a:hover{color:#fff;}
.pp-hero-tag{display:inline-flex;align-items:center;gap:6px;background:#5A8C2A;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:99px;margin-bottom:16px;}
.pp-hero-title{font-size:clamp(48px,7vw,80px);font-weight:800;color:#fff;letter-spacing:-.04em;line-height:1;margin:0 0 16px;}
.pp-hero-title em{color:#5A8C2A;font-style:normal;}
.pp-hero-sub{font-size:clamp(16px,2vw,19px);color:rgba(255,255,255,.85);line-height:1.6;max-width:520px;margin-bottom:32px;}
.pp-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.pp-hero-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:rgba(255,255,255,.85);text-decoration:none;}
.pp-hero-link:hover{color:#fff;}
.pp-quickstats{background:#0A0A0A;padding:28px 0;}
.pp-qs-grid{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;}
.pp-qs-item{text-align:center;flex:1;min-width:100px;}
.pp-qs-val{font-size:clamp(20px,2.5vw,26px);font-weight:800;color:#5A8C2A;letter-spacing:-.03em;line-height:1;}
.pp-qs-label{font-size:11px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.07em;margin-top:4px;}
.pp-qs-sep{width:1px;height:40px;background:rgba(255,255,255,.1);flex-shrink:0;}
.pp-desc{padding:88px 0;background:#fff;}
.pp-desc-grid{display:grid;grid-template-columns:3fr 2fr;gap:80px;align-items:start;}
.pp-desc-text h2{font-size:clamp(28px,3.5vw,40px);font-weight:800;color:#0A0A0A;letter-spacing:-.03em;margin:16px 0 20px;line-height:1.15;}
.pp-desc-text p{font-size:15px;line-height:1.85;color:#444;margin-bottom:14px;}
.pp-desc-checks{margin-top:28px;display:flex;flex-direction:column;gap:10px;list-style:none;padding:0;}
.pp-desc-checks li{display:flex;align-items:center;gap:10px;font-size:14px;color:#333;font-weight:500;}
.pp-desc-checks li i{color:#5A8C2A;font-size:15px;flex-shrink:0;}
.pp-check{display:flex;align-items:center;gap:10px;font-size:14px;color:#333;font-weight:500;}
.pp-check i{color:#5A8C2A;font-size:15px;flex-shrink:0;}
.pp-desc-img{border-radius:14px;overflow:hidden;}
.pp-desc-photo{width:100%;height:auto;display:block;border-radius:14px;}
.pp-usages{background:#F7F7F5;border:1px solid #E2E2DF;border-radius:12px;padding:24px;position:sticky;top:80px;}
.pp-usages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;}
.pp-usages-grid .pp-usage{border-bottom:none;border:1px solid #E2E2DF;border-radius:10px;padding:14px 16px;background:#fff;}
@media(max-width:768px){.pp-usages-grid{grid-template-columns:repeat(2,1fr);}}
.pp-usages-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#555;margin-bottom:16px;}
.pp-usage{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #E2E2DF;font-size:14px;font-weight:500;color:#0A0A0A;}
.pp-usage:last-child{border-bottom:none;}
.pp-usage i{color:#5A8C2A;font-size:16px;width:20px;text-align:center;flex-shrink:0;}
.pp-specs{padding:88px 0;background:#F7F7F5;border-top:1px solid #E2E2DF;}
.pp-specs h2,.pp-config h2,.pp-related h2{font-size:clamp(26px,3.5vw,38px);font-weight:800;color:#0A0A0A;letter-spacing:-.03em;margin:16px 0 40px;}
.pp-specs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pp-spec-card{background:#fff;border:1px solid #E2E2DF;border-radius:12px;padding:24px;transition:box-shadow .2s,transform .2s;}
.pp-spec-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.07);transform:translateY(-2px);}
.pp-spec-icon{width:44px;height:44px;background:#F7F7F5;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#5A8C2A;margin-bottom:14px;}
.pp-spec-title{font-size:13px;font-weight:700;color:#0A0A0A;margin-bottom:14px;text-transform:uppercase;letter-spacing:.05em;}
.pp-spec-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #E2E2DF;font-size:13px;}
.pp-spec-row:last-child{border-bottom:none;}
.pp-spec-row span:first-child{color:#555;}
.pp-spec-row span:last-child{font-weight:600;color:#0A0A0A;text-align:right;}
.pp-config{padding:88px 0;background:#fff;border-top:1px solid #E2E2DF;}
.pp-config-sub{font-size:15px;color:#555;margin-bottom:48px;}
.pp-config-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;margin-bottom:40px;}
.pp-config-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#555;margin-bottom:12px;}
.pp-config-label i{color:#5A8C2A;}
.pp-config-options{display:flex;flex-wrap:wrap;gap:8px;}
.pp-opt{padding:8px 16px;border:1.5px solid #E2E2DF;border-radius:7px;font-size:13px;font-weight:500;color:#555;cursor:pointer;transition:all .2s;background:#fff;user-select:none;}
.pp-opt:hover{border-color:#5A8C2A;color:#5A8C2A;}
.pp-opt.active{background:#5A8C2A;border-color:#5A8C2A;color:#fff;font-weight:600;}
.pp-config-cta{background:#F7F7F5;border:1px solid #E2E2DF;border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.pp-config-summary{display:flex;align-items:center;gap:10px;font-size:14px;color:#444;}
.pp-config-summary i{color:#5A8C2A;font-size:16px;flex-shrink:0;}
.pp-avantages{padding:88px 0;background:#F7F7F5;border-top:1px solid #E2E2DF;}
.pp-av-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.pp-av-item{text-align:center;padding:32px 20px;background:#fff;border:1px solid #E2E2DF;border-radius:12px;transition:box-shadow .2s,transform .2s;}
.pp-av-item:hover{box-shadow:0 8px 32px rgba(0,0,0,.07);transform:translateY(-3px);}
.pp-av-icon{width:56px;height:56px;background:#EEF4E6;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#5A8C2A;margin:0 auto 16px;}
.pp-av-title{font-size:15px;font-weight:700;color:#0A0A0A;margin-bottom:10px;}
.pp-av-item p{font-size:13px;line-height:1.7;color:#555;margin:0;}
.pp-related{padding:88px 0;background:#fff;border-top:1px solid #E2E2DF;}
.pp-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.pp-rel-card{text-decoration:none;color:inherit;border:1px solid #E2E2DF;border-radius:12px;overflow:hidden;transition:box-shadow .2s,transform .2s;display:block;}
.pp-rel-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.1);transform:translateY(-4px);}
.pp-rel-img{height:200px;overflow:hidden;}
.pp-rel-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.pp-rel-card:hover .pp-rel-img img{transform:scale(1.05);}
.pp-rel-info{padding:20px;}
.pp-rel-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#5A8C2A;margin-bottom:6px;}
.pp-rel-title{font-size:16px;font-weight:700;color:#0A0A0A;margin-bottom:12px;}
.pp-rel-link{font-size:13px;font-weight:600;color:#5A8C2A;display:flex;align-items:center;gap:4px;}
.pp-final-cta{padding:80px 0;background:#5A8C2A;}
.pp-fcta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;}
.pp-fcta-inner h2{font-size:clamp(24px,3vw,36px);font-weight:800;color:#fff;letter-spacing:-.03em;margin-bottom:8px;}
.pp-fcta-inner p{font-size:15px;color:rgba(255,255,255,.8);margin:0;}
.pp-fcta-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.btn-outline-white{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border:2px solid rgba(255,255,255,.6);color:#fff;font-size:14px;font-weight:600;border-radius:8px;text-decoration:none;transition:border-color .2s,background .2s;white-space:nowrap;}
.btn-outline-white:hover{border-color:#fff;background:rgba(255,255,255,.1);}
@media(max-width:1024px){.pp-specs-grid{grid-template-columns:repeat(2,1fr);}.pp-av-grid{grid-template-columns:repeat(2,1fr);}.pp-desc-grid{grid-template-columns:1fr;gap:48px;}.pp-usages{position:static;}}
@media(max-width:768px){.pp-hero{height:75vh;}.pp-hero-content{padding-bottom:40px;}.pp-qs-sep{display:none;}.pp-qs-grid{justify-content:center;gap:16px 32px;}.pp-desc,.pp-specs,.pp-config,.pp-avantages,.pp-related{padding:56px 0;}.pp-specs-grid,.pp-config-grid,.pp-av-grid,.pp-related-grid{grid-template-columns:1fr;}.pp-fcta-inner{flex-direction:column;text-align:center;}.pp-fcta-actions{justify-content:center;}.pp-config-cta{flex-direction:column;align-items:flex-start;}.pp-hero-actions{flex-direction:column;align-items:flex-start;}}

/* ══════════════════════════════════════════════════════
   HERO V2 — texte gauche + photo droite + 3 photos bas
   ══════════════════════════════════════════════════════ */
.pp-hero-v2 {
  padding: 48px 0 0;
  background: #FAFAF8;
  border-bottom: 1px solid var(--border);
}

/* Fil d'ariane */
.pp-bc {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; color: var(--muted);
  margin-bottom: 28px; flex-wrap: wrap;
}
.pp-bc a { color: var(--muted); text-decoration: none; transition: color .2s; }
.pp-bc a:hover { color: var(--red); }
.pp-bc i { font-size: 10px; }

/* Badge catégorie */
.pp-hero-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: #EEF4E6; color: var(--red);
  font-size: 11px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 5px 14px; border-radius: 99px;
  margin-bottom: 18px;
}

/* Ligne principale : 2 colonnes */
.pp-hero-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
  margin-bottom: 40px;
}

/* Colonne texte */
.pp-hero-text {}
.pp-hero-v2-title {
  font-size: clamp(30px, 4vw, 50px);
  font-weight: 800; color: var(--black);
  letter-spacing: -.04em; line-height: 1.1;
  margin: 0 0 16px;
}
.pp-hero-v2-title em { color: var(--red); font-style: normal; }
.pp-hero-v2-sub {
  font-size: 16px; color: var(--muted);
  line-height: 1.7; margin-bottom: 20px;
}
.pp-hero-bullets {
  list-style: none; padding: 0; margin: 0 0 28px;
  display: flex; flex-direction: column; gap: 10px;
}
.pp-hero-bullets li {
  display: flex; align-items: center; gap: 10px;
  font-size: 14px; font-weight: 500; color: #333;
}
.pp-hero-bullets li i { color: var(--red); font-size: 15px; flex-shrink: 0; }
.pp-hero-v2-ctas {
  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
}
.pp-hero-v2-link {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 600; color: var(--muted);
  text-decoration: none; transition: color .2s;
}
.pp-hero-v2-link:hover { color: var(--red); }

/* Colonne photo principale */
.pp-hero-img-main {
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 40px rgba(0,0,0,.12);
}
.pp-hero-img-main img {
  width: 100%; aspect-ratio: 4/3;
  object-fit: cover; display: block;
}

/* 3 photos en dessous */
.pp-hero-v2-photos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.pp-hero-v2-photo {
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}
.pp-hero-v2-photo img {
  width: 100%; aspect-ratio: 4/3;
  object-fit: cover; display: block;
  transition: transform .4s ease;
}
.pp-hero-v2-photo:hover img { transform: scale(1.04); }
.pp-photo-caption {
  display: block; text-align: center;
  font-size: 11px; color: var(--muted);
  font-weight: 500; letter-spacing: .04em;
  text-transform: uppercase;
  padding: 8px 0 16px;
  background: #FAFAF8;
}

/* ══ FAQ PRODUIT — 2 colonnes accordéon ══ */
.pp-faq {
  padding: 88px 0;
  background: var(--light);
  border-top: 1px solid var(--border);
}
.pp-faq h2 {
  font-size: clamp(26px, 3.5vw, 38px);
  font-weight: 800; color: var(--black);
  letter-spacing: -.03em; margin: 16px 0 40px;
}
.pp-faq-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px;
}
.pp-faq-col { display: flex; flex-direction: column; }
.pp-faq-item { border-bottom: 1px solid var(--border); }
.pp-faq-q {
  width: 100%; display: flex; align-items: center;
  justify-content: space-between; gap: 12px;
  padding: 18px 0; background: none; border: none;
  cursor: pointer; text-align: left;
  font-family: var(--fb); font-size: 15px;
  font-weight: 600; color: var(--black);
  transition: color .2s;
}
.pp-faq-q:hover { color: var(--red); }
.pp-faq-q i { font-size: 18px; color: var(--red); flex-shrink: 0; }
.pp-faq-a {
  font-size: 14px; line-height: 1.8; color: #444;
  max-height: 0; overflow: hidden;
  transition: max-height .35s ease, padding .35s ease;
}
.pp-faq-item.open .pp-faq-a { max-height: 300px; padding: 0 0 18px; }

/* ══ RESPONSIVE ══ */
@media(max-width:1024px) {
  .pp-specs-grid { grid-template-columns: repeat(2,1fr); }
  .pp-av-grid { grid-template-columns: repeat(2,1fr); }
  .pp-desc-grid { grid-template-columns: 1fr; gap: 48px; }
  .pp-usages { position: static; }
}
@media(max-width:768px) {
  .pp-hero-v2 { padding: 36px 0 0; }
  .pp-hero-main { grid-template-columns: 1fr; gap: 32px; margin-bottom: 24px; }
  .pp-hero-img-main { border-radius: 10px; }
  .pp-hero-v2-photos { grid-template-columns: 1fr; gap: 10px; }
  .pp-hero-v2-photo { border-radius: 8px 8px 0 0; }
  .pp-faq-grid { grid-template-columns: 1fr; gap: 0; }
  .pp-faq { padding: 56px 0; }
  .pp-specs-grid { grid-template-columns: 1fr; }
  .pp-config-grid { grid-template-columns: 1fr; }
  .pp-av-grid { grid-template-columns: 1fr; }
  .pp-related-grid { grid-template-columns: 1fr; }
  .pp-fcta-inner { flex-direction: column; text-align: center; }
  .pp-fcta-actions { justify-content: center; }
  .pp-config-cta { flex-direction: column; align-items: flex-start; }
  .pp-hero-v2-ctas { flex-direction: column; align-items: flex-start; }
}

/* ══════════════════════════════════════════════════════
   HERO V2 — texte gauche + photo droite + slider bas
   ══════════════════════════════════════════════════════ */
.pp-hero-v2 {
  padding: 48px 0 0;
  background: #FAFAF8;
  border-bottom: 1px solid var(--border);
}
.pp-bc {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; color: var(--muted);
  margin-bottom: 28px; flex-wrap: wrap;
}
.pp-bc a { color: var(--muted); text-decoration: none; transition: color .2s; }
.pp-bc a:hover { color: var(--red); }
.pp-bc i { font-size: 10px; }
.pp-hero-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: #EEF4E6; color: var(--red);
  font-size: 11px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 5px 14px; border-radius: 99px; margin-bottom: 18px;
}
.pp-hero-main {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 56px; align-items: center; margin-bottom: 40px;
}
.pp-hero-v2-title {
  font-size: clamp(30px, 4vw, 50px);
  font-weight: 800; color: var(--black);
  letter-spacing: -.04em; line-height: 1.1; margin: 0 0 16px;
}
.pp-hero-v2-title em { color: var(--red); font-style: normal; }
.pp-hero-v2-sub {
  font-size: 16px; color: var(--muted); line-height: 1.7; margin-bottom: 20px;
}
.pp-hero-bullets {
  list-style: none; padding: 0; margin: 0 0 28px;
  display: flex; flex-direction: column; gap: 10px;
}
.pp-hero-bullets li {
  display: flex; align-items: center; gap: 10px;
  font-size: 14px; font-weight: 500; color: #333;
}
.pp-hero-bullets li i { color: var(--red); font-size: 15px; flex-shrink: 0; }
.pp-hero-v2-ctas {
  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
}
.pp-hero-v2-link {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 600; color: var(--muted);
  text-decoration: none; transition: color .2s;
}
.pp-hero-v2-link:hover { color: var(--red); }
.pp-hero-img-main {
  border-radius: 14px; overflow: hidden;
  box-shadow: 0 8px 40px rgba(0,0,0,.12);
}
.pp-hero-img-main img {
  width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block;
}

/* ══ SLIDER RÉALISATIONS ══ */
.pp-slider-wrap {
  padding-bottom: 32px;
}
.pp-slider-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 14px;
}
.pp-slider-title {
  font-size: 13px; font-weight: 700; color: var(--muted);
  text-transform: uppercase; letter-spacing: .07em;
  display: flex; align-items: center; gap: 7px;
}
.pp-slider-title i { color: var(--red); }
.pp-slider-nav { display: flex; gap: 8px; }
.pp-slider-btn {
  width: 34px; height: 34px; border-radius: 50%;
  border: 1.5px solid var(--border); background: var(--white);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; font-size: 14px; color: var(--black);
  transition: border-color .2s, background .2s;
}
.pp-slider-btn:hover { border-color: var(--red); background: #EEF4E6; color: var(--red); }
.pp-slider-viewport {
  overflow: hidden; border-radius: 10px 10px 0 0;
}
.pp-slider-track {
  display: flex; transition: transform .45s cubic-bezier(.4,0,.2,1);
}
.pp-slide {
  flex: 0 0 calc(100% / 3); position: relative; overflow: hidden;
}
.pp-slide img {
  width: 100%; aspect-ratio: 4/3; object-fit: cover;
  display: block; transition: transform .4s;
}
.pp-slide:hover img { transform: scale(1.04); }
.pp-slide-label {
  position: absolute; bottom: 0; left: 0; right: 0;
  background: linear-gradient(transparent, rgba(0,0,0,.55));
  color: #fff; font-size: 11px; font-weight: 600;
  padding: 24px 12px 10px;
  display: flex; align-items: center; gap: 5px;
  letter-spacing: .03em;
}
.pp-slide-label i { font-size: 11px; }
.pp-slider-dots {
  display: flex; gap: 6px; justify-content: center;
  padding: 12px 0 4px;
}
.pp-dot {
  width: 7px; height: 7px; border-radius: 50%;
  border: none; background: var(--border); cursor: pointer;
  transition: background .2s, transform .2s;
}
.pp-dot.active { background: var(--red); transform: scale(1.3); }

/* ══ FAQ PRODUIT ══ */
.pp-faq {
  padding: 88px 0; background: var(--light); border-top: 1px solid var(--border);
}
.pp-faq h2 {
  font-size: clamp(26px, 3.5vw, 38px); font-weight: 800;
  color: var(--black); letter-spacing: -.03em; margin: 16px 0 40px;
}
.pp-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; }
.pp-faq-col { display: flex; flex-direction: column; }
.pp-faq-item { border-bottom: 1px solid var(--border); }
.pp-faq-q {
  width: 100%; display: flex; align-items: center;
  justify-content: space-between; gap: 12px;
  padding: 18px 0; background: none; border: none;
  cursor: pointer; text-align: left;
  font-family: var(--fb); font-size: 15px; font-weight: 600;
  color: var(--black); transition: color .2s;
}
.pp-faq-q:hover { color: var(--red); }
.pp-faq-q i { font-size: 18px; color: var(--red); flex-shrink: 0; }
.pp-faq-a {
  font-size: 14px; line-height: 1.8; color: #444;
  max-height: 0; overflow: hidden;
  transition: max-height .35s ease, padding .35s ease;
}
.pp-faq-item.open .pp-faq-a { max-height: 300px; padding: 0 0 18px; }

/* ══ RESPONSIVE ══ */
@media(max-width:1024px) {
  .pp-specs-grid { grid-template-columns: repeat(2,1fr); }
  .pp-av-grid { grid-template-columns: repeat(2,1fr); }
  .pp-desc-grid { grid-template-columns: 1fr; gap: 48px; }
  .pp-usages { position: static; }
}
@media(max-width:768px) {
  .pp-hero-v2 { padding: 36px 0 0; }
  .pp-hero-main { grid-template-columns: 1fr; gap: 28px; margin-bottom: 24px; }
  .pp-slide { flex: 0 0 100%; }
  .pp-faq-grid { grid-template-columns: 1fr; }
  .pp-faq { padding: 56px 0; }
  .pp-specs-grid, .pp-config-grid, .pp-av-grid, .pp-related-grid { grid-template-columns: 1fr; }
  .pp-fcta-inner { flex-direction: column; text-align: center; }
  .pp-fcta-actions { justify-content: center; }
  .pp-config-cta { flex-direction: column; align-items: flex-start; }
  .pp-hero-v2-ctas { flex-direction: column; align-items: flex-start; }
  .pp-eco-grid { grid-template-columns: 1fr; }
}

/* ══ ÉCO & ENVIRONNEMENT ══ */
.pp-eco { padding: 80px 0; background: #f4f9ef; }
.pp-eco-header { text-align: center; max-width: 640px; margin: 0 auto 48px; }
.pp-eco-header h2 { font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; letter-spacing: -.03em; margin: 8px 0 12px; color: var(--dark); }
.pp-eco-sub { font-size: 15px; color: #555; line-height: 1.7; }
.pp-eco-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.pp-eco-card { background: #fff; border-radius: 14px; padding: 28px 24px; box-shadow: 0 2px 12px rgba(0,0,0,.06); transition: box-shadow .2s, transform .2s; }
.pp-eco-card:hover { box-shadow: 0 8px 28px rgba(0,0,0,.10); transform: translateY(-3px); }
.pp-eco-icon { width: 48px; height: 48px; background: #eaf4e0; border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.pp-eco-icon i { font-size: 22px; color: #5A8C2A; }
.pp-eco-card h3 { font-size: 15px; font-weight: 700; margin: 0 0 10px; color: var(--dark); }
.pp-eco-card p { font-size: 13.5px; color: #555; line-height: 1.7; margin: 0; }
@media(max-width:1024px) { .pp-eco-grid { grid-template-columns: repeat(2, 1fr); } }
