
:root{
  --bg:#ffffff;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#475569;
  --accent:#0ea5e9;
  --accent2:#22c55e;
  --border: rgba(15, 23, 42, 0.10);
  --shadow: 0 12px 30px rgba(2, 6, 23, 0.08);
  --radius:18px;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: Inter, 'Segoe UI', Arial, sans-serif;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color:var(--text);
  line-height:1.6;
}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}

.container{max-width:1120px; margin:0 auto; padding:0px}

.nav{
  position:sticky; top:0; z-index:30;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--border);
}
.nav-inner{display:flex; align-items:center; justify-content:space-between; gap:16px}
.brand{display:flex; gap:14px; align-items:center}
.brand img{width:250px !important;height:200px !important;object-fit:contain !important;transform:scale(1.08)}
.brand .t1{font-weight:850; letter-spacing:.2px}
.brand .t2{font-size:13px; color:var(--muted)}

.menu{display:flex; flex-wrap:wrap; gap:8px; align-items:center}
.menu a{
  font-size:14px; color:var(--text);
  padding:8px 10px; border-radius:12px;
  border:1px solid transparent;
}
.menu a.active, .menu a:hover{
  border-color: var(--border);
  background: rgba(14,165,233,.08);
  text-decoration:none;
}

.hero{
  border:1px solid var(--border);
  background:#fff;
  border-radius: 24px;
  box-shadow: var(--shadow);
  overflow:hidden;
}
.hero .cover{
  width:100%;
  height:280px;
  background:#e2e8f0;
  display:block;
  object-fit:cover;
}
.hero .content{padding:26px}
.badges{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px}
.badge{
  font-size:12px; color:var(--text);
  padding:6px 10px;
  border:1px solid var(--border);
  background: rgba(2,6,23,.02);
  border-radius:999px;
}
.h1{font-size:38px; margin:0 0 6px 0; line-height:1.1}
.lead{color:var(--muted); max-width:78ch}

.actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:18px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:8px;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  color: var(--text);
  font-weight:700;
  box-shadow: 0 6px 18px rgba(2,6,23,.06);
}
.btn.primary{
  background: linear-gradient(90deg, rgba(14,165,233,.14), rgba(34,197,94,.14));
  border-color: rgba(14,165,233,.25);
}

.grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px; margin-top:18px}
.card{
  grid-column: span 12;
  border:1px solid var(--border);
  background: var(--card);
  border-radius: var(--radius);
  padding:18px;
  box-shadow: var(--shadow);
}
@media (min-width: 900px){
  .card.span6{grid-column: span 6;}
  .card.span4{grid-column: span 4;}
}
.card h2{margin:0 0 8px 0; font-size:18px}
.card p{margin:0; color:var(--muted)}

.table{
  width:100%;
  border-collapse: collapse;
  margin-top:10px;
  font-size:14px;
}
.table th,.table td{
  border:1px solid var(--border);
  padding:10px;
  vertical-align:top;
}
.table th{background: #f1f5f9; text-align:left; color:#0f172a}

.kv{display:grid; grid-template-columns: 170px 1fr; gap:8px; margin-top:8px}
.kv div:nth-child(odd){color:var(--muted)}

.footer{
  margin-top:26px;
  border-top:1px solid var(--border);
  color: var(--muted);
  padding:18px 0 6px;
  font-size:13px;
}
.small{font-size:13px; color:var(--muted)}
.notice{
  border:1px dashed rgba(14,165,233,.35);
  background: rgba(14,165,233,.06);
  padding:12px 14px;
  border-radius: 14px;
  color: var(--text);
}


/* Module visuals */
.module-card{
  display:flex; flex-direction:column; gap:12px;
}
.module-card .thumb{
  width:100%; height:160px; border-radius:16px;
  border:1px solid var(--border);
  background:#f1f5f9;
  overflow:hidden;
}
.module-card .thumb img{width:100%; height:100%; object-fit:cover; display:block}
.module-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:10px}
.btn.whatsapp{
  border-color: rgba(34,197,94,.25);
  background: rgba(34,197,94,.08);
}
/* Home sections with images */
.feature-row{
  display:grid;
  grid-template-columns: 1fr;
  gap:14px;
  align-items:center;
}
@media (min-width: 900px){
  .feature-row{grid-template-columns: 1.2fr .8fr;}
}
.feature-img{
  width:100%;
  height:260px;
  border-radius: 18px;
  border:1px solid var(--border);
  overflow:hidden;
  background:#f1f5f9;
}
.feature-img img{width:100%; height:100%; object-fit:cover; display:block}

.nav-disabled{font-size:14px;color:var(--muted);padding:8px 10px;border-radius:12px}
.brand-link{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}
.brand-link:hover{text-decoration:none}

.table{margin-left:auto;margin-right:auto}
.table th,.table td{text-align:center}


/* Modal (embed form) */
.modal{position:fixed;inset:0;display:none;z-index:1000}
.modal.open{display:block}
.modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.55)}
.modal-dialog{
  position:relative;
  width:min(920px, calc(100% - 24px));
  margin: 6vh auto 0;
  background:#fff;
  border-radius:18px;
  border:1px solid var(--border);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border)}
