:root{
  --primary:#0070C0;
  --primary-dark:#005A9E;
  --secondary:#FF6B00;
  --dark:#333333;
  --light:#F8F9FA;
  --gray:#6C757D;
  --error:#e22;
  --success:#28a745;
}

/* ========== Reset & base ========== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:'Montserrat',sans-serif;
  color:var(--dark);
  line-height:1.6;
  background:var(--light);
  font-size:16px;
}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}

/* ========== Header ========== */
header{
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.1);
  position:fixed;top:0;left:0;right:0;
  z-index:1000;
}
.header-content{
  display:flex;justify-content:space-between;align-items:center;
  padding:15px 0;
}
.logo{display:flex;align-items:center;font-weight:900;font-size:20px;color:var(--primary)}
.logo img{height:80px;margin-right:20px}
.logo span{color:var(--secondary)}

/* ===== Switch FR/EN (flottant) ===== */
.lang-switch{
  position:fixed;top:18px;right:18px;
  z-index:1001; /* sous le burger */
  display:inline-flex;gap:8px;padding:8px;border-radius:999px;
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px) saturate(130%);
  -webkit-backdrop-filter:blur(10px) saturate(130%);
  box-shadow:0 10px 30px rgba(0,0,0,.15), inset 0 0 0 1px rgba(255,255,255,.4);
}
.lang-switch button{
  appearance:none;border:0;padding:10px 16px;border-radius:999px;
  font:600 13px/1 "Montserrat",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  letter-spacing:.2px;cursor:pointer;background:rgba(255,255,255,.7);color:#0f172a;
  transition:transform .18s,box-shadow .18s,background-color .18s,color .18s;
}
.lang-switch button:hover{transform:translateY(-1px) scale(1.02);box-shadow:0 8px 24px rgba(0,0,0,.10)}
.lang-switch button.is-active{color:#fff;background:linear-gradient(135deg,#2563eb,#22c55e 90%)}

/* Sur mobile: place le switch en bas à droite pour ne pas couvrir le burger */
@media (max-width:992px){
  .lang-switch{top:auto;bottom:18px;right:18px}
}

/* ===== Bouton burger ===== */
.mobile-menu-btn{
  display:none; /* caché sur desktop */
  position:relative; z-index:1002; /* au-dessus du switch */
  width:30px;height:25px;border:0;padding:0;background:transparent;cursor:pointer;
  flex-direction:column;justify-content:space-around;
}
.mobile-menu-btn span{width:30px;height:3px;background:var(--primary);border-radius:2px;transition:all .25s ease}
@media (max-width:992px){ .mobile-menu-btn{display:flex} }

/* Etat "ouvert" -> croix */
.mobile-menu-btn.is-open span:nth-child(1){transform:translateY(9px) rotate(45deg)}
.mobile-menu-btn.is-open span:nth-child(2){opacity:0}
.mobile-menu-btn.is-open span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}

