*{box-sizing:border-box}
:root{
  --navy:#020817;--navy2:#06194b;--panel:#071d53;
  --blue:#006dff;--cyan:#00c7ff;--red:#ff111f;--pink:#ff174f;
  --white:#fff;--muted:#8ec9ec;
}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 15% 8%,rgba(0,82,255,.22),transparent 30%),
    radial-gradient(circle at 86% 8%,rgba(255,0,43,.18),transparent 30%),
    #020713;
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
}
.radio-sticky{
  position:sticky;top:0;z-index:9999;
  background:#010811;border-bottom:1px solid #0aaeff;
  box-shadow:0 8px 24px #000a;
}
.radio-widget-wrap{width:100%}

/* MENU — droit, sans bouton Rejoignez l'équipe */
.main-menu{
  position:sticky;top:82px;z-index:9998;
  background:#020c19;border-bottom:1px solid #087fc1;
  box-shadow:0 6px 18px #0008;
}
.main-menu-inner{
  max-width:1600px;margin:auto;display:flex;justify-content:center;align-items:center;
  gap:22px;padding:10px 18px;flex-wrap:wrap;
}
.main-menu a{
  color:#fff;text-decoration:none;font-weight:900;font-size:14px;letter-spacing:.4px;
  padding:9px 13px;border-radius:8px;border:1px solid transparent;
}
.main-menu a:hover{color:#38c8ff}
.main-menu .chat-menu-btn{
  padding:10px 20px;border:1px solid var(--cyan);border-bottom:2px solid var(--pink);
  background:linear-gradient(180deg,#159cff,#066de5 65%,#0753be);
  box-shadow:0 0 18px rgba(0,187,255,.56),inset 0 -2px 0 rgba(255,23,79,.8);
}

/* PAGE */
.recruit-page{padding:26px 14px 42px}
.recruit-shell{
  max-width:1480px;margin:0 auto;overflow:hidden;border-radius:24px;
  border:1px solid #0a9bea;
  background:linear-gradient(135deg,#041752 0%,#05143e 48%,#210318 100%);
  box-shadow:0 0 36px rgba(0,128,255,.28),0 0 50px rgba(255,0,54,.17);
}

/* GRAND BANDEAU IDENTITAIRE — image réelle déjà dans assets */
.recruit-hero{
  position:relative;height:340px;overflow:hidden;
  background-image:url('hero.jpg');
  background-size:cover;background-position:center 43%;
  border-bottom:5px solid transparent;
}
.recruit-hero:after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:6px;
  background:linear-gradient(90deg,var(--cyan),var(--blue) 48%,var(--pink) 52%,var(--red));
  box-shadow:0 0 16px #0bf,0 0 18px #f25;
}
.hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(0,5,25,.05) 0%,rgba(0,7,30,.06) 56%,rgba(0,8,31,.4) 100%);
}
.hero-copy{position:absolute;left:74px;bottom:35px;z-index:2}
.hero-kicker{
  font-family:"Comic Sans MS","Segoe Print",cursive;
  font-size:25px;font-style:italic;font-weight:700;
  text-shadow:0 2px 3px #000,0 0 12px #00a7ff;
  transform:rotate(-2deg);
}

/* DEUX COLONNES — proche de la maquette */
.recruit-body{
  display:grid;grid-template-columns:43% 57%;
  gap:0;background:
    radial-gradient(circle at 18% 45%,rgba(0,105,255,.22),transparent 34%),
    radial-gradient(circle at 91% 18%,rgba(255,0,50,.12),transparent 28%),
    #020c2a;
}
.recruit-pitch{
  min-height:1040px;position:relative;overflow:hidden;padding:42px 34px 380px 34px;
  border-right:1px solid rgba(0,177,255,.2);
}
.recruit-pitch:before{
  content:"";position:absolute;inset:0;opacity:.32;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 35px,rgba(0,106,255,.18) 35px 38px);
}

