html{overflow-x:hidden}
body{overflow-x:hidden}

@media (max-width:1100px){
.nav-links{gap:20px}
.hero-inner{gap:40px}
.features-grid{grid-template-columns:repeat(2,1fr)}
.footer-top{grid-template-columns:1.5fr 1fr 1fr;gap:32px}
.footer-top>div:last-child{grid-column:2}
}

@media (max-width:991px){
html{font-size:14px}
section{padding:72px 5%}

.nav{height:62px;padding:0 5%}
.nav-links{display:none!important}
.nav-cta{display:none!important}
.nav-hamburger{display:flex}
.nav-hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-menu{top:62px}

.hero{padding:100px 5% 56px;min-height:auto}
.hero-inner{grid-template-columns:1fr;text-align:center;gap:40px}
.hero-chip,.hero-trust,.hero-actions{justify-content:center}
.hero-desc{margin-left:auto;margin-right:auto;font-size:.9rem}
.hero-trust{flex-wrap:wrap}
.hero-visual{margin-top:16px;max-width:520px;margin-left:auto;margin-right:auto}
.metric-card-1{top:-10px;right:0}
.metric-card-2{bottom:12px;left:-6px}
.metric-card-3{display:none}

.stats-inner{grid-template-columns:repeat(2,1fr);gap:14px}
.stat-item::after{display:none}

.features-grid{grid-template-columns:repeat(2,1fr);gap:16px}

/* HOW IT WORKS – 2 colonnes sur tablette */
.steps-wrap{grid-template-columns:repeat(2,1fr);gap:24px}
.steps-wrap::before{display:none}
.step-item{text-align:center}
.step-num{margin:0 auto 18px}

.modules-layout{grid-template-columns:1fr;gap:36px}

.pricing-grid{grid-template-columns:1fr;gap:24px;max-width:440px;margin:48px auto 0}
.pricing-card.featured{transform:none}

.testi-grid{grid-template-columns:1fr;gap:14px;max-width:520px;margin:48px auto 0}

.footer-top{grid-template-columns:repeat(2,1fr);gap:28px}
.footer-top>div:last-child{grid-column:auto}
}

@media (max-width:767px){
html{font-size:14px}
section{padding:60px 4%}

.hero{padding:88px 4% 48px;min-height:auto}
.hero-title{font-size:clamp(1.6rem,7.5vw,2.2rem);letter-spacing:-1px}
.hero-desc{font-size:.88rem}
.hero-visual{display:none}

.section-title{font-size:clamp(1.3rem,6vw,1.75rem);letter-spacing:-.8px}
.cta-title{font-size:clamp(1.4rem,7vw,2rem)}

.stats-strip{padding:48px 4%}
.stats-inner{grid-template-columns:repeat(2,1fr);gap:12px}
.stat-item{padding:20px 16px}
.stat-number{font-size:clamp(1.6rem,8vw,2.2rem)}

.features-grid{grid-template-columns:1fr;gap:14px}

/* HOW IT WORKS – 1 colonne sur mobile, layout en ligne */
.steps-wrap{grid-template-columns:1fr;gap:20px}
.steps-wrap::before{display:none}
.step-item{
    text-align:left;
    display:flex;
    align-items:flex-start;
    gap:16px
}
.step-num{
    margin:0;
    flex-shrink:0;
    /* taille réduite pour le layout en ligne */
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    font-size:.82rem
}
.step-content{flex:1}
.step-title{margin-top:4px}

.module-list{gap:8px}

.pricing-grid{max-width:100%;padding:0}
.pricing-card{padding:24px 20px}
.pricing-price{font-size:1.9rem}

.testi-grid{max-width:100%;padding:0}

.cta-band{padding:60px 4%}
.cta-sub{font-size:.88rem}

footer{padding:48px 4% 24px}
.footer-top{grid-template-columns:1fr;text-align:center;gap:24px}
.footer-top>div:nth-child(2),.footer-top>div:nth-child(3),.footer-top>div:nth-child(4){text-align:left}
.footer-logo,.footer-socials{justify-content:center}
.footer-bottom{flex-direction:column;gap:10px;text-align:center}
.footer-legal{justify-content:center}

.wa-float{bottom:18px;right:16px}
.wa-bubble{max-width:200px}
}

