.elementor-62905 .elementor-element.elementor-element-e753050{--display:flex;overflow:visible;}/* Start custom CSS for text-editor, class: .elementor-element-5b937a4 *//* ===== Variables (palette verte/teal) ===== */
:root{
  --teal: #33BFC3;
  --teal-dark:#02AAB0;
  --green-500:#4CAF50;
  --green-700:#2E7D32;
  --green-800:#1B5E20;

  --ink:#0c3b36;
  --muted:#555;
  --bg:#f8f9fa;
  --card:#fff;

  --shadow:0 10px 30px rgba(0,91,80,.08);
  --shadow-lg:0 15px 40px rgba(0,91,80,.12);
  --radius:24px;
}

/* Reset base */
*{margin:0;padding:0;box-sizing:border-box;}
.aqgs-container{max-width:1200px;margin:0 auto;padding:0 20px;font-family:"Open Sans",system-ui,-apple-system,Segoe UI,Roboto,Arial;}
h1,h2,h3,h4{font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial;font-weight:700;color:var(--green-800);margin-bottom:1rem;}
p{margin-bottom:1.2rem;color:#333;line-height:1.65;}
section{margin-bottom:80px;}
body{background:var(--bg);}

/* ===== HERO ===== */
.hero-section{
  background: linear-gradient(135deg, #2E7D32, #1B5E20);
  color:#fff; padding:100px 20px 150px; text-align:center; position:relative;
  border-radius:0 0 30px 30px; overflow:hidden; margin-bottom:60px;
}
.hero-content{max-width:800px;margin:0 auto;position:relative;z-index:2;}
.hero-content h1{font-size:2.8rem;margin-bottom:16px;color:#fff;}
.hero-content p{font-size:1.15rem;opacity:.95;}
.wave-divider{position:absolute;left:0;right:0;bottom:0;height:120px;background:var(--bg);clip-path:ellipse(72% 100% at 50% 100%);}
.hero-section .hero-content p{
  color: rgba(255,255,255,0.96);   /* blanc quasi-plein sur fond vert */
  text-shadow: 0 1px 2px rgba(0,0,0,.18); /* lisibilité + AA */
}
/* ===== Sections - headers ===== */
.section-header{text-align:center;margin-bottom:46px;}
.section-header h2{font-size:2.2rem;display:inline-block;position:relative;padding:0 12px;}
.section-header h2::after{content:"";display:block;width:100px;height:5px;background:var(--green-500);border-radius:3px;margin:16px auto 0;}
.section-header p{color:var(--green-700);}

/* ===== Benefits ===== */
.benefits-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:32px;max-width:1100px;margin:0 auto;
}
.benefit-card{
  background:var(--card);padding:34px 26px;border-radius:20px;text-align:center;
  border:1px solid #e0f7e0; box-shadow: var(--shadow); transition:transform .25s, box-shadow .25s;
}
.benefit-card:hover{transform:translateY(-6px); box-shadow: var(--shadow-lg);}
.benefit-icon{
  margin:0 auto 18px;width:86px;height:86px;display:grid;place-items:center;border-radius:50%;
  background: #E8F5F6; /* bleu-vert doux, comme ta carte AE */
  box-shadow: inset 0 0 0 6px #dbf7f6;
}
.benefit-icon svg{width:40px;height:40px;color:var(--green-500);display:block;}
.benefit-card h3{font-size:1.35rem;margin-bottom:10px;color:var(--green-800);}
.benefit-card p{color:#555;}

/* ===== Trainings ===== */
.trainings-section{
  background:#E8F5E9; padding:72px 20px; border-radius:30px; position:relative; overflow:hidden;
}
.training-card{
  background:#fff; border-radius:20px; overflow:hidden; border:1px solid #d0e8d0;
  box-shadow:var(--shadow); transition:transform .25s, box-shadow .25s; margin-bottom:38px; position:relative;
}
.training-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-lg);}
.card-header{background:linear-gradient(to right,#f1f9f1,#E8F5E9); padding:38px 40px 22px; border-bottom:1px solid #dce6dc;}
.card-header .subtitle{margin:0 0 12px; font-size:1.08rem; color:var(--green-700); font-weight:700; display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.card-header h3{margin:0;font-size:1.8rem;color:var(--green-800);}
.duration-badge{
  display:inline-block; background: var(--green-500); color:#fff; padding:8px 18px; border-radius:32px;
  font-weight:800; letter-spacing:.02em; font-size:.98rem; margin:0 0 16px 0;
}

/* Badge “Nouveau” rouge (tendance ticket/ruban) */
.badge-nouveau{
  --red:#E63946;
  position:relative; display:inline-block; padding:.38rem .7rem; border-radius:8px;
  background:linear-gradient(180deg,#ff5a66,#E63946); color:#fff; font-weight:800; font-size:.85rem;
  text-transform:uppercase; letter-spacing:.02em; box-shadow:0 6px 14px rgba(230,57,70,.25);
}
.badge-nouveau::after{
  content:""; position:absolute; right:-10px; top:50%; transform:translateY(-50%);
  width:12px; height:12px; background:linear-gradient(180deg,#ff5a66,#E63946);
  clip-path:polygon(0 0,100% 50%,0 100%); filter:drop-shadow(0 4px 6px rgba(230,57,70,.18));
}

/* Contenu */
.card-content{padding:28px 40px;}
.card-content > p{color:#444;font-size:1.08rem;}
.objectives h4{font-size:1.2rem;color:var(--green-800);margin:18px 0 14px;border-bottom:3px solid #C8E6C9;padding-bottom:10px;}
.objectives ul{margin:14px 0;padding-left:22px;}
.objectives li{margin:10px 0 10px 16px; line-height:1.55; position:relative;}
.objectives li::before{content:""; position:absolute; left:-16px; top:.65em; width:8px;height:8px; background:var(--green-500); border-radius:50%;}

/* Mise en avant */
.featured{border:4px solid var(--green-500); box-shadow:0 15px 40px rgba(76,175,80,.2);}
.featured-badge{
  position:absolute; top:22px; right:22px; background:linear-gradient(90deg,var(--green-500),var(--green-700));
  color:#fff; padding:10px 18px; border-radius:999px; font-weight:800; text-transform:uppercase; font-size:.9rem;
}
.highlight{
  background:#C8E6C9; border:2px solid #A5D6A7; padding:14px; border-radius:14px;
  text-align:center; color:var(--green-800); font-weight:800; margin:0 8px 20px;
}
.features-grid{display:grid; gap:18px; margin-top:18px;}
.feature{display:flex; gap:16px; background:#f5fbf5; padding:20px; border-radius:14px; border-left:5px solid var(--green-500);}
.feature-icon svg{width:32px;height:32px;color:var(--green-500);}
.feature-content h4{margin:0 0 8px; font-size:1.08rem; color:var(--green-800);}

/* ===== Tools ===== */
.tools-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:34px; max-width:1200px; margin:0 auto;
}
.tool-card{
  background:#fff; padding:32px; border-radius:20px; border:1px solid #e0f0e0;
  box-shadow:var(--shadow); transition:transform .25s, box-shadow .25s; display:flex; flex-direction:column;
}
.tool-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-lg);}
.tool-icon{min-height:88px; display:grid; place-items:center; margin-bottom:10px;}
.tool-icon svg{width:60px; height:60px; color:var(--green-500);}
.tool-card h3{font-size:1.35rem;color:var(--green-800);}

/* ===== Catalog ===== */
.catalog-section{
  background:linear-gradient(90deg,#C8E6C9,#A5D6A7);
  padding:72px 20px; border-radius:30px; overflow:hidden; margin:80px 0;
}
.catalog-content{display:flex;flex-wrap:wrap;align-items:center;gap:56px;max-width:1200px;margin:0 auto;}
.catalog-info{flex:1;min-width:300px;}
.catalog-image{flex:none;border-radius:18px;overflow:hidden;border:10px solid #fff;box-shadow:0 15px 40px rgba(0,0,0,.18);}
.catalog-image img{display:block;max-width:350px;height:auto;}

/* ===== Contact ===== */
.contact-section{
  display:flex;flex-wrap:wrap;gap:44px;max-width:1200px;margin:80px auto;padding:0 0;
}
.contact-info{
  flex:1; min-width:300px; background:#fff; padding:36px; border-radius:24px; box-shadow:var(--shadow-lg);
}
.contact-info h3{font-size:1.6rem;margin-bottom:20px;border-bottom:3px solid #C8E6C9;padding-bottom:12px;}
.contact-item{display:flex;gap:16px;align-items:flex-start;margin:16px 0;}
.contact-icon svg{width:30px;height:30px;color:var(--green-500);}
.contact-details a{display:block;color:var(--green-800);font-weight:700;text-decoration:none;}
.contact-details a:hover{color:var(--green-500);text-decoration:underline;}
.form-btn{width:100%;}

.discount-box{
  background:linear-gradient(180deg,#E8F5E9,#d0edd0); padding:36px; border-radius:24px;
  border:2px solid #A5D6A7; min-width:300px; box-shadow:var(--shadow);
  display:flex;flex-direction:column;justify-content:flex-start;
}
.discount-text{font-size:1.3rem;font-weight:800;color:var(--green-800);text-align:center;margin-bottom:22px;}
.discount-footer{margin-top:auto;border-top:3px solid #C8E6C9;padding-top:16px;text-align:center;}
.discount-name{font-weight:800;color:var(--green-800);}
.discount-role{color:var(--green-700);}

/* ===== Buttons ===== */
.btn{
  display:inline-block; background:linear-gradient(90deg,var(--green-500),#388E3C);
  color:#fff; padding:14px 32px; border-radius:40px; text-decoration:none; font-weight:800;
  border:none; cursor:pointer; transition:transform .2s, box-shadow .25s, filter .2s; text-align:center;
}
.btn:hover{transform:translateY(-3px); box-shadow:0 10px 22px rgba(56,142,60,.28);}
.catalog-btn{background:linear-gradient(90deg,var(--green-800),#0d4d12);}
.discount-btn{background:linear-gradient(90deg,var(--green-800),#0d4d12); width:100%;}

/* ===== Responsive ===== */
@media (max-width:1100px){
  .hero-content h1{font-size:2.4rem;}
  .section-header h2{font-size:2rem;}
}
@media (max-width:900px){
  .hero-section{padding:80px 20px 120px;}
  .hero-content h1{font-size:2.1rem;}
  .section-header h2{font-size:1.8rem;}
  .catalog-content{flex-direction:column;text-align:center;gap:40px;}
  .contact-section{flex-direction:column;gap:30px;}
}
@media (max-width:600px){
  .hero-section{padding:64px 18px 96px;}
  .hero-content h1{font-size:1.8rem;}
  .card-header{padding:28px 20px 18px;}
  .card-content{padding:24px 20px;}
  .btn{padding:12px 26px;font-size:.95rem;}
  .duration-badge{padding:7px 16px;font-size:.9rem;}
  .featured-badge{top:14px;right:14px;padding:9px 16px;font-size:.85rem;}
}/* End custom CSS */