.modal-title{font-weight:800}
.modal-close{border:1px solid var(--border);background:#fff;border-radius:12px;padding:6px 10px;cursor:pointer}
.modal-body{padding:0}
.modal-body iframe{width:100%;height:72vh;border:0}

.brand img{width:190px !important;height:140px !important;object-fit:contain !important;transform:scale(1.08)}

/* Ensure module images display */
.module-card .thumb{background:#f1f5f9}
.module-card .thumb img{width:100%;height:100%;object-fit:cover;display:block}

.module-card .thumb{background:#f1f5f9}
.module-card .thumb img{width:100%;height:100%;object-fit:cover;display:block}


/* ITTA9 enhancements */
.card:hover,.module-card:hover,.trainer-card:hover{transform:translateY(-4px);transition:.25s ease}
.card,.module-card,.trainer-card{transition:.25s ease}

/* ITTA12 - module status badges */
.status-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);font-size:12px;font-weight:700}
.dot{width:10px;height:10px;border-radius:999px;display:inline-block}
.status-open .dot{background:#16a34a}
.status-closed .dot{background:#ef4444}
.status-running .dot{background:#2563eb}
.pulse{animation:pulse 1.4s infinite}
@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:.7}100%{transform:scale(1);opacity:1}}


.trainer-qr {
    text-align: center;
    margin-top: 20px;
}
.trainer-qr {
    text-align: center;
    margin-top: 20px;
}
.trainer-qr img {
    display: block;
    margin: 15px auto;
    max-width: 200px;
    height: auto;
}
.pay-icons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    flex-wrap: wrap;
    margin-top: 20px;
}

.pay-icons a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 18px;
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.pay-icons img {
    height: 80px;
    width: auto;
    object-fit: contain;
}

.pay-card{display:flex;justify-content:center}

/* Reglement font size to match FAQ */
.page-reglement .section, .page-reglement .card, .page-reglement p, .page-reglement li{
  font-size: 15px;
  line-height: 1.7;
}
.page-reglement h1{font-size:34px}
.page-reglement h2{font-size:22px}


/* ITTA mobile hamburger + brochure carousel + visitor counter */
.container{max-width:1120px; margin:0 auto; padding:14px 14px}
.visitor-chip{display:inline-flex;gap:8px;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:12px;font-weight:800}
.menu-toggle{
  display:none; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:12px; border:1px solid var(--border);
  background:#fff; cursor:pointer; box-shadow:0 6px 18px rgba(2,6,23,.06);
}
.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{
  content:""; display:block; width:18px; height:2px; background:#0f172a; border-radius:2px; position:relative;
}
.menu-toggle span:before{position:absolute; top:-6px; left:0}
.menu-toggle span:after{position:absolute; top:6px; left:0}
.menu a.cta-inscription{
  background:#919BED; color:#fff !important; border-color:#919BED; animation:blinkCta 1.2s infinite; font-weight:800;
}
@keyframes blinkCta{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(1.03)}}
.brochure-section{margin-top:18px}
.brochure-viewport{overflow:hidden;border-radius:18px}
.brochure-track{display:flex;gap:14px;transition:transform .6s ease}
.brochure-card{min-width:100%;flex:0 0 100%;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}
.brochure-card a{display:block}
.brochure-card img{display:block;width:100%;height:280px;object-fit:cover}
.brochure-dots{display:flex;justify-content:center;gap:8px;margin-top:10px}
.brochure-dot{width:9px;height:9px;border-radius:999px;border:1px solid var(--border);background:#fff}
.brochure-dot.active{background:var(--accent)}
.flags-counter{margin-top:10px;text-align:center}
.flags-counter img{max-width:100%;height:auto;border:1px solid var(--border);border-radius:12px;background:#fff}
.pay-icons img{height:64px;width:auto;display:block;object-fit:contain}
.pay-icons{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center}
@media (max-width:768px){
  .container{padding:0 12px}
  .brand img{width:120px !important;height:92px !important;transform:none}
  .menu-toggle{display:inline-flex}
  .nav-inner{align-items:flex-start}
  .menu{
    display:none !important;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    margin-top:8px;
  }
  .menu.open{display:flex !important}
  .menu a{
    font-size:18px;
    font-weight:800;
    padding:12px 12px;
    border-radius:12px;
    background:#fff;
    border:1px solid var(--border);
    text-align:center;
  }
  .hero .cover{height:180px}
  .hero .content{padding:16px}
  .h1{font-size:26px}
  .brochure-card img{height:300px}
}


/* ITTA18 overlay menu + countdown + animated calendar */
.countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.count-box{background:#fff;border:1px solid var(--border);border-radius:18px;padding:12px;text-align:center;box-shadow:var(--shadow)}
.count-box b{display:block;font-size:24px}
.count-box span{font-size:12px;color:var(--muted)}
@media(max-width:600px){.countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}

.table tr.row-open td{background:rgba(34,197,94,.1)}
.table tr.row-open td:first-child{border-left:6px solid #22c55e}
.table tr.row-close td{background:rgba(239,68,68,.1)}
.table tr.row-close td:first-child{border-left:6px solid #ef4444}
.row-open .band,.row-close .band{
  display:inline-block;padding:4px 10px;border-radius:999px;color:#fff;font-weight:800;animation:pulseBand 1.3s infinite;
}
.row-open .band{background:#22c55e}
.row-close .band{background:#ef4444}
@keyframes pulseBand{0%,100%{opacity:1}50%{opacity:.65}}

@media (max-width:768px){
  body.menu-open{overflow:hidden}
  .nav{position:sticky;top:0;z-index:50}
  .menu-toggle{display:inline-flex;position:relative;z-index:61}
  .menu{
    display:flex !important;
    position:fixed;
    inset:0;
    width:100%;
    height:100dvh;
    background:rgba(255,255,255,.98);
    backdrop-filter: blur(8px);
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:14px;
    transform:translateY(-100%);
    opacity:0;
    pointer-events:none;
    transition:transform .35s ease, opacity .35s ease;
    z-index:60;
    padding:24px;
  }
  .menu.open{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .menu a{
    width:min(92vw,420px);
    text-align:center;
    font-size:18px;
    padding:14px 16px;
    border-radius:14px;
  }
}


/* ITTA17 mobile comfort patch */
.container{max-width:1120px;margin:0 auto;padding:0 14px}
.nav{position:sticky;top:0;z-index:40}
.nav-inner{min-height:64px;padding:6px 0}
.brand img{width:150px !important;height:86px !important;object-fit:contain !important;transform:none}
.menu{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.menu a{
  font-size:15px;
  font-weight:800;
  padding:6px 8px;
  line-height:1.15;
}
.menu-toggle{
  display:none;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:12px;border:1px solid var(--border);
  background:#fff;cursor:pointer;box-shadow:0 6px 18px rgba(2,6,23,.06);
}
.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{
  content:"";display:block;width:18px;height:2px;background:#0f172a;border-radius:2px;position:relative;
}
.menu-toggle span:before{position:absolute;top:-6px;left:0}
.menu-toggle span:after{position:absolute;top:6px;left:0}
h1,h2,h3{margin-top:18px;margin-bottom:18px}
.hero .content h1,.card h2:first-child,.section h2:first-child{margin-top:0}
.cta-inscription{
  background:#ef4444 !important;
  color:#fff !important;
  border-color:#ef4444 !important;
  animation:blinkCta 1.2s infinite !important;
}
.btn.primary,.btn.whatsapp{
  animation:softPulse 2.2s infinite;
}
@keyframes blinkCta{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.72;transform:scale(1.03)}
}
@keyframes softPulse{
  0%,100%{box-shadow:0 6px 18px rgba(2,6,23,.06)}
  50%{box-shadow:0 10px 26px rgba(14,165,233,.20)}
}
.feature-img{
  width:100%;
  height:280px;
  border-radius:18px;
  overflow:hidden;
}

.feature-img img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.brochure-track{display:flex;gap:14px;transition:transform .7s ease}
.brochure-card img{display:block;width:100%;height:280px;object-fit:cover}
@media(max-width:768px){
  .container{padding:0 12px}
  body.menu-open{overflow:hidden}
  .brand img{width:100px !important;height:60px !important}
  .nav-inner{min-height:52px;padding:4px 0;align-items:center}
  .menu-toggle{display:inline-flex;position:relative;z-index:61}
  .menu{
    display:flex !important;
    position:fixed;
    inset:0;
    width:100%;
    height:100dvh;
    background:rgba(255,255,255,.985);
    backdrop-filter:blur(10px);
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:12px;
    transform:translateY(-100%);
    opacity:0;
    pointer-events:none;
    transition:transform .35s ease, opacity .35s ease;
    z-index:60;
    padding:22px;
    margin:0;
  }
  .menu.open{transform:translateY(0);opacity:1;pointer-events:auto}
  .menu a{
    width:min(92vw,420px);
    text-align:center;
    font-size:17px;
    padding:12px 14px;
    border-radius:14px;
    background:#fff;
    border:1px solid var(--border);
  }
  .hero .cover{height:180px}
  .hero .content{padding:16px}
  .h1{font-size:26px}
  .feature-row{grid-template-columns:1fr !important}
  .feature-img{width:200px !important;height:250px !important;margin:0 auto 12px auto}
}


/* ITTA19 premium UX */
.container{max-width:1120px;margin:0 auto;padding:0 14px}
h1,h2,h3{margin-top:18px;margin-bottom:18px}
.module-card:hover,.card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(0,0,0,.12)}
.module-card,.card{transition:.28s ease}
.mobile-action-bar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--border);display:none;justify-content:space-around;gap:8px;padding:8px 10px;z-index:90;box-shadow:0 -10px 24px rgba(2,6,23,.08)}
.mobile-action-bar a{flex:1;text-align:center;padding:10px 8px;border-radius:14px;border:1px solid var(--border);font-weight:800;background:#fff;color:var(--text)}
.mobile-action-bar a.primary{background:#ef4444;color:#fff;border-color:#ef4444}
.kpi-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.kpi{background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;box-shadow:var(--shadow);text-align:center}
.kpi b{display:block;font-size:28px}
.kpi span{font-size:12px;color:var(--muted)}
.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.why-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:var(--shadow)}
.why-card .icon{align-items: center;justify-content: center;font-size:28px;margin-bottom:8px;display:block}
.cohort-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;background:linear-gradient(90deg, rgba(14,165,233,.10), rgba(34,197,94,.10));border:1px solid rgba(14,165,233,.2);border-radius:18px;padding:16px;box-shadow:var(--shadow)}
.countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.count-box{background:#fff;border:1px solid var(--border);border-radius:18px;padding:12px;text-align:center;box-shadow:var(--shadow)}
.count-box b{display:block;font-size:24px}
.count-box span{font-size:12px;color:var(--muted)}
.tech-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tech-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:10px;box-shadow:var(--shadow);text-align:center}
.tech-card img{max-width:100%;height:56px;object-fit:contain}
.whatsapp-float{position:fixed;right:18px;bottom:84px;background:#25D366;color:#fff;padding:14px 16px;border-radius:50px;box-shadow:0 10px 24px rgba(37,211,102,.32);z-index:95;font-weight:800}
.loader-overlay{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;z-index:120;transition:opacity .45s ease, visibility .45s ease}
.loader-overlay.hidden{opacity:0;visibility:hidden}
.loader-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#0ea5e9;border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.slider{position:relative}.slider-viewport{overflow:hidden;border-radius:18px}.slider-track{display:flex;gap:14px;transition:transform .35s ease}.slide{min-width:320px;flex:0 0 320px}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);border:1px solid var(--border);background:#fff;border-radius:999px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 20px rgba(15,23,42,.08)}.slider-btn.prev{left:-10px}.slider-btn.next{right:-10px}.slider-dots{display:flex;gap:8px;justify-content:center;margin-top:12px}.slider-dot{width:9px;height:9px;border-radius:999px;border:1px solid var(--border);background:#fff;opacity:.8}.slider-dot.active{background:var(--accent);opacity:1}
.visitor-chip{display:inline-flex;gap:8px;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:12px;font-weight:800}
@media(max-width:900px){.why-grid,.kpi-bar,.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:768px){.container{padding:0 12px}.mobile-action-bar{display:flex}.why-grid,.kpi-bar,.tech-grid,.countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.slide{min-width:260px;flex-basis:260px}.whatsapp-float{bottom:74px;right:12px}.nav{position:sticky;top:0;z-index:50}.menu-toggle{display:inline-flex;position:relative;z-index:61}.menu{display:flex !important;position:fixed;inset:0;width:100%;height:100dvh;background:rgba(255,255,255,.985);backdrop-filter:blur(10px);flex-direction:column;justify-content:center;align-items:center;gap:12px;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .35s ease, opacity .35s ease;z-index:60;padding:22px;margin:0}.menu.open{transform:translateY(0);opacity:1;pointer-events:auto}.menu a{width:min(92vw,420px);text-align:center;font-size:17px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--border)}}


/* ITTA19 enhanced visuals */
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:url('assets/img/watermark.png') center 140px / min(58vw,420px) no-repeat;
  pointer-events:none;
  z-index:0;
}
body > *{position:relative; z-index:1}

.marquee-wrap{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:999px;
  background:#fff;
  box-shadow:var(--shadow);
  margin:14px 0;
}
.marquee{
  display:flex;
  width:max-content;
  white-space:nowrap;
  animation:marqueeLeft 28s linear infinite;
  font-weight:800;
  color:#0f172a;
}
.marquee span{
  display:inline-flex;
  gap:18px;
  align-items:center;
  padding:10px 22px;
}
@keyframes marqueeLeft{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

.icon-grid{
display:grid;
justify-content: center;
align-items: center;
grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
gap:18px;
margin-top:20px;
}

.icon-card{
text-align:center;
align-items: center;
justify-content: center;
background:#fff;
border:1px solid #e5e7eb;
border-radius:16px;
padding:20px;
transition:0.3s;
}

.icon-card img{
width:48px;
height:48px;
align-items: center;
justify-content: center;
margin-bottom:10px;
align-items: center;
}

.icon-card:hover{
transform:translateY(-4px);
align-items: center;
box-shadow:0 8px 18px rgba(0,0,0,0.08);
}

.label{
font-weight:600;
font-size:14px;
}

/* Réseaux sociaux dans le footer */
.footer-social {
  text-align: center;
  padding: 22px 0;
  border-top: 1px solid rgba(255, 255, 255, .12);
  margin-top: 24px;
}

.footer-social h3 {
  margin-bottom: 12px;
  color: #ffffff;
}

.footer-social .social-real {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.footer-social .social-real a {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #ffffff;
  color: #0b3a75;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  text-decoration: none !important;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

.footer-social .social-real a:hover {
  transform: translateY(-3px);
  background: #f97316;
  color: #ffffff;
  text-decoration: none !important;
}

.footer-social .small {
  margin-top: 10px;
  text-align: center;
  color: #e5e7eb;
}

.menu{
  background:rgba(255,255,255,.985);
}
.menu-close{
  display:none;
  position:absolute;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  align-items:center;
  justify-content:center;
  font-size:22px;
  font-weight:800;
  cursor:pointer;
}
.menu.open .menu-close{display:inline-flex}
.brochure-track{
  display:flex;
  gap:14px;
  transition:transform 1.1s cubic-bezier(.22,.61,.36,1);
}

@media(max-width:768px){
  body::before{
    background-size:min(74vw,320px);
    background-position:center 100px;
  }
}

html, body{overflow-x:hidden}
img{max-width:100%;height:auto}
iframe{max-width:100%}
.h1{font-size:34px}
.card h2{font-size:17px}
.small{font-size:12px}
body.menu-open{overflow:hidden}
.menu-toggle{touch-action:manipulation}
.table{display:block;overflow-x:auto;white-space:nowrap}
@media(max-width:768px){
  body{font-size:15px;line-height:1.55}
  .h1{font-size:24px}
  .menu a{font-size:16px !important}
  .badge{font-size:11px;padding:5px 8px}
  .btn{padding:9px 12px;font-size:14px}
  .card{padding:14px}
  .kv{grid-template-columns:1fr}
  .feature-img{width:100% !important;height:220px !important}
  .module-card .thumb{height:140px}
  .table th,.table td{padding:8px;font-size:13px}
}

/* v8 responsive tables + module technology logos */
.table-wrap{width:100%;overflow-x:auto;margin-top:10px;-webkit-overflow-scrolling:touch}
.table{margin-left:auto;margin-right:auto;max-width:100%}.table th,.table td{text-align:center;vertical-align:middle}
.tech-thumb{display:flex;align-items:center;justify-content:center;padding:18px;background:#fff}.tech-thumb img{width:96px !important;height:96px !important;object-fit:contain !important}.feature-img.tech-thumb{height:220px}
@media (max-width:768px){.table{display:table;min-width:720px;font-size:13px;white-space:normal}.brand img{width:160px !important;height:110px !important}}

/* v9 compact tech logos, centered responsive tables, parcours and FAQ */
.table-wrap{width:100%;overflow-x:auto;margin-top:10px;-webkit-overflow-scrolling:touch;display:flex;justify-content:center}
.table{width:min(100%,1100px);margin-left:auto;margin-right:auto}
.table th,.table td{text-align:center;vertical-align:middle}
.module-card .thumb{height:84px;border-radius:14px;background:#fff}
.tech-thumb{display:flex;align-items:center;justify-content:center;padding:12px;background:#fff}
.tech-thumb img{width:48px !important;height:48px !important;object-fit:contain !important}
.feature-img.tech-thumb{height:140px}
.parcours-card h3{margin:0 0 4px 0}
.parcours-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.parcours-modules{margin:10px 0 0 18px;padding:0}
.parcours-modules li{margin:4px 0}
.faq-list{display:grid;gap:12px;margin-top:12px}
.faq-item{border:1px solid var(--border);border-radius:16px;padding:14px 16px;background:#fff;box-shadow:var(--shadow)}
.faq-item h3{margin:0 0 6px 0;font-size:17px}
@media (max-width:768px){
  .table{display:table;min-width:680px;font-size:13px;white-space:normal}
  .module-card .thumb{height:74px}
  .tech-thumb img{width:40px !important;height:40px !important}
  .feature-img.tech-thumb{height:110px}
  .parcours-top{flex-direction:column;align-items:flex-start}
}


/* v10 pricing promo + payment icons + refined tech logos */
.module-card .thumb{height:64px !important; padding:8px 10px !important; background:#fff !important; border:1px solid var(--border)}
.tech-thumb{padding:6px 10px !important; background:#fff !important}
.tech-thumb img{width:36px !important;height:36px !important;object-fit:contain !important;filter:none !important}
.feature-img.tech-thumb{height:110px !important}
.feature-img.tech-thumb img{width:72px !important;height:72px !important}
.price-stack{display:flex;flex-direction:column;align-items:center;gap:4px}
.old-price{font-size:13px;color:#64748b;text-decoration:line-through}
.new-price{font-size:20px;font-weight:800;color:#0f172a}
.discount-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#ecfeff;color:#0f766e;font-size:12px;font-weight:800;border:1px solid #a5f3fc}
.payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:14px}
.payment-link{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:#fff;color:inherit;text-decoration:none;font-weight:700;box-shadow:var(--shadow)}
.payment-link i{font-size:22px;color:#334155}
.payment-link:hover{transform:translateY(-2px)}
.price-note{font-size:13px;color:#475569;text-align:center;margin-top:8px}
@media (max-width:768px){
  .module-card .thumb{height:58px !important}
  .tech-thumb img{width:32px !important;height:32px !important}
  .feature-img.tech-thumb{height:92px !important}
  .feature-img.tech-thumb img{width:56px !important;height:56px !important}
  .payment-grid{grid-template-columns:1fr 1fr}
}


/* v11 square module logos + unified FAQ */
.module-card{
  display:grid !important;
  grid-template-columns:88px minmax(0,1fr);
  gap:14px !important;
  align-items:start;
}
.module-card .thumb{
  width:88px !important;
  height:88px !important;
  min-width:88px;
  margin:0 auto;
  border-radius:18px !important;
  padding:10px !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  box-shadow:var(--shadow);
}
.tech-thumb{display:flex;align-items:center;justify-content:center;background:#fff !important}
.tech-thumb img{
  width:56px !important;
  height:56px !important;
  object-fit:contain !important;
}
.feature-img.tech-thumb{
  width:min(180px,100%);
  height:180px !important;
  margin-inline:auto;
  border-radius:24px;
  padding:18px !important;
}
.feature-img.tech-thumb img{
  width:110px !important;
  height:110px !important;
}
.faq-shell{display:grid;gap:12px}
.faq-item{
  border:1px solid var(--border);
  border-radius:16px;
  padding:14px 16px;
  background:#fff;
  box-shadow:var(--shadow);
}
.faq-item h3{margin:0 0 8px 0}
.faq-item p{margin:0;color:var(--muted)}
@media (max-width:768px){
  .module-card{grid-template-columns:72px minmax(0,1fr) !important;gap:12px !important}
  .module-card .thumb{width:72px !important;height:72px !important;min-width:72px;padding:8px !important}
  .tech-thumb img{width:44px !important;height:44px !important}
  .feature-img.tech-thumb{width:min(140px,100%);height:140px !important;padding:14px !important}
  .feature-img.tech-thumb img{width:84px !important;height:84px !important}
}


/* v12 full screen tables + payment section */
.table-wrap{width:100%;overflow-x:auto;margin-top:10px;-webkit-overflow-scrolling:touch;display:block}
.table{width:100% !important;max-width:none !important;min-width:100% !important;margin-left:0 !important;margin-right:0 !important;border-collapse:collapse;table-layout:auto}
.card .table, .hero + .card .table{width:100% !important}
.table th,.table td{text-align:center;vertical-align:middle}
@media (max-width:768px){
  .table{display:table !important;min-width:760px !important;width:max-content !important}
  .table-wrap{overflow-x:auto}
}
.payment-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px}
.payment-method{border:1px solid rgba(148,163,184,.35);border-radius:18px;padding:14px;background:#fff;display:flex;gap:12px;align-items:center;justify-content:flex-start;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.payment-method img{width:44px;height:44px;object-fit:contain;flex:0 0 auto}
.payment-method strong{display:block;color:#0f172a}
.payment-method span{display:block;font-size:13px;color:#475569}
.payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}
.payment-link{display:flex;align-items:center;gap:12px;justify-content:center;border:1px solid rgba(148,163,184,.35);background:#f8fafc;border-radius:18px;padding:14px 16px;text-decoration:none;color:#0f172a;font-weight:700;min-height:68px}
.payment-link:hover{background:#eef6ff;border-color:#3b82f6}
.payment-link i{font-size:22px}
.price-note{margin-top:12px;font-size:13px;color:#475569}


.btn.primary{background:#0f172a;color:#fff;border-color:#0f172a}.btn.primary:hover{background:#1e293b}.module-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.old-price{text-decoration:line-through;color:#94a3b8;display:block}.new-price{color:#0f172a;font-weight:800}.discount-chip{display:inline-block;background:#ecfeff;color:#0f766e;border:1px solid #99f6e4;border-radius:999px;padding:4px 10px;font-size:12px;margin-top:4px}.parcours-modules li{margin:6px 0}.feature-row{align-items:flex-start}.page-module .feature-row{grid-template-columns:1fr !important}.page-module .feature-img{display:none !important}

/* V14 full-width tables and layout */
.container{max-width:min(96vw,1600px) !important;padding:0 14px !important}
.table-wrap,.table-full{width:100% !important;overflow-x:auto !important;display:block !important}
.table{width:100% !important;max-width:none !important;min-width:100% !important;table-layout:auto !important}
.table th,.table td{text-align:center !important;vertical-align:middle !important;word-break:break-word}
@media (max-width:900px){.table{min-width:760px !important}}
.module-actions .btn{flex:1 1 160px}
.parcours-card .module-actions .btn,.module-card .module-actions .btn{min-width:150px}


/* V15 pricing, linkedin and icons */
.btn.primary,.js-paypal-btn{border-color:#0070ba !important;color:#fff !important}
.btn.primary:hover,.js-paypal-btn:hover{background:#005ea6 !important;border-color:#005ea6 !important}
.linkedin-btn{background:#0a66c2 !important;border-color:#0a66c2 !important;color:#fff !important}
.linkedin-btn:hover{background:#084f99 !important;border-color:#084f99 !important}
.normal-price{color:#334155;font-weight:700;display:inline-block}
.special-price{color:#0f172a;font-weight:800;display:inline-block}
.linkedin-highlight{background:linear-gradient(135deg,#eff6ff,#f8fafc)}
.why-grid-6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.module-card .feature-img{background:#fff;border:1px solid #e2e8f0}
.table-wrap.table-full{width:100vw !important;max-width:100vw !important;position:relative;left:50%;right:50%;margin-left:-48vw !important;margin-right:-48vw !important;padding:0 24px 8px}
@media (max-width:980px){.why-grid-6{grid-template-columns:1fr 1fr}.table-wrap.table-full{left:0;right:0;margin-left:0 !important;margin-right:0 !important;width:100% !important;max-width:100% !important;padding:0}}
@media (max-width:700px){.why-grid-6{grid-template-columns:1fr}.module-card .meta{gap:6px}}


/* V16 CTA pulses and steps */
@keyframes softBluePulse{0%{box-shadow:0 0 0 0 rgba(125,211,252,.55)}70%{box-shadow:0 0 0 14px rgba(125,211,252,0)}100%{box-shadow:0 0 0 0 rgba(125,211,252,0)}}
@keyframes softGreenPulse{0%{box-shadow:0 0 0 0 rgba(134,239,172,.6)}70%{box-shadow:0 0 0 14px rgba(134,239,172,0)}100%{box-shadow:0 0 0 0 rgba(134,239,172,0)}}
.linkedin-pulse{border:1px solid #bae6fd}
.pulse-text{color:#0284c7;animation:softBluePulse 1.8s infinite;border-radius:14px;display:inline-block;padding:4px 10px;background:#e0f2fe}
.blink-soft{animation:softBluePulse 1.8s infinite;background:#7dd3fc !important;border-color:#7dd3fc !important;color:#082f49 !important}
.js-paypal-btn,.js-bank-btn{animation:softGreenPulse 1.8s infinite !important;border-width:1px !important}
.js-bank-btn{background:#86efac !important;border-color:#86efac !important;color:#14532d !important}
.steps-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.step-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:16px;box-shadow:0 12px 30px rgba(15,23,42,.05)}
.step-card span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-weight:800;margin-bottom:10px}
.step-card b{display:block;margin-bottom:8px}
@media (max-width:1100px){.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.steps-grid{grid-template-columns:1fr}}


/* V17 button alignment + compact actions */
.btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;gap:8px;padding:9px 14px !important;min-height:40px;border-radius:12px;font-size:13px;line-height:1.2}
.module-actions,.trainer-socials{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:nowrap}
.module-actions-inline .btn,.module-card .module-actions .btn,.parcours-card .module-actions .btn{flex:1 1 auto;min-width:0 !important;max-width:240px}
.action-note{text-align:center;color:#64748b}
.js-paypal-btn{background:#93c5fd !important;border-color:#93c5fd !important;color:#0c4a6e !important;animation:softGreenPulse 2s infinite !important}
.js-bank-btn{background:#bbf7d0 !important;border-color:#bbf7d0 !important;color:#166534 !important;animation:softGreenPulse 2s infinite !important}
.blink-soft{background:#bae6fd !important;border-color:#bae6fd !important;color:#075985 !important}
.steps-grid .step-card{position:relative;overflow:visible}
.steps-grid .step-card:not(:last-child)::after{content:'➜';position:absolute;right:-18px;top:50%;transform:translateY(-50%);font-size:24px;color:#38bdf8;font-weight:800}
.social-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;box-shadow:0 8px 20px rgba(15,23,42,.06)}
.social-btn svg{width:18px;height:18px}
.linkedin-s{color:#0a66c2;background:#eff6ff;border-color:#bfdbfe}
.gmail-s{color:#b91c1c;background:#fef2f2;border-color:#fecaca}
@media (max-width:1100px){.steps-grid .step-card:not(:last-child)::after{display:none}}
@media (max-width:800px){.module-actions,.trainer-socials{flex-wrap:wrap}.module-card .module-actions .btn,.parcours-card .module-actions .btn{max-width:none}}


/* v26 Option B updates */
.container{max-width:min(98vw,1680px)!important;}
.table-wrap,.table-full{width:100%!important;overflow-x:auto!important;display:block!important;}
.table{width:100%!important;max-width:none!important;min-width:100%!important;}
.table-wrap.table-full{left:0!important;right:0!important;margin-left:0!important;margin-right:0!important;padding:0!important;width:100%!important;max-width:100%!important;}
.module-card .thumb,.parcours-card .thumb,.feature-img.tech-thumb,.trainer-socials,.module-actions,.social-share-row,.home-share-row{display:flex;align-items:center;justify-content:center;}
.module-card h2,.parcours-card h3,.parcours-badge,.card-title-centered,.meta-centered{text-align:center;}
.module-card .small,.parcours-card .small,.module-card p,.parcours-card p,.parcours-card ul,.module-card .pricing-left{text-align:left;}
.module-card .thumb{margin:0 auto 8px auto;}
.parcours-top{justify-content:center!important;}
.parcours-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-weight:800;font-size:12px;margin:0 auto 10px auto;}
.parcours-meta,.parcours-pricing{margin:8px 0;}
.normal-price{color:#334155!important;font-weight:700!important;}
.special-price{color:#166534!important;font-weight:800!important;}
.module-actions,.trainer-socials{gap:10px!important;justify-content:center!important;}
.module-actions .btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;}
.trainer-socials{margin-top:16px!important;}
.social-btn{margin-top:6px;}
.page-reglement .grid{grid-template-columns:1fr!important;}
.page-reglement .card.span6{grid-column:span 12!important;}
.page-reglement ul.small{margin:0;padding-left:18px;}
@media (max-width:900px){.table{min-width:760px!important}.module-card .module-actions,.parcours-card .module-actions{flex-wrap:wrap!important}}


.progression-grid{width:100%;}
@media (max-width: 900px){
  .progression-grid{grid-template-columns:1fr !important;}
}

.js-paypal-btn{background:#2563eb !important;border-color:#1d4ed8 !important;color:#ffffff !important;animation:softGreenPulse 2s infinite !important}
.js-paypal-btn:hover{background:#1d4ed8 !important;border-color:#1e40af !important;color:#ffffff !important}


/* V40 - Fine tuning only: old card style + larger module icons */
.module-card .thumb.tech-thumb,
.module-card .thumb,
.card .thumb.tech-thumb {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.module-card .card-title-centered,
.module-card h3,
.card h3 {
}

@media (max-width: 768px) {
  .module-card .thumb.tech-thumb img,
  .module-card .thumb img,
  .card .thumb.tech-thumb img {
    width: 300px !important;
    height: 300px !important;
    max-width: 300px !important;
    max-height: 300px !important;
  }
}

/* V47 - Complete homepage slider fix: show full images from the left */
.brochure-section {
  margin-top: 18px !important;
  width: 100% !important;
}

.brochure-viewport {
  position: relative !important;
  width: 100% !important;
  height: 350px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08) !important;
}

.brochure-track {
  display: flex !important;
  gap: 0 !important;
  width: 100% !important;
  height: 350px !important;
  transition: transform .6s ease !important;
  will-change: transform !important;
}

.brochure-card {
  flex: 0 0 100% !important;
  min-width: 100% !important;
  width: 100% !important;
  height: 350px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.brochure-card a {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 100% !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

.brochure-card img {
  display: block !important;
  width: 100% !important;
  height: 350px !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.brochure-dots {
  position: absolute !important;
  left: 50% !important;
  bottom: 10px !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .75) !important;
  backdrop-filter: blur(6px) !important;
}

.brochure-dot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(148, 163, 184, .6) !important;
  background: #ffffff !important;
  cursor: pointer !important;
}

.brochure-dot.active {
  background: var(--accent, #0ea5e9) !important;
  border-color: var(--accent, #0ea5e9) !important;
}

.brochure-card:focus-within {
  outline: 3px solid rgba(37, 99, 235, .25) !important;
  outline-offset: -3px !important;
}

@media (max-width: 768px) {
  .brochure-viewport,
  .brochure-track,
  .brochure-card,
  .brochure-card img {
    height: 260px !important;
  }

  .brochure-card img {
    object-fit: contain !important;
    object-position: left center !important;
  }
}

@media (max-width: 480px) {
  .brochure-viewport,
  .brochure-track,
  .brochure-card,
  .brochure-card img {
    height: 210px !important;
  }
}

/* V48 - Mobile, trainers, SIG, typography and menu fixes */

/* Trainer photos: square cards, never landscape */
.trainer-card .trainer-photo,
.trainer-card img,
.feature-img img[src*="trainers"],
img[src*="assets/img/trainers"] {
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.feature-img:has(img[src*="trainers"]),
.trainer-photo {
  aspect-ratio: 1 / 1 !important;
  height: 250px !important;
  max-height: 250px !important;
}

/* Module icons slightly larger but contained */
.module-card .thumb.tech-thumb,
.module-card .thumb {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: transparent !important;
}

.module-card .thumb.tech-thumb img,
.module-card .thumb img {
  width: 300px !important;
  height: 300px !important;
  max-width: 300px !important;
  max-height: 300px !important;
  object-fit: contain !important;
  object-position: center center !important;
}
/* FIX MOBILE TRAINER PHOTO COMPLETE */
@media (max-width: 768px) {
  img[src*="assets/img/trainers"],
  .feature-img img[src*="trainers"],
  .trainer-card img,
  .trainer-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #f8fafc !important;
  }

  .feature-img:has(img[src*="trainers"]),
  .trainer-photo,
  .trainer-card .feature-img {
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    background: #f8fafc !important;
  }
}

/* Better mobile rendering */
@media (max-width: 768px) {
  html {
    font-size: 80% !important;
  }

  body,
  p,
  li,
  td,
  th,
  .small,
  .btn,
  .input,
  .menu a {
    font-size: 80% !important;
  }

  h2,
  .h1,
  .h2,
  .card h2,
  .hero h2 {
    font-size: 80% !important;
    line-height: 1.25 !important;
  }

  .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .grid {
    grid-template-columns: 1fr !important;
  }

  .module-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .module-card .thumb.tech-thumb,
  .module-card .thumb {
    width: 118px !important;
    height: 118px !important;
    min-width: 118px !important;
    min-height: 118px !important;
    margin: 0 auto 10px auto !important;
  }

  .module-card .thumb.tech-thumb img,
  .module-card .thumb img {
    width: 108px !important;
    height: 108px !important;
    max-width: 108px !important;
    max-height: 108px !important;
  }

  .module-actions,
  .module-card .module-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    justify-content: center !important;
  }

  .module-actions .btn,
  .module-card .module-actions .btn {
    flex: 1 1 100% !important;
    max-width: none !important;
    min-height: 38px !important;
    padding: 8px 10px !important;
    text-align: center !important;
  }

  .table-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .feature-row {
    grid-template-columns: 1fr !important;
  }

  .feature-img,
  .feature-img:has(img[src*="trainers"]) {
    width: min(200px, 100%) !important;
    height: min(200px, 100%) !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 auto !important;
  }

  .menu a[href="tarifs.html"] {
    display: none !important;
  }
}

/* Contact email list */
.contact-emails ul {
  margin: 10px 0 0 18px;
  padding: 0;
  line-height: 1.8;
}

/* Safer focus styles */
a:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible {
  outline: 3px solid rgba(37, 99, 235, .35);
  outline-offset: 2px;
}

/* V52 - Planning, full-width tables, clickable cards, slogan, compact KPIs */
.brand-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
}

.brand-link::after {
  content: "Apprenez. Maîtrisez. Réussissez.";
  font-size: 12px;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.2;
  max-width: 145px;
}

.table-wrap,
.table-full {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
}

.table,
.full-width-table {
  width: 100% !important;
  min-width: 100% !important;
  border-collapse: collapse !important;
}

.parcours-card.js-parcours-card,
.module-card.js-module-card {
  cursor: pointer !important;
}

.parcours-card.js-parcours-card:hover,
.module-card.js-module-card:hover {
  transform: translateY(-3px) !important;
}

.parcours-card.js-parcours-card:focus-visible,
.module-card.js-module-card:focus-visible {
  outline: 3px solid rgba(37, 99, 235, .35) !important;
  outline-offset: 3px !important;
}

.planning-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.planning-pathway-card h3 {
  margin-top: 0;
}

.month-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.month-plan {
  border: 1px solid var(--border, #e2e8f0);
  border-radius: 14px;
  padding: 10px;
  background: #fff;
}

.month-plan b,
.month-plan span,
.month-plan small {
  display: block;
}

.month-plan span {
  margin-top: 6px;
  font-size: 12px;
  color: var(--muted, #64748b);
}

.month-plan small {
  margin-top: 6px;
  color: var(--muted, #64748b);
  line-height: 1.45;
}

.why-card {
  text-align: center !important;
}

.why-card .icon,
.why-card img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.kpi-bar {
  gap: 8px !important;
}

.kpi {
  padding: 10px 10px !important;
}

.kpi b {
  font-size: clamp(18px, 2vw, 26px) !important;
  line-height: 1.1 !important;
}

.kpi span {
  font-size: 12px !important;
  line-height: 1.25 !important;
}

.faq-list,
.faq-shell {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 14px !important;
}

.faq-item a {
  color: var(--primary, #0f4ea3) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.faq-item a:hover {
  text-decoration: underline !important;
}

.orientation-hint {
  display: none;
}

.feature-img img[src*="trainers"],
img[src*="assets/img/trainers"] {
  width: 180px !important;
  height: 240px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 16px !important;
}

.feature-img:has(img[src*="trainers"]) {
  width: 180px !important;
  height: 240px !important;
  margin: 0 auto !important;
  border-radius: 16px !important;
}

@media (max-width: 900px) {
  .planning-grid,
  .month-grid,
  .faq-list,
  .faq-shell {
    grid-template-columns: 1fr !important;
  }

  .orientation-hint {
    display: block;
    margin: 10px 0;
    padding: 10px 12px;
    border-radius: 14px;
    background: rgba(14, 165, 233, .08);
    border: 1px solid rgba(14, 165, 233, .25);
    color: #0f172a;
    font-size: 12px;
    text-align: center;
  }

  .brand-link::after {
    font-size: 10px;
    max-width: 105px;
  }

  .kpi {
    padding: 8px 8px !important;
  }

  .kpi b {
    font-size: 16px !important;
  }

  .kpi span {
    font-size: 10px !important;
  }

  .feature-img img[src*="trainers"],
  img[src*="assets/img/trainers"] {
    width: 150px !important;
    height: 200px !important;
  }

  .feature-img:has(img[src*="trainers"]) {
    width: 150px !important;
    height: 200px !important;
  }
}


/* V53 - Final corrections */
.brand-link::after {
  color: #14532d !important;
}

.parcours-card.js-parcours-card,
.module-card.js-module-card {
  cursor: pointer !important;
}

.parcours-card.js-parcours-card:hover,
.module-card.js-module-card:hover {
  transform: translateY(-3px) !important;
}

.parcours-card.js-parcours-card:focus-visible,
.module-card.js-module-card:focus-visible {
  outline: 3px solid rgba(20, 83, 45, .35) !important;
  outline-offset: 3px !important;
}

.parcours-modules li {
  line-height: 1.5 !important;
}

.table-wrap,
.table-full {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
}

.table,
.full-width-table {
  width: 100% !important;
  min-width: 100% !important;
}

.module-card .module-actions .btn,
.module-actions .btn {
  position: relative !important;
  z-index: 2 !important;
}

/* V58 - Inscription 2 étapes / mobile clarity */
.nav-cta{background:#14532d!important;color:#fff!important;border-radius:999px;padding:8px 14px!important;font-weight:900!important}
.registration-intro,.registration-hero{border:1px solid rgba(20,83,45,.18)!important;background:linear-gradient(135deg,rgba(20,83,45,.07),rgba(255,255,255,.96))!important}
.module-actions-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}.small-cta{padding:8px 12px!important;font-size:13px!important}.big-cta{padding:12px 18px!important;font-size:15px!important}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.step-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:16px;box-shadow:0 10px 24px rgba(15,23,42,.06)}.step-card span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#14532d;color:#fff;font-weight:900;margin-bottom:10px}.step-card b{display:block;margin-bottom:6px;color:#0f172a}.step-card p{margin:0;color:#64748b;font-size:13px;line-height:1.5}
.module-card .btn,.parcours-card .btn{position:relative;z-index:3}.course-language-note{margin:10px 0 12px;padding:10px 14px;border-radius:14px;border:1px solid rgba(20,83,45,.18);background:rgba(20,83,45,.07);color:#14532d;font-weight:800;font-size:13px;text-align:center}
@media(max-width:768px){.grid{grid-template-columns:1fr!important}.card{padding:14px!important}.module-card,.parcours-card{gap:10px!important}.module-card p,.parcours-card p,.small{font-size:12px!important;line-height:1.45!important}.module-actions-inline{justify-content:stretch}.module-actions-inline .btn{flex:1 1 145px;text-align:center}.steps-grid{grid-template-columns:1fr!important}.mobile-action-bar a.primary{background:#14532d!important}.nav-cta{display:inline-block;margin-top:8px}.thumb.tech-thumb{width:92px!important;height:92px!important;margin:0 auto 8px!important}.thumb.tech-thumb img{max-width:84px!important;max-height:84px!important}}


/* V59 - Inscription rapide et mobile clair */
@keyframes ittaPulseRegister {
  0% { box-shadow: 0 0 0 0 rgba(22, 101, 52, .32); transform: translateY(0); }
  50% { box-shadow: 0 0 0 8px rgba(22, 101, 52, .08); transform: translateY(-1px); }
  100% { box-shadow: 0 0 0 0 rgba(22, 101, 52, 0); transform: translateY(0); }
}

.blink-register,
.nav-cta,
a[href*="forms.gle"] {
  animation: ittaPulseRegister 1.9s ease-in-out infinite;
}

.quick-registration,
.registration-intro {
  border: 1px solid rgba(22, 101, 52, .18) !important;
  background: linear-gradient(180deg, rgba(22, 101, 52, .06), #fff) !important;
}

.quick-steps .step-card span,
.steps-grid .step-card span {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(22, 101, 52, .10);
  color: #14532d;
  font-size: 20px;
  font-weight: 900;
  margin-bottom: 8px;
}

.module-actions-inline {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: center;
}

.mobile-sticky-register {
  display: none;
}

@media (max-width: 768px) {
  .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .card {
    padding: 16px !important;
  }

  .module-card,
  .parcours-card {
    text-align: center !important;
  }

  .module-card p,
  .parcours-card p,
  .small {
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .module-actions-inline,
  .module-actions {
    flex-direction: column !important;
    width: 100% !important;
  }

  .module-actions-inline .btn,
  .module-actions .btn {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .steps-grid.quick-steps,
  .quick-steps {
    grid-template-columns: 1fr !important;
  }

  .mobile-sticky-register {
    display: block;
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 9999;
  }

  .mobile-sticky-register .btn {
    width: 100%;
    justify-content: center;
    border-radius: 999px;
    padding: 12px 16px;
  }

  body {
    padding-bottom: 72px;
  }
  
  @keyframes clignotement {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
  }

  .texte-bleu-clignotant {
    color: blue;
    font-weight: bold;
    animation: clignotement 1.5s infinite; /* 1.5s est la vitesse, modifiable selon vos besoins */
  }
}



/* V62 - Architecture claire + pages Modules/Packs/Webinaire/Galerie */
:root{
  --itta-green:#14532d;
  --itta-green-2:#166534;
  --itta-light:#f8fafc;
  --itta-border:#e2e8f0;
  --itta-text:#0f172a;
}
*{box-sizing:border-box}
body{font-size:16px;line-height:1.6;color:var(--itta-text);background:#fff;margin:0}
.container{width:min(1240px,94%);margin:0 auto}
.itta-header{position:sticky;top:0;z-index:9999;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--itta-border);box-shadow:0 8px 28px rgba(15,23,42,.06)}
.itta-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px}
.itta-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--itta-green);font-weight:900}
.itta-brand img{width:52px;height:52px;object-fit:contain}
.itta-brand span{font-size:15px}
.itta-menu{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.itta-menu a{padding:9px 10px;border-radius:999px;text-decoration:none;color:#334155;font-weight:800;font-size:14px}
.nav-cta,.btn.primary{background:var(--itta-green)!important;color:#fff!important}
@keyframes ittaBlink{0%,100%{box-shadow:0 0 0 0 rgba(20,83,45,.35)}50%{box-shadow:0 0 0 9px rgba(20,83,45,.08)}}
.blink-register{animation:ittaBlink 1.8s ease-in-out infinite}
.menu-toggle,.menu-close{display:none}
.page-wrap{padding:28px 0 44px}
.hero-v62,.page-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:34px;border:1px solid var(--itta-border);border-radius:28px;background:linear-gradient(180deg,#fff,#f0fdf4);margin:24px 0}
.page-hero{display:block;text-align:center}
.hero-v62 h1,.page-hero h1{font-size:clamp(30px,4vw,54px);line-height:1.12;margin:10px 0;color:#052e16}
.hero-v62 p,.page-hero p{font-size:18px;color:#334155}
.hero-v62 img,.wide-img{width:100%;border-radius:22px;border:1px solid var(--itta-border)}
.badge{display:inline-block;padding:7px 12px;border-radius:999px;background:#dcfce7;color:#14532d;font-weight:900;font-size:13px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:11px 16px;text-decoration:none;font-weight:900;border:1px solid var(--itta-border)}
.btn.secondary{background:#fff;color:#14532d}
.cta-row,.center{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:16px}
.section{margin:34px 0}
.section h2{font-size:clamp(24px,3vw,36px);text-align:center;color:#052e16}
.stats-grid,.feature-grid,.card-grid,.gallery-grid,.trainer-grid,.steps-grid,.footer-grid{display:grid;gap:18px}
.stats-grid{grid-template-columns:repeat(4,1fr);margin:28px 0}
.stats-grid div,.feature-grid div,.card,.faq-item,.step-card{border:1px solid var(--itta-border);border-radius:22px;background:#fff;padding:20px;box-shadow:0 12px 30px rgba(15,23,42,.05)}
.stats-grid b{display:block;font-size:34px;color:#14532d;text-align:center}
.stats-grid span{display:block;text-align:center;font-weight:800}
.feature-grid{grid-template-columns:repeat(4,1fr)}
.feature-grid span{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 10px;border-radius:16px;background:#dcfce7;font-size:25px}
.feature-grid h3{text-align:center}
.card-grid{grid-template-columns:repeat(3,1fr)}
.catalog-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--itta-border);border-radius:24px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 12px 30px rgba(15,23,42,.055)}
.card-banner{height:150px;background:#f8fafc;overflow:hidden}
.card-banner img{width:100%;height:100%;object-fit:cover;display:block}
.catalog-body{padding:18px}
.catalog-body h3{margin-top:0;color:#052e16}
.price-line b,.special-price{color:#14532d}
.clean-list{padding-left:18px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.payment-icons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0}
.payment-icons img{width:120px;height:70px;object-fit:contain}
.steps-grid{grid-template-columns:repeat(3,1fr)}
.step-card{text-align:center}
.step-card span{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:18px;background:#dcfce7;color:#14532d;font-size:24px;font-weight:900}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.trainer-grid{grid-template-columns:repeat(2,1fr)}
.trainer-card{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;border:1px solid var(--itta-border);border-radius:22px;padding:16px;background:#fff}
.trainer-card img{width:120px;height:150px;object-fit:cover;border-radius:18px}
.video-placeholder{border:2px dashed #bbf7d0;border-radius:24px;padding:50px;text-align:center;background:#f0fdf4}
.itta-footer{background:#052e16;color:#e2e8f0;margin-top:40px;padding-top:36px}
.itta-footer a{color:#fff}
.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}
.footer-logo{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:16px;padding:6px}
.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:16px;margin-top:20px}
.whatsapp-link,.whatsapp-float{display:inline-flex;align-items:center;gap:8px}
.whatsapp-link img,.whatsapp-float img{width:24px;height:24px}
.whatsapp-float{position:fixed;right:16px;bottom:82px;background:#25D366;color:#fff;text-decoration:none;padding:10px 14px;border-radius:999px;z-index:9998;font-weight:900}
.mobile-action-bar{display:none}
.table-wrap{width:100%;overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{border:1px solid var(--itta-border);padding:12px;text-align:left}
th{background:#f0fdf4}
@media(max-width:900px){
  body{font-size:15px;padding-bottom:70px}
  .menu-toggle{display:inline-flex;width:44px;height:44px;border:0;border-radius:14px;background:#dcfce7;align-items:center;justify-content:center}
  .menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:22px;height:2px;background:#14532d;content:"";position:relative}
  .menu-toggle span:before{position:absolute;top:-7px}.menu-toggle span:after{position:absolute;top:7px}
  .menu-close{display:block;align-self:flex-end;border:0;background:#dcfce7;color:#14532d;border-radius:12px;font-size:28px;width:44px;height:44px}
  .itta-menu{position:sticky;inset:0 0 0 auto;width:min(86vw,360px);background:#fff;box-shadow:-20px 0 40px rgba(15,23,42,.18);padding:18px;display:flex;flex-direction:column;align-items:stretch;transform:translateX(105%);transition:.25s;overflow:auto}
  .itta-menu.open{transform:translateX(0)}
  .itta-menu a{text-align:center;border:1px solid var(--itta-border);padding:12px}
  .hero-v62,.page-hero,.two-col{grid-template-columns:1fr}
  .stats-grid,.feature-grid,.card-grid,.gallery-grid,.trainer-grid,.steps-grid,.faq-grid,.footer-grid{grid-template-columns:1fr}
  .hero-v62,.page-hero{padding:22px}
  .card-banner{height:135px}
  .mobile-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:grid;grid-template-columns:1.2fr 1fr 1fr;background:#fff;border-top:1px solid var(--itta-border)}
  .mobile-action-bar a{text-align:center;padding:12px 8px;text-decoration:none;font-weight:900;color:#14532d}
  .mobile-action-bar a:first-child{background:#14532d;color:#fff}
  .whatsapp-float{bottom:64px}
}



/* V63 - Colorful premium redesign: blue, orange, white, black and light green */
:root{
  --blue:#0b3a75;
  --blue2:#1d4ed8;
  --orange:#f97316;
  --orange2:#fb923c;
  --green:#166534;
  --black:#111827;
  --text:#1f2937;
  --muted:#6b7280;
  --line:#e5e7eb;
  --soft-blue:#eff6ff;
  --soft-orange:#fff7ed;
  --soft-green:#f0fdf4;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--text);font-size:16.8px;line-height:1.62;font-family:Inter,Arial,sans-serif}
a{text-decoration:none;transition:.22s ease}
a:hover{transform:translateY(-1px);background:rgba(29,78,216,.07)}
.container{width:min(1240px,94%);margin:auto}
.v63-header{position:sticky ;top:0;z-index:10000;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 12px 30px rgba(17,24,39,.07)}
.v63-nav{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:14px}
.v63-brand{display:flex;align-items:center;gap:10px;color:var(--blue);font-weight:900}
.v63-brand img{width:54px;height:54px;object-fit:contain}
.v63-brand span{font-size:15px}
.v63-menu{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.v63-menu a{color:var(--black);font-weight:850;padding:9px 11px;border-radius:999px;font-size:14px}
.nav-cta,.btn.primary{background:var(--green)!important;color:#fff!important}
@keyframes v63pulse{0%,100%{box-shadow:0 0 0 0 rgba(22,101,52,.35)}50%{box-shadow:0 0 0 9px rgba(22,101,52,.08)}}
.blink-register{animation:v63pulse 1.8s ease-in-out infinite}
.menu-toggle,.menu-close{display:none}
.page-wrap{padding:28px 0 50px}
.hero-v63,.page-hero{border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,#fff 0%,var(--soft-blue) 55%,var(--soft-orange) 100%);padding:34px;margin:24px 0;box-shadow:0 18px 44px rgba(17,24,39,.07)}
.hero-v63{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:center}
.hero-v63 img{width:100%;border-radius:24px}
.hero-v63 h1,.page-hero h1{font-size:clamp(31px,4vw,56px);line-height:1.1;color:var(--black);margin:12px 0}
.hero-v63 p,.page-hero p{font-size:18px;color:#374151}
.page-hero{text-align:center}
.top-badge,.level-pill{display:inline-block;background:#dbeafe;color:var(--blue);border-radius:999px;padding:7px 12px;font-weight:900;font-size:13px}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:11px 17px;font-weight:900;border:1px solid var(--line);background:#fff;color:var(--black)}
.btn.blue{background:var(--blue);color:#fff}
.btn.orange{background:var(--orange);color:#fff}
.btn.secondary{background:#fff;color:var(--blue);border-color:#bfdbfe}
.big-btn{font-size:18px;padding:14px 24px}
.cta-row,.center{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:16px}
.section{margin:36px 0}
.section h2{font-size:clamp(24px,3vw,38px);text-align:center;color:var(--blue)}
.v63-card,.faq-item,.step-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 14px 34px rgba(17,24,39,.065)}
.stats-grid,.feature-grid,.card-grid,.two-col,.testimonials-grid,.gallery-grid,.trainer-grid,.steps-grid,.faq-grid,.footer-grid{display:grid;gap:18px}
.stats-grid{grid-template-columns:repeat(6,1fr)}
.stats-grid div{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border-radius:22px;padding:18px;text-align:center}
.stats-grid div:nth-child(even){background:linear-gradient(135deg,var(--orange),var(--orange2))}
.stats-grid b{display:block;font-size:32px}
.feature-grid{grid-template-columns:repeat(4,1fr)}
.feature-grid div{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;text-align:center}
.feature-grid span{display:inline-flex;width:56px;height:56px;align-items:center;justify-content:center;border-radius:18px;background:var(--soft-orange);font-size:26px}
.card-grid{grid-template-columns:repeat(3,1fr)}
.catalog-card{overflow:hidden;color:inherit;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 34px rgba(17,24,39,.065)}
.card-banner{height:152px;overflow:hidden;background:#f8fafc}
.card-banner img{width:100%;height:100%;object-fit:cover;display:block}
.catalog-body{padding:18px}
.catalog-body h3{margin-top:0;color:var(--blue)}
.price-line span{color:#374151}.price-line b{color:var(--green)}
.clean-list{padding-left:20px}
.two-col{grid-template-columns:1fr 1fr}
.wide-img{width:100%;border-radius:20px;border:1px solid var(--line)}
.map-frame{width:100%;height:330px;border:0;border-radius:20px}
.testimonials-grid{grid-template-columns:repeat(3,1fr)}
.testimonial-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;text-align:center;box-shadow:0 14px 34px rgba(17,24,39,.065)}
.avatar{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue),var(--orange));color:#fff;font-weight:900;font-size:30px;margin:0 auto 10px}
.payment-icons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:18px 0}.payment-icons img{width:120px;height:70px;object-fit:contain}
.steps-grid{grid-template-columns:repeat(3,1fr)}
.step-card{text-align:center}.step-card span{display:inline-flex;width:58px;height:58px;align-items:center;justify-content:center;border-radius:20px;background:var(--soft-green);color:var(--green);font-weight:900;font-size:26px}
.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid img{width:100%;border-radius:22px;border:1px solid var(--line)}figcaption{text-align:center;font-weight:800;margin-top:8px}
.trainer-grid{grid-template-columns:repeat(2,1fr)}.trainer-card{display:grid;grid-template-columns:130px 1fr;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px}.trainer-card img{width:130px;height:165px;object-fit:cover;border-radius:20px}.trainer-links{display:flex;gap:10px;margin-top:10px}.trainer-links a{background:var(--soft-blue);color:var(--blue);padding:7px 10px;border-radius:999px;font-weight:900}
.faq-grid{grid-template-columns:repeat(2,1fr)}
.video-placeholder{border:2px dashed #bfdbfe;background:var(--soft-blue);border-radius:24px;padding:52px;text-align:center;font-weight:900;color:var(--blue)}
.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{border:1px solid var(--line);padding:13px;text-align:left}th{background:var(--soft-blue);color:var(--blue)}
.v63-footer{background:#0b1220;color:#e5e7eb;margin-top:46px;padding-top:38px}.v63-footer a{color:#fff}.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}.footer-logo{width:78px;height:78px;background:#fff;border-radius:18px;padding:7px;object-fit:contain}.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:16px;margin-top:22px}.whatsapp-link,.whatsapp-float{display:inline-flex;align-items:center;gap:8px}.whatsapp-link img,.whatsapp-float img{width:24px;height:24px}.whatsapp-float{position:fixed;right:16px;bottom:82px;background:#25D366;color:#fff;padding:10px 14px;border-radius:999px;z-index:9998;font-weight:900}
.mobile-action-bar{display:none}
@media(max-width:980px){
  body{font-size:16px;padding-bottom:70px}
  .menu-toggle{display:inline-flex;width:46px;height:46px;border:0;border-radius:15px;background:var(--soft-blue);align-items:center;justify-content:center}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{content:"";display:block;width:23px;height:2px;background:var(--blue);position:relative}.menu-toggle span:before{position:absolute;top:-7px}.menu-toggle span:after{position:absolute;top:7px}
  .menu-close{display:block;align-self:flex-end;border:0;background:var(--soft-orange);color:var(--orange);border-radius:14px;width:46px;height:46px;font-size:30px}
  .v63-menu{position:fixed;inset:0 0 0 auto;width:min(88vw,380px);background:#fff;box-shadow:-24px 0 50px rgba(17,24,39,.2);padding:40px;display:flex;flex-direction:column;align-items:stretch;transform:translateX(105%);transition:.25s;overflow:auto}.v63-menu.open{transform:translateX(0)}.v63-menu a{text-align:center;border:1px solid var(--line);padding:12px}
  .hero-v63,.two-col,.stats-grid,.feature-grid,.card-grid,.testimonials-grid,.gallery-grid,.trainer-grid,.steps-grid,.faq-grid,.footer-grid{grid-template-columns:1fr}
  .hero-v63,.page-hero{padding:22px}.card-banner{height:140px}.trainer-card{grid-template-columns:1fr;text-align:center}.trainer-card img{margin:auto}.trainer-links{justify-content:center}
  .mobile-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:grid;grid-template-columns:1.2fr 1fr 1fr;background:#fff;border-top:1px solid var(--line)}.mobile-action-bar a{text-align:center;padding:12px 8px;font-weight:900;color:var(--blue)}.mobile-action-bar a:first-child{background:var(--green);color:#fff}.whatsapp-float{bottom:64px}
}

.whatsapp-float{
  position:fixed;
  right:16px;
  bottom:82px;
  z-index:9998;
  background:#25D366;
  color:#fff;
  padding:10px 14px;
  border-radius:999px;
  font-weight:900;
  box-shadow:0 14px 30px rgba(37,211,102,.25);
}



/* V63 patch - désactiver soulignement/hover texte sur cartes modules */
.catalog-card,
.catalog-card:hover,
.module-v63,
.module-v63:hover,
.module-card-v62,
.module-card-v62:hover,
.module-v63 *,
.module-v63:hover *,
.catalog-card *,
.catalog-card:hover * {
  text-decoration: none !important;
}

.module-v63 h3,
.module-v63 p,
.module-v63 span,
.module-v63 b,
.catalog-card h3,
.catalog-card p,
.catalog-card span,
.catalog-card b {
  text-decoration: none !important;
}

.module-v63:hover h3,
.module-v63:hover p,
.module-v63:hover span,
.module-v63:hover b,
.catalog-card:hover h3,
.catalog-card:hover p,
.catalog-card:hover span,
.catalog-card:hover b {
  text-decoration: none !important;
}

/* Animation légère sans soulignement */
.module-v63:hover,
.catalog-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(17, 24, 39, .10);
  background: #ffffff !important;
}

/* =========================================================
   PATCH FINAL - CARTES MODULES/PACKS
   Objectifs :
   1. Supprimer le soulignement au survol
   2. Garder une animation légère
   3. Unifier la hauteur des cartes
   4. Justifier les paragraphes
   5. Aligner les tarifs et boutons
   ========================================================= */

/* Supprimer tout soulignement sur les cartes */
.catalog-card,
.catalog-card:hover,
.module-v63,
.module-v63:hover,
.module-card-v62,
.module-card-v62:hover,
.pack-v63,
.pack-v63:hover,
.module-v63 *,
.module-v63:hover *,
.pack-v63 *,
.pack-v63:hover *,
.catalog-card *,
.catalog-card:hover * {
  text-decoration: none !important;
}

/* Supprimer le soulignement sur les textes internes */
.module-v63 h3,
.module-v63 p,
.module-v63 span,
.module-v63 b,
.pack-v63 h3,
.pack-v63 p,
.pack-v63 span,
.pack-v63 b,
.catalog-card h3,
.catalog-card p,
.catalog-card span,
.catalog-card b {
  text-decoration: none !important;
}

/* Supprimer le soulignement quand la souris passe sur la carte */
.module-v63:hover h3,
.module-v63:hover p,
.module-v63:hover span,
.module-v63:hover b,
.pack-v63:hover h3,
.pack-v63:hover p,
.pack-v63:hover span,
.pack-v63:hover b,
.catalog-card:hover h3,
.catalog-card:hover p,
.catalog-card:hover span,
.catalog-card:hover b {
  text-decoration: none !important;
}

/* Animation légère sans soulignement */
.module-v63:hover,
.pack-v63:hover,
.catalog-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(17, 24, 39, .10);
  background: #ffffff !important;
}

/* Unifier la hauteur des cartes */
.card-grid {
  align-items: stretch !important;
}

.catalog-card,
.module-v63,
.pack-v63 {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Corps de carte flexible */
.catalog-card .catalog-body,
.module-v63 .catalog-body,
.pack-v63 .catalog-body {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Justifier les paragraphes */
.catalog-card .catalog-body p,
.module-v63 .catalog-body p,
.pack-v63 .catalog-body p {
  text-align: justify !important;
}

/* Limiter les descriptions pour garder les cartes équilibrées */
.catalog-card .catalog-body > p:not(.small):not(.price-line),
.module-v63 .catalog-body > p:not(.small):not(.price-line),
.pack-v63 .catalog-body > p:not(.small):not(.price-line) {
  min-height: 78px !important;
  max-height: 78px !important;
  overflow: hidden !important;
}

/* Aligner les tarifs vers le bas */
.catalog-card .price-line,
.module-v63 .price-line,
.pack-v63 .price-line {
  margin-top: auto !important;
}

/* Uniformiser la hauteur des titres */
.catalog-card h3,
.module-v63 h3,
.pack-v63 h3 {
  min-height: 58px !important;
}

/* Uniformiser les images en haut des cartes */
.catalog-card .card-banner,
.module-v63 .card-banner,
.pack-v63 .card-banner {
  height: 150px !important;
  flex-shrink: 0 !important;
}

.catalog-card .card-banner img,
.module-v63 .card-banner img,
.pack-v63 .card-banner img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Boutons dans les cartes alignés */
.catalog-card .btn,
.module-v63 .btn,
.pack-v63 .btn {
  margin-top: 14px !important;
  align-self: center !important;
}

/* Mobile : éviter les cartes trop longues */
@media (max-width: 768px) {
  .catalog-card .catalog-body > p:not(.small):not(.price-line),
  .module-v63 .catalog-body > p:not(.small):not(.price-line),
  .pack-v63 .catalog-body > p:not(.small):not(.price-line) {
    min-height: auto !important;
    max-height: 96px !important;
  }

  .catalog-card h3,
  .module-v63 h3,
  .pack-v63 h3 {
    min-height: auto !important;
  }

  .catalog-card .card-banner,
  .module-v63 .card-banner,
  .pack-v63 .card-banner {
    height: 135px !important;
  }
}



/* =========================================================
   V64 - Nettoyage visuel, footer unifié, WhatsApp, paiement
   ========================================================= */

:root {
  --v64-blue: #0b3a75;
  --v64-blue-2: #1d4ed8;
  --v64-orange: #f97316;
  --v64-green: #166534;
  --v64-black: #111827;
  --v64-text: #1f2937;
  --v64-line: #e5e7eb;
  --v64-soft-blue: #eff6ff;
  --v64-soft-orange: #fff7ed;
  --v64-soft-green: #f0fdf4;
}

html {
  scroll-padding-top: 95px !important;
}

body {
  color: var(--v64-text);
  font-size: 17px;
  line-height: 1.7;
}

/* Header fixé / sticky propre */
.v63-header,
.itta-header,
.nav,
header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid var(--v64-line) !important;
  box-shadow: 0 10px 28px rgba(17,24,39,.08) !important;
}

/* Liens sans soulignement, animation légère */
a,
a:hover,
a:focus {
  text-decoration: none !important;
}

a:hover {
  transform: translateY(-1px);
}

/* Footer unifié */
.v64-footer,
.v63-footer,
.itta-footer,
.site-footer {
  background: #0b1220 !important;
  color: #e5e7eb !important;
  margin-top: 48px !important;
  padding: 40px 0 0 !important;
}

.v64-footer a,
.v63-footer a,
.itta-footer a,
.site-footer a {
  color: #ffffff !important;
  text-decoration: none !important;
}

.footer-grid {
  display: grid !important;
  grid-template-columns: 1.25fr 1fr 1fr 1fr !important;
  gap: 24px !important;
  align-items: start !important;
}

.footer-col h3,
.footer-grid h3 {
  color: #ffffff !important;
  margin-top: 0 !important;
}

.footer-logo {
  width: 80px !important;
  height: 80px !important;
  object-fit: contain !important;
  background: #ffffff !important;
  border-radius: 18px !important;
  padding: 7px !important;
  margin-bottom: 12px !important;
}

.footer-whatsapp,
.whatsapp-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(37,211,102,.16) !important;
  border: 1px solid rgba(37,211,102,.35) !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
}

.footer-whatsapp img,
.whatsapp-link img {
  width: 24px !important;
  height: 24px !important;
  object-fit: contain !important;
}

/* Paiements */
.footer-payments {
  width: min(1100px, 94%) !important;
  margin: 28px auto 0 !important;
  padding: 22px 0 !important;
  border-top: 1px solid rgba(255,255,255,.12) !important;
  text-align: center !important;
}

.footer-payments h3,
.footer-social h3 {
  color: #ffffff !important;
  margin: 0 0 14px !important;
}

.payment-icons {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 16px 0 !important;
}

.payment-icons img {
  width: 118px !important;
  height: 66px !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}

.payment-icons img:hover {
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 10px 24px rgba(255,255,255,.08) !important;
}

/* Réseaux sociaux */
.footer-social {
  width: min(1100px, 94%) !important;
  margin: 0 auto !important;
  padding: 22px 0 !important;
  border-top: 1px solid rgba(255,255,255,.12) !important;
  text-align: center !important;
}

.social-real {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.social-real a {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--v64-blue) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 900 !important;
  font-size: 18px !important;
  transition: transform .2s ease, background .2s ease, color .2s ease !important;
}

.social-real a:hover {
  transform: translateY(-4px) rotate(-2deg) !important;
  background: var(--v64-orange) !important;
  color: #ffffff !important;
}

.social-real img {
  width: 24px !important;
  height: 24px !important;
}

.footer-bottom {
  text-align: center !important;
  border-top: 1px solid rgba(255,255,255,.12) !important;
  padding: 16px !important;
  margin-top: 12px !important;
  color: #d1d5db !important;
}

/* WhatsApp flottant corrigé */
.whatsapp-float {
  position: fixed !important;
  right: 16px !important;
  bottom: 82px !important;
  z-index: 99998 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #25D366 !important;
  color: #ffffff !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  box-shadow: 0 14px 30px rgba(37,211,102,.28) !important;
}

.whatsapp-float img {
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
}

/* Règlement & conditions : texte plus lisible */
body:has(.single-column) .single-column,
.reglement-content,
.reglement,
main .single-column {
  font-size: 18px !important;
  line-height: 1.85 !important;
}

.single-column h2,
.reglement-content h2,
.reglement h2 {
  font-size: 28px !important;
  color: var(--v64-blue) !important;
  margin-top: 26px !important;
}

/* Fiche module : titre clair en haut */
.v64-module-hero {
  margin: 28px 0 !important;
  padding: 30px !important;
  border-radius: 28px !important;
  background: linear-gradient(135deg, var(--v64-soft-blue), var(--v64-soft-orange)) !important;
  border: 1px solid var(--v64-line) !important;
  text-align: center !important;
  box-shadow: 0 18px 42px rgba(17,24,39,.07) !important;
}

.v64-module-top-title {
  font-size: clamp(30px, 4vw, 52px) !important;
  line-height: 1.15 !important;
  margin: 10px 0 !important;
  color: var(--v64-black) !important;
}

/* Cartes : animation propre */
.catalog-card,
.module-v63,
.pack-v63,
.v64-card {
  transition: transform .22s ease, box-shadow .22s ease !important;
  text-decoration: none !important;
}

.catalog-card:hover,
.module-v63:hover,
.pack-v63:hover,
.v64-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 42px rgba(17,24,39,.11) !important;
  text-decoration: none !important;
}

.catalog-card *,
.module-v63 *,
.pack-v63 * {
  text-decoration: none !important;
}

/* Section paiement enregistrement */
.v64-payment-section .v64-card {
  background: #ffffff !important;
  border: 1px solid var(--v64-line) !important;
  border-radius: 24px !important;
  padding: 24px !important;
  box-shadow: 0 14px 34px rgba(17,24,39,.06) !important;
  text-align: center !important;
}

/* Mobile */
@media (max-width: 900px) {
  body {
    font-size: 16px !important;
  }

  .footer-grid {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .footer-whatsapp,
  .whatsapp-link {
    justify-content: center !important;
  }

  .payment-icons img {
    width: 105px !important;
    height: 60px !important;
  }

  .whatsapp-float {
    bottom: 70px !important;
  }

  .v64-module-hero {
    padding: 22px !important;
  }
}

/* 3 vidéos YouTube sur la même ligne, grandes et responsive */
.video-grid-3 {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
  margin-top: 24px;
}

.video-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  padding: 14px;
  box-shadow: 0 14px 34px rgba(17, 24, 39, .08);
}

.youtube-video {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 18px;
  overflow: hidden;
  background: #000;
}

.youtube-video iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.video-card .small {
  text-align: center;
  margin-top: 12px;
  font-weight: 700;
  color: #374151;
}

/* Sur tablette : 2 vidéos par ligne */
@media (max-width: 1100px) {
  .video-grid-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Sur mobile : 1 vidéo par ligne */
@media (max-width: 700px) {
  .video-grid-3 {
    grid-template-columns: 1fr;
  }

  .video-card {
    padding: 10px;
  }
}


/* ITTA v2.0 mobile-first conversion update */
.v63-brand small{font-size:12px;color:#2563eb;font-weight:700;display:block;line-height:1.1}.cohort-alert{background:linear-gradient(90deg,#0f172a,#2563eb);color:#fff;padding:14px 18px;border-radius:18px;text-align:center;font-size:18px;margin:12px 0 18px;box-shadow:0 10px 30px rgba(37,99,235,.22)}.countdown-card{margin-top:18px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:var(--shadow)}.countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;text-align:center}.countdown-grid span{background:#f8fafc;border-radius:14px;padding:12px}.countdown-grid b{font-size:28px;color:#1d4ed8;display:block}.countdown-grid small{font-size:12px;color:#475569}.linkedin-strip{background:#eef6ff;border:1px solid #bfdbfe;border-radius:18px;padding:20px;text-align:center;margin-top:18px}.linkedin-btn{background:#0a66c2!important;color:#fff!important}.mobile-priority .card{text-align:center}.old-price{text-decoration:line-through;color:#64748b;font-size:18px}.new-price{font-size:34px;font-weight:900;color:#15803d;margin:6px 0}.price-card-v2.featured{border:2px solid #2563eb}.payment-box .btn{margin:4px}.trust-line{margin-top:16px;background:#f8fafc;border-radius:12px;padding:12px}.vertical-steps{position:relative;display:grid;gap:14px}.vertical-steps>div{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px 16px 16px 64px;box-shadow:var(--shadow);position:relative}.vertical-steps span{position:absolute;left:16px;top:16px;background:#2563eb;color:#fff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-weight:800}.webinar-card-v2 .top-badge{background:#dcfce7;color:#166534}.trainer-card-v2 .feature-img img{width:105px;height:105px;border-radius:18px;object-fit:cover}.mobile-action-bar-v2{grid-template-columns:repeat(3,1fr)}@media(max-width:768px){body{padding-bottom:76px}.v63-menu a{font-size:18px;padding:12px}.hero-v63 .cta-row,.cta-row{display:grid;grid-template-columns:1fr;gap:10px}.cohort-alert{font-size:16px;position:sticky;top:0;z-index:20;border-radius:0;margin-left:-16px;margin-right:-16px}.countdown-grid{grid-template-columns:repeat(2,1fr)}.new-price{font-size:30px}.card-grid,.grid{gap:12px}.mobile-action-bar{height:64px}.mobile-action-bar a{font-size:13px}.whatsapp-float{bottom:78px}}


/* ITTA v2.1 mobile conversion updates */
.v63-brand small{display:block;font-size:.74rem;font-weight:700;color:#0b63ce;line-height:1.15;margin-top:2px;letter-spacing:.1px}
.hero-mobile-first{display:block;text-align:center;padding:34px 22px}
.hero-content-main{max-width:980px;margin:0 auto}
.hero-lead{font-size:1.08rem;max-width:760px;margin:10px auto 18px;color:#334155}
.hero-stats-inline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px auto;max-width:980px}
.hero-stats-inline span{background:#fff;border:1px solid #dbeafe;border-radius:16px;padding:12px 10px;box-shadow:0 8px 20px rgba(15,23,42,.06);font-weight:700;color:#0f172a}
.hero-cta-row{justify-content:center;margin-top:16px}
.countdown-card{margin:14px auto 18px;max-width:760px;text-align:center}
.payment-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
.payment-method{border:1px solid #dbeafe;border-radius:18px;background:#fff;padding:18px;box-shadow:0 10px 24px rgba(15,23,42,.07)}
.payment-method .btn{margin:6px 6px 0 0}
.payment-icon{font-size:2rem;margin-bottom:6px}
.cashplus-card{border-color:#b7f7c3;background:linear-gradient(180deg,#f0fff4,#fff)}
.paypal-card{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}
.bank-card{border-color:#e2e8f0;background:linear-gradient(180deg,#f8fafc,#fff)}
.btn.green{background:#16a34a;color:#fff;border-color:#16a34a}
@media(max-width:760px){.hero-stats-inline,.payment-method-grid{grid-template-columns:1fr}.hero-mobile-first{padding:24px 14px}.v63-brand small{font-size:.68rem}.hero-lead{font-size:1rem}.hero-stats-inline span{text-align:left}.payment-method .btn{display:block;width:100%;margin-top:8px}.countdown-card{margin:10px 0 16px}}


/* ITTA v2.2 corrections : payment layout, header buttons, dynamic cohort */
.span6{grid-column:span 6;}
.v63-menu .nav-btn{padding:9px 13px!important;border-radius:999px!important;font-weight:800!important;border:1px solid transparent!important;line-height:1.1;white-space:nowrap;text-align:center;box-shadow:0 6px 14px rgba(15,23,42,.08)}
.v63-menu .nav-whatsapp{background:#22c55e!important;color:#fff!important;}
.v63-menu .nav-linkedin{background:#0a66c2!important;color:#fff!important;}
.v63-menu .nav-register{background:#0b3f88!important;color:#fff!important;}
.payment-box-fixed{overflow:hidden;max-width:100%;}
.payment-box-fixed h2{text-align:center;margin-bottom:8px;}
.payment-intro{text-align:center;max-width:820px;margin:0 auto 18px;}
.fixed-payment-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;width:100%!important;}
.fixed-payment-grid .payment-method{min-width:0!important;width:auto!important;display:flex;flex-direction:column;gap:8px;overflow-wrap:anywhere;word-break:normal;}
.fixed-payment-grid .payment-method h3{margin:0;color:#0f172a;font-size:1.18rem;}
.fixed-payment-grid .payment-method p{margin:3px 0;line-height:1.45;}
.payment-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;}
.payment-actions .btn{margin:0!important;}
.cashplus-card{border-color:#86efac!important;background:linear-gradient(180deg,#f0fdf4,#ffffff)!important;}
.paypal-card{border-color:#bfdbfe!important;background:linear-gradient(180deg,#eff6ff,#ffffff)!important;}
.bank-card{border-color:#e2e8f0!important;background:linear-gradient(180deg,#f8fafc,#ffffff)!important;}
.top-marquee{margin:8px 0 14px;}
@media(max-width:980px){.fixed-payment-grid{grid-template-columns:1fr!important}.payment-actions{display:grid;grid-template-columns:1fr}.span6{grid-column:span 12}.v63-menu .nav-btn{width:min(92vw,420px)}}
@media(max-width:768px){.v63-menu .nav-btn{font-size:16px!important}.fixed-payment-grid .payment-method{padding:16px!important}.payment-box-fixed h2{font-size:1.7rem}.payment-icon{font-size:2.2rem}}


/* ITTA v2.3 : QR payment spaces, module filters, team join card */
.payment-grid-v23{align-items:stretch!important;}
.payment-grid-v23 .payment-method{min-height:100%;}
.qr-placeholder{border:2px dashed #bfdbfe;border-radius:18px;background:linear-gradient(180deg,#f8fbff,#eef6ff);min-height:128px;display:grid;place-items:center;text-align:center;padding:16px;margin:10px 0;color:#0f3b82;}
.qr-placeholder span{display:block;font-weight:900;font-size:1.05rem;}
.qr-placeholder small{display:block;color:#64748b;margin-top:4px;}
.receipt-global{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px;}
.module-filter-panel{margin:18px 0;padding:22px;}
.module-filter-panel h2{margin-top:0;color:#0f3b82;}
.module-filter-grid{display:grid;grid-template-columns:1fr 1.4fr auto;gap:14px;align-items:end;margin-top:14px;}
.module-filter-grid label{font-weight:800;color:#0f172a;display:grid;gap:8px;}
.module-filter-grid select,.module-filter-grid input{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:13px 14px;font:inherit;background:#fff;box-shadow:0 4px 14px rgba(15,23,42,.04);}
.module-filter-grid select:focus,.module-filter-grid input:focus{outline:2px solid #93c5fd;border-color:#2563eb;}
.catalog-card.is-hidden{display:none!important;}
.join-team-card{text-align:center;margin-top:18px;background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #bfdbfe;}
.join-team-card img{max-width:140px;width:100%;height:auto;margin-top:10px;border-radius:14px;}
@media(max-width:900px){.module-filter-grid{grid-template-columns:1fr}.receipt-global .btn{width:100%;}.qr-placeholder{min-height:112px}}


/* v2.4 refinements */
.trust-line{ text-align:center; display:block; max-width:980px; margin:18px auto 0; font-weight:700; }
.payment-method .payment-actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.nav-satisfaction{ background:#f59e0b!important; color:#fff!important; border-color:#f59e0b!important; }
.site-share-strip{ margin:24px auto 0; }
.site-share-card{ background:linear-gradient(135deg,#f8fbff,#eef6ff); border:1px solid #bfdbfe; border-radius:22px; padding:18px; display:flex; align-items:center; justify-content:space-between; gap:16px; box-shadow:0 12px 30px rgba(15,23,42,.08); }
.site-share-card h2{ margin:0 0 6px; color:#0f3b82; }
.site-share-actions{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.site-share-actions .btn{ margin:0; }
@media(max-width:900px){ .site-share-card{ display:block; text-align:center; } .site-share-actions{ justify-content:center; margin-top:12px; } .site-share-actions .btn{ width:100%; } }
@media(max-width:1100px){ .v63-menu{ gap:6px; } .nav-btn{ padding:9px 10px!important; font-size:13px!important; } }


/* V25 - Images cartes modules/parcours */
.module-v63 .module-icon-banner {
  height: 190px !important;
  background: linear-gradient(135deg,#ffffff 0%,#f8fbff 100%) !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px !important;
}
.module-v63 .module-icon-banner img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  transform: scale(1.42);
}
.pack-v63 .pack-image-banner {
  height: 185px !important;
  background: #ffffff !important;
}
.pack-v63 .pack-image-banner img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
@media (max-width: 768px) {
  .module-v63 .module-icon-banner { height: 175px !important; padding: 4px !important; }
  .pack-v63 .pack-image-banner { height: 160px !important; }
}


/* V26 - Icônes modules plus grandes + accueil */
.module-v63 .module-icon-banner{height:190px!important;padding:4px!important;overflow:hidden!important;}
.module-v63 .module-icon-banner img{width:112%!important;height:112%!important;object-fit:contain!important;transform:scale(1.48)!important;}
@media(max-width:768px){.module-v63 .module-icon-banner{height:178px!important;padding:2px!important}.module-v63 .module-icon-banner img{width:118%!important;height:118%!important;transform:scale(1.52)!important;}}


/* V27 - Images webinaires + zoom cartes packs */
.webinar-card-v2 .card-banner{
  height: 210px !important;
  overflow: hidden !important;
  background: #fff !important;
  border-radius: 18px 18px 0 0 !important;
}
.webinar-card-v2 .card-banner img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
  transition: transform .25s ease !important;
}
.webinar-card-v2:hover .card-banner img{
  transform: scale(1.14) !important;
}
.pack-v63 .pack-image-banner,
.parcours-card .pack-image-banner,
.index-packs .pack-image-banner,
.home-packs .pack-image-banner{
  height: 205px !important;
  overflow: hidden !important;
  background: #fff !important;
}
.pack-v63 .pack-image-banner img,
.parcours-card .pack-image-banner img,
.index-packs .pack-image-banner img,
.home-packs .pack-image-banner img{
  width: 115% !important;
  height: 115% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.18) !important;
  transform-origin: center center !important;
  transition: transform .25s ease !important;
}
.pack-v63:hover .pack-image-banner img,
.parcours-card:hover .pack-image-banner img{
  transform: scale(1.26) !important;
}
@media(max-width:768px){
  .webinar-card-v2 .card-banner{height:175px!important;}
  .pack-v63 .pack-image-banner,
  .parcours-card .pack-image-banner,
  .index-packs .pack-image-banner,
  .home-packs .pack-image-banner{height:180px!important;}
  .pack-v63 .pack-image-banner img,
  .parcours-card .pack-image-banner img,
  .index-packs .pack-image-banner img,
  .home-packs .pack-image-banner img{transform:scale(1.22)!important;}
}

/* V28 - Ajustement final zoom images cartes */
/* Modules : zoom plus fort sur les icônes */
.module-v63 .module-icon-banner{
  height: 205px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: linear-gradient(135deg,#ffffff 0%,#f8fbff 100%) !important;
}
.module-v63 .module-icon-banner img{
  width: 132% !important;
  height: 132% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(1.82) !important;
  transform-origin: center center !important;
}
.module-v63:hover .module-icon-banner img{
  transform: scale(1.92) !important;
}

/* Packs / parcours : dézoom pour voir l'image complète */
.pack-v63 .pack-image-banner,
.parcours-card .pack-image-banner,
.index-packs .pack-image-banner,
.home-packs .pack-image-banner{
  height: 205px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}
.pack-v63 .pack-image-banner img,
.parcours-card .pack-image-banner img,
.index-packs .pack-image-banner img,
.home-packs .pack-image-banner img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(1.00) !important;
  transform-origin: center center !important;
}
.pack-v63:hover .pack-image-banner img,
.parcours-card:hover .pack-image-banner img,
.index-packs .pack-image-banner:hover img,
.home-packs .pack-image-banner:hover img{
  transform: scale(1.04) !important;
}

/* Webinaires : image corrigée + dézoom léger pour éviter les découpes */
.webinar-card-v2 .card-banner{
  height: 205px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-radius: 18px 18px 0 0 !important;
}
.webinar-card-v2 .card-banner img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(0.96) !important;
  transform-origin: center center !important;
  transition: transform .25s ease !important;
}
.webinar-card-v2:hover .card-banner img{
  transform: scale(1.00) !important;
}

@media(max-width:768px){
  .module-v63 .module-icon-banner{height:190px!important;}
  .module-v63 .module-icon-banner img{width:138%!important;height:138%!important;transform:scale(1.78)!important;}
  .module-v63:hover .module-icon-banner img{transform:scale(1.86)!important;}

  .pack-v63 .pack-image-banner,
  .parcours-card .pack-image-banner,
  .index-packs .pack-image-banner,
  .home-packs .pack-image-banner{height:178px!important;}
  .pack-v63 .pack-image-banner img,
  .parcours-card .pack-image-banner img,
  .index-packs .pack-image-banner img,
  .home-packs .pack-image-banner img{transform:scale(1.00)!important;object-fit:contain!important;}

  .webinar-card-v2 .card-banner{height:178px!important;}
  .webinar-card-v2 .card-banner img{transform:scale(0.94)!important;object-fit:contain!important;}
}


/* ITTA36 – navigation, paiements et galerie */
.v63-menu .nav-register{white-space:nowrap}
.bank-reveal{margin-top:12px}
.bank-reveal .btn{margin:0 auto;display:inline-flex}
.bank-details{display:none;margin-top:14px;padding:16px;border:1px solid var(--border);border-radius:16px;background:#fff;text-align:left}
.bank-details.is-visible{display:block}
.bank-details p{margin:7px 0}
.bank-copy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.qr-upload-slot{min-height:146px;border:2px dashed #b7c9e9;border-radius:14px;background:#f8fbff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;margin:14px 0;padding:14px;color:#254772}
.qr-upload-slot .qr-file-icon{width:48px;height:48px;border-radius:12px;background:#e5efff;display:grid;place-items:center;font-size:25px}
.qr-upload-slot strong{font-size:.98rem}.qr-upload-slot small{color:#667085}
.payment-method-grid{align-items:stretch}.payment-method{min-width:0}.payment-method .payment-actions{margin-top:auto}
.trust-line{text-align:center;max-width:840px;margin:18px auto 0!important;padding:12px 14px;border-radius:12px;background:#f7faff}
.social-qr-mini{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;margin-top:4px}.social-qr-mini img{width:64px;height:64px;object-fit:contain;background:#fff;padding:3px;border-radius:8px}
.home-gallery{margin-top:28px}.gallery-grid-home{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-grid-home a{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:#fff;box-shadow:0 8px 24px rgba(27,54,93,.08)}.gallery-grid-home img{display:block;width:100%;height:185px;object-fit:cover;transition:transform .25s ease}.gallery-grid-home a:hover img{transform:scale(1.04)}.gallery-caption{padding:10px 12px;font-weight:700;color:#123c74;font-size:.92rem}
.video-social-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:18px;border-radius:16px;background:#f8fbff;border:1px solid var(--border)}
@media(max-width:800px){.gallery-grid-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-grid-home img{height:130px}.video-social-card{flex-direction:column;align-items:flex-start}.v63-menu .nav-register{margin-top:4px}}


/* ITTA v3.1 — catalogue filtré par les 3 parcours */
#modulesGrid .catalog-card.is-hidden{display:none!important;}
.module-filter-panel .module-filter-grid{align-items:end;}



/* ITTA v3.0.2 — menu règlement, paiement et photo Said GAHI */
.payment-methods-summary{margin:18px auto 0;padding:18px 20px;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fff8ed);text-align:center;max-width:900px;box-shadow:0 8px 22px rgba(15,23,42,.06)}
.payment-methods-summary strong{display:block;font-size:18px;color:#0f3f86;margin-bottom:12px}
.payment-methods-chips{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.payment-chip{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #dbeafe;font-weight:800;color:#1e3a5f;box-shadow:0 3px 10px rgba(15,23,42,.05)}
.trainer-card-v2 .feature-img img, .feature-row .feature-img img[src*="Said%20GAHI"], .feature-row .feature-img img[src*="Said GAHI"]{object-position:center top}
@media(max-width:768px){.payment-methods-summary{padding:16px 12px}.payment-chip{width:100%;justify-content:center}.v63-menu a[href="reglement.html"]{display:block!important}}


/* ITTA custom updates - July 2026 */
.nav-register-first{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important;order:-1;box-shadow:0 8px 18px rgba(22,163,74,.25)}
.demand-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));}
.demand-card{text-decoration:none;color:inherit;text-align:center;padding:22px;transition:.2s ease;}
.demand-card:hover{transform:translateY(-4px)}
.demand-icon{display:block;font-size:2rem;margin-bottom:8px}.section-intro{color:#64748b;max-width:760px}.currency-list{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 15px}.currency-list span{background:#f1f5f9;border-radius:999px;padding:8px 12px;font-weight:700}.pricing-choice .big-btn{width:100%;justify-content:center;margin-top:12px}.module-filter-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end}.module-sequence-nav{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:22px 0}.module-sequence-nav .btn{flex:1;text-align:center;justify-content:center;min-width:180px}

/* Homepage demanded modules using catalog cards */
#homeDemandModulesGrid .catalog-card{height:100%;}
.pricing-reglement-cta{margin-top:24px;}


/* ITTA July update — requested refinements */
.module-detail-card h2,
#moduleDetail .card h2{
  font-size: clamp(1.05rem, 1.6vw, 1.32rem) !important;
  line-height: 1.25 !important;
  margin-bottom: 10px !important;
}
.tool-logo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  margin-top:10px;
}
.tool-logo-chip{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.85));
  box-shadow:0 8px 20px rgba(15,23,42,.06);
  font-size:13px;
  font-weight:700;
}
.tool-logo-chip img{width:30px;height:30px;object-fit:contain;flex:0 0 30px;}
.module-arrow{font-size:22px!important;line-height:1!important;min-width:52px;text-align:center;border-radius:999px!important;}
.packs-horizontal-grid{display:flex;flex-direction:column;gap:18px;}
.pack-line-card{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:center;overflow:hidden;}
.pack-line-card.featured{border:2px solid rgba(20,83,45,.22);box-shadow:0 20px 45px rgba(20,83,45,.12);}
.pack-line-img img{width:100%;height:190px;object-fit:cover;border-radius:22px;display:block;}
.pack-line-body h3{font-size:clamp(1.35rem,2vw,1.85rem);margin:8px 0;}
.pack-price{font-size:1.25rem;line-height:1.7;}
.pack-price b{font-size:1.35rem;color:#0f766e;}
.pricing-grid-v2{align-items:stretch;}
.pricing-choice h3{font-size:1.35rem;margin:8px 0;}
.currency-note{text-align:center;margin-top:12px;}
.trainer-grid-clean .trainer-card-clean .trainer-clean-row{grid-template-columns:150px 1fr!important;align-items:flex-start;}
.trainer-clean-img{width:150px!important;height:190px!important;border-radius:20px;overflow:hidden;}
.trainer-module-list{margin-top:4px;}
@media(max-width:850px){.pack-line-card{grid-template-columns:1fr}.pack-line-img img{height:auto}.trainer-grid-clean .trainer-card-clean .trainer-clean-row{grid-template-columns:1fr!important}.trainer-clean-img{margin:auto}}


/* ITTA final corrections 2 — inscription, badges outils, équipe */
.module-arrow-next{background:#fff!important;color:#0f3f86!important;border:1px solid #d8e3f4!important;box-shadow:0 8px 20px rgba(15,23,42,.08)!important;}
.tool-logo-grid{display:none!important;}
.tool-chip-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
.tool-text-chip{display:inline-flex;align-items:center;padding:9px 13px;border-radius:999px;background:#f8fbff;border:1px solid #dbeafe;color:#143b70;font-weight:800;font-size:.9rem;}
.registration-layout{align-items:start;}.registration-card{overflow:visible}.registration-form label{display:flex;flex-direction:column;gap:7px;font-weight:800;color:#173b63}.registration-form input,.registration-form select,.registration-form textarea{width:100%;border:1px solid #dbe3ef;border-radius:13px;padding:12px 13px;background:#fff;font:inherit;color:#0f172a}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.module-checkbox-area{margin:18px 0;padding:16px;border-radius:18px;background:#f8fbff;border:1px solid #dbeafe}.module-check-group{margin:14px 0}.module-check-group h4{margin:0 0 10px;color:#123c74}.module-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px;padding:10px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;font-weight:700!important;cursor:pointer}.module-check input{width:auto!important;margin-top:3px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.form-status{min-height:22px;color:#0f766e;font-weight:800}.registration-summary-card{position:sticky;top:92px}.dynamic-price-summary{padding:16px;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fff8ed);border:1px solid #dbeafe;margin:14px 0}.summary-price span{display:block;color:#64748b;font-weight:800}.summary-price b{display:block;font-size:clamp(1.55rem,3vw,2.25rem);color:#0f766e;margin:6px 0}.summary-currencies{display:flex;flex-wrap:wrap;gap:8px}.summary-currencies span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:7px 10px;font-weight:800;font-size:.82rem}.paypal-single-btn{width:100%;justify-content:center}.paypal-single-btn.disabled{opacity:.55;pointer-events:none}.apps-script-info code{background:#eef6ff;border:1px solid #dbeafe;border-radius:6px;padding:2px 6px}.price-card-v2 .currency-list span{font-size:.82rem}.price-card-v2 .new-price s{font-size:.92rem;color:#64748b}.price-card-v2 .new-price b{font-size:clamp(1.35rem,2.2vw,1.75rem)}
.trainer-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.trainer-profile-card{background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:0 12px 30px rgba(15,23,42,.08);padding:18px;display:grid;grid-template-columns:140px 1fr;gap:18px;align-items:start;transition:.2s ease}.trainer-profile-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(15,23,42,.12)}.trainer-photo-wrap{width:140px;height:170px;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #dbeafe}.trainer-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center top}.trainer-info h3{margin:8px 0 6px;color:#123c74}.trainer-info p{margin:8px 0}.trainer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.team-hero{background:linear-gradient(135deg,#f8fbff,#fff8ed);}.team-intro-card img{border-radius:16px;background:#fff;padding:6px;border:1px solid #e2e8f0}
@media(max-width:900px){.form-grid,.module-check-grid,.trainer-profile-grid{grid-template-columns:1fr}.registration-summary-card{position:static}.trainer-profile-card{grid-template-columns:1fr}.trainer-photo-wrap{margin:auto;width:170px;height:190px}}


/* ITTA latest requested corrections */
.v63-menu .nav-register-first,
.v63-menu .nav-register{
  background:#2563eb!important;
  color:#fff!important;
  border-color:#2563eb!important;
  box-shadow:0 8px 18px rgba(37,99,235,.25)!important;
}
.official-certs-section{
  background:linear-gradient(135deg,#f8fbff,#ffffff);
  border:1px solid #dbeafe;
  border-radius:24px;
  padding:26px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.section-headline{text-align:center;max-width:850px;margin:0 auto 18px;}
.cert-logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0;}
.cert-prep-card{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:18px;background:#fff;border:1px solid #dbeafe;box-shadow:0 10px 24px rgba(15,23,42,.06);color:#0f172a;text-align:center;}
.cert-prep-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 16px 34px rgba(37,99,235,.14)}
.cert-prep-card b{font-size:18px;color:#0b3f88}.cert-prep-card span{font-size:13px;color:#475569;font-weight:700}
.registration-summary-card h2:empty{display:none}.payment-method.paypal-card .payment-actions{display:none!important;}
.price-card-v2 .new-price{font-size:21px;line-height:1.35}.price-card-v2 .new-price b{font-size:30px;color:#15803d}.price-card-v2 .new-price s{font-size:15px;color:#64748b}.currency-list span,.summary-currencies span{font-size:12px;}
.trainer-profile-grid-large{grid-template-columns:1fr!important;}
.trainer-profile-card-large{grid-template-columns:230px 1fr!important;align-items:stretch!important;padding:20px!important;}
.trainer-photo-wrap-large{width:230px!important;height:260px!important;border-radius:24px!important;}
.trainer-photo-wrap-large img{object-fit:cover!important;object-position:center top!important;}
.trainer-info h3{font-size:1.35rem!important;}
@media(max-width:900px){.cert-logo-grid{grid-template-columns:1fr}.trainer-profile-card-large{grid-template-columns:1fr!important}.trainer-photo-wrap-large{width:min(240px,80vw)!important;height:280px!important;margin:auto}.trainer-info{text-align:center}.trainer-module-list{text-align:left;display:inline-block}}


/* ITTA correction finale demandée */
.hero-cta-row .btn.green,
.btn.green.blink-register{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important;box-shadow:0 10px 22px rgba(22,163,74,.25)}
.v63-menu .nav-register-first,.v63-menu .nav-register{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important;}
@media(max-width:768px){
  .whatsapp-float{right:12px;bottom:86px;padding:9px 11px;font-size:0;border-radius:50%;width:52px;height:52px;justify-content:center;box-shadow:0 12px 28px rgba(37,211,102,.35)}
  .whatsapp-float img{width:29px;height:29px;margin:0!important}
  .mobile-action-bar{height:62px;grid-template-columns:repeat(3,1fr)}
  .mobile-action-bar a{font-size:12px;line-height:1.15;display:flex;align-items:center;justify-content:center;padding:9px 6px}
}
.two-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.registration-card-one-col{max-width:920px;margin:0 auto;}
.form-grid-one{grid-template-columns:1fr!important;}
.check-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;margin:12px 0;font-weight:800!important}
.check-consent input{width:auto!important;margin-top:4px}.check-consent span{font-weight:700;color:#173b63}
.parcours-module-picker .module-check-grid{display:none}.parcours-module-picker .module-check-group.is-open .module-check-grid{display:grid}
.pathway-toggle{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 15px;border-radius:16px;border:1px solid #bfdbfe;background:linear-gradient(135deg,#eef6ff,#fff);color:#123c74;font-weight:900;cursor:pointer;text-align:left}.pathway-toggle b{font-size:.85rem;color:#2563eb}.module-check-group.is-open .pathway-toggle{background:linear-gradient(135deg,#dbeafe,#fff);border-color:#60a5fa}
.payment-price-inline{margin:12px 0;padding:12px;border-radius:16px;background:#f8fbff;border:1px solid #dbeafe}.payment-price-inline .summary-price b{font-size:1.55rem;color:#0f766e}.payment-confirm-note{margin-top:16px;background:#f8fafc;border-radius:14px;padding:12px;border:1px solid #e2e8f0}
.cash-details,.bank-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:14px;margin-top:12px}.paypal-single-btn.disabled{opacity:.55;pointer-events:none}
/* Page équipe */
.trainer-profile-grid-large{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}.trainer-profile-card-large{grid-template-columns:180px 1fr!important;align-items:start!important;padding:18px!important;border-radius:26px!important}.trainer-photo-wrap-large{width:180px!important;height:230px!important;border-radius:24px!important;border:3px solid #dbeafe!important;box-shadow:0 10px 24px rgba(15,23,42,.12)!important;background:#fff!important}.trainer-photo-wrap-large img{object-fit:cover!important;object-position:center top!important}.trainer-apply-qr img{border-radius:18px;background:#fff;padding:8px;border:1px solid #e2e8f0;box-shadow:0 10px 24px rgba(15,23,42,.10)}.trainer-socials .linkedin-btn{background:#0a66c2!important;color:#fff!important;border-color:#0a66c2!important}
@media(max-width:1000px){.trainer-profile-grid-large{grid-template-columns:1fr!important}.trainer-profile-card-large{grid-template-columns:170px 1fr!important}.two-price-grid{grid-template-columns:1fr!important}}
@media(max-width:700px){.trainer-profile-card-large{grid-template-columns:1fr!important;text-align:center}.trainer-photo-wrap-large{width:min(240px,82vw)!important;height:280px!important;margin:auto}.trainer-module-list{text-align:left;display:inline-block}.module-check-grid{grid-template-columns:1fr!important}}


/* ITTA final user corrections */
.same-line-price-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;}
.same-line-price-grid>.span6{grid-column:auto!important;width:100%!important;}
@media(max-width:760px){.same-line-price-grid{grid-template-columns:1fr!important;}}
.recommend-pack{margin-top:10px;padding:10px 12px;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;border-radius:12px;font-weight:800;}
.warn-text{color:#b45309!important;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:8px 10px;}
.cash-details[hidden],.bank-details[hidden]{display:none!important;}
.trainer-hero-qr{margin:16px auto 0;display:flex;justify-content:center;align-items:center;}
.trainer-hero-qr img{width:150px;max-width:45vw;border:10px solid #fff;border-radius:18px;box-shadow:0 16px 42px rgba(15,23,42,.16);background:#fff;}
.trainer-profile-grid-large{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.trainer-photo-wrap-large{min-height:250px!important;}
.trainer-photo-wrap-large img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px!important;}
@media(max-width:900px){.trainer-profile-grid-large{grid-template-columns:1fr!important;}.trainer-photo-wrap-large{min-height:220px!important;}}

/* ITTA - 3 cartes de prix sur la même ligne */
.three-price-grid .price-card-v2{height:100%;}
@media (min-width: 901px){
  .three-price-grid.same-line-price-grid{grid-template-columns:repeat(12,1fr)!important;}
  .three-price-grid.same-line-price-grid .span4{grid-column:span 4!important;}
}
@media (max-width: 900px){
  .three-price-grid.same-line-price-grid .span4{grid-column:span 12!important;}
}

/* ITTA final patch - masquer les prix dans les cartes modules et clarifier les modules formateurs */
.catalog-card .price-stack,
.catalog-card .price-line,
.catalog-card .pricing-left,
.module-card .price-stack,
.module-card .price-line,
.module-card .pricing-left,
.module-v63 .price-stack,
.module-v63 .price-line,
.module-v63 .pricing-left {
  display: none !important;
}
.trainer-module-heading{margin-top:12px!important;margin-bottom:8px!important;}
.trainer-module-coded-list{display:grid;gap:8px;margin-top:8px!important;}
.trainer-module-coded-list li{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:8px 10px;
  border:1px solid rgba(37,99,235,.16);
  border-radius:12px;
  background:#f8fbff;
  line-height:1.35;
}
.module-code-chip{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:78px;
  padding:3px 8px;
  border-radius:999px;
  background:#e0f2fe;
  color:#075985;
  font-weight:900;
  font-size:12px;
  border:1px solid #bae6fd;
}
.module-title-text{font-weight:800;color:#0f172a;}
@media(max-width:700px){
  .trainer-module-coded-list li{flex-direction:column;gap:5px;}
  .module-code-chip{min-width:auto;}
}


/* Corrections demandées — juillet 2026 */
@media (max-width: 768px){
  .mobile-action-bar{grid-template-columns:1fr 1fr !important;}
  .mobile-action-bar a:nth-child(n+3){display:none !important;}
  .whatsapp-float{display:none !important;}
  #moduleNav, #moduleSequenceNav{display:flex !important;align-items:center;justify-content:center;gap:6px;flex-wrap:nowrap;margin-top:12px;}
  #moduleNav .btn, #moduleSequenceNav .btn{font-size:12px !important;padding:8px 9px !important;white-space:nowrap;}
  #moduleNav .module-arrow, #moduleSequenceNav .module-arrow{min-width:34px;width:34px;height:34px;padding:0 !important;display:inline-flex;align-items:center;justify-content:center;font-size:18px !important;}
}
.parcours-module-picker .module-check-grid{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
.parcours-module-picker .module-check{display:flex;align-items:center;gap:9px;width:100%;}
.form-actions-center{display:flex;justify-content:center;align-items:center;text-align:center;margin-top:18px;}
.registration-form input:not([type="checkbox"]), .registration-form select{background:#fff;}
.receipt-global .btn{color:#fff !important;}
.module-detail-card h2{font-size:clamp(1.05rem, 1.6vw, 1.35rem) !important;}


/* Home pedagogical team carousel */
.home-team-orbit{
  overflow:hidden;
  background:linear-gradient(135deg,#eff6ff 0%,#ffffff 55%,#ecfdf5 100%);
  border:1px solid var(--border, #e2e8f0);
  border-radius:24px;
  padding:24px 18px;
}
.home-team-orbit .section-headline{text-align:center;max-width:820px;margin:0 auto 18px;}
.team-orbit{overflow:hidden;position:relative;padding:8px 0 18px;}
.team-orbit:before,.team-orbit:after{content:"";position:absolute;top:0;bottom:0;width:70px;z-index:2;pointer-events:none;}
.team-orbit:before{left:0;background:linear-gradient(90deg,#eff6ff,rgba(239,246,255,0));}
.team-orbit:after{right:0;background:linear-gradient(270deg,#ecfdf5,rgba(236,253,245,0));}
.team-orbit-track{display:flex;gap:22px;width:max-content;animation:teamOrbitLeft 38s linear infinite;}
.team-orbit:hover .team-orbit-track{animation-play-state:paused;}
.team-orbit-card{width:168px;flex:0 0 168px;text-align:center;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:22px;padding:16px 12px;box-shadow:0 12px 30px rgba(15,23,42,.08);}
.team-orbit-card img{width:104px;height:104px;border-radius:999px;object-fit:cover;border:4px solid #dcfce7;box-shadow:0 8px 24px rgba(21,128,61,.18);background:#fff;display:block;margin:0 auto 10px;}
.team-orbit-card strong{display:block;font-size:13px;line-height:1.25;color:#0f172a;min-height:34px;}
.team-orbit-card span{display:block;margin-top:6px;font-size:12px;line-height:1.25;color:#475569;}
@keyframes teamOrbitLeft{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(max-width:768px){.team-orbit-card{width:148px;flex-basis:148px;padding:14px 10px}.team-orbit-card img{width:88px;height:88px}.team-orbit-track{gap:14px;animation-duration:32s}.team-orbit:before,.team-orbit:after{width:36px}}

/* Update: trainer/professor images in circular/elliptical frames */
.trainer-photo-wrap,
.trainer-photo-wrap-large,
.trainer-clean-img,
.trainer-card img,
.trainer-card-v2 .feature-img img,
.team-intro-card img{
  border-radius:50% !important;
}

.trainer-photo-wrap{
  width:160px !important;
  height:160px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  border:3px solid #dbeafe !important;
  box-shadow:0 12px 30px rgba(37,99,235,.12) !important;
  background:#fff !important;
}
.trainer-photo-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
  border-radius:50% !important;
}
.trainer-photo-wrap-large{
  width:190px !important;
  min-width:190px !important;
  height:190px !important;
  min-height:190px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  border:4px solid #dbeafe !important;
  box-shadow:0 14px 34px rgba(15,23,42,.14) !important;
  background:#fff !important;
  align-self:flex-start !important;
}
.trainer-photo-wrap-large img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
  border-radius:50% !important;
}
.trainer-clean-img{
  width:170px !important;
  height:170px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  border:3px solid #dbeafe !important;
  background:#fff !important;
}
.trainer-card img,
.trainer-card-v2 .feature-img img,
.team-intro-card img{
  border:3px solid #dbeafe;
  box-shadow:0 10px 24px rgba(15,23,42,.10);
  object-fit:cover;
  object-position:center top;
}
@media(max-width:900px){
  .trainer-photo-wrap-large{
    width:180px !important;
    height:180px !important;
    min-height:180px !important;
    margin:auto !important;
  }
  .trainer-photo-wrap{
    width:150px !important;
    height:150px !important;
    margin:auto !important;
  }
  .trainer-clean-img{
    width:150px !important;
    height:150px !important;
    margin:auto !important;
  }
}


/* Home team rendered images: safe circular carousel */
.home-team-orbit .team-orbit-card img{
  display:block!important;
  width:108px!important;
  height:108px!important;
  min-width:108px!important;
  min-height:108px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:center top!important;
  margin:0 auto 10px!important;
  background:#fff!important;
}
.home-team-orbit .team-orbit-card{
  min-height:210px!important;
}
@media(max-width:768px){
  .home-team-orbit .team-orbit-card img{
    width:92px!important;
    height:92px!important;
    min-width:92px!important;
    min-height:92px!important;
  }
}


/* ITTA update July 2026: index, gallery, packs and payment */
.hero-stats-inline{justify-content:center!important;text-align:center!important;align-items:stretch!important;}
.hero-stats-inline span{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
.btn.white,.catalogue-white-btn{background:#fff!important;color:#123c74!important;border:1px solid #dbeafe!important;box-shadow:0 8px 20px rgba(15,23,42,.08)!important;}
.discount-follow-card,.discount-whatsapp-strip{margin-top:18px;text-align:center;background:linear-gradient(135deg,#ecfdf5,#eff6ff)!important;border:1px solid #bfdbfe!important;border-radius:22px!important;padding:20px!important;}
.discount-follow-card .cta-row,.discount-whatsapp-strip .cta-row{justify-content:center!important;}
.module-check-title{margin:0 0 10px;color:#123c74;font-size:1rem;}
.module-check-group.is-open .module-check-grid{display:grid!important;}
.module-check-grid-visible{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
.module-check{width:100%;}
.form-actions-center .btn[type="submit"],#ittaRegistrationForm button[type="submit"]{min-width:min(420px,100%)!important;font-size:1.08rem!important;padding:16px 34px!important;}
@media(max-width:800px){.gallery-grid-home{grid-template-columns:1fr!important;}.gallery-grid-home img{height:auto!important;min-height:180px;}.hero-stats-inline{grid-template-columns:1fr 1fr!important;}}
@media(max-width:520px){.hero-stats-inline{grid-template-columns:1fr!important;}.discount-follow-card .cta-row,.discount-whatsapp-strip .cta-row{display:grid!important;grid-template-columns:1fr!important;}}

/* Gallery full mobile one column */
@media(max-width:800px){.gallery-grid,.gallery-grid-full{grid-template-columns:1fr!important}.gallery-grid img,.gallery-grid-full img{height:auto!important}}

/* 2026-07 homepage/gallery/payment updates */
.hero-stats-centered{justify-content:center!important;align-items:stretch!important;max-width:920px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}
.hero-stats-centered span{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:4px!important;min-height:88px!important;text-align:center!important}
.hero-stats-centered span b{font-size:1.15rem}.hero-stats-centered span small{font-size:.92rem;color:#36506f;font-weight:700}
.gallery-grid-nine{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-grid-nine a{height:100%}.gallery-grid-nine img{height:220px;object-fit:cover}.section-head .btn.secondary{white-space:nowrap}.youtube-highlight-card{margin-top:18px}.paypal-pack-select{display:flex;flex-direction:column;gap:8px;font-weight:800;color:#123c74;text-align:left;margin:14px 0}.paypal-pack-select select{border:1px solid #dbe3ef;border-radius:12px;padding:12px;background:#fff;font:inherit}.paypal-single-btn{max-width:100%}.pricing-choice{height:100%}.trainer-profile-card-large .trainer-module-coded-list li{margin-bottom:6px}@media(max-width:800px){.gallery-grid-nine{grid-template-columns:1fr!important}.gallery-grid-nine img{height:auto!important;min-height:180px}.hero-stats-centered{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:520px){.hero-stats-centered{grid-template-columns:1fr!important}}


/* second pass premium improvements */
.gallery-grid-nine a{position:relative;overflow:hidden;border:1px solid rgba(148,163,184,.28)!important;box-shadow:0 16px 36px rgba(15,23,42,.10)!important;transform:translateY(0);transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease}
.gallery-grid-nine a:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(15,23,42,.16)!important;border-color:#93c5fd!important}
.gallery-grid-nine img{height:220px;object-fit:cover;filter:saturate(1.05) contrast(1.02)}
.gallery-caption{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);font-size:.95rem;letter-spacing:.01em}
#home-gallery .section-head h2,#sessions-gallery .section-head h2{margin-bottom:8px}
.youtube-highlight-card{background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #dbeafe;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.youtube-highlight-card .btn.primary{box-shadow:0 10px 24px rgba(37,99,235,.25)}
.team-hero-modern .trainer-hero-highlights{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:18px 0 10px}
.team-hero-modern .trainer-hero-highlights span{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #dbeafe;box-shadow:0 8px 18px rgba(15,23,42,.06);font-weight:700;color:#123c74}
.trainer-profile-grid-large{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.trainer-profile-card-large{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid rgba(148,163,184,.26)!important;border-radius:24px!important;box-shadow:0 16px 34px rgba(15,23,42,.08)!important;padding:18px;display:grid;grid-template-columns:160px 1fr;align-items:start;gap:18px;transition:transform .25s ease, box-shadow .25s ease}
.trainer-profile-card-large:hover{transform:translateY(-5px);box-shadow:0 22px 42px rgba(15,23,42,.12)!important}
.trainer-photo-wrap-large{width:160px!important;height:160px!important;border-radius:50%!important;overflow:hidden;border:5px solid #fff;box-shadow:0 10px 26px rgba(37,99,235,.16)!important;margin:0 auto}
.trainer-photo-wrap-large img{width:100%;height:100%;object-fit:cover}
.trainer-info h3{margin:4px 0 10px;font-size:1.28rem;color:#0f172a}
.trainer-info p{margin-bottom:10px}
.trainer-module-coded-list{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:10px 0 14px}
.trainer-module-coded-list li{list-style:none;padding:8px 12px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#123c74;font-weight:700;font-size:.9rem;margin:0!important}
.trainer-socials{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:980px){.trainer-profile-grid-large{grid-template-columns:1fr}.trainer-profile-card-large{grid-template-columns:130px 1fr}.trainer-photo-wrap-large{width:130px!important;height:130px!important}}
@media(max-width:640px){.trainer-profile-card-large{grid-template-columns:1fr;text-align:center}.trainer-socials,.trainer-module-coded-list{justify-content:center}.team-hero-modern .trainer-hero-highlights{justify-content:center}.gallery-grid-nine img{height:200px}}


/* 3e passe — premium institutionnel, académique et conversion */
.home-premium-proof{margin-top:18px}
.premium-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.premium-proof-grid article{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  border:1px solid #dbeafe;
  border-radius:22px;
  padding:18px;
  box-shadow:0 14px 34px rgba(15,23,42,.08);
  text-align:center;
}
.premium-proof-grid article span{font-size:2rem;display:block;margin-bottom:8px}
.premium-proof-grid article h3{margin:6px 0;color:#123c74}
.premium-proof-grid article p{font-size:.94rem;color:#475569;margin:0}
.academic-conversion-card{
  display:grid;
  grid-template-columns:1.5fr .8fr;
  gap:22px;
  align-items:stretch;
  background:linear-gradient(135deg,#0f172a,#1d4ed8);
  color:#fff;
  border-radius:30px;
  padding:28px;
  box-shadow:0 24px 60px rgba(15,23,42,.18);
  overflow:hidden;
  position:relative;
}
.academic-conversion-card:before{
  content:"";
  position:absolute;
  width:280px;height:280px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  right:-90px;top:-100px;
}
.academic-conversion-card h2{color:#fff;margin:10px 0}
.academic-conversion-card p{color:#e0f2fe}
.academic-conversion-card .top-badge{background:#dcfce7;color:#166534}
.academic-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.academic-points span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:9px 12px;border-radius:999px;font-weight:700}
.academic-cta-box{
  position:relative;
  z-index:1;
  background:#fff;
  color:#0f172a;
  border-radius:24px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  box-shadow:0 16px 36px rgba(0,0,0,.18);
}
.academic-cta-box p{color:#475569}
.academic-cta-box .btn{width:100%;justify-content:center}
#home-gallery .section-head,#sessions-gallery .section-head{
  background:linear-gradient(135deg,#f8fbff,#ffffff);
  border:1px solid #dbeafe;
  border-radius:24px;
  padding:18px;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
  margin-bottom:18px;
}
#home-gallery .section-head h2,#sessions-gallery .section-head h2{
  color:#0f3b74;
  font-size:clamp(1.6rem,3vw,2.25rem);
}
.gallery-grid-nine{
  counter-reset:galleryCounter;
}
.gallery-grid-nine a:before{
  counter-increment:galleryCounter;
  content:"0" counter(galleryCounter);
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  background:rgba(15,23,42,.82);
  color:#fff;
  border-radius:999px;
  padding:6px 10px;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.04em;
}
.gallery-grid-nine a:nth-child(n+10):before{content:counter(galleryCounter)}
.paypal-info-note{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#123c74!important;
  font-weight:700;
}
.team-method-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.team-method-grid article{
  background:#fff;
  border:1px solid #dbeafe;
  border-radius:22px;
  padding:18px;
  box-shadow:0 12px 28px rgba(15,23,42,.07);
}
.team-method-grid article span{
  display:inline-grid;
  place-items:center;
  width:42px;height:42px;
  border-radius:50%;
  background:#1d4ed8;
  color:#fff;
  font-weight:900;
  margin-bottom:10px;
}
.team-method-grid article h3{margin:4px 0 8px;color:#123c74}
.team-method-grid article p{color:#475569;margin:0}
@media(max-width:980px){
  .premium-proof-grid,.team-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .academic-conversion-card{grid-template-columns:1fr}
}
@media(max-width:620px){
  .premium-proof-grid,.team-method-grid{grid-template-columns:1fr}
  .academic-conversion-card{padding:20px;border-radius:22px}
}





/* FORCE ABSOLUE : 5 cartes prix sur la même ligne */
.pricing-section-v2{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
.pricing-section-v2 .pricing-grid-five,
section.pricing-section-v2 .pricing-grid-five,
.pricing-grid-five{
  display:grid!important;
  grid-template-columns:repeat(5, 1fr)!important;
  grid-auto-flow:column!important;
  grid-auto-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  align-items:stretch!important;
}
.pricing-section-v2 .pricing-grid-five > .card,
.pricing-section-v2 .pricing-grid-five > article,
.pricing-grid-five > .price-card-v2{
  grid-column:auto!important;
  grid-row:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.pricing-section-v2 .pricing-grid-five .span4{
  grid-column:auto!important;
}
.pricing-section-v2 .price-card-v2{
  padding:14px 10px!important;
  border-radius:18px!important;
  height:100%!important;
  text-align:center!important;
}
.pricing-section-v2 .price-card-v2 h3{
  font-size:1rem!important;
  line-height:1.15!important;
  margin:8px 0!important;
}
.pricing-section-v2 .price-card-v2 .new-price{
  margin:8px 0!important;
}
.pricing-section-v2 .price-card-v2 .new-price b{
  font-size:1.12rem!important;
  line-height:1.15!important;
}
.pricing-section-v2 .price-card-v2 .new-price s{
  font-size:.78rem!important;
}
.pricing-section-v2 .price-card-v2 p{
  font-size:.82rem!important;
  line-height:1.35!important;
}
.pricing-section-v2 .price-card-v2 .top-badge{
  font-size:.72rem!important;
  padding:5px 8px!important;
}
.pricing-section-v2 .currency-list{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.pricing-section-v2 .currency-list span{
  font-size:.72rem!important;
  padding:5px 7px!important;
}

/* Garder 5 cartes même sur tablette / petit écran desktop */
@media(max-width:1200px){
  .pricing-section-v2 .pricing-grid-five,
  section.pricing-section-v2 .pricing-grid-five,
  .pricing-grid-five{
    grid-template-columns:repeat(5, 1fr)!important;
  }
}

/* Sur mobile très petit : garder la même ligne avec scroll horizontal */
@media(max-width:760px){
  .pricing-section-v2{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:8px!important;
  }
  .pricing-section-v2 .pricing-grid-five,
  section.pricing-section-v2 .pricing-grid-five,
  .pricing-grid-five{
    display:grid!important;
    grid-template-columns:repeat(5, 150px)!important;
    min-width:790px!important;
    width:max-content!important;
  }
}


/* ITTA 2026-08 — parcours 6 modules, formulaire séparé et tarifs défilants */
.nav-payment{background:#0f4c81!important;color:#fff!important;border-color:#0f4c81!important;}
.payment-pricing-only{min-height:68vh;display:flex;align-items:center;}
.payment-pricing-only .pricing-section-v2{width:100%;overflow:hidden;}
.pricing-marquee{overflow:hidden;padding:12px 0 22px;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);}
.pricing-track{display:flex;gap:18px;width:max-content;animation:pricing-scroll-rtl 42s linear infinite;will-change:transform;}
.pricing-marquee:hover .pricing-track,.pricing-marquee:focus-within .pricing-track{animation-play-state:paused;}
.pricing-track .price-card-v2{width:min(330px,82vw);flex:0 0 auto;display:flex;flex-direction:column;}
.pricing-track .price-card-v2 .btn{margin-top:auto;}
@keyframes pricing-scroll-rtl{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}
@media (prefers-reduced-motion:reduce){.pricing-track{animation:none;}.pricing-marquee{overflow-x:auto;mask-image:none;-webkit-mask-image:none;}}
@media(max-width:760px){.pricing-track{animation-duration:34s}.payment-pricing-only{align-items:flex-start}.nav-payment{margin-top:4px}}


/* ITTA update 2026-08-03 v2 */
.span12{grid-column:span 12;}
.payment-after-registration{margin-top:20px;padding-top:18px;border-top:1px solid var(--border);text-align:center;}
.payment-after-registration p{margin:0 0 12px;}
.payment-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;counter-reset:payment-step;}
.payment-step{position:relative;padding:20px 18px 18px 64px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow);}
.payment-step::before{counter-increment:payment-step;content:counter(payment-step);position:absolute;left:18px;top:18px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#2563eb;color:#fff;font-weight:900;}
.payment-step h3{margin:0 0 6px;}
.payment-step p{margin:0;}
@media(max-width:900px){.payment-steps{grid-template-columns:1fr;}}

.payment-page{display:block;min-height:68vh;}
.payment-page>.section{width:100%;}
.bank-details:not([hidden]),.cash-details:not([hidden]){display:block!important;}

/* V4 — promotion dynamique et téléphone international */
.promotion-period-banner{
  margin:16px auto 0;
  padding:12px 16px;
  border-radius:14px;
  text-align:center;
  font-weight:900;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1e3a8a;
}
.promotion-period-banner.promotion-active{
  border-color:#86efac;
  background:#f0fdf4;
  color:#166534;
}
.promotion-period-banner.promotion-inactive{
  border-color:#fde68a;
  background:#fffbeb;
  color:#92400e;
}
.promotion-summary-line{
  margin:10px 0 0;
  padding:10px 12px;
  border-radius:12px;
  background:#f0fdf4;
  border:1px solid #bbf7d0;
  color:#166534;
  font-weight:800;
}
.phone-field-label{gap:8px!important;}
.phone-input-group{
  display:grid;
  grid-template-columns:minmax(105px,130px) 1fr;
  gap:10px;
}
.phone-input-group input{min-width:0;}
.phone-input-group .dial-code-input[readonly]{
  background:#f1f5f9;
  color:#334155;
  font-weight:900;
}
.phone-help{font-size:.78rem;color:#64748b;font-weight:600;}
.pricing-loading-card,.pricing-error-card{min-height:160px;display:grid;align-content:center;text-align:center;}
.price-card-v2.pricing-choice h3{margin-top:4px;}
@media(max-width:560px){
  .phone-input-group{grid-template-columns:105px 1fr;}
}


.trainer-apply-action{
  margin:18px 0 0;
  text-align:center;
}
.trainer-apply-action .btn{
  min-width:240px;
}

/* V7 — coupons et PayPal Checkout dynamique */
.course-start-banner{
  margin:10px 0 16px;padding:12px 15px;border-radius:14px;
  background:#eefbf3;border:1px solid #86efac;color:#166534;text-align:center;
}
.benefits-panel{
  margin:18px 0;padding:18px;border:1px solid #bfdbfe;border-radius:20px;
  background:linear-gradient(135deg,#f8fbff,#fff);
}
.benefits-heading h3{margin:0 0 5px;color:#123c74}.benefits-heading p{margin:0 0 14px}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.benefits-grid-coupon-only{grid-template-columns:minmax(0,1fr)}
.benefits-grid small{font-weight:600;color:#64748b;line-height:1.35}
.benefits-status{display:flex;flex-direction:column;gap:5px;margin-top:12px;color:#0f766e;font-weight:700;min-height:20px}
.quote-breakdown{display:grid;gap:8px;margin:10px 0}
.summary-row{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px dashed #dbe3ef}
.summary-row:last-child{border-bottom:0}.summary-row span{color:#475569}.summary-row b{text-align:right}.summary-row.saving b{color:#15803d}
.final-summary{margin-top:12px;padding-top:12px;border-top:2px solid #bfdbfe}
.registration-success-actions{max-width:920px;margin:18px auto 0}
.registration-success-box{padding:20px;border:1px solid #86efac;border-radius:20px;background:#f0fdf4;text-align:center;box-shadow:var(--shadow)}
.registration-success-box h3{margin-top:0;color:#166534}
.payment-lookup-section{margin-bottom:22px}
.payment-lookup-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}
.payment-lookup-form label{display:flex;flex-direction:column;gap:7px;font-weight:800;color:#173b63}
.payment-lookup-form input{width:100%;border:1px solid #dbe3ef;border-radius:13px;padding:12px 13px;background:#fff;font:inherit}
.dynamic-payment-context{margin-top:16px;padding:18px;border:1px solid #bfdbfe;border-radius:18px;background:#f8fbff}
.payment-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.payment-context-grid>div{padding:12px;border-radius:14px;background:#fff;border:1px solid #e2e8f0}
.payment-context-grid span{display:block;font-size:.8rem;color:#64748b;font-weight:700;margin-bottom:4px}
.payment-context-grid b{display:block;color:#123c74;overflow-wrap:anywhere}
.payment-quote-recap{max-width:680px;margin:auto}.payment-final-line{font-size:1.15rem;border-top:2px solid #93c5fd;margin-top:6px;padding-top:12px}.payment-final-line b{color:#15803d}
.paypal-dynamic-container{min-height:44px;margin:14px 0}.paypal-status{min-height:22px;color:#475569;font-weight:700}
.payment-success-message{padding:16px;border:1px solid #86efac;border-radius:16px;background:#f0fdf4;color:#166534}.payment-success-message h3{margin-top:0}
.form-status.error{color:#b91c1c}.form-status.success{color:#15803d}
@media(max-width:900px){.benefits-grid{grid-template-columns:1fr}.payment-lookup-form{grid-template-columns:1fr}.payment-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.payment-context-grid{grid-template-columns:1fr}.summary-row{flex-direction:column;gap:3px}.summary-row b{text-align:left}}


/* IT Tech V8 — inscription webinaire */
.webinar-registration-card{max-width:920px;margin:0 auto;}
.webinar-followup-preview{margin:18px 0;padding:18px;border:1px solid #bfdbfe;border-radius:18px;background:linear-gradient(135deg,#eff6ff,#f8fafc);}
.webinar-followup-preview h3{margin-top:0;color:#123c74;}
.webinar-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.webinar-timeline>div{background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px;}
.webinar-timeline b{color:#1d4ed8;}
.webinar-timeline span{font-size:.9rem;color:#475569;}
.webinar-places{color:#0f766e;}
.webinar-reserve-btn{width:100%;justify-content:center;}
.registration-success-box{margin-top:18px;padding:20px;border:1px solid #86efac;border-radius:18px;background:#f0fdf4;text-align:center;}
.registration-success-box h3{color:#15803d;margin-top:0;}
@media(max-width:900px){.webinar-timeline{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.webinar-timeline{grid-template-columns:1fr;}}

/* IT Tech V9 — propositions d’animateurs de webinaires */
.webinar-speaker-hero{background:linear-gradient(135deg,#eff6ff,#f0fdf4);}
.speaker-registration-card textarea{width:100%;resize:vertical;border:1px solid #dbe3ef;border-radius:13px;padding:12px 13px;background:#fff;font:inherit;line-height:1.55;}
.speaker-registration-card textarea:focus{outline:3px solid rgba(37,99,235,.14);border-color:#60a5fa;}
.speaker-followup-preview{background:linear-gradient(135deg,#f0fdf4,#eff6ff);border-color:#86efac;}
.speaker-timeline{grid-template-columns:repeat(2,minmax(0,1fr));}
.speaker-invitation-strip{padding-top:0;}
.speaker-invitation-card{border:1px solid #86efac;background:linear-gradient(135deg,#f0fdf4,#fff);}
.speaker-invitation-card h2{margin:6px 0 8px;color:#166534;}
@media(max-width:700px){.speaker-timeline{grid-template-columns:1fr;}}

/* IT Tech V9.1 — correction responsive du formulaire animateur */
.speaker-registration-card{
  width:100%;
  max-width:1080px;
  margin-inline:auto;
  overflow:hidden;
  box-sizing:border-box;
}
.speaker-registration-card *{box-sizing:border-box;}
.speaker-registration-card > h2{
  max-width:820px;
  margin:12px auto 10px;
  text-align:center;
}
.speaker-registration-card > .small{
  max-width:820px;
  margin:0 auto 28px;
  text-align:center;
}
.speaker-registration-form{
  width:100%;
  min-width:0;
}
.speaker-form-section{
  margin:0 0 22px;
  padding:22px;
  border:1px solid #dbe7f5;
  border-radius:20px;
  background:#fbfdff;
  box-shadow:0 8px 24px rgba(15,59,99,.045);
}
.speaker-section-heading{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:18px;
}
.speaker-section-number{
  display:grid;
  place-items:center;
  flex:0 0 38px;
  width:38px;
  height:38px;
  border-radius:12px;
  background:linear-gradient(135deg,#0f4c81,#087443);
  color:#fff;
  font-weight:900;
  box-shadow:0 7px 17px rgba(15,76,129,.18);
}
.speaker-section-heading h3{
  margin:0 0 3px;
  color:#123c74;
  font-size:1.15rem;
}
.speaker-section-heading p{
  margin:0;
  color:#64748b;
  font-size:.92rem;
  line-height:1.45;
}
.speaker-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:17px 20px;
  width:100%;
  min-width:0;
}
.speaker-form-grid > label{
  min-width:0;
  margin:0;
}
.speaker-form-grid .speaker-field-full{
  grid-column:1 / -1;
}
.speaker-registration-form input,
.speaker-registration-form select,
.speaker-registration-form textarea{
  max-width:100%;
  min-width:0;
}
.speaker-registration-form select{
  text-overflow:ellipsis;
}
.speaker-registration-form .phone-input-group{
  display:grid;
  grid-template-columns:115px minmax(0,1fr);
  gap:10px;
  width:100%;
  min-width:0;
}
.speaker-registration-form .phone-input-group input{
  width:100%;
  min-width:0;
}
.speaker-consent-box{
  display:grid;
  gap:10px;
  margin:4px 0 20px;
  padding:17px 18px;
  border:1px solid #dbeafe;
  border-radius:16px;
  background:#f8fbff;
}
.speaker-consent-box .check-consent{
  margin:0;
  min-width:0;
}
.speaker-followup-preview{
  margin-top:0;
}
@media (max-width:760px){
  .speaker-registration-card{border-radius:18px;}
  .speaker-form-section{padding:17px 14px;border-radius:16px;}
  .speaker-form-grid{grid-template-columns:1fr;gap:14px;}
  .speaker-form-grid .speaker-field-full{grid-column:auto;}
  .speaker-registration-form .phone-input-group{grid-template-columns:100px minmax(0,1fr);}
  .speaker-section-heading{gap:10px;}
  .speaker-section-number{flex-basis:34px;width:34px;height:34px;}
}
@media (max-width:420px){
  .speaker-registration-form .phone-input-group{grid-template-columns:1fr;}
  .speaker-registration-form .dial-code-input{text-align:left;}
}


/* IT Tech V12 — coupon près du prix et formulaires plus rapides */
.price-coupon-layout{
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(240px,.75fr);
  gap:16px;
  align-items:stretch;
  margin-top:18px;
}
.price-coupon-layout .dynamic-price-summary,
.coupon-price-action{
  min-width:0;
  border:1px solid #bfdbfe;
  border-radius:18px;
  background:#f8fbff;
  padding:16px;
}
.price-coupon-layout .dynamic-price-summary:empty{display:none;}
.coupon-price-action{display:flex;flex-direction:column;justify-content:center;gap:10px;text-align:center;}
.coupon-price-action .btn{width:100%;justify-content:center;}
.coupon-price-action .benefits-status{margin:0;min-height:0;line-height:1.4;}
.registration-form input,
.registration-form select,
.registration-form textarea{transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;}
.registration-form input:focus,
.registration-form select:focus,
.registration-form textarea:focus{will-change:auto;}
@media(min-width:760px){
  .registration-form .check-consent span{line-height:1.35;}
}
@media(max-width:760px){
  .price-coupon-layout{grid-template-columns:1fr;}
  .coupon-price-action{text-align:left;}
  .registration-form input,.registration-form select,.registration-form textarea{font-size:16px;}
}
@supports(content-visibility:auto){
  .page-wrap > .section:not(.registration-section),
  .site-share-strip,
  .v64-footer{content-visibility:auto;contain-intrinsic-size:600px;}
}


/* ITTA V14 — Google Sheets only, coupon beside computed price, payment navigation */
.v63-menu .nav-payment{
  background:#0f4c81!important;color:#fff!important;border:1px solid #0f4c81!important;
  padding:10px 15px;border-radius:999px;font-weight:800;box-shadow:0 6px 16px rgba(15,76,129,.18);
}
.v63-menu .nav-payment:hover{transform:translateY(-1px);filter:brightness(1.05)}
.price-coupon-layout{
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  align-items:stretch!important;
}
.coupon-price-card{
  display:flex;flex-direction:column;justify-content:center;gap:10px;
  padding:16px;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff;
}
.coupon-inline-label{margin:0!important;font-weight:800;color:#173b63}
.coupon-inline-label input{margin-top:7px}
.coupon-inline-label small{display:block;margin-top:6px;color:#64748b;font-weight:600;line-height:1.35}
.coupon-price-card .btn{width:100%;justify-content:center;margin:0}
.coupon-price-card .benefits-status{margin:0;min-height:0;line-height:1.35}
.loading-card{opacity:.82}
@media(max-width:780px){
  .price-coupon-layout{grid-template-columns:1fr!important}
  .v63-menu .nav-payment{width:100%;justify-content:center;text-align:center}
}


/* ITTA V14.7 — coupon centralisé */
.price-coupon-layout{
  grid-template-columns:1fr!important;
  justify-items:center!important;
  gap:16px!important;
}
.price-coupon-layout .dynamic-price-summary{
  width:min(100%,760px)!important;
  margin-inline:auto!important;
}
.coupon-price-card{
  width:min(100%,520px)!important;
  margin-inline:auto!important;
  text-align:center!important;
  align-items:stretch!important;
}
.coupon-inline-label{text-align:center!important}
.coupon-inline-label input{max-width:420px;margin:7px auto 0!important;text-align:center}
.coupon-price-card .btn{max-width:420px;margin-inline:auto!important}
.coupon-price-card .benefits-status{text-align:center!important}
.payment-campaign-info{max-width:900px;margin-inline:auto}


/* ITTA V14.8 — interactions accueil, vidéos YouTube et WhatsApp flottant */
.home-demand-module{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;position:relative;}
.home-demand-module:hover{border-color:#60a5fa!important;box-shadow:0 0 0 4px rgba(59,130,246,.10),0 16px 34px rgba(37,99,235,.10)!important;transform:translateY(-2px);}
.webinar-propose-btn{background:#f97316!important;color:#fff!important;border-color:#f97316!important;box-shadow:0 10px 22px rgba(249,115,22,.22);}
.webinar-propose-btn:hover{background:#ea580c!important;border-color:#ea580c!important;}
.whatsapp-float{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;padding:0!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;font-size:0!important;line-height:1!important;box-shadow:0 12px 30px rgba(37,211,102,.30)!important;}
.whatsapp-float img{width:31px!important;height:31px!important;object-fit:contain!important;margin:0!important;}
.youtube-auto-block{margin-top:24px;padding:18px;border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#fff);overflow:hidden;}
.youtube-auto-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px;}
.youtube-auto-head h3{margin:5px 0 4px;}
.youtube-carousel{overflow-x:auto;scroll-behavior:smooth;scrollbar-width:thin;overscroll-behavior-inline:contain;padding-bottom:8px;}
.youtube-track{display:flex;gap:16px;align-items:stretch;}
.youtube-video-card{flex:0 0 calc((100% - 32px)/3);min-width:0;border:1px solid #e2e8f0;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 20px rgba(15,23,42,.06);text-decoration:none;color:#0f172a;transition:transform .2s ease,box-shadow .2s ease;}
.youtube-video-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(37,99,235,.12);}
.youtube-video-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#e2e8f0;}
.youtube-video-body{padding:12px 13px 14px;}
.youtube-video-body strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;}
.youtube-video-meta{display:block;margin-top:7px;color:#64748b;font-size:12px;font-weight:700;}
.youtube-carousel-controls{display:flex;gap:8px;flex:0 0 auto;}
.youtube-nav{width:38px;height:38px;border-radius:50%;border:1px solid #bfdbfe;background:#fff;color:#1d4ed8;font-size:25px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.youtube-nav:hover{background:#eff6ff;}
.youtube-thumb-placeholder{aspect-ratio:16/9;background:linear-gradient(90deg,#eef2f7,#f8fafc,#eef2f7);}
.youtube-empty{padding:18px;color:#64748b;}
.complementary-planning-card{margin-top:22px;}
@media(max-width:900px){.youtube-video-card{flex-basis:calc((100% - 16px)/2);}}
@media(max-width:620px){.youtube-video-card{flex-basis:88%;}.youtube-auto-head{align-items:flex-start}.youtube-carousel-controls{margin-top:4px}.whatsapp-float{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important}.whatsapp-float img{width:29px!important;height:29px!important}}

/* ITTA V14.8 — informations campagne sur la page Paiement */
.payment-campaign-info{display:grid;gap:9px;margin-top:16px;max-width:760px;}
.payment-campaign-info .promotion-period-banner,.payment-campaign-info .course-start-banner{margin:0;}


/* V14.9 — Cloudflare Turnstile */
.turnstile-panel{margin:18px auto 4px;max-width:520px;padding:16px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;text-align:center}
.turnstile-widget{display:flex;justify-content:center;min-height:65px}
.turnstile-status{margin:8px 0 0;color:#475569}
@media (max-width:520px){.turnstile-panel{padding:12px 8px}.turnstile-widget{overflow:hidden}}

/* ==========================================================
   IT Tech Académie V15.2 — Accueil, équipe, catalogue, mobile
   ========================================================== */
.home-full-catalog{margin-top:30px}
.home-catalog-filter-panel{margin:18px 0 20px;padding:18px}
.home-catalog-filters{display:grid;grid-template-columns:1fr 1fr 1.6fr auto;gap:12px;align-items:end}
.home-catalog-filters label{display:flex;flex-direction:column;gap:7px;font-weight:800;color:#123c74}
.home-catalog-filters select,.home-catalog-filters input{width:100%;min-height:44px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;padding:10px 12px;font:inherit}
.home-catalog-count{margin:12px 0 0;color:#64748b}
.home-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-catalog-card{display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.home-catalog-card:hover{transform:translateY(-4px);border-color:#93c5fd!important;box-shadow:0 18px 40px rgba(37,99,235,.13)!important}
.home-module-main-link{color:inherit;text-decoration:none;display:block}
.home-catalog-card .catalog-body{padding-bottom:8px}
.home-module-trainer{margin:0 14px 12px;padding:10px;border-radius:14px;background:#f8fbff;border:1px solid #dbeafe;display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.home-module-trainer img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #bfdbfe;flex:0 0 auto}
.home-module-trainer span{min-width:0;display:flex;flex-direction:column}
.home-module-trainer small{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:800}
.home-module-trainer strong{font-size:.88rem;line-height:1.2;color:#0f172a}
.home-module-trainer em{font-size:.76rem;color:#475569;font-style:normal;line-height:1.2;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
.home-module-actions{display:flex;gap:8px;flex-wrap:wrap;margin:auto 14px 14px}
.home-module-actions .btn{flex:1 1 120px;text-align:center}

.team-orbit-card{text-decoration:none;color:inherit}
.team-orbit-loading{animation:none!important}
.trainer-affiliation{margin:.35rem 0 .65rem;color:#334155}

.module-trainer-top{max-width:880px;margin:16px auto 4px;text-align:left}
.module-trainer-label{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:900;color:#64748b;margin-bottom:8px;text-align:center}
.module-trainer-list{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.module-trainer-chip{display:flex;align-items:center;gap:10px;min-width:250px;max-width:360px;padding:10px 12px;background:#fff;border:1px solid #dbeafe;border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.07);text-decoration:none;color:inherit}
.module-trainer-chip img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:3px solid #dbeafe;flex:0 0 auto}
.module-trainer-chip span{display:flex;min-width:0;flex-direction:column}
.module-trainer-chip strong{color:#0f172a;line-height:1.2}
.module-trainer-chip small{color:#475569;margin-top:3px;line-height:1.25}

.turnstile-retry-btn{border:0;background:transparent;color:#2563eb;font-weight:800;text-decoration:underline;cursor:pointer;padding:2px 4px}

@media(max-width:1000px){
  .home-catalog-filters{grid-template-columns:1fr 1fr}.home-catalog-search{grid-column:1/-1}.home-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:800px){
  /* Galerie d'accueil : défilement horizontal de gauche à droite */
  #home-gallery .gallery-grid-home,#home-gallery .gallery-grid-nine{
    display:flex!important;grid-template-columns:none!important;overflow-x:auto;overflow-y:hidden;gap:12px;padding:4px 4px 14px;scroll-snap-type:x mandatory;scroll-behavior:smooth;direction:ltr;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain
  }
  #home-gallery .gallery-grid-home>a,#home-gallery .gallery-grid-nine>a{flex:0 0 84vw;max-width:360px;scroll-snap-align:start;direction:ltr}
  #home-gallery .gallery-grid-home img,#home-gallery .gallery-grid-nine img{height:220px!important;min-height:0!important;object-fit:cover}
  #home-gallery .gallery-grid-home::-webkit-scrollbar,#homeCatalogGrid::-webkit-scrollbar{height:6px}
  #home-gallery .gallery-grid-home::-webkit-scrollbar-thumb,#homeCatalogGrid::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}

  .home-catalog-filters{grid-template-columns:1fr;gap:10px}.home-catalog-search{grid-column:auto}
  /* Catalogue mobile : cartes déroulantes de droite à gauche */
  .home-catalog-grid{display:flex;overflow-x:auto;overflow-y:hidden;gap:14px;padding:4px 4px 16px;scroll-snap-type:x mandatory;direction:rtl;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .home-catalog-card{flex:0 0 86vw;max-width:360px;scroll-snap-align:start;direction:ltr}
  .home-module-trainer em{max-width:200px}
  .module-trainer-list{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x mandatory;padding-bottom:6px}
  .module-trainer-chip{flex:0 0 82vw;min-width:0;scroll-snap-align:start}
}


/* ==========================================================
   IT Tech Académie V15.3 — cartes modules, vidéos & parcours
   ========================================================== */

/* Carte module : titre 2 lignes, description 3 lignes, formateur rond sous la carte */
.home-catalog-card .catalog-body h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.34;
  min-height:2.68em;
  max-height:2.68em;
  margin-bottom:10px;
}
.home-module-description{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.48;
  min-height:4.44em;
  max-height:4.44em;
  margin:0 0 10px;
  color:#334155;
}
.home-module-format{margin-top:auto}
.home-module-trainer{
  margin:auto 14px 14px;
  padding:12px 10px;
  border-radius:16px;
  background:linear-gradient(180deg,#f8fbff,#fff);
  border:1px solid #dbeafe;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
}
.home-module-trainer img{
  width:72px;
  height:72px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid #bfdbfe;
  box-shadow:0 8px 20px rgba(37,99,235,.14);
}
.home-module-trainer span{
  align-items:center;
  text-align:center;
}
.home-module-trainer strong{
  font-size:.92rem;
  line-height:1.25;
}
.home-module-trainer em{
  max-width:260px;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  line-height:1.3;
}
.home-module-trainer-fallback{color:#475569}

/* Équipe accueil : photo, nom puis affiliation clairement en dessous */
.home-team-orbit .team-orbit-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
}
.home-team-orbit .team-orbit-card strong{
  min-height:auto;
  margin-top:2px;
  text-align:center;
}
.home-team-orbit .team-orbit-card span{
  min-height:30px;
  text-align:center;
}

/* Vidéo de présentation de l'académie */
.home-promo-video{margin-top:30px}
.home-promo-video .section-headline{text-align:center;max-width:820px;margin:0 auto 18px}
.home-promo-video-frame{
  max-width:760px;
  margin:0 auto;
  border-radius:24px;
  overflow:hidden;
  background:#0f172a;
  box-shadow:0 20px 50px rgba(15,23,42,.18);
  border:1px solid #dbeafe;
}
.home-promo-video-frame video{
  display:block;
  width:100%;
  max-height:680px;
  aspect-ratio:1/1;
  object-fit:cover;
  background:#0f172a;
}

/* Cartes des parcours avec vidéos locales */
.home-parcours-videos{margin-top:34px}
.home-parcours-videos .section-headline{text-align:center;max-width:850px;margin:0 auto 18px}
.home-parcours-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-parcours-card{
  overflow:hidden;
  padding:0!important;
  display:flex;
  flex-direction:column;
  height:100%;
}
.home-parcours-card video,
.parcours-video-wrap video{
  width:100%;
  aspect-ratio:16/9;
  display:block;
  object-fit:cover;
  background:#0f172a;
}
.home-parcours-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.home-parcours-card-body h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.35;
  min-height:2.7em;
  margin:9px 0;
}
.home-parcours-card-body p{
  color:#475569;
  line-height:1.5;
  flex:1;
}
.home-parcours-link{
  margin-top:8px;
  color:#1d4ed8;
  font-weight:900;
  text-decoration:none;
}
.home-parcours-link:hover{text-decoration:underline}

.parcours-video-wrap{
  margin:-1px -1px 16px;
  border-radius:20px 20px 0 0;
  overflow:hidden;
  background:#0f172a;
}

/* YouTube : réserver l'espace et éviter les sauts de mise en page */
.youtube-video-card img{
  aspect-ratio:16/9;
  background:#e2e8f0;
}
.youtube-auto-block{content-visibility:auto;contain-intrinsic-size:720px}

/* Mobile */
@media(max-width:1000px){
  .home-parcours-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
  .home-promo-video-frame{border-radius:18px}
  .home-promo-video-frame video{max-height:none}
  .home-parcours-grid{
    display:flex;
    overflow-x:auto;
    overflow-y:hidden;
    gap:14px;
    padding:4px 4px 16px;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
  }
  .home-parcours-card{
    flex:0 0 86vw;
    max-width:360px;
    scroll-snap-align:start;
  }
  .home-module-trainer img{width:66px;height:66px}
}


/* ==========================================================
   IT Tech Académie V15.4 — mobile, équipe et carrousels
   ========================================================== */

/* Fiche module : nom + affiliation, puis photo du formateur en dessous. */
.module-trainer-chip{
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  min-width:260px;
  padding:14px 14px 16px;
}
.module-trainer-chip span{
  order:1;
  align-items:center;
  text-align:center;
  width:100%;
}
.module-trainer-chip strong{font-size:.98rem;line-height:1.28}
.module-trainer-chip small{font-size:.8rem;line-height:1.3;max-width:310px}
.module-trainer-chip img{
  order:2;
  width:92px;
  height:92px;
  margin-top:10px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid #bfdbfe;
  box-shadow:0 8px 22px rgba(37,99,235,.15);
}

@media(max-width:800px){
  /* Pas de filtres sur mobile : les 21 cartes sont directement accessibles. */
  .home-catalog-filter-panel{display:none!important}

  /* Les 3 parcours restent tous visibles sur mobile, sans carrousel horizontal. */
  .home-parcours-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    gap:14px!important;
    padding:0!important;
  }
  .home-parcours-card{
    width:100%!important;
    max-width:none!important;
    flex:none!important;
  }

  /* Galerie : défilement automatique de gauche vers la droite. */
  #home-gallery .gallery-grid-home,#home-gallery .gallery-grid-nine{
    direction:ltr!important;
    scroll-behavior:smooth;
  }

  .module-trainer-list{justify-content:flex-start}
  .module-trainer-chip{flex:0 0 82vw;min-width:0;max-width:340px}
  .module-trainer-chip img{width:86px;height:86px}
}


/* ==========================================================
   IT Tech Académie V17 — menu mobile consolidé + catalogue vertical
   ========================================================== */
.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{
  content:"";display:block;width:23px;height:2px;background:#1d4ed8;border-radius:999px;position:relative;
}
.menu-toggle span::before{position:absolute;left:0;top:-7px}
.menu-toggle span::after{position:absolute;left:0;top:7px}
.home-module-price,.module-detail-price,.dynamic-pack-price{
  margin:10px 0 0;padding:9px 11px;border-radius:12px;background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;font-weight:800;
}
@media(max-width:980px){
  body.menu-open{overflow:hidden!important}
  body.menu-open::before{content:"";position:fixed;inset:0;background:rgba(15,23,42,.38);z-index:30000;backdrop-filter:blur(2px)}
  .menu-toggle{display:inline-flex!important;position:relative;z-index:30002!important;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #bfdbfe;border-radius:15px;background:#eff6ff;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .v63-menu{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:30003!important;width:min(88vw,380px)!important;height:100dvh!important;margin:0!important;padding:74px 18px 24px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:9px!important;overflow-y:auto!important;background:#fff!important;box-shadow:-18px 0 50px rgba(15,23,42,.18)!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(105%)!important;opacity:0!important;transition:transform .25s ease,opacity .25s ease,visibility .25s ease!important}
  .v63-menu.open{visibility:visible!important;pointer-events:auto!important;transform:translateX(0)!important;opacity:1!important}
  .v63-menu .menu-close{display:grid!important;place-items:center;position:absolute;top:14px;right:14px;width:44px;height:44px;border:0;border-radius:14px;background:#eff6ff;color:#1d4ed8;font-size:30px;line-height:1;cursor:pointer}
  .v63-menu a{width:100%!important;text-align:center!important;margin:0!important;font-size:16px!important;padding:11px 12px!important;border-radius:13px!important}
}
@media(max-width:800px){
  .home-catalog-grid{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;gap:14px!important;padding:0!important;scroll-snap-type:none!important;direction:ltr!important}
  .home-catalog-card{width:100%!important;max-width:none!important;min-width:0!important;flex:none!important;scroll-snap-align:none!important;direction:ltr!important}
  #homeCatalogGrid{scroll-behavior:auto!important}
}


/* ==========================================================
   IT Tech Académie V19 — parcours, formateurs et cartes module
   ========================================================== */
.home-parcours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.home-parcours-card{overflow:hidden;display:flex;flex-direction:column;height:100%}
.home-parcours-card>video,.home-parcours-card>.home-parcours-image{width:100%;aspect-ratio:16/7;object-fit:cover;background:#eef3f9;display:block}
.home-parcours-card-body{display:flex;flex-direction:column;gap:10px;padding:20px;height:100%}
.home-parcours-card-body h3{margin:0}
.home-parcours-card-body p{margin:0}
.home-parcours-modules{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:7px}
.home-parcours-modules li{border-top:1px solid rgba(15,43,82,.10);padding-top:7px}
.home-parcours-modules a{color:var(--navy,#123c74);text-decoration:none;font-weight:600;line-height:1.35}
.home-parcours-modules a:hover{text-decoration:underline}
.parcours-image-wrap img{display:block;width:100%;max-height:360px;object-fit:cover;border-radius:16px}
.module-trainer-list{display:flex;gap:18px;flex-wrap:wrap;align-items:stretch}
.module-trainer-card-v19{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center;gap:10px;padding:14px;min-width:190px;max-width:230px}
.module-trainer-card-v19 img{order:0!important;width:150px!important;height:150px!important;object-fit:cover;border-radius:18px;margin:0 auto!important}
.module-trainer-card-v19 span{order:1;display:flex;flex-direction:column;gap:4px;align-items:center}
.module-trainer-card-v19 strong{font-size:1rem;line-height:1.25}
.module-trainer-card-v19 small{display:block;line-height:1.35;color:#526176}
@media(max-width:800px){
  .home-parcours-grid{grid-template-columns:1fr;gap:18px}
  .home-parcours-card>video,.home-parcours-card>.home-parcours-image{aspect-ratio:16/8}
  .module-trainer-list{justify-content:center}
  .module-trainer-card-v19{width:min(100%,260px);max-width:260px}
}

/* ===== ITTA V19 — vérification publique des certificats ===== */
.verify-page{max-width:980px}.verify-hero{text-align:center}.verify-section{max-width:850px;margin-inline:auto}.certificate-verification-form{background:#fff;border:1px solid #dbe4ef;border-radius:16px;padding:22px;box-shadow:0 10px 35px rgba(15,45,85,.08)}.certificate-verification-form label{font-weight:800;color:#0b315f;display:block;margin-bottom:8px}.certificate-id-row{display:flex;gap:10px}.certificate-id-row input{flex:1;min-width:0;border:1px solid #cbd5e1;border-radius:10px;padding:13px 14px;font:inherit;text-transform:uppercase}.certificate-verification-result{margin-top:20px;border-radius:16px;padding:26px;text-align:center;border:1px solid #dbe4ef;background:#fff}.certificate-verification-result.is-valid{border-color:#86c99a;background:#f3fff6}.certificate-verification-result.is-error{border-color:#f0a3a3;background:#fff7f7}.certificate-status-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;font-size:30px;font-weight:900;background:#0f7b3b;color:#fff}.is-error .certificate-status-icon{background:#b42318}.certificate-verify-grid{margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;text-align:left}.certificate-verify-grid>div{padding:13px;border-radius:10px;background:rgba(255,255,255,.8);border:1px solid #e2e8f0}.certificate-verify-grid span{display:block;font-size:.78rem;color:#64748b;margin-bottom:3px}.certificate-verify-grid strong{color:#0b315f;word-break:break-word}@media(max-width:650px){.certificate-id-row{flex-direction:column}.certificate-verify-grid{grid-template-columns:1fr}}


/* ==========================================================
   ITTA 2026-08-21 — Parcours, filtres et mobile
   ========================================================== */

/* Catalogue formation : sans filtre Niveau */
.home-catalog-filters{
  grid-template-columns:minmax(220px,1fr) minmax(280px,1.6fr) auto !important;
}

/* Couleurs distinctes des 4 parcours */
.home-parcours-card,
.parcours-card{
  --pathway-accent:#2563eb;
  --pathway-soft:#eff6ff;
  border-top:5px solid var(--pathway-accent) !important;
  box-shadow:0 14px 36px rgba(15,23,42,.09);
}
.home-parcours-card.pathway-theme-1,.parcours-card.pathway-theme-1{--pathway-accent:#2563eb;--pathway-soft:#eff6ff;} /* bleu */
.home-parcours-card.pathway-theme-2,.parcours-card.pathway-theme-2{--pathway-accent:#16a34a;--pathway-soft:#ecfdf5;} /* vert */
.home-parcours-card.pathway-theme-3,.parcours-card.pathway-theme-3{--pathway-accent:#ea580c;--pathway-soft:#fff7ed;} /* orange */
.home-parcours-card.pathway-theme-4,.parcours-card.pathway-theme-4{--pathway-accent:#7c3aed;--pathway-soft:#f5f3ff;} /* violet */
.home-parcours-card .top-badge,
.parcours-card .top-badge{
  background:var(--pathway-soft) !important;
  color:var(--pathway-accent) !important;
  border:1px solid color-mix(in srgb,var(--pathway-accent) 25%, white) !important;
}
.home-parcours-card h3,
.parcours-card h3{color:var(--pathway-accent);}
.home-parcours-card .home-parcours-link,
.parcours-card .btn.secondary{border-color:var(--pathway-accent);color:var(--pathway-accent);}

/* Noms des modules : une seule ligne + défilement si le texte est long */
.home-parcours-modules li,
.parcours-card .clean-list li{
  overflow:hidden;
  white-space:nowrap;
  position:relative;
  min-width:0;
}
.home-parcours-modules li a,
.parcours-card .clean-list li{
  display:block;
  overflow:hidden;
  white-space:nowrap;
}
.pathway-module-scroll{
  display:inline-block;
  min-width:max-content;
  white-space:nowrap;
  transform:translateX(0);
}
.home-parcours-modules li:hover .pathway-module-scroll,
.home-parcours-modules li:focus-within .pathway-module-scroll,
.parcours-card .clean-list li:hover .pathway-module-scroll,
.parcours-card .clean-list li:focus-within .pathway-module-scroll{
  animation:ittaPathwayModuleScroll 7s linear infinite alternate;
}
@keyframes ittaPathwayModuleScroll{
  0%,12%{transform:translateX(0)}
  88%,100%{transform:translateX(calc(-100% + 250px))}
}

/* Mobile : aucun bouton WhatsApp flottant. */
@media(max-width:768px){
  .whatsapp-float{display:none !important;visibility:hidden !important;pointer-events:none !important;}
  .home-catalog-filters{grid-template-columns:1fr !important;}
  .pathway-module-scroll{max-width:none;}
}

/* ========================================================================== */
/* V21 — Paiement par tranches                                                 */
/* ========================================================================== */
.installment-selector-v21{margin-top:18px;padding:20px;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);box-shadow:0 10px 26px rgba(15,23,42,.06)}
.installment-selector-v21[hidden]{display:none!important}.installment-heading-v21{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.installment-heading-v21 h3{margin:0;color:#0f2f5f}
.installment-radio-grid-v21{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.installment-option-v21{display:flex!important;align-items:center;gap:10px;min-height:82px;padding:13px;border:1px solid #cbd5e1;border-radius:14px;background:#fff;cursor:default;transition:.2s ease}.installment-option-v21 input{width:18px;height:18px;flex:0 0 auto}.installment-option-v21 span{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.installment-option-v21 span small{color:#64748b;font-size:.76rem}.installment-option-v21>strong{color:#0f766e;white-space:nowrap}.installment-option-v21.is-selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 2px rgba(37,99,235,.08)}.installment-option-v21.is-disabled{opacity:.43;filter:grayscale(.25)}.installment-option-v21.is-disabled input{cursor:not-allowed}.installment-rule-message-v21{margin:12px 0 4px;color:#334155;font-weight:600}
.installment-schedule-v21{margin-top:14px;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff}.installment-row-v21{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(140px,.9fr) minmax(180px,1fr);gap:12px;align-items:center;padding:12px 14px;border-top:1px solid #e2e8f0}.installment-row-v21:first-child{border-top:0}.installment-row-v21 span{display:flex;flex-direction:column;gap:3px}.installment-row-v21 span small{color:#64748b}.installment-row-v21 strong{color:#123c74}.installment-row-v21 em{font-style:normal;color:#475569;font-size:.88rem}.installment-note-v21{padding:10px 14px;margin:0;background:#fffbeb;color:#92400e;border-top:1px solid #fde68a}
.installment-card-rule-v21{margin:.55rem 0 0;color:#0f766e;font-size:.88rem}
.current-installment-v21{display:flex;flex-direction:column;gap:6px;margin:16px 0;padding:16px;border-radius:14px;border:1px solid #93c5fd;background:#eff6ff}.current-installment-v21>span{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;font-weight:700}.current-installment-v21>b{font-size:1.06rem;color:#123c74}.current-installment-v21 small{color:#475569}
.payment-installment-list-v21{margin-top:16px}.payment-installment-list-v21 h3{margin:0 0 10px}.payment-installment-item-v21{display:grid;grid-template-columns:minmax(150px,1.25fr) minmax(145px,.85fr) minmax(170px,1fr);gap:12px;align-items:center;padding:12px 14px;margin-top:8px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.payment-installment-item-v21 span{display:flex;flex-direction:column;gap:2px}.payment-installment-item-v21 span small{color:#64748b}.payment-installment-item-v21 em{font-style:normal;color:#475569;font-size:.86rem}.payment-installment-item-v21.is-paid{border-color:#86efac;background:#f0fdf4}.payment-installment-item-v21.is-current{border-color:#93c5fd;background:#eff6ff}.payment-installment-item-v21.is-late{border-color:#fdba74;background:#fff7ed}.payment-alert-v21{display:flex;flex-direction:column;gap:5px;margin:14px 0;padding:14px;border-radius:12px}.payment-alert-v21.danger{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.payment-access-note-v21{margin-top:14px;padding:10px 12px;border-left:3px solid #2563eb;background:#f8fafc;color:#475569}
@media(max-width:900px){.installment-radio-grid-v21{grid-template-columns:repeat(2,minmax(0,1fr))}.installment-row-v21,.payment-installment-item-v21{grid-template-columns:1fr}.installment-row-v21 em,.payment-installment-item-v21 em{text-align:left}}
@media(max-width:520px){.installment-radio-grid-v21{grid-template-columns:1fr}.installment-selector-v21{padding:14px}.installment-option-v21{min-height:68px}}


/* ITTA V21.2.5 — coupon visible + consentement juste avant validation */
.consent-before-submit-v21{display:grid;gap:10px;margin:14px 0 10px;padding-top:4px}
.consent-before-submit-v21 .check-consent{margin:0}
.quote-breakdown .stage-total{background:#f8fafc;border-top:1px dashed #cbd5e1;padding-top:8px;margin-top:4px}
.quote-breakdown .stage-total b{color:#123c74}


/* =========================================================
   ITTA V21.3.6 — Enregistrement mobile-first attractif
   ========================================================= */
.registration-page-v2136{background:linear-gradient(180deg,#f8fbff 0,#fff 32%,#f8fafc 100%)}
.registration-page-v2136 .registration-card{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;overflow:visible}
.registration-page-v2136 .registration-card>h2{text-align:center;color:#123c74;margin-bottom:6px;font-size:clamp(1.65rem,4vw,2.25rem)}
.registration-page-v2136 .registration-card>p.small{text-align:center;max-width:760px;margin:0 auto 12px;color:#64748b}
.registration-form-v2136{max-width:980px;margin:0 auto;padding-bottom:28px}.registration-progress-v2136{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 14px;padding:10px;border-radius:18px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.registration-progress-v2136 span{display:flex;align-items:center;justify-content:center;gap:7px;color:#475569;font-weight:800;font-size:.86rem;white-space:nowrap}.registration-progress-v2136 b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#eaf2ff;color:#123c74;font-size:.78rem}
.registration-step-card-v2136{margin:14px 0;padding:20px;border:1px solid #dce7f4;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(15,23,42,.06)}.registration-step-heading-v2136{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.registration-step-heading-v2136>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#123c74,#2563eb);color:#fff;font-weight:900;box-shadow:0 7px 16px rgba(37,99,235,.2)}.registration-step-heading-v2136 h3{margin:0;color:#123c74;font-size:1.12rem}.registration-step-heading-v2136 p{margin:3px 0 0;color:#64748b;font-size:.88rem;line-height:1.4}
.form-grid-v2136{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid-v2136 label{min-width:0}.field-span-full-v2136{grid-column:1/-1}.dynamic-city-control-v2136{display:block;margin-top:7px}.dynamic-city-control-v2136 select,.dynamic-city-control-v2136 input{width:100%}.city-other-v2136{margin-top:8px!important}
.module-selection-counter-v2136{display:inline-flex!important;align-items:center;gap:6px;margin-top:5px!important;padding:5px 10px;border-radius:999px;background:#eef6ff;color:#1d4ed8!important;font-size:.78rem!important;font-weight:900!important}.parcours-module-picker .module-check{position:relative;border:1px solid #dbe4ef!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.parcours-module-picker .module-check.is-selected-v2136{border-color:#60a5fa!important;background:#eff6ff!important;box-shadow:0 0 0 2px rgba(37,99,235,.08);transform:translateY(-1px)}.parcours-module-picker .module-check.is-disabled-v2136{opacity:.43;cursor:not-allowed}.parcours-module-picker .module-check input{accent-color:#2563eb}
.price-coupon-layout-v2136{display:grid!important;grid-template-columns:1fr;gap:14px;margin-top:2px}.price-coupon-layout-v2136[hidden]{display:none!important}.coupon-price-card-v2136{padding:15px;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fff)}.coupon-inline-row-v2136{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.coupon-inline-row-v2136 .coupon-inline-label{text-align:left!important;margin:0!important}.coupon-inline-row-v2136 .coupon-inline-label input{max-width:none!important;margin:7px 0 0!important;text-align:left!important}.coupon-apply-btn-v2136{min-height:46px;min-width:118px;margin:0!important}.benefits-status-v2136{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;color:#166534!important}.benefits-status-v2136 span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f0fdf4;border:1px solid #bbf7d0}
.installment-slider-card-v2136{padding:17px!important;margin:0!important;border-radius:18px!important;background:linear-gradient(180deg,#f8fbff,#fff)!important}.installment-slider-shell-v2136{padding:10px 5px 2px}.installment-slider-shell-v2136 input[type=range]{width:100%;height:8px;border-radius:999px;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,#2563eb 0%,#93c5fd 100%);outline:none;cursor:pointer}.installment-slider-shell-v2136 input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;border:7px solid #2563eb;box-shadow:0 4px 12px rgba(37,99,235,.3)}.installment-slider-shell-v2136 input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:7px solid #2563eb;box-shadow:0 4px 12px rgba(37,99,235,.3)}.installment-slider-labels-v2136{display:grid;grid-template-columns:repeat(4,1fr);margin-top:9px;color:#64748b;font-size:.73rem;font-weight:800;text-align:center}.installment-slider-labels-v2136 span:first-child{text-align:left}.installment-slider-labels-v2136 span:last-child{text-align:right}.installment-slider-labels-v2136 span.is-active-v2136{color:#1d4ed8}.installment-slider-labels-v2136 span.is-disabled-v2136{opacity:.35;text-decoration:line-through}.installment-slider-status-v2136{margin-top:11px;padding:10px 12px;border-radius:12px;background:#eff6ff;color:#123c74;font-weight:900;text-align:center}.installment-radio-shadow-v2136{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.dynamic-price-summary-v2136{margin:0!important;padding:18px!important;border-radius:20px!important;background:linear-gradient(135deg,#fff,#f8fbff)!important;border:1px solid #dbeafe!important;box-shadow:none!important}.dynamic-price-summary-v2136 .quote-breakdown{display:grid;gap:1px}.dynamic-price-summary-v2136 .summary-row{padding:9px 0}.dynamic-price-summary-v2136 .summary-row.stage-total{display:none}.dynamic-price-summary-v2136 .final-summary{margin-top:12px;padding:15px;border:1px solid #bfdbfe;border-radius:16px;background:#eff6ff}.dynamic-price-summary-v2136 .final-summary span{color:#1d4ed8}.dynamic-price-summary-v2136 .final-summary b{font-size:clamp(1.7rem,5vw,2.35rem);color:#123c74}.savings-badge-v2136{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px;padding:11px 13px;border-radius:14px;background:#f0fdf4;border:1px solid #86efac;color:#166534;font-weight:900}.savings-badge-v2136 strong{font-size:1.05rem}
.installment-schedule-preview-v2136{margin-top:0}.installment-preview-heading-v2136{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:0 0 9px}.installment-preview-heading-v2136 h3{margin:0;color:#123c74}.installment-preview-heading-v2136 small{color:#64748b;text-align:right}.installment-timeline-v2136{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:0!important;background:transparent!important;overflow:visible!important}.installment-timeline-v2136 .installment-row-v21{position:relative;display:grid!important;grid-template-columns:1fr!important;gap:7px!important;padding:14px 14px 14px 44px!important;margin:0!important;border:1px solid #dbeafe!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 18px rgba(15,23,42,.04)}.installment-timeline-v2136 .installment-row-v21:before{content:attr(data-step);position:absolute;left:12px;top:14px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#2563eb;color:#fff;font-weight:900;font-size:.72rem}.installment-timeline-v2136 .installment-row-v21 strong{font-size:1.1rem;color:#123c74}.installment-timeline-v2136 .installment-row-v21 em{font-size:.82rem;color:#475569}.installment-timeline-v2136 .installment-note-v21{grid-column:1/-1;border:1px solid #fde68a!important;border-radius:12px!important}
.consent-before-submit-v2136{margin:0 0 14px!important;padding:0!important}.consent-before-submit-v2136 .check-consent{padding:13px!important;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc}.consent-before-submit-v2136 .check-consent input{width:20px!important;height:20px!important;accent-color:#2563eb;flex:0 0 auto}.turnstile-panel-v2136{margin:10px auto 14px!important;background:#f8fbff!important}.submit-v2136{width:min(520px,100%);min-height:54px;border-radius:15px!important;font-size:1.08rem!important}.submit-v2136.is-loading-v2136{opacity:.8;cursor:wait}.registration-trust-v2136{text-align:center;margin:8px 0 0;color:#64748b;font-size:.79rem;font-weight:700}.registration-mobile-sticky-v2136{display:none}.registration-success-box{animation:ittaSuccessPop .35s ease both}@keyframes ittaSuccessPop{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:760px){.registration-page-v2136 .page-wrap{padding-left:10px!important;padding-right:10px!important}.registration-page-v2136 .registration-section{padding-top:12px!important}.registration-page-v2136 .registration-card>h2{font-size:1.55rem}.registration-progress-v2136{position:sticky;top:62px;z-index:20;margin:12px -2px 10px;padding:7px 6px;border-radius:15px;box-shadow:0 7px 20px rgba(15,23,42,.09)}.registration-progress-v2136 span{font-size:.66rem;gap:4px}.registration-progress-v2136 b{width:22px;height:22px;font-size:.68rem}.registration-step-card-v2136{margin:10px 0;padding:14px 12px;border-radius:18px;box-shadow:0 8px 22px rgba(15,23,42,.055)}.registration-step-heading-v2136{margin-bottom:12px}.registration-step-heading-v2136>span{width:30px;height:30px;flex-basis:30px;border-radius:10px}.registration-step-heading-v2136 h3{font-size:1rem}.registration-step-heading-v2136 p{font-size:.78rem}.form-grid-v2136{grid-template-columns:1fr;gap:11px}.field-span-full-v2136{grid-column:auto}.coupon-inline-row-v2136{grid-template-columns:minmax(0,1fr) 105px;gap:8px}.coupon-apply-btn-v2136{min-width:0;padding-left:10px!important;padding-right:10px!important;font-size:.86rem!important}.installment-slider-labels-v2136{font-size:.63rem;gap:2px}.installment-slider-status-v2136{font-size:.84rem}.dynamic-price-summary-v2136{padding:14px!important}.dynamic-price-summary-v2136 .summary-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px!important;font-size:.88rem}.dynamic-price-summary-v2136 .summary-row b{text-align:right!important;margin-left:auto}.dynamic-price-summary-v2136 .final-summary{padding:12px}.dynamic-price-summary-v2136 .final-summary b{font-size:1.65rem}.savings-badge-v2136{font-size:.86rem;padding:10px}.savings-badge-v2136 strong{font-size:.95rem}.installment-preview-heading-v2136{align-items:flex-start}.installment-preview-heading-v2136 h3{font-size:1rem}.installment-preview-heading-v2136 small{font-size:.7rem;max-width:52%}.installment-timeline-v2136{grid-template-columns:1fr!important}.installment-timeline-v2136 .installment-row-v21{padding:12px 12px 12px 42px!important}.installment-timeline-v2136 .installment-row-v21:before{top:12px}.parcours-module-picker .module-check{padding:10px!important;min-height:58px;align-items:flex-start!important}.parcours-module-picker .module-check span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.28;font-size:.84rem}.consent-before-submit-v2136 .check-consent{font-size:.82rem;line-height:1.42}.registration-mobile-sticky-v2136:not([hidden]){position:fixed;left:8px;right:8px;bottom:8px;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px 9px 13px;border-radius:17px;background:rgba(15,47,95,.96);color:#fff;box-shadow:0 12px 35px rgba(15,23,42,.3);backdrop-filter:blur(12px)}.registration-mobile-sticky-v2136 div{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:baseline}.registration-mobile-sticky-v2136 small{grid-column:1/-1;color:#bfdbfe;font-size:.66rem}.registration-mobile-sticky-v2136 strong{font-size:1rem}.registration-mobile-sticky-v2136 span{font-size:.69rem;color:#dbeafe}.registration-mobile-sticky-v2136 button{border:0;border-radius:11px;background:#fff;color:#123c74;font-weight:900;padding:10px 12px;white-space:nowrap}.registration-page-v2136{padding-bottom:82px}.registration-page-v2136 .whatsapp-float{bottom:82px!important}}
@media(max-width:380px){.registration-progress-v2136 span{font-size:0}.registration-progress-v2136 span b{font-size:.68rem}.coupon-inline-row-v2136{grid-template-columns:minmax(0,1fr) 92px}.registration-mobile-sticky-v2136 span{display:none}}

/* V21.4.0 — paiement carte direct */
.card-direct-container{min-height:46px;margin:.8rem 0 1rem}
.payment-wallet-separator{display:flex;align-items:center;gap:.75rem;margin:1rem 0;color:#64748b;font-size:.85rem}
.payment-wallet-separator:before,.payment-wallet-separator:after{content:"";height:1px;background:#e2e8f0;flex:1}
.paypal-card h4{margin:.5rem 0 .75rem;color:#123c74}
#directCardPayment{scroll-margin-top:100px}
@media(max-width:700px){.card-direct-container,.paypal-dynamic-container{width:100%}.paypal-card{padding:1rem}.payment-method-grid{grid-template-columns:1fr}}

/* V21.4.2 — verrouillage anti double-inscription */
#ittaRegistrationForm button[type="submit"].is-submitted-v2142,
#ittaRegistrationForm button[type="submit"].is-submitted-v2142:disabled{
  background:#94a3b8!important;
  border-color:#94a3b8!important;
  color:#f8fafc!important;
  opacity:1!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
  transform:none!important;
}


/* V22 — Recommandations + paiement intégré */
.recommendation-panel-v22{border:1px solid #bfdbfe;background:linear-gradient(180deg,#f8fbff,#fff)}
.recommendation-grid-v22{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.recommendation-grid-v22 label{display:grid;gap:7px;font-weight:700}.recommendation-grid-v22 select{width:100%}
.recommendation-info-v22{margin:14px 0;padding:13px 15px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;line-height:1.5}
.recommendation-actions-v22{display:flex;flex-wrap:wrap;gap:10px}.inline-payment-shell{margin-top:16px;padding:18px;border:1px solid #bfdbfe;border-radius:16px;background:#fff}
.inline-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.inline-payment-grid section{padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
#inlineBankBox{margin-top:16px;padding:15px;border-radius:12px;background:#f8fafc;border:1px solid #cbd5e1}.inline-payment-success{padding:14px;border-radius:12px;background:#ecfdf5;border:1px solid #86efac;color:#166534}
.home-catalog-filters select{min-width:180px}.home-catalog-filters #homeRecommendationCta{white-space:nowrap}
@media(max-width:760px){.recommendation-grid-v22,.inline-payment-grid{grid-template-columns:1fr}.recommendation-actions-v22 .btn{width:100%}.home-catalog-filters select,.home-catalog-filters input,.home-catalog-filters .btn{width:100%}}

/* ========================================================================== */
/* V22.1 — Filtres catalogue accueil : ligne horizontale premium              */
/* ========================================================================== */
.home-catalog-filter-panel-v221{
  position:relative;
  overflow:hidden;
  padding:20px 22px 18px;
  border:1px solid #dbeafe;
  border-radius:20px;
  background:
    radial-gradient(circle at 100% 0,rgba(37,99,235,.08),transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 14px 38px rgba(15,45,85,.08);
}
.home-filter-head-v221{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:15px;
}
.home-filter-head-v221>div{display:grid;gap:3px;min-width:0}
.home-filter-head-v221 strong{font-size:1.03rem;color:#0f2f5f;line-height:1.25}
.home-filter-kicker-v221{
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
  color:#2563eb;
}
.home-filter-reset-link-v221{
  appearance:none;
  border:1px solid #dbe3ef;
  background:#fff;
  color:#475569;
  border-radius:999px;
  padding:9px 13px;
  font:inherit;
  font-size:.82rem;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease;
}
.home-filter-reset-link-v221:hover{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff;transform:translateY(-1px)}

.home-catalog-filters-v221{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:stretch!important;
  gap:10px!important;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding:2px 1px 9px;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  scrollbar-color:#bfdbfe transparent;
  -webkit-overflow-scrolling:touch;
}
.home-catalog-filters-v221::-webkit-scrollbar{height:6px}
.home-catalog-filters-v221::-webkit-scrollbar-thumb{background:#bfdbfe;border-radius:999px}
.home-catalog-filters-v221::-webkit-scrollbar-track{background:transparent}
.home-catalog-filters-v221 .home-filter-field-v221{
  display:grid!important;
  grid-template-rows:auto 1fr;
  gap:7px!important;
  flex:1 0 190px;
  min-width:190px;
  max-width:260px;
  margin:0;
  padding:11px 12px 12px;
  border:1px solid #e2e8f0;
  border-radius:15px;
  background:rgba(255,255,255,.94);
  box-shadow:0 5px 16px rgba(15,23,42,.035);
  scroll-snap-align:start;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.home-catalog-filters-v221 .home-filter-field-v221:focus-within{
  border-color:#60a5fa;
  box-shadow:0 0 0 3px rgba(37,99,235,.10),0 8px 22px rgba(37,99,235,.08);
  transform:translateY(-1px);
}
.home-catalog-filters-v221 .home-filter-field-v221>span,
.home-catalog-search-v221>span{
  display:flex;
  align-items:center;
  gap:7px;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.025em;
  color:#38516f;
  line-height:1.15;
}
.home-catalog-filters-v221 .home-filter-field-v221>span i,
.home-catalog-search-v221>span i{color:#2563eb;font-size:.79rem;width:14px;text-align:center}
.home-catalog-filters-v221 .home-filter-field-v221 select{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:8px 30px 8px 9px!important;
  border:0!important;
  border-radius:9px!important;
  background-color:#f8fafc!important;
  color:#0f172a;
  font-size:.88rem;
  font-weight:700;
  outline:none;
  cursor:pointer;
}
.home-catalog-filters-v221 .home-filter-field-pack-v221{flex-basis:225px;max-width:310px}

.home-filter-bottom-v221{
  display:flex;
  align-items:end;
  gap:12px;
  margin-top:3px;
}
.home-catalog-search-v221{
  display:grid!important;
  gap:7px!important;
  flex:1 1 420px;
  min-width:0;
  font-weight:800;
  color:#123c74;
}
.home-catalog-search-v221 input{
  width:100%!important;
  min-height:45px!important;
  border:1px solid #dbe3ef!important;
  border-radius:13px!important;
  background:#fff!important;
  padding:10px 13px!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.02);
}
.home-catalog-search-v221 input:focus{outline:none;border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
.home-recommendation-cta-v221{
  flex:0 0 auto;
  min-height:45px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
  border-radius:13px!important;
}
.home-recommendation-cta-v221[hidden]{display:none!important}
.home-catalog-filter-panel-v221 .home-catalog-count{margin:11px 0 0;padding-top:10px;border-top:1px solid #eaf0f7}

@media(min-width:1280px){
  .home-catalog-filters-v221{overflow-x:visible}
  .home-catalog-filters-v221 .home-filter-field-v221{flex:1 1 0;max-width:none;min-width:0}
  .home-catalog-filters-v221 .home-filter-field-pack-v221{flex:1.15 1 0}
}
@media(max-width:760px){
  .home-catalog-filter-panel-v221{padding:16px 14px 14px;border-radius:17px}
  .home-filter-head-v221{align-items:flex-start;margin-bottom:12px}
  .home-filter-head-v221 strong{font-size:.96rem}
  .home-filter-reset-link-v221{padding:8px 10px;font-size:.76rem}
  .home-catalog-filters-v221{
    display:flex!important;
    grid-template-columns:none!important;
    gap:9px!important;
    margin-inline:-2px;
    padding-bottom:10px;
  }
  .home-catalog-filters-v221 .home-filter-field-v221{
    flex:0 0 78vw;
    max-width:290px;
    min-width:230px;
    padding:10px 11px 11px;
  }
  .home-filter-bottom-v221{align-items:stretch;flex-direction:column;gap:10px;margin-top:2px}
  .home-catalog-search-v221{flex:1 1 auto;width:100%}
  .home-recommendation-cta-v221{width:100%!important}
}

/* V22.1 — le filtre reste visible sur tablette/mobile malgré l'ancienne règle V19 */
@media(max-width:800px){
  .home-catalog-filter-panel-v221{display:block!important}
}


/* V22.3 — avantages automatiques + coupon compact */
.coupon-price-card-v223{padding:10px 12px!important;border-radius:14px!important;background:#fbfdff!important}
.coupon-compact-v223{margin:0}
.coupon-compact-v223>summary{cursor:pointer;list-style:none;font-weight:800;color:#334155;display:inline-flex;align-items:center;gap:7px;padding:4px 0;font-size:.92rem}
.coupon-compact-v223>summary::-webkit-details-marker{display:none}
.coupon-compact-v223>summary:before{content:'+';display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eff6ff;color:#1d4ed8;font-weight:900}
.coupon-compact-v223[open]>summary:before{content:'−'}
.coupon-inline-row-v223{margin-top:9px;grid-template-columns:minmax(0,260px) auto!important;justify-content:start}
.coupon-inline-row-v223 input{min-height:38px!important;padding:8px 10px!important}
.coupon-inline-row-v223 .coupon-apply-btn-v2136{min-height:38px!important;min-width:96px!important;padding:8px 13px!important}
.benefits-status-v223:empty{display:none!important}
.benefits-status-v223{margin-top:7px!important;gap:5px!important}
.benefits-status-v223 span{padding:4px 8px!important;font-size:.84rem!important}
.auto-benefit-row-v223 span:first-child{font-weight:700;color:#0f766e}
.auto-benefit-selected-v223{background:#f0fdf4;border-radius:8px;padding:7px 9px}
@media(max-width:640px){.coupon-inline-row-v223{grid-template-columns:1fr!important}.coupon-inline-row-v223 .coupon-apply-btn-v2136{width:100%!important}}


/* V23 — inscription mobile rapide */
.payment-method-choice-v23{margin:0 0 14px;padding:12px 14px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff}
.payment-method-choice-v23 label{display:grid;gap:7px;font-weight:700}
.payment-method-choice-v23 select{min-height:46px;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;background:#fff}
@media (max-width:760px){
  .home-catalog-filters-v221{display:none!important}
  .home-filter-reset-link-v221{display:none!important}
  .home-filter-head-v221 strong{font-size:1rem}
  .home-filter-bottom-v221{grid-template-columns:1fr!important}
  .home-recommendation-cta-v221{display:none!important}
  .recommendation-grid-v22{grid-template-columns:1fr!important}
  .module-check-grid-visible{display:grid!important}
  #registrationModulesList{display:block!important}
  #registrationModulesList .module-check-group{display:block!important}
}

/* V23.3 — Moyens de paiement : 2 cartes par ligne */
.payment-methods-section .fixed-payment-grid.payment-grid-v23{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
  width:100%!important;
}
.payment-methods-section .fixed-payment-grid.payment-grid-v23 .payment-method{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:100%;
}
@media(max-width:760px){
  .payment-methods-section .fixed-payment-grid.payment-grid-v23{
    grid-template-columns:1fr!important;
  }
}


/* V24 — planning lisible + parcours mobile simplifié */
.fast-ack-v24{padding:18px!important;text-align:center;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:16px}
.fast-ack-v24 h3{margin:0 0 8px;color:#166534}
.fast-ack-v24 p{margin:6px 0}
.cohort-session-list .session-date-v24{font-weight:700;color:#0f172a}
.cohort-session-list .session-time-v24{font-weight:800;color:#123c74;white-space:nowrap}
@media(max-width:760px){
  .registration-step-card-v2136{padding:14px!important}
  #registrationModulesList .module-check-group{margin-bottom:10px!important}
  #registrationModulesList label{padding:8px 9px!important;min-height:0!important}
  .cohort-session-card{padding:14px!important}
  .cohort-session-list li{display:grid!important;grid-template-columns:auto 1fr!important;gap:3px 10px!important;align-items:center!important;padding:10px 0!important}
  .cohort-session-list li strong{grid-row:1 / span 2!important}
  .cohort-session-list .session-date-v24{font-size:.9rem!important}
  .cohort-session-list .session-time-v24{font-size:.9rem!important}
  .v64-footer{padding-top:22px!important}
  .v64-footer .footer-grid{gap:16px!important}
}

/* IT Tech Académie V26 — offre simplifiée, parcours 6 mois, conversion mobile */
.old-price{text-decoration:line-through;color:#64748b;font-weight:600}.v26-price{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:12px 0}.v26-price strong{font-size:1.35rem;color:#0f766e}.v26-price-compact strong{font-size:1.15rem}.v26-pathway-link{display:block;color:inherit;text-decoration:none}.v26-pathway-link .btn{display:inline-flex}.v26-duration{margin:.6rem 0;color:#334155}.v26-month-list li{margin:.35rem 0}.v26-module-content{margin:.7rem 0 0;padding-left:1.2rem}.v26-module-content li{margin:.25rem 0}.v26-choice-card{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff;cursor:pointer}.v26-choice-card input{margin-top:4px;min-width:20px;min-height:20px}.v26-choice-card span{display:flex;flex-direction:column;gap:4px}.v26-choice-card:has(input:checked){border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.1)}.v26-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v26-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:620px;overflow:auto;padding-right:4px}.v26-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v26-type-switch label{padding:14px;border:1px solid var(--border);border-radius:12px;font-weight:700}.v26-summary{position:sticky;top:90px}.v26-price-main{font-size:1.5rem;color:#0f766e}.v26-upgrade{margin-top:12px;padding:14px;border:1px solid #fbbf24;background:#fffbeb;border-radius:12px}.v26-success{padding:8px}.v26-success-modules ul{margin-top:8px}.v26-payment-grid,.v26-program-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.v26-month-card{margin-bottom:18px}.v26-project{margin-top:16px;padding:14px;border-left:4px solid #0f766e;background:#f0fdfa;border-radius:8px}.v26-trainers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v26-trainer{text-align:center;padding:12px}.v26-trainer img{width:92px;height:92px;object-fit:cover;border-radius:999px;display:block;margin:0 auto 8px}.v26-trainer strong,.v26-trainer span{display:block}.v26-intro{max-width:720px;margin:0 auto}.v26-intro-hero{text-align:center;padding:30px 0 18px}.v26-lang{display:flex;justify-content:flex-end;gap:6px}.v26-lang button{border:1px solid var(--border);background:#fff;border-radius:8px;padding:7px 10px}.v26-lang button.active{background:#123c74;color:#fff}.v26-intro-offers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v26-intro-offer{padding:16px;border:1px solid var(--border);border-radius:14px;background:#fff}.v26-intro-track{margin-bottom:12px}.v26-intro details{border-bottom:1px solid var(--border);padding:12px 0}.v26-intro summary{font-weight:700;cursor:pointer}.v26-sticky-cta{position:sticky;bottom:8px;z-index:8;display:flex;gap:8px;padding:8px;background:rgba(255,255,255,.96);border:1px solid var(--border);border-radius:12px}.warning{color:#92400e}.v26-standalone{background:#f8fafc}.v26-badge-row{display:flex;gap:8px;flex-wrap:wrap}.v26-badge{padding:6px 9px;border-radius:999px;background:#eff6ff;color:#1e3a8a;font-size:.85rem;font-weight:700}
@media(max-width:760px){.v26-choice-grid,.v26-module-grid,.v26-payment-grid,.v26-program-grid,.v26-trainers,.v26-intro-offers{grid-template-columns:1fr}.v26-summary{position:static}.v26-module-grid{max-height:none}.v26-intro{padding-bottom:12px}}


/* ==========================================================
   IT Tech Académie V26.1 — corrections UI, inscription, RTL
   ========================================================== */
.v261-pathway-card{padding:0!important;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;height:100%;background:#fff}
.v261-pathway-card:focus{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}
.v261-pathway-card>video,.v261-pathway-card>.home-parcours-image{width:100%;aspect-ratio:16/7;object-fit:cover;display:block;background:#eef3f9}
.v261-pathway-card .home-parcours-card-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:10px;height:auto}
.v261-pathway-card .home-parcours-card-body h3{margin:0;min-height:0!important;max-height:none!important}
.v261-pathway-card .v261-pathway-objective{margin:0;color:#475569;line-height:1.5;flex:none!important;min-height:0!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3em}
.v261-pathway-meta{margin:2px 0!important;color:#334155!important;flex:none!important}
.v261-pathway-card .home-parcours-modules{margin:2px 0 0;padding:0;list-style:none;display:grid;gap:0}
.v261-pathway-card .home-parcours-modules li{padding:8px 0;border-top:1px solid rgba(15,43,82,.10);overflow:hidden;white-space:nowrap}
.v261-pathway-price{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-top:4px}
.v261-pathway-price .old-price{font-size:.92rem}.v261-pathway-price strong{font-size:1.25rem;color:#0f766e}
.v261-pathway-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:2px}.v261-pathway-actions .btn{justify-content:center;text-align:center}
.home-catalog-card .v261-home-module-content{margin:8px 16px 14px 34px;padding:0;line-height:1.4;color:#334155}
.home-catalog-card .v261-home-module-content li{margin:5px 0}
.home-catalog-card .home-module-trainer{margin-top:auto}
.home-catalog-card .v26-price,.home-catalog-card .price-stack,.home-catalog-card .price-line{display:none!important}
.registration-form>.grid{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(320px,1fr)!important;gap:22px!important;align-items:start!important;width:100%;max-width:1180px;margin:18px auto 0}
.registration-form>.grid>.span8,.registration-form>.grid>.span4{grid-column:auto!important;min-width:0!important;width:auto!important}
.registration-form>.grid>.span8{display:flex;flex-direction:column;gap:14px}.registration-form>.grid>.span8>.card{margin:0}
.registration-form>.grid>.span4 .v26-summary{width:100%;box-sizing:border-box}.registration-form .v26-summary h3{overflow-wrap:anywhere;word-break:normal}
.v261-price-isolate{direction:ltr!important;unicode-bidi:isolate!important;justify-content:center}.v261-price-isolate bdi{direction:ltr;unicode-bidi:isolate;white-space:nowrap}
[dir="rtl"] .v26-intro-offer{text-align:center}[dir="rtl"] .v26-intro-track{text-align:right}[dir="rtl"] .v26-intro-track .cta-row{direction:rtl}
.v261-intro-team .team-orbit{margin-top:12px}.v261-intro-team .team-orbit-card{min-width:190px}
.v261-music-btn{min-height:44px;border:1px solid #cbd5e1;background:#fff;color:#123c74;border-radius:999px;padding:10px 16px;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(15,23,42,.07);margin:4px auto 0}.v261-music-btn.is-playing{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.v261-music-note{margin:6px 0 16px;color:#64748b}
@media(max-width:1000px){.registration-form>.grid{grid-template-columns:1fr!important}.registration-form>.grid>.span4{order:2}.v26-summary{position:static!important}.home-parcours-grid{grid-template-columns:1fr!important}}
@media(max-width:760px){.v261-pathway-actions{grid-template-columns:1fr}.v261-pathway-card>video,.v261-pathway-card>.home-parcours-image{aspect-ratio:16/8}.v26-type-switch{grid-template-columns:1fr!important}.v26-choice-grid,.v26-module-grid{grid-template-columns:1fr!important}.registration-form>.grid{gap:12px!important;margin-top:12px}.registration-form .card{padding:14px!important}.v26-intro-offers{grid-template-columns:1fr!important}}


/* ========================================================================== */
/* V26.2 — parcours single column, inscription single column, équipe modules */
/* ========================================================================== */
.home-catalog-card .v261-home-module-content{display:none!important}
.home-catalog-card .catalog-body h3{margin-bottom:12px}
.home-catalog-card .home-module-trainer{margin:0 16px 12px;display:flex;flex-direction:column;text-align:center;justify-content:center;padding:14px;background:#f8fbff}
.home-catalog-card .home-module-trainer img{width:92px;height:92px;border-radius:999px;margin:0 auto 8px;object-fit:cover}
.home-catalog-card .home-module-trainer span{align-items:center}
.home-catalog-card .home-module-trainer em{max-width:100%;white-space:normal;text-align:center}
.home-catalog-card .home-module-meta{padding-top:0;display:flex;flex-direction:column;gap:10px;align-items:stretch}
.home-catalog-card .home-module-meta .btn{justify-content:center}

.v262-path-page #pathProgram{max-width:1080px;margin:0 auto}
.v262-path-page .v262-month-card{display:block;width:100%;margin:0 0 20px;padding:24px}
.v262-path-page .v262-program-block{display:block;width:100%;margin-top:22px}
.v262-path-page .v26-program-grid{display:block!important}
.v262-module-team{margin-top:24px;padding-top:20px;border-top:1px solid #dbe3ef}
.v262-module-team h3{margin-bottom:14px}
.v262-module-trainers{display:flex;flex-wrap:wrap;gap:12px}
.v262-module-trainer{display:flex;align-items:center;gap:12px;min-width:260px;max-width:100%;padding:10px 14px;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff;color:inherit;text-decoration:none}
.v262-module-trainer img{width:66px;height:66px;border-radius:999px;object-fit:cover;flex:0 0 auto}
.v262-module-trainer span{display:flex;flex-direction:column;min-width:0}
.v262-module-trainer strong{color:#123c74}
.v262-module-trainer small{color:#64748b;margin-top:3px}

.v262-registration-form{max-width:900px;margin:18px auto 0}
.v262-registration-single{display:flex;flex-direction:column;gap:16px}
.v262-registration-single>.card{margin:0;width:100%;box-sizing:border-box}
.v262-registration-form .v262-form-grid{grid-template-columns:1fr!important}
.v262-registration-form .v26-type-switch,.v262-registration-form .v26-choice-grid,.v262-registration-form .v26-module-grid{grid-template-columns:1fr!important}
.v262-registration-form .v26-module-grid{max-height:none!important;overflow:visible!important}
.v262-registration-form .v26-summary{position:static!important}
.v262-phone-group{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;border:1px solid #dbe3ef;border-radius:13px;background:#fff;overflow:hidden}
.v262-phone-group:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
.v262-registration-form .v262-phone-group input{border:0!important;border-radius:0!important;box-shadow:none!important;min-width:0}
.v262-dial-code{display:flex;align-items:center;justify-content:center;padding:0 14px;font-weight:900;color:#123c74;background:#eff6ff;border-right:1px solid #dbeafe;white-space:nowrap}
.v262-summary{background:linear-gradient(135deg,#f8fbff,#fffaf2)}

.v262-payment-choice{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.v262-payment-choice .card{margin:0;display:flex;flex-direction:column;align-items:flex-start}
.v262-payment-choice .btn{margin-top:auto}
.v262-bank-card{max-width:900px;margin:0 auto}
.v262-bank-list{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.v262-bank-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #dbe3ef;border-radius:12px;background:#f8fafc}
.v262-bank-row>div{display:flex;flex-direction:column;min-width:0}
.v262-bank-row small{color:#64748b;font-weight:700}
.v262-bank-row strong{overflow-wrap:anywhere;color:#0f172a}
.v262-copy{flex:0 0 auto}

@media(max-width:760px){
 .v262-module-trainers{display:grid;grid-template-columns:1fr}
 .v262-module-trainer{min-width:0;width:100%}
 .v262-payment-choice{grid-template-columns:1fr}
 .v262-bank-row{align-items:flex-start;flex-direction:column}
 .v262-copy{width:100%;justify-content:center}
 .v262-registration-form{margin-top:12px}
}


/* V26.3 — inscription style production + responsable module */
.v263-module-responsible{text-align:center}
.v263-module-responsible>h3{text-align:center;margin-bottom:16px}
.v263-module-trainers{justify-content:center!important;align-items:stretch}
.v263-module-trainers .v262-module-trainer{flex-direction:column;justify-content:flex-start;text-align:center;align-items:center;min-width:190px;max-width:230px;padding:16px}
.v263-module-trainers .v262-module-trainer img{width:96px;height:96px;margin:0 auto 8px}
.v263-module-trainers .v262-module-trainer span{align-items:center;text-align:center}

.v263-registration-card{max-width:1080px;margin:0 auto}
.v263-registration-form{max-width:none!important;margin-top:0!important}
.v263-registration-page .registration-step-card-v2136{width:100%;box-sizing:border-box}
.v263-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.v263-phone-input{display:grid;grid-template-columns:100px minmax(0,1fr);gap:0}
.v263-phone-input .v263-dial-code{display:flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;border-right:0;border-radius:12px 0 0 12px;background:#f8fafc;color:#123c74;font-weight:900;min-height:52px}
.v263-phone-input input{border-radius:0 12px 12px 0!important;min-width:0}
.v263-type-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}
.v263-inline-option{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important}
.v263-inline-option>input{flex:0 0 auto!important;margin:0!important;width:20px!important;height:20px!important}
.v263-inline-option>span{display:flex;flex-direction:column;min-width:0}
.v263-type-option{border:1px solid #dbe3ef;border-radius:14px;padding:16px;background:#fff;cursor:pointer}
.v263-type-option:has(input:checked){border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 2px rgba(37,99,235,.08)}
.v263-type-option small{color:#64748b;margin-top:4px}
.v263-choice-panel{margin-top:14px}
.v263-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.v263-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:none!important;overflow:visible!important}
.v263-summary{margin-top:0}
.v263-summary .summary-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e2e8f0}
.v263-summary .final-summary{margin-top:4px;padding:14px 0;border:0;font-size:1.15rem}
.v263-summary .final-summary b{color:#0f766e;font-size:1.35rem}
.v263-old-price{text-decoration:line-through!important;color:#64748b!important}
.v263-selection-modules ul{margin:8px 0 12px;padding-left:22px}
.v263-inline-check{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important}
.v263-inline-check input{flex:0 0 auto!important;margin:3px 0 0!important;width:18px!important;height:18px!important}
.v263-inline-check span{display:inline!important;min-width:0}
.v263-consents{display:flex;flex-direction:column;gap:10px}

@media(max-width:760px){
 .v263-info-grid{grid-template-columns:1fr!important}
 .v263-type-row,.v263-choice-grid,.v263-module-grid{grid-template-columns:1fr!important}
 .v263-phone-input{grid-template-columns:90px minmax(0,1fr)}
 .v263-module-trainers .v262-module-trainer{width:min(100%,300px);max-width:300px}
 .v263-summary .summary-row{align-items:flex-start}
}


/* V26.4 — catalogue SIG M19-M24 + inscription choix en colonne unique */
.v263-type-row,.v263-choice-grid,.v263-module-grid{grid-template-columns:1fr!important}
.v263-type-row{max-width:760px;margin-left:auto;margin-right:auto}
.v263-choice-panel{max-width:900px;margin-left:auto;margin-right:auto}
.v263-choice-grid,.v263-module-grid{width:100%}
.v263-type-option,.v26-choice-card{width:100%;box-sizing:border-box}
.v264-type-price{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}
.v264-type-price b{color:#0f766e;font-size:1.05rem}
.v264-type-price .old-price{text-decoration:line-through;color:#64748b;font-weight:600}
.v263-inline-option>span{width:100%}
.v263-inline-option>input{align-self:flex-start;margin-top:2px!important}
.v263-inline-check{width:100%;box-sizing:border-box}
@media(max-width:760px){.v264-type-price{align-items:flex-start;flex-direction:column!important;gap:3px}.v263-type-row{max-width:none}}

/* V26.5 — sélection modules en liste simple + ordre canonique */
.v265-module-count{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:0 0 14px;
  padding:6px 12px;
  border-radius:999px;
  background:#eef5ff;
  color:#1d4ed8;
  font-size:.9rem;
  font-weight:800;
}
.v265-module-group{margin:0 0 20px;}
.v265-module-group:last-child{margin-bottom:0;}
.v265-module-group h4{
  margin:0 0 10px;
  color:#123c74;
  font-size:1rem;
  line-height:1.35;
}
.v265-module-options{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
}
.v265-module-option{
  min-height:58px;
  align-items:center!important;
  padding:13px 17px!important;
  border-radius:15px!important;
  border:1px solid #d7e4f4!important;
  background:#fff!important;
}
.v265-module-option:hover{border-color:#9fc5ff!important;background:#fbfdff!important;}
.v265-module-option:has(input:checked){border-color:#2563eb!important;background:#f8fbff!important;box-shadow:0 0 0 2px rgba(37,99,235,.08)!important;}
.v265-module-option>input{align-self:center!important;margin:0!important;width:18px!important;height:18px!important;}
.v265-module-option>span{display:block!important;}
.v265-module-option strong{display:block;color:#123c74;font-size:1rem;line-height:1.35;}
#moduleChoiceList.v263-module-grid{display:block!important;max-height:none!important;overflow:visible!important;padding:0!important;}
@media(max-width:760px){
  .v265-module-option{padding:12px 13px!important;min-height:54px;}
  .v265-module-option strong{font-size:.94rem;}
  .v265-module-group h4{font-size:.96rem;}
}


/* V26.6 — règlement enrichi, FAQ utile, header unifié */
.v266-legal-hero,.v266-faq-hero{max-width:980px;margin-left:auto;margin-right:auto;text-align:center}
.v266-rule-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1100px;margin:20px auto 8px}
.v266-rule-summary article{padding:16px;border:1px solid #dbe3ef;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:5px;text-align:center}
.v266-rule-summary strong{color:#123c74;font-size:1.02rem}.v266-rule-summary span{color:#475569;font-size:.92rem}
.v266-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1180px;margin-left:auto;margin-right:auto}
.v266-rule-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;margin:0!important;padding:22px!important;align-items:start}
.v266-rule-no{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:#eaf2ff;color:#123c74;font-weight:900}
.v266-rule-card h2{font-size:1.16rem;margin:3px 0 12px;color:#123c74}.v266-rule-card ul{margin:0;padding-left:20px}.v266-rule-card li{margin:7px 0;line-height:1.55;color:#334155}
.v266-contact-rule,.v266-faq-contact{max-width:980px;margin-left:auto!important;margin-right:auto!important;text-align:center}
.v266-contact-rule .cta-row,.v266-faq-contact .cta-row{justify-content:center}
.v266-faq-tools{max-width:980px;margin:20px auto 8px!important}.v266-faq-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:8px}.v266-faq-search-row input{min-height:48px;border:1px solid #cbd5e1;border-radius:12px;padding:0 14px;font-size:1rem}
.v266-faq-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.v266-faq-chips button{border:1px solid #dbe3ef;border-radius:999px;background:#fff;color:#123c74;padding:8px 12px;font-weight:800;cursor:pointer}.v266-faq-chips button.active{background:#123c74;color:#fff;border-color:#123c74}
.v266-faq-content{max-width:1040px;margin-left:auto;margin-right:auto}.v266-faq-group{margin:0 0 24px}.v266-faq-group>h2{margin:0 0 12px;color:#123c74;font-size:1.35rem}.v266-faq-list{display:flex;flex-direction:column;gap:9px}
.v266-faq-item{border:1px solid #dbe3ef;border-radius:14px;background:#fff;overflow:hidden}.v266-faq-item summary{list-style:none;cursor:pointer;padding:16px 18px;font-weight:800;color:#123c74;display:flex;align-items:center;justify-content:space-between;gap:14px}.v266-faq-item summary::-webkit-details-marker{display:none}.v266-faq-item summary::after{content:'+';font-size:1.4rem;color:#0f766e;flex:0 0 auto}.v266-faq-item[open] summary::after{content:'−'}.v266-faq-answer{padding:0 18px 17px;border-top:1px solid #eef2f7}.v266-faq-answer p{margin:14px 0 0;line-height:1.6;color:#475569}
@media(max-width:900px){.v266-rule-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.v266-rules-grid{grid-template-columns:1fr}}
@media(max-width:620px){.v266-rule-summary{grid-template-columns:1fr 1fr;gap:8px}.v266-rule-summary article{padding:12px 9px}.v266-rule-card{grid-template-columns:40px minmax(0,1fr);padding:16px!important;gap:10px}.v266-rule-no{width:38px;height:38px;border-radius:11px}.v266-faq-search-row{grid-template-columns:1fr}.v266-faq-search-row .btn{width:100%}.v266-faq-item summary{padding:14px}.v266-faq-answer{padding:0 14px 14px}}
\n\n/* ITTA V26.8 — responsables en haut des modules de parcours */
.v268-module-responsible-top{
  margin:12px 0 20px!important;
  padding-top:0!important;
  border-top:0!important;
  text-align:center;
}
.v268-module-responsible-top>h3{margin:0 0 12px!important;text-align:center}
.v268-module-responsible-top .v263-module-trainers{justify-content:center!important}
.v268-module-responsible-top .v262-module-trainer{margin-left:auto;margin-right:auto}
.v26-intro .home-parcours-grid{margin-top:16px}
@media (max-width:1000px){.v26-intro .home-parcours-grid{grid-template-columns:1fr!important}}

/* V26.7 — descriptions des cartes parcours limitées à 2 lignes */
.parcours-card .parcours-top p.small{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  line-height:1.5;
  max-height:3em;
}

/* V27 — modules à la carte, modes de formation et rendez-vous */
.v27-price-cards,.v27-module-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.v27-price-card,.v27-module-price{border:1px solid rgba(18,60,116,.15);border-radius:14px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:5px}.v27-price-card strong,.v27-module-price strong{font-size:1.05rem}.v27-discount-note{padding:12px 14px;border-radius:12px;background:#f5f8fc;margin:12px 0 18px}.v27-module-option{border-bottom:1px solid rgba(15,23,42,.08);padding-bottom:10px;margin-bottom:10px}.v27-mode-choice{display:flex;gap:16px;flex-wrap:wrap;margin:6px 0 0 34px;padding:8px 10px;background:#f8fafc;border-radius:10px}.v27-mode-choice label{display:flex;gap:6px;align-items:center;font-size:.92rem}.v27-module-prices{margin-top:14px}@media(max-width:720px){.v27-price-cards,.v27-module-prices{grid-template-columns:1fr}.v27-mode-choice{margin-left:0}}