/* ===== Menu mobile (panneau) ===== */
.mobile-menu[hidden]{display:none}
.mobile-menu{
  position:fixed;top:72px;left:16px;right:16px;
  background:#fff;border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.18);
  z-index:1001;padding:12px 6px;
}
.mobile-menu-list{list-style:none;margin:0;padding:8px;display:grid;gap:6px}
.mobile-menu-list a{
  display:block;padding:12px 14px;border-radius:10px;text-decoration:none;
  font-weight:600;color:var(--dark);background:#f8fafc;transition:transform .15s,background .15s}
.mobile-menu-list a:hover{background:#eef2ff;transform:translateX(2px)}

/* ========== Hero ========== */
.hero{
  padding:120px 0 20px;
  background:linear-gradient(rgba(0,112,192,.85),rgba(0,90,158,.85)),
             url('../images/10 gourdes de différents model v1.PNG');
  background-size:cover;background-position:center;color:#fff;text-align:center;position:relative;
}
.hero-content{position:relative;margin-top:20px;z-index:2}

/* Bandeau titre (nettoyé : un seul style) */
.alert-banner{background:transparent;border:none;box-shadow:none;padding:0;margin:0 auto 16px}
.alert-text{
  display:block;color:#fff;text-align:center;font-weight:800;letter-spacing:.2px;
  font-size:clamp(22px,5vw,42px);text-shadow:0 2px 6px rgba(0,0,0,.35);
  animation:heartbeat 1.6s ease-in-out infinite;
}
@keyframes heartbeat{
  0%,100%{transform:scale(1)}
  25%{transform:scale(1.08)}
  50%{transform:scale(1.16)}
  75%{transform:scale(1.08)}
}
.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;clip-path:inset(50%)}

/* CTA */
.cta-button{
  display:inline-block;background:var(--secondary);color:#fff;padding:14px 35px;border-radius:50px;
  font-weight:700;text-decoration:none;font-size:1rem;transition:.3s;border:0;cursor:pointer;
  box-shadow:0 4px 10px rgba(0,0,0,.25)
}
.cta-button:hover{background:#e55f00;transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.3)}
.cta-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}

/* ====== Sections communes (repris de ton fichier) ====== */
.section-title{text-align:center;margin:40px 0;font-size:1.8rem;color:var(--primary);font-weight:700}
.problem,.solution,.how-it-works{padding:60px 0}
.problem{background:#fff}
.solution{background:var(--light)}
.how-it-works{text-align:center;background:#fff}

.problem-content,.solution-content{display:flex;flex-wrap:wrap;gap:30px;align-items:center}
.problem-text,.solution-text{flex:1;min-width:300px}
.problem-text h3,.solution-text h3{font-size:1.5rem;margin-bottom:20px}
.problem-text h3{color:var(--dark)} .solution-text h3{color:var(--primary)}
.shocking-facts,.benefits{margin:25px 0}
.fact,.benefit{display:flex;align-items:flex-start;margin-bottom:18px}
.fact-icon,.benefit-icon{font-size:22px;margin-right:12px;min-width:25px}
.fact-icon{color:var(--secondary)} .benefit-icon{color:var(--primary)}

.problem-image,.solution-image{flex:1;min-width:300px;text-align:center}
.problem-image img,.solution-image img{max-width:100%;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.1)}

/* How it works */
.process-image{margin:40px auto;max-width:75%;text-align:center}
.process-image img{max-width:100%;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.1);transition:transform .3s}
.process-image img:hover{transform:scale(1.02)}
.image-caption{margin-top:15px;font-style:italic;color:var(--gray);font-size:.9rem;max-width:600px;margin-left:auto;margin-right:auto}

.steps{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin-top:40px}
.step{flex:1;min-width:250px;max-width:300px;padding:30px;border-radius:10px;background:var(--light);
      box-shadow:0 5px 15px rgba(0,0,0,.05);transition:.3s;position:relative;overflow:hidden}
.step:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(to right,var(--primary),var(--secondary));transform:scaleX(0);transform-origin:left;transition:transform .3s}
.step:hover:before{transform:scaleX(1)}
.step:hover{transform:translateY(-10px);box-shadow:0 15px 30px rgba(0,0,0,.1)}
.step-icon{font-size:50px;margin-bottom:20px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.step h3{margin-bottom:15px;color:var(--primary);font-size:1.4rem}
.step p{color:var(--dark)}

/* ====== Formulaire ====== */
.form-section{padding:60px 0;background:linear-gradient(to right,var(--primary),var(--primary-dark));color:#fff}
.form-container{max-width:800px;margin:0 auto;background:#fff;padding:30px;border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.2);color:var(--dark)}
.form-title{text-align:center;margin-bottom:25px;color:var(--primary);font-size:1.6rem}
.form-intro{text-align:center;margin-bottom:30px}
.highlight-orange{color:var(--secondary);font-weight:600}

.form-group{margin-bottom:20px}
.form-group label{display:block;margin-bottom:8px;font-weight:600;font-size:.95rem}
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:14px;border:1px solid #ddd;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:16px;transition:border-color .3s
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);outline:0}
.form-group input.error,.form-group select.error{border-color:var(--error)}
.form-group textarea{min-height:110px;resize:vertical}
.required{color:var(--secondary)}
.error-message{color:var(--error);font-size:.85rem;margin-top:5px;display:none}

/* Echelle 1–5 (mobile friendly) */
#concern-group{position:relative}
#concern-group .radio-group{display:flex;justify-content:center;gap:12px}
#concern-group .radio-scale-labels{display:flex;justify-content:space-between;margin-top:6px;font-size:.9rem;color:#6b7280}
@media (max-width:767px){
  #concern-group{padding-top:22px;padding-bottom:22px}
  #concern-group .radio-group{flex-direction:column;align-items:center;gap:14px}
  #concern-group .radio-scale-labels{position:static;display:block;margin-top:0;height:0}
  #concern-group .radio-scale-labels span{position:absolute;font-size:.85rem;color:#6b7280;left:0;right:0;pointer-events:none}
  #concern-group .radio-scale-labels span:first-child{top:-4px;text-align:left}
  #concern-group .radio-scale-labels span:last-child{bottom:-4px;text-align:right}
}

.success-message{display:none;text-align:center;padding:30px;background:rgba(40,167,69,.1);border-radius:12px;margin-top:25px;border:1px solid var(--success);color:var(--success);position:relative}
.success-icon{font-size:50px;margin-bottom:20px;animation:scaleUp .5s ease-out}
.success-message h3{margin-bottom:15px;color:var(--success);font-size:1.5rem}
.success-message p{margin-bottom:20px;line-height:1.6}
.next-steps{text-align:left;background:rgba(255,255,255,.7);padding:20px;border-radius:8px;margin:20px 0}
.next-steps p{margin-bottom:10px;font-weight:600}
.next-steps ul{list-style:none;padding:0}
.next-steps li{margin-bottom:10px;padding-left:25px;position:relative}
.next-steps li:before{content:"→";position:absolute;left:0;color:var(--primary)}
.closing{font-style:italic;margin-top:20px;color:var(--dark)}
@keyframes scaleUp{0%{transform:scale(0);opacity:0}70%{transform:scale(1.2)}100%{transform:scale(1);opacity:1}}

/* ====== Footer ====== */
footer{background:var(--dark);color:#fff;padding:35px 0;text-align:center}
.footer-content{display:flex;flex-direction:column;gap:25px}
.footer-section{flex:1}
.footer-section h3{margin-bottom:15px;color:var(--secondary);font-size:1.2rem}
.footer-bottom{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.9rem}

/* Bouton retour haut */
.back-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;border-radius:50%;background:var(--primary);color:#fff;border:0;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,.3);opacity:0;visibility:hidden;transition:.3s;z-index:1000}
.back-to-top.show{opacity:1;visibility:visible}
.back-to-top:hover{background:var(--primary-dark);transform:translateY(-3px)}

/* ====== Responsive ====== */
@media (max-width:767px){
  .hero{padding:100px 0 50px}
  .hero p{font-size:1rem}
  .section-title{font-size:1.4rem;margin-bottom:30px}
  .problem,.solution,.how-it-works,.form-section{padding:40px 0}
  .problem-content,.solution-content{flex-direction:column;gap:20px}
  .problem-text,.solution-text,.problem-image,.solution-image{min-width:100%}
  .process-image{max-width:100%;margin:30px auto}
  .steps{flex-direction:column;gap:20px;margin-top:30px}
  .step{max-width:100%;min-width:100%;padding:20px}
  .form-container{padding:20px}
  .form-title{font-size:1.4rem}
}