@media (max-width:480px){
section{padding:52px 4%}

.hero{padding:80px 4% 44px}
.hero-title{font-size:clamp(1.5rem,8.5vw,2rem);letter-spacing:-.8px;line-height:1.15}
.hero-chip{font-size:.65rem;padding:5px 12px}
.hero-actions{flex-direction:column;align-items:stretch;gap:10px}
.btn-primary-lg,.btn-outline-lg{width:100%;justify-content:center;padding:14px 20px;font-size:.9rem}
.hero-trust{gap:10px}
.trust-text{font-size:.74rem}

.section-title{font-size:clamp(1.25rem,8vw,1.6rem);letter-spacing:-.6px}
.section-sub{font-size:.85rem}

.stats-inner{grid-template-columns:repeat(2,1fr)}
.stat-number{font-size:clamp(1.6rem,9vw,2.1rem)}
.stat-label{font-size:.92rem}
.stat-desc{font-size:.78rem}
.footer-desc{font-size:.94rem}
.footer-links a{font-size:.92rem}
.footer-col-title{font-size:.72rem}
.footer-copy{font-size:.86rem}
.footer-legal a{font-size:.82rem}

.feature-card{padding:20px 18px}
.feature-title{font-size:.9rem}
.feature-desc{font-size:.8rem}

/* HOW IT WORKS – petits écrans */
.step-item{gap:14px}
.step-num{width:44px;height:44px;min-width:44px;min-height:44px;font-size:.78rem}
.step-title{font-size:.88rem}
.step-desc{font-size:.8rem}

.module-item{padding:12px 14px}
.module-icon{width:36px;height:36px;font-size:.88rem}
.module-name{font-size:.82rem}

.pricing-card{padding:20px 16px;border-radius:16px}
.pricing-price{font-size:1.7rem}
.pf{font-size:.78rem}

.testi-card{padding:20px 18px}
.testi-text{font-size:.8rem}

.cta-actions{flex-direction:column;align-items:stretch;gap:10px}
.btn-cta-w,.btn-cta-b{width:100%;justify-content:center;padding:14px 20px}
.cta-note{font-size:.7rem}

.wa-bubble-wrap{max-width:calc(100vw - 80px)}
.wa-bubble{max-width:180px;padding:10px 12px}
.wa-option{font-size:.7rem;padding:5px 11px}
}

@media (max-width:360px){
html{font-size:13px}
.hero-title{font-size:1.4rem}
.section-title{font-size:1.2rem}
.nav-logo .nav-wordmark{font-size:1rem}
.stats-inner{grid-template-columns:1fr;gap:12px}

/* HOW IT WORKS – très petits écrans */
.step-num{width:40px;height:40px;min-width:40px;min-height:40px;font-size:.72rem}
.steps-wrap{gap:16px}
}

@media (min-width:992px) and (max-width:1200px){
.hero-title{font-size:clamp(1.9rem,2.8vw,2.6rem)}
.hero-inner{gap:44px}
.features-grid{grid-template-columns:repeat(3,1fr);gap:16px}
.pricing-grid{gap:14px}
.pricing-card.featured{transform:scale(1.03)}
.footer-top{gap:28px}
}

@media (hover:none) and (pointer:coarse){
.feature-card:hover{transform:none;box-shadow:none;border-color:var(--border)}
.feature-card:hover::after{opacity:0}
.module-item:hover{border-color:var(--border);background:transparent}
.stat-item:hover{transform:none;border-color:rgba(26,77,224,.10);box-shadow:0 4px 20px rgba(26,77,224,.05)}
.stat-item:hover .stat-icon{transform:none}
.testi-card:hover{transform:none;box-shadow:none;border-color:var(--border)}
.feature-card:active{transform:translateY(-2px);box-shadow:var(--shadow-s)}
.module-item:active{border-color:var(--blue-200);background:var(--blue-50)}
.btn-primary-lg:hover,.btn-outline-lg:hover,.btn-ghost:hover,.btn-solid:hover{transform:none}
.btn-primary-lg:active{transform:scale(.98)}
.btn-outline-lg:active{transform:scale(.98)}
.btn-ghost:active{background:var(--blue-50)}
.btn-solid:active{transform:scale(.98)}
}

@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
.hero::before,.hero::after{animation:none}
.metric-card{animation:none}
.hero-chip,.hero-title,.hero-desc,.hero-actions,.hero-trust{animation:none;opacity:1;transform:none}
.hero-visual{animation:none;opacity:1;transform:none}
}

@media print{
.nav,.mobile-menu,.wa-float,#scroll-progress{display:none!important}
.hero{padding-top:20px;min-height:auto}
.reveal{opacity:1!important;transform:none!important}
section{padding:32px 0}
}

/* Desktop : hero hauteur auto, sans espace, collé directement à dl-section */
@media (min-width:1101px){
.hero{min-height:auto;padding-bottom:60px;margin-bottom:0;overflow:visible}
.dl-section{margin-top:0;padding-top:0}
}