/* === MOBILE FIX — HORIZONTAL SCROLL === */
html,body{
  overflow-x:hidden !important;
  max-width:100vw !important;
}
*,*::before,*::after{
  box-sizing:border-box;
}

/* SMOKE / CANVAS — clip overflow */
canvas{max-width:100% !important}
.smoke-ambient,.sa1,.sa2,.sa3{
  max-width:100vw !important;
  overflow:hidden !important;
}

@media(max-width:768px){

/* NAV */
nav#top{padding:12px 16px !important}
nav#top a img{width:30px !important;height:30px !important}
nav#top>a>div{font-size:12px !important}
nav#top>a>div>div:last-child{display:none}
.desktop-nav,nav#top>div:last-of-type{display:none !important}
.mobile-menu-btn{display:block !important}

/* MOBILE NAV OVERLAY */
#mobile-nav-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(5,5,20,.97);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:28px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
#mobile-nav-overlay.open{display:flex}
#mobile-nav-overlay a{color:#ccc;font-size:18px;letter-spacing:3px;text-decoration:none;text-transform:uppercase;padding:12px 24px;border:1px solid rgba(255,255,255,.06);border-radius:10px;width:260px;text-align:center;transition:all .3s}
#mobile-nav-overlay a:hover,#mobile-nav-overlay a:active{color:#fff;border-color:rgba(124,58,237,.4);background:rgba(124,58,237,.1)}
#mobile-nav-overlay .close-nav{position:absolute;top:18px;right:20px;font-size:28px;color:#fff;background:none;border:none;cursor:pointer;padding:8px}

/* HERO */
.section-v1{padding:60px 16px !important}
.section-v1 h2{font-size:clamp(1.4rem,5vw,2.4rem) !important;letter-spacing:0 !important;line-height:1.2 !important}
.section-v1 .desc{font-size:.9rem !important;max-width:100% !important}
.section-v1 .label{font-size:11px !important;letter-spacing:2px !important}
.hero-v1{padding:80px 16px 40px !important}
.hero-v1 h1{font-size:clamp(1.6rem,7vw,2.8rem) !important;line-height:1.15 !important}
.hero-v1 p{font-size:14px !important;max-width:100% !important;padding:0 !important}

/* CTA BUTTONS */
.cta-primary{padding:14px 24px !important;font-size:14px !important;width:100%;text-align:center;display:block !important}
.cta-row,.hero-v1>div:has(.cta-primary){flex-direction:column !important;gap:12px !important;width:100% !important}

/* STATS ROW */
.stats-row{flex-direction:column !important;gap:24px !important;margin-top:32px !important;align-items:center}
.stats-row>div{text-align:center}

/* GRIDS */
.split-section{grid-template-columns:1fr !important;gap:24px !important}
.steps-grid{grid-template-columns:1fr !important;gap:16px !important}
.grid-3{grid-template-columns:1fr !important;gap:20px !important}

/* OUTILS SECTION */
#outils{padding:60px 16px !important}
.outil-btn{padding:16px 14px !important}
.outil-icon{font-size:22px !important}
.outil-title{font-size:13px !important}
.outil-desc{font-size:11px !important;display:none}
.outil-num{font-size:9px !important}

/* OUTILS GRID on /outils/ page */
.outils-grid,.outil-grid,.tools-grid{
  grid-template-columns:1fr !important;
  gap:16px !important;
}

/* MODAL */
#mo{padding:10px !important}
#mb{width:100% !important;height:95vh !important;max-width:100% !important;border-radius:12px !important}
#mb>div:first-child{flex-wrap:wrap;gap:8px}
#mfl{display:none !important}

/* FORM */
.form-v1{max-width:100% !important;padding:0 8px}
.form-v1 .field{margin-bottom:14px}
.form-v1 input,.form-v1 select,.form-v1 textarea{font-size:16px !important;padding:12px 14px !important}
.form-v1 label{font-size:11px !important}

/* CONTACT PAGE SPECIFICS */
.calendly-inline-widget{height:500px !important;min-width:100% !important}

/* === NEW FOOTER V2 — MOBILE === */
.footer-social-bar{padding:14px 0 !important}
.footer-social-bar-inner{flex-direction:column !important;gap:12px !important;text-align:center;padding:0 16px !important}
.footer-social-bar-inner span{font-size:12px !important}

.footer-v2{padding:40px 16px 0 !important}
.footer-v2-inner{grid-template-columns:1fr !important;gap:32px !important}
.footer-v2-tagline{max-width:100% !important}
.footer-v2-bottom{flex-direction:column !important;gap:12px !important;text-align:center;padding:16px 0 !important;margin-top:32px !important}

/* OLD FOOTER fallback */
footer{padding:32px 16px !important;text-align:center}
footer>div{flex-direction:column !important;gap:16px !important}

/* Prevent ANY element from causing horizontal scroll */
section,div,footer,header,nav,main,article,aside,form,table,img,video,canvas,iframe,pre,code{
  max-width:100% !important;
}
img,video,canvas,iframe,svg{
  max-width:100% !important;
  height:auto;
}
table{display:block;overflow-x:auto;max-width:100% !important}
pre,code{overflow-x:auto;max-width:100% !important;word-wrap:break-word}


/* HIDE SMOKE AMBIENT ON MOBILE */
.smoke-ambient,.sa1,.sa2,.sa3{display:none !important}
}

/* --- SMALL MOBILE (< 400px) --- */
@media(max-width:400px){
  .section-v1 h2{font-size:1.3rem !important}
  .cta-primary{font-size:13px !important;padding:12px 16px !important}
  .stats-row .num{font-size:1.8rem !important}
  .outil-btn{padding:12px 10px !important}
  .footer-v2-colhead{font-size:10px !important}
  .footer-v2-col a{font-size:13px !important}
}