/* REJOIGNEZ */
.join-stack{position:relative;z-index:3;margin-bottom:36px}
.join-sticker{
  display:inline-block;padding:7px 18px 3px;background:#fff;color:#ff1026;
  font-size:63px;line-height:1;font-weight:1000;font-style:italic;letter-spacing:-3px;
  transform:rotate(-5deg);box-shadow:13px 12px 0 #d9091d,0 0 20px rgba(255,0,45,.25);
  text-shadow:1px 1px #99101c;
}
.join-under{
  margin:5px 0 -3px 18px;font-size:41px;line-height:1;font-weight:1000;font-style:italic;
  text-shadow:0 4px #051742;
}
.join-brand{
  font-size:50px;line-height:1;font-weight:1000;font-style:italic;
  letter-spacing:-2px;text-shadow:0 5px #041535;
}
.join-brand span{color:#1a87ff;text-shadow:0 0 13px #168cff}

.pitch-copy{position:relative;z-index:3;font-size:18px;line-height:1.5}
.pitch-copy h2{font-size:26px;line-height:1.22;margin:0 0 18px}
.pitch-copy p{margin:0 0 16px}

/* rôles */
.role-list{position:relative;z-index:3;margin-top:26px;display:grid;gap:17px}
.role-card{display:flex;align-items:center;gap:17px}
.role-orb{
  flex:0 0 82px;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;
  border:3px solid rgba(255,255,255,.25)
}
.role-orb svg{width:52px;height:52px;fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.role-red{background:linear-gradient(#ff281e,#ed0711);box-shadow:0 0 25px rgba(255,19,32,.75)}
.role-blue{background:linear-gradient(#1a91ff,#0755e8);box-shadow:0 0 25px rgba(0,139,255,.76)}
.role-card strong{display:block;font-size:22px}
.role-card em{
  display:block;font-family:"Comic Sans MS","Segoe Print",cursive;font-size:18px;margin-top:4px
}
.together{
  position:relative;z-index:3;margin:36px 0 0 8px;
  font-family:"Comic Sans MS","Segoe Print",cursive;font-size:42px;font-weight:700;
  line-height:1.02;font-style:italic;transform:rotate(-5deg);
  text-shadow:0 0 10px rgba(255,255,255,.35)
}
.together:after{
  content:"";display:block;width:76%;height:5px;margin-top:6px;
  background:linear-gradient(90deg,var(--blue),var(--red));transform:skewX(-25deg)
}

/* art bas gauche : casque + micro + equalizer */
.studio-art{position:absolute;z-index:1;left:0;right:0;bottom:0;height:385px}
.eq-bars{position:absolute;bottom:45px;height:130px;width:54%;opacity:.95}
.eq-bars:before{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(90deg,currentColor 0 6px,transparent 6px 13px);
  clip-path:polygon(0 60%,3% 42%,6% 74%,9% 31%,12% 68%,15% 19%,18% 80%,21% 37%,24% 71%,27% 15%,30% 87%,33% 42%,36% 75%,39% 25%,42% 82%,45% 30%,48% 91%,51% 20%,54% 77%,57% 35%,60% 85%,63% 27%,66% 78%,69% 43%,72% 88%,75% 32%,78% 79%,81% 46%,84% 72%,87% 53%,90% 68%,93% 57%,96% 63%,100% 60%,100% 100%,0 100%)
}
.eq-blue{left:0;color:#00a7ff;filter:drop-shadow(0 0 8px #00a7ff)}
.eq-red{right:0;color:#ff153c;filter:drop-shadow(0 0 8px #ff153c)}
.headphones-art{position:absolute;left:-32px;bottom:-42px;width:440px;height:330px;opacity:.96}
.microphone-art{position:absolute;left:52px;bottom:-78px;width:240px;height:395px}

/* FORMULAIRE */
.form-panel{
  align-self:start;margin:34px 28px 34px 20px;padding:25px 25px 22px;
  border:3px solid #13caff;border-radius:30px;
  background:
    radial-gradient(circle at 12% 10%,rgba(0,131,255,.27),transparent 28%),
    linear-gradient(180deg,#072262,#061c50 58%,#04143a);
  box-shadow:0 0 28px rgba(0,195,255,.82),inset 0 0 36px rgba(0,60,145,.5)
}
.form-title{display:flex;align-items:center;gap:17px;margin-bottom:20px}
.mail-icon{
  flex:0 0 68px;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;
  background:#0878ff;border:4px solid #15dfff;box-shadow:0 0 22px #00c7ff;
}
.mail-icon svg{width:40px;height:40px;fill:none;stroke:#fff;stroke-width:4;stroke-linejoin:round}
.form-title h1{font-size:30px;line-height:1.05;margin:0}
.form-title p{margin:7px 0 0;color:#17d3ff;font-weight:800;font-size:16px}

.field{margin-bottom:13px}
.field label,.choice-box legend{display:block;font-weight:900;margin-bottom:7px;font-size:14px}
.field b,.choice-box b{color:#ff173c}
.field small{font-weight:400}
input,select,textarea{
  width:100%;min-height:46px;border:1px solid #c6d4e3;border-radius:8px;
  padding:12px 14px;font-size:16px;background:#f7fbff;color:#17314d;outline:none
}
textarea{min-height:92px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:#00caff;box-shadow:0 0 0 3px rgba(0,202,255,.2)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.choice-box{
  min-width:0;border:0;border-bottom:1px solid rgba(57,153,215,.55);
  margin:0 0 13px;padding:0 0 12px
}
.choice-box label{display:block;margin:8px 0;font-size:16px}
.choice-box input{width:auto;min-height:auto;accent-color:#0a98ff;margin-right:8px}
.inline{display:flex;gap:25px}
.submit-btn{
  width:100%;margin-top:5px;border:0;border-radius:34px;padding:16px 20px;
  background:linear-gradient(#ff291f,#fa1117 60%,#d8060d);
  color:#fff;font-size:22px;font-weight:1000;cursor:pointer;
  box-shadow:0 5px 0 #7e0000,0 0 24px rgba(255,20,30,.7)
}
.submit-btn:hover{filter:brightness(1.08)}
.submit-btn span{font-size:25px}
.form-note{text-align:center;margin:12px 0 0;color:#9dc3df;font-size:12px}

/* FINALE */

.shield-footer{padding:22px 16px 30px;background:#020a16;border-top:1px solid #0a8fd8}
.shield-badge{
  width:max-content;max-width:100%;margin:0 auto;display:flex;align-items:center;gap:12px;
  padding:12px 16px;border-radius:12px;background:linear-gradient(180deg,#05162b,#030d1a);
  border:1px solid #116fa9;box-shadow:0 0 18px rgba(0,153,255,.18)
}
.shield-icon{font-size:34px;filter:drop-shadow(0 0 8px #0af)}
.shield-badge strong{display:block;color:#fff;font-size:15px}
.shield-badge small{display:block;color:#a9cce5;margin-top:2px}

/* RESPONSIVE */
@media(max-width:1100px){
  .recruit-body{grid-template-columns:1fr}
  .recruit-pitch{min-height:900px;border-right:0;border-bottom:1px solid rgba(0,177,255,.25)}
  .form-panel{margin:25px}
}
@media(max-width:720px){
  .main-menu{position:relative;top:auto}
  .main-menu-inner{gap:4px;padding:8px}
  .main-menu a{font-size:12px;padding:8px 9px}
  .main-menu .chat-menu-btn{width:100%;text-align:center;margin-top:4px}
  .recruit-page{padding:10px}
  .recruit-shell{border-radius:14px}
  .recruit-hero{height:230px;background-position:center 42%}
  .hero-copy{left:24px;bottom:24px}
  .hero-kicker{font-size:18px}
  .recruit-pitch{padding:30px 20px 330px;min-height:930px}
  .join-sticker{font-size:43px}
  .join-under{font-size:31px}
  .join-brand{font-size:37px}
  .pitch-copy h2{font-size:22px}
  .pitch-copy{font-size:16px}
  .role-card strong{font-size:19px}
  .together{font-size:32px}
  .headphones-art{width:380px;left:-60px}
  .microphone-art{width:210px;left:30px}
  .form-panel{margin:16px;padding:18px;border-radius:22px}
  .form-title h1{font-size:24px}
  .form-title p{font-size:14px}
  .mail-icon{width:58px;height:58px;flex-basis:58px}
  .grid2{grid-template-columns:1fr}
  .bottom-message{flex-direction:column;text-align:center}
  .bottom-message img{width:250px}
}

/* v2.1 — Finale graphique Québec X Radio */
.recruit-finale{
  position:relative;min-height:330px;overflow:hidden;
  display:grid;grid-template-columns:38% 34% 28%;align-items:center;
  padding:22px 34px 18px;
  background:
    linear-gradient(180deg,rgba(1,8,30,.16),rgba(1,7,25,.86)),
    url('hero.jpg') center 61%/cover no-repeat;
  border-top:2px solid #079cff;
  box-shadow:inset 0 18px 55px rgba(0,0,0,.42);
}
.recruit-finale:before{
  content:"";position:absolute;left:0;right:0;top:0;height:5px;
  background:linear-gradient(90deg,#00c9ff 0%,#086dff 48%,#ff1750 52%,#ff111f 100%);
  box-shadow:0 0 18px #00b9ff,0 0 18px #ff174a;
}
.recruit-finale:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,29,92,.65),rgba(0,5,20,.28) 48%,rgba(70,0,22,.42));
}
.finale-glow{position:absolute;width:440px;height:260px;border-radius:50%;filter:blur(70px);opacity:.48;z-index:1}
.finale-blue{left:-70px;bottom:-90px;background:#006cff}
.finale-red{right:-90px;bottom:-100px;background:#ff1238}
.finale-eq{position:absolute;bottom:18px;width:54%;height:100px;z-index:2;opacity:.86}
.finale-eq:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,currentColor 0 5px,transparent 5px 12px);clip-path:polygon(0 61%,3% 48%,6% 72%,9% 32%,12% 68%,15% 20%,18% 82%,21% 37%,24% 72%,27% 15%,30% 88%,33% 42%,36% 76%,39% 24%,42% 83%,45% 30%,48% 92%,51% 20%,54% 78%,57% 34%,60% 86%,63% 26%,66% 79%,69% 44%,72% 89%,75% 31%,78% 79%,81% 47%,84% 73%,87% 52%,90% 69%,93% 56%,96% 64%,100% 60%,100% 100%,0 100%)}
.finale-eq-blue{left:0;color:#00aaff;filter:drop-shadow(0 0 8px #00aaff)}
.finale-eq-red{right:0;color:#ff173d;filter:drop-shadow(0 0 8px #ff173d)}
.finale-left-art{position:relative;height:285px;z-index:3}
.finale-headphones{position:absolute;width:360px;height:255px;left:-42px;bottom:-6px;opacity:.96}
.finale-mic{position:absolute;width:200px;height:320px;left:70px;bottom:-54px;filter:drop-shadow(0 0 14px rgba(0,165,255,.45))}
.finale-copy{position:relative;z-index:4;text-align:center;align-self:center;padding:0 10px}
.finale-script{font-family:"Comic Sans MS","Segoe Print",cursive;font-size:31px;line-height:1.06;font-style:italic;font-weight:700;text-shadow:0 0 12px rgba(255,255,255,.35),0 2px 2px #000;transform:rotate(-3deg)}
.finale-line{width:86%;height:5px;margin:13px auto 12px;background:linear-gradient(90deg,#118fff,#fff 48%,#ff1435);transform:skewX(-25deg);box-shadow:0 0 12px rgba(0,170,255,.35),0 0 12px rgba(255,20,55,.3)}
.finale-mini{font-size:12px;font-weight:900;letter-spacing:2.4px;color:#bfe8ff;text-shadow:0 0 8px rgba(0,170,255,.45)}
.finale-brand{position:relative;z-index:4;text-align:right;align-self:center}
.finale-brand img{width:100%;max-width:360px;max-height:128px;object-fit:contain;filter:drop-shadow(0 0 12px #077dff) drop-shadow(0 0 10px rgba(255,20,55,.35))}
.finale-badges{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:11px}
.finale-badges span{padding:7px 10px;border:1px solid #0ba6ef;border-bottom-color:#ff174d;border-radius:16px;background:#06142d;color:#fff;font-size:11px;font-weight:900;letter-spacing:.7px;box-shadow:0 0 10px rgba(0,149,255,.16)}

/* Un peu plus spectaculaire en haut sans cacher le visuel */
.recruit-hero{height:390px;background-position:center 45%;box-shadow:inset 0 -55px 70px rgba(0,7,30,.42)}
.hero-kicker{font-size:27px;background:rgba(1,12,37,.50);padding:8px 14px;border-left:4px solid #00c9ff;border-radius:6px;text-shadow:0 2px 3px #000,0 0 14px #00a7ff}
.form-panel{box-shadow:0 0 32px rgba(0,195,255,.88),0 0 16px rgba(255,20,60,.12),inset 0 0 38px rgba(0,60,145,.52)}

/* SHIELD */
.shield-footer{padding:22px 16px 30px;background:#020a16;border-top:1px solid #0a8fd8}
.shield-badge{width:max-content;max-width:100%;margin:0 auto;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:linear-gradient(180deg,#05162b,#030d1a);border:1px solid #116fa9;box-shadow:0 0 18px rgba(0,153,255,.18)}
.shield-icon{font-size:34px;filter:drop-shadow(0 0 8px #0af)}
.shield-badge strong{display:block;color:#fff;font-size:15px}
.shield-badge small{display:block;color:#a9cce5;margin-top:2px}

@media(max-width:1100px){.recruit-finale{grid-template-columns:1fr 1fr;min-height:390px}.finale-left-art{grid-row:1 / span 2}.finale-copy{text-align:left}.finale-brand{text-align:center}.finale-badges{justify-content:center}}
@media(max-width:720px){.recruit-hero{height:260px}.recruit-finale{grid-template-columns:1fr;min-height:680px;text-align:center;padding:20px}.finale-left-art{height:320px}.finale-headphones{left:50%;transform:translateX(-55%);width:360px}.finale-mic{left:50%;transform:translateX(-80%);width:200px}.finale-copy{text-align:center}.finale-brand{text-align:center}.finale-brand img{max-width:300px}.finale-badges{justify-content:center}}


/* v2.2 — rendu fidèle à la maquette approuvée */
.recruit-shell{
  max-width:1460px;
  overflow:hidden;
  background:#030b22;
}

.recruit-hero{
  height:445px;
  position:relative;
  background:url('recrutement-hero-maquette.jpg') center center/cover no-repeat !important;
  border-bottom:4px solid transparent;
  box-shadow:inset 0 -35px 50px rgba(0,4,20,.18);
}
.recruit-hero::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:5px;
  background:linear-gradient(90deg,#00bdff,#0875ff 48%,#ff174f 52%,#ff111f);
  box-shadow:0 0 14px #00aaff,0 0 14px #ff174f;
}
.hero-overlay,.hero-copy{display:none!important}

.recruit-body{
  display:grid;
  grid-template-columns:46% 54%;
  gap:0;
  align-items:stretch;
  background:
    linear-gradient(90deg,#031140 0%,#03102f 45%,#07183d 46%,#031230 100%);
}

.recruit-pitch-art{
  min-height:0!important;
  padding:0!important;
  border-right:1px solid rgba(0,188,255,.35);
  background:#030d2d;
  overflow:hidden;
}
.recruit-pitch-art::before,
.recruit-pitch-art::after{display:none!important}
.recruit-pitch-art img{
  display:block;
  width:100%;
  height:100%;
  min-height:1080px;
  object-fit:cover;
  object-position:center top;
}

.form-panel{
  margin:24px 24px 24px 18px!important;
  padding:24px 24px 20px!important;
  align-self:stretch!important;
  border:3px solid #13d4ff!important;
  border-radius:26px!important;
  background:
    radial-gradient(circle at 14% 8%,rgba(0,135,255,.25),transparent 27%),
    linear-gradient(180deg,#07255f 0%,#061d52 56%,#04143a 100%)!important;
  box-shadow:
    0 0 30px rgba(0,203,255,.85),
    0 0 15px rgba(255,20,55,.16),
    inset 0 0 36px rgba(0,66,150,.46)!important;
}
.form-title{
  padding-bottom:14px;
  margin-bottom:18px!important;
  border-bottom:1px solid rgba(42,150,218,.42);
}
.form-title h1{
  font-size:31px!important;
  letter-spacing:-.5px;
}
.form-title p{
  color:#16d7ff!important;
  max-width:520px;
}
.mail-icon{
  background:linear-gradient(#1294ff,#0766df)!important;
  border-color:#15e5ff!important;
  box-shadow:0 0 24px rgba(0,221,255,.95)!important;
}

.field label,.choice-box legend{font-size:14px!important}
input,select,textarea{
  border-radius:8px!important;
  background:#f8fbff!important;
  border-color:#d1ddea!important;
  min-height:46px!important;
}
textarea{min-height:96px!important}
.submit-btn{
  border-radius:34px!important;
  background:linear-gradient(180deg,#ff2a20,#ff1016 55%,#d8060c)!important;
  box-shadow:0 5px 0 #7d0000,0 0 24px rgba(255,20,30,.72)!important;
}

.recruit-finale-image{
  position:relative!important;
  min-height:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
  background:#020b25!important;
  border-top:2px solid #079cff!important;
}
.recruit-finale-image::before,
.recruit-finale-image::after{display:none!important}
.recruit-finale-image img{
  width:100%;
  display:block;
  height:auto;
  max-height:none;
}

/* Conserve le Shield propre, distinct de l'affiche */
.shield-footer{
  background:#020a16!important;
  border-top:1px solid #0a8fd8!important;
  padding:20px 16px 26px!important;
}

/* menu propre sous le player */
.main-menu{
  background:#020c19!important;
}
.main-menu .chat-menu-btn{
  border:1px solid #13c8ff!important;
  border-bottom:2px solid #ff174f!important;
  background:linear-gradient(180deg,#159dff,#076ee5 64%,#0653be)!important;
  box-shadow:0 0 18px rgba(0,186,255,.62),inset 0 -2px 0 rgba(255,23,79,.82)!important;
}

@media(max-width:1100px){
  .recruit-hero{height:360px}
  .recruit-body{grid-template-columns:1fr}
  .recruit-pitch-art img{
    min-height:0;
    height:auto;
    object-fit:contain;
  }
  .form-panel{
    margin:20px!important;
  }
}
@media(max-width:720px){
  .recruit-hero{
    height:260px;
    background-size:cover!important;
    background-position:center center!important;
  }
  .recruit-pitch-art img{
    width:100%;
    height:auto;
  }
  .form-panel{
    margin:12px!important;
    padding:17px!important;
  }
  .form-title h1{font-size:23px!important}
}


/* v2.3 — correction du bas : aucun doublon micro/casque */
.recruit-pitch-art{
  position:relative;
  overflow:hidden!important;
  background:#030d2d!important;
}
.recruit-pitch-art img{
  display:block;
  width:100%;
  height:100%;
  min-height:1080px;
  object-fit:cover;
  object-position:center top;
}

/* masque la partie basse du visuel gauche avant le footer final */
.recruit-pitch-art::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:250px;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(3,13,45,0) 0%,
      rgba(3,13,45,.55) 38%,
      rgba(3,13,45,.96) 78%,
      #030d2d 100%);
}

/* évite toute cassure visuelle entre la zone formulaire et le footer final */
.recruit-body{
  border-bottom:0!important;
}
.recruit-finale-image{
  margin-top:0!important;
  border-top:0!important;
  background:#020b25!important;
  box-shadow:inset 0 18px 30px rgba(0,0,0,.22);
}
.recruit-finale-image img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  border:0;
}

/* fine ligne néon continue pour remplacer l'ancienne cassure */
.recruit-finale-image::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,#00bfff 0%,#0878ff 48%,#ff174f 52%,#ff101f 100%);
  box-shadow:0 0 10px rgba(0,170,255,.55),0 0 10px rgba(255,23,79,.45);
}


/* v2.4 — correction réelle du doublon :
   l'image gauche a été physiquement recadrée avant le micro/casque. */
.recruit-pitch-art{
  background:
    linear-gradient(180deg,#03133d 0%,#020b25 72%,#020b25 100%)!important;
  overflow:hidden!important;
}
.recruit-pitch-art img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:top center!important;
}
.recruit-pitch-art::before,
.recruit-pitch-art::after{
  display:none!important;
  content:none!important;
}
.recruit-finale-image{
  margin-top:0!important;
  border-top:2px solid #079cff!important;
}


/* v2.5 — bas entièrement repris proprement */
.recruit-body{
  align-items:start!important;
  border-bottom:0!important;
}

/* Le formulaire ne s'étire plus artificiellement jusqu'au bas de la colonne */
.form-panel{
  align-self:start!important;
  height:auto!important;
  min-height:0!important;
}

/* La colonne gauche garde uniquement son contenu sans répéter le micro */
.recruit-pitch-art{
  align-self:stretch!important;
  background:
    linear-gradient(180deg,#03133d 0%,#020b25 72%,#020b25 100%)!important;
  overflow:hidden!important;
}
.recruit-pitch-art img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:top center!important;
}

/* Un seul vrai footer graphique, sans bouton Envoyer dupliqué */
.recruit-finale-image{
  position:relative!important;
  margin:0!important;
  padding:0!important;
  border-top:0!important;
  background:#020b25!important;
  overflow:hidden!important;
  line-height:0!important;
}
.recruit-finale-image::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg,#00bfff 0%,#0878ff 48%,#ff174f 52%,#ff101f 100%);
  box-shadow:0 0 12px rgba(0,170,255,.6),0 0 12px rgba(255,23,79,.5);
  z-index:2;
}
.recruit-finale-image::after{display:none!important}
.recruit-finale-image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  border:0!important;
}

/* Évite toute bande vide sous le bouton réel du formulaire */
.form-note{
  margin-bottom:0!important;
}


/* v2.6 — pont visuel pour terminer le casque/micro entre les deux sections */
.recruit-bridge{
  display:grid;
  grid-template-columns:46% 54%;
  min-height:215px;
  background:#020b25;
  overflow:hidden;
  margin:0;
  border:0;
}
.recruit-bridge-left{
  position:relative;
  overflow:hidden;
  background:#020b25;
}
.recruit-bridge-left img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  margin:0;
  border:0;
}
.recruit-bridge-right{
  background:
    radial-gradient(circle at 8% 0%,rgba(0,145,255,.16),transparent 32%),
    linear-gradient(180deg,#06194a 0%,#041438 62%,#020b25 100%);
  border-left:1px solid rgba(0,190,255,.25);
}

/* aucune ligne/cassure entre le pont et le footer final */
.recruit-bridge + .recruit-finale-image{
  border-top:0!important;
}
.recruit-bridge + .recruit-finale-image::before{
  display:none!important;
}

@media(max-width:1100px){
  .recruit-bridge{
    grid-template-columns:1fr;
    min-height:0;
  }
  .recruit-bridge-left img{
    width:100%;
    height:auto;
    object-fit:contain;
  }
  .recruit-bridge-right{
    display:none;
  }
}


/* v2.7 — le raccord casque doit remplir l'espace DANS la colonne gauche,
   pendant que le formulaire continue à droite. */
.recruit-bridge{
  display:none!important;
}

/* L'image du haut reste en place. Le morceau casque remplit ensuite
   automatiquement tout l'espace restant de la colonne gauche. */
.recruit-pitch-art{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  background:#020b25!important;
}

.recruit-pitch-art > img{
  position:relative!important;
  z-index:2!important;
  flex:0 0 auto!important;
}

/* raccord directement sous "Ensemble, faisons vibrer la musique !" */
.recruit-pitch-art::after{
  content:""!important;
  display:block!important;
  position:relative!important;
  z-index:1!important;
  flex:1 1 auto!important;
  min-height:300px!important;
  width:100%!important;
  background-image:url("recrutement-pont-casque.jpg")!important;
  background-repeat:no-repeat!important;
  background-position:left top!important;
  background-size:100% auto!important;
  background-color:#020b25!important;
}

/* Le footer final arrive immédiatement après les deux colonnes. */
.recruit-finale-image{
  margin-top:0!important;
}


/* v2.8 — suppression UNIQUEMENT de la ligne bleue au raccord du casque */
.recruit-pitch-art,
.recruit-pitch-art > img,
.recruit-pitch-art::after{
  border-bottom:0!important;
  border-top:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.recruit-pitch-art::after{
  margin-top:-1px!important;
}


/* v2.9 — suppression du VRAI séparateur visible sur la capture */
.recruit-finale-image{
  border-top:0!important;
  outline:0!important;
  margin-top:-2px!important;
  box-shadow:none!important;
}
.recruit-finale-image::before,
.recruit-finale-image::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
  height:0!important;
}
.recruit-body{
  border-bottom:0!important;
  outline:0!important;
}
.recruit-pitch-art{
  border-bottom:0!important;
}
