:root{
  --black:#080808;
  --black2:#111111;
  --charcoal:#181818;
  --panel:#202020;
  --white:#f7f7f7;
  --muted:#a6a6a6;
  --line:#303030;
  --red:#ff0026;
  --blue:#4a9df8;
  --blue2:#2d83e7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body{margin:0;background:var(--black);color:var(--white);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.main-nav{background:rgba(6,6,6,.82);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);transition:.2s}
.main-nav.scrolled{background:#050505}
.brand-pair{display:flex;align-items:center;gap:12px}
.brand-pair img:first-child{width:145px;height:auto}
.brand-pair span{color:#777;font-weight:900}
.brand-pair .asmp-nav-logo{width:60px;height:34px;object-fit:contain;object-position:center;filter:none}
.main-nav .nav-link{font-size:.78rem;font-weight:800;text-transform:uppercase;color:#d7d7d7!important;letter-spacing:.02em;padding:.6rem .7rem!important}
.main-nav .nav-link:hover{color:#fff!important}
.btn-primary-nav{background:var(--blue);color:#080808;font-weight:900;border-radius:0;padding:.62rem .95rem;text-transform:uppercase;font-size:.75rem}
.btn-primary-nav:hover{background:#fff;color:#000}

.hero-section{position:relative;min-height:100vh;background:linear-gradient(180deg,#050505 0%,#101010 62%,#171717 100%);overflow:hidden}
.hero-section:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(74,157,248,.14);border-radius:50%;right:-180px;top:120px;box-shadow:0 0 120px rgba(74,157,248,.08)}
.hero-red-line{position:absolute;right:-60px;bottom:16%;width:420px;height:8px;background:var(--red);transform:rotate(-38deg);box-shadow:0 0 30px rgba(255,0,38,.65)}
.eyebrow,.section-kicker{display:flex;align-items:center;gap:10px;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#bdbdbd;margin-bottom:18px}
.eyebrow span{display:inline-block;width:34px;height:5px;background:var(--red)}
.hero-title,.display-heading{font-family:var(--display-font);font-weight:950;letter-spacing:-.055em;line-height:.88;text-transform:uppercase;margin:0}
.hero-title{font-size:clamp(3.4rem,8.2vw,7.7rem)}
.hero-title strong{color:var(--red);font-weight:950}
.hero-subtitle{max-width:850px;font-size:clamp(1rem,1.65vw,1.55rem);font-weight:900;line-height:1.25;text-transform:uppercase;color:#f4f4f4;text-shadow:0 2px 12px #000}
.hero-subtitle b{color:#777;margin:0 .2rem}
.btn-red,.btn-dark-custom{border-radius:0;text-transform:uppercase;font-weight:900;letter-spacing:.02em;padding:.85rem 1.3rem;border-width:2px}
.btn-red{background:var(--red);border-color:var(--red);color:white}
.btn-red:hover{background:white;border-color:white;color:#000}
.btn-outline-light{border-radius:0;font-weight:900;text-transform:uppercase;padding:.85rem 1.3rem;border-width:2px}
.hero-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:720px;background:#333;border:1px solid #333}
.hero-mini-grid>div{display:flex;flex-direction:column;background:#101010;padding:18px}
.hero-mini-grid b{font-family:var(--display-font);font-size:1.65rem;color:#fff}
.hero-mini-grid span{text-transform:uppercase;font-size:.72rem;font-weight:900;color:#aaa}
.campaign-card{position:relative;max-width:425px;margin-left:auto;border:1px solid #333;background:#111;padding:12px;transform:rotate(1.5deg);box-shadow:-28px 28px 0 rgba(74,157,248,.12)}
.campaign-card img{display:block;width:100%}
.campaign-label{position:absolute;left:-26px;top:28px;background:var(--blue);color:#050505;font-size:.68rem;font-weight:900;padding:9px 12px;transform:rotate(-90deg) translateX(-100%);transform-origin:left top;letter-spacing:.08em}

.section{padding:110px 0}
.section-light{background:#f3f3f3;color:#111}
.section-kicker:before{content:"";width:28px;height:4px;background:var(--blue);display:inline-block}
.display-heading{font-size:clamp(2.7rem,6vw,5.8rem)}
.display-heading span{color:var(--red)}
.dark-heading{color:#111}.dark-heading span{color:var(--blue2)}
.lead-copy{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.35;font-weight:800;color:#252525;max-width:790px}
.about-card{padding:32px;border:2px solid #111;background:#fff;position:relative;overflow:hidden}
.about-card:after{content:"";position:absolute;height:7px;left:0;right:0;bottom:0;background:var(--blue)}
.about-card.asmp-card:after{background:var(--red)}
.about-logo{height:44px;width:auto;object-fit:contain;object-position:left center;margin-bottom:28px}
.baker-about-logo{background:#111;padding:9px 14px;height:54px}
.asmp-about-logo{background:#111;padding:7px 14px;height:54px;max-width:160px}
.about-card h3{font-family:var(--display-font);font-size:1.15rem;text-transform:uppercase}
.about-card p{color:#565656;font-weight:700;margin-bottom:0}

.offers-section{background:#111}
.section-intro{max-width:660px;color:#bfbfbf;font-size:1.08rem;font-weight:700}
.expertise-grid{border:2px solid #f2f2f2}
.expertise-grid>div:not(:last-child){border-right:2px solid #f2f2f2}
.expertise-card{height:100%;padding:38px 28px 28px;display:flex;flex-direction:column;min-height:495px}
.expertise-number{font-family:var(--display-font);font-size:2.7rem;color:#fff;text-shadow:5px 4px 0 #8c8c8c;margin-bottom:12px}
.expertise-card h3{font-family:var(--display-font);font-size:1.85rem;line-height:.88;text-transform:uppercase;margin-bottom:22px}.expertise-card h3 span{color:var(--red)}
.expertise-card h4{font-size:1rem;font-weight:900;text-transform:uppercase;margin-bottom:14px}
.expertise-card ul{padding:0;list-style:none;color:#ddd;font-size:.88rem;font-weight:700;line-height:1.7;margin-bottom:25px}
.expertise-card li:before{content:"— ";color:#777}
.objective{border:1px solid #fff;border-radius:999px;display:inline-block;align-self:center;font-size:.64rem;font-weight:900;padding:2px 8px;margin-top:auto}
.objective-copy{text-align:center;font-size:.76rem;font-weight:800;line-height:1.25;margin:10px 0 0;color:#e5e5e5}
.pricing-wrap{border-top:1px solid #444;padding-top:18px}
.pricing-title{font-family:var(--display-font);font-size:clamp(1.4rem,2.5vw,2.1rem)}
.price-card{border:3px solid #f3f3f3;border-radius:24px;padding:18px 28px 20px;background:linear-gradient(180deg,#242424,#1a1a1a)}
.featured-price{box-shadow:0 0 0 3px rgba(74,157,248,.16)}
.price-name,.price-sub{font-family:var(--display-font);line-height:1;text-transform:uppercase}.price-name{font-size:1.35rem}.price-sub{font-size:1.2rem;margin-top:4px}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 10px}
.pill{display:inline-flex;align-items:baseline;gap:3px;border-radius:999px;padding:5px 11px;font-family:var(--display-font);font-size:1.05rem}.pill small{font-size:.58rem}.blue-pill{background:var(--blue)}.red-pill{background:var(--red)}
.price-labels{display:flex;justify-content:space-between;font-size:.65rem;line-height:1.05;font-weight:900}.price-labels span:last-child{text-align:right}
.sponsor-note{text-align:center;color:#ddd;font-size:.78rem;font-weight:800;margin:22px auto 0;max-width:920px}

.realisation-meta{margin-top:30px;border-top:1px solid #bbb}.realisation-meta>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #bbb}.realisation-meta b{text-transform:uppercase;font-size:.75rem}.realisation-meta span{color:#555;font-weight:700;text-align:right}
.btn-dark-custom{background:#111;color:#fff;border-color:#111}.btn-dark-custom:hover{background:var(--blue);border-color:var(--blue);color:#000}
.browser-shot{background:#181818;padding:10px;border:1px solid #333;box-shadow:30px 30px 0 rgba(74,157,248,.16)}
.browser-bar{height:38px;background:#252525;display:flex;align-items:center;gap:7px;padding:0 12px;color:#9d9d9d;font-size:.72rem}.browser-bar i{width:9px;height:9px;border-radius:50%;background:#666}.browser-bar i:first-child{background:var(--red)}.browser-bar i:nth-child(2){background:#ddd}.browser-bar i:nth-child(3){background:var(--blue)}.browser-bar span{margin-left:10px}
.browser-shot img{width:100%;background:#fff;display:block}

.interactive-section{background:#0e0e0e}
.demo-workbench{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.75fr);gap:18px;max-width:1500px;margin:0 auto}
.demo-front-panel,.demo-admin-panel{position:relative;background:#171717;border:1px solid #333;padding:16px;padding-top:54px}
.demo-panel-label{position:absolute;top:0;left:0;background:var(--blue);color:#050505;padding:10px 18px;font-family:var(--display-font);font-size:.78rem;letter-spacing:.08em}.admin-label{background:var(--red);color:#fff}
.mini-browser{border:1px solid #333;background:#fff;color:#111;height:100%}.mini-browser-top{height:34px;background:#202020;display:flex;align-items:center;gap:6px;padding:0 10px;color:#aaa;font-size:.68rem}.mini-browser-top i{width:8px;height:8px;border-radius:50%;background:#777}.mini-browser-top i:first-child{background:var(--red)}.mini-browser-top i:nth-child(3){background:var(--blue)}.mini-browser-top span{margin-left:8px}
.mini-site{background:#f5f5f5;min-height:550px}.mini-site-nav{height:54px;background:#0d0d0d;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 22px}.mini-site-nav strong{font-family:var(--display-font);letter-spacing:.02em}.mini-site-nav nav{display:flex;gap:17px;text-transform:uppercase;font-size:.58rem;font-weight:900;color:#aaa}
.mini-hero{height:245px;background:linear-gradient(110deg,rgba(0,0,0,.85),rgba(0,0,0,.2)),url('../img/club-demo-realisation.png') center 24%/cover;position:relative;color:#fff;display:flex;align-items:center}.mini-hero-content{position:relative;padding:30px;max-width:580px}.mini-hero-content small{font-weight:900;color:var(--blue)}.mini-hero h3{font-family:var(--display-font);font-size:clamp(1.9rem,4vw,3.8rem);line-height:.88;margin:7px 0 15px}.mini-hero button{border:0;background:var(--blue);font-weight:900;text-transform:uppercase;font-size:.65rem;padding:8px 12px}
.mini-content{padding:22px}.mini-section-head{display:flex;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:900;color:#555;margin-bottom:9px}.mini-section-head span{color:#111}
.mini-match-card{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#fff;border:1px solid #ddd;padding:18px;gap:15px}.mini-match-card small{display:block;color:#999;font-size:.55rem;font-weight:900}.mini-match-card strong{display:block;font-size:.85rem}.mini-vs{font-family:var(--display-font);font-size:1.2rem;color:var(--blue)}
.mini-news-card{display:grid;grid-template-columns:150px 1fr;gap:18px;margin-top:18px;background:#fff;border:1px solid #ddd;padding:14px}.mini-news-thumb{min-height:90px;background:linear-gradient(135deg,#111 0 55%,var(--red) 55% 57%,#333 57%)}.mini-news-card small{font-size:.56rem;color:var(--blue);font-weight:900}.mini-news-card h4{font-family:var(--display-font);font-size:1rem;margin:3px 0}.mini-news-card p{font-size:.72rem;color:#777;margin:0}
.fake-admin{background:#f4f6f8;color:#111;min-height:584px;padding:0 18px 18px;position:relative}.fake-admin-head{margin:0 -18px;padding:17px 18px;background:#fff;border-bottom:1px solid #ddd;display:flex;justify-content:space-between}.fake-admin-head strong{font-family:var(--display-font)}.fake-admin-head span{background:#e9eef8;color:#2563eb;padding:4px 8px;font-weight:900;font-size:.65rem}
.fake-tabs{display:flex;gap:7px;padding:17px 0 12px}.fake-tabs button{border:1px solid #ddd;background:#fff;padding:7px 9px;font-weight:900;font-size:.7rem}.fake-tabs button.active{background:#111;color:#fff;border-color:#111}
.fake-form{display:none}.fake-form.active{display:block}.fake-form label{display:block;font-size:.69rem;font-weight:900;margin-bottom:12px;color:#555}.fake-form input,.fake-form textarea{display:block;width:100%;margin-top:5px;border:1px solid #cfd4dc;background:#fff;padding:10px;font:inherit;font-size:.78rem;color:#111;resize:vertical;outline:none}.fake-form input:focus,.fake-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(74,157,248,.12)}
.fake-admin-actions{display:flex;gap:8px;margin-top:14px}.save-demo,.reset-demo{border:0;padding:9px 11px;font-weight:900;font-size:.69rem}.save-demo{background:#2563eb;color:white}.reset-demo{background:#ddd;color:#111}.demo-toast{margin-top:12px;background:#dff4e6;color:#176536;padding:9px 10px;font-size:.68rem;font-weight:900;opacity:0;transform:translateY(5px);transition:.2s}.demo-toast.show{opacity:1;transform:none}

.process-line{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:15px;align-items:start}.process-step b{font-family:var(--display-font);font-size:2.7rem;color:#d5d5d5}.process-step h3{font-family:var(--display-font);font-size:.95rem;margin:6px 0}.process-step p{font-size:.82rem;color:#666;font-weight:700}.process-arrow{font-size:2rem;color:var(--blue);padding-top:48px}
.why-section{background:#161616}.why-grid{border-left:1px solid #333}.why-card{height:100%;border:1px solid #333;background:#101010;padding:25px}.why-card b{font-family:var(--display-font);color:var(--blue);font-size:1.6rem}.why-card h3{font-family:var(--display-font);font-size:1rem;margin:9px 0}.why-card p{color:#aaa;font-size:.84rem;font-weight:700;margin:0}

.faq-accordion .accordion-item{border:0;border-top:1px solid #bbb;border-radius:0;background:transparent}.faq-accordion .accordion-item:last-child{border-bottom:1px solid #bbb}.faq-accordion .accordion-button{background:transparent!important;color:#111!important;box-shadow:none!important;font-family:var(--body-font);font-weight:700;font-size:.95rem;text-transform:uppercase;padding:20px 0;letter-spacing:-.012em;line-height:1.25}.faq-accordion .accordion-button:after{filter:grayscale(1)}.faq-accordion .accordion-body{padding:0 0 22px;color:#555;font-weight:700;line-height:1.6}

.contact-section{background:#0d0d0d}.contact-direct{border-top:1px solid #333;border-bottom:1px solid #333;padding:18px 0;display:flex;flex-direction:column}.contact-direct span{font-size:.65rem;font-weight:900;color:#777}.contact-direct a{font-family:var(--display-font);font-size:1.05rem}.contact-direct a:hover{color:var(--blue)}.contact-logos{display:flex;align-items:center;gap:28px}.contact-logos img:first-child{width:115px;height:60px;object-fit:contain}.contact-logos img:last-child{width:190px}
.quote-form{background:#f3f3f3;padding:28px;color:#111}.quote-form label{display:block;font-size:.69rem;font-weight:900;text-transform:uppercase;color:#555}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #cfd2d6;background:#fff;border-radius:0;padding:12px 11px;font-size:.88rem;outline:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(74,157,248,.15)}.consent-line{display:flex!important;gap:10px;align-items:flex-start;text-transform:none!important;line-height:1.4}.consent-line input{width:auto;margin:2px 0 0!important}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important}
.site-footer{background:#050505;border-top:1px solid #262626;padding:38px 0 20px;color:#a7a7a7;font-size:.75rem}.site-footer b{color:#fff}.site-footer a:hover{color:#fff}.footer-logo-pair{display:flex;align-items:center;gap:18px}.footer-logo-pair img:first-child{width:86px;height:48px;object-fit:contain}.footer-logo-pair img:last-child{width:150px}.footer-logo-pair span{height:45px;width:1px;background:#666}.footer-bottom{border-top:1px solid #222;margin-top:28px;padding-top:18px;font-size:.65rem;color:#666}

@media(max-width:1199.98px){.main-nav .nav-link{font-size:.68rem;padding:.55rem .45rem!important}.demo-workbench{grid-template-columns:1fr}.demo-admin-panel{max-width:760px;width:100%;margin:0 auto}.mini-site{min-height:auto}}
@media(max-width:991.98px){.main-nav{background:#050505}.navbar-collapse{padding:16px 0}.btn-primary-nav{display:inline-block}.hero-section .min-vh-100{min-height:auto!important;padding-top:140px!important;padding-bottom:90px!important}.expertise-grid{border:0}.expertise-grid>div:not(:last-child){border-right:0}.expertise-card{border:2px solid #f2f2f2;margin-bottom:12px;min-height:auto}.process-line{grid-template-columns:1fr}.process-arrow{display:none}.process-step{border-left:5px solid var(--blue);padding-left:18px}.why-grid{border:0}}
@media(max-width:767.98px){.section{padding:78px 0}.brand-pair img:first-child{width:125px}.brand-pair .asmp-nav-logo{width:48px}.hero-title{font-size:clamp(3rem,16vw,5rem)}.hero-mini-grid{grid-template-columns:1fr}.hero-mini-grid>div{flex-direction:row;align-items:center;gap:15px}.display-heading{font-size:clamp(2.45rem,13vw,4rem)}.price-row{align-items:stretch}.pill{font-size:.92rem}.browser-shot{box-shadow:12px 12px 0 rgba(74,157,248,.16)}.demo-front-panel,.demo-admin-panel{padding-left:9px;padding-right:9px}.mini-site-nav nav{display:none}.mini-hero{height:220px}.mini-hero-content{padding:20px}.mini-content{padding:12px}.mini-match-card{padding:12px;grid-template-columns:1fr auto 1fr}.mini-match-card strong{font-size:.68rem}.mini-news-card{grid-template-columns:90px 1fr;gap:11px}.mini-news-card h4{font-size:.8rem}.contact-logos{flex-wrap:wrap}.quote-form{padding:20px}}

/* =========================================================
   V2 — lisibilité, courbe de croissance, logos équilibrés,
   animations et footer complet
   ========================================================= */

/* Titres : esprit affiche conservé, proportions adaptées au web */
.hero-title{
  font-size:clamp(3.15rem,5.4vw,5.8rem);
  line-height:.91;
  letter-spacing:-.045em;
  max-width:780px;
}
.display-heading{
  font-size:clamp(2.55rem,4.15vw,4.45rem);
  line-height:.94;
  letter-spacing:-.045em;
}
#apropos .display-heading{max-width:560px}
#realisations .display-heading{font-size:clamp(2.45rem,3.55vw,3.75rem);max-width:560px}
#pourquoi .display-heading{font-size:clamp(2.5rem,3.8vw,4rem);max-width:570px}
#faq .display-heading{font-size:clamp(2.55rem,3.85vw,4.05rem);max-width:560px}
.hero-subtitle{font-size:clamp(.98rem,1.25vw,1.28rem);max-width:780px}
.lead-copy{font-size:clamp(1.08rem,1.45vw,1.42rem)}

/* Logos : recadrés dans les assets, puis rééquilibrés visuellement */
.brand-pair img:first-child{width:142px;height:auto}
.brand-pair .asmp-nav-logo{width:92px;height:auto;object-fit:contain}
.about-logo{object-fit:contain;object-position:left center;margin-bottom:26px}
.baker-about-logo{background:#111;padding:10px 14px;width:184px;height:auto}
.asmp-about-logo{background:#111;padding:10px 14px;width:132px;height:auto;max-width:none}
.contact-logos img:first-child{width:132px;height:auto;object-fit:contain}
.contact-logos img:last-child{width:198px;height:auto;object-fit:contain}

/* Hero — visualisation de croissance, volontairement abstraite */
.growth-visual{
  position:relative;
  max-width:520px;
  margin-left:auto;
  padding:22px 22px 18px;
  border:1px solid #30343a;
  background:linear-gradient(155deg,#151719 0%,#0c0d0f 62%,#15191f 100%);
  box-shadow:-28px 28px 0 rgba(74,157,248,.08),0 25px 80px rgba(0,0,0,.38);
  overflow:hidden;
  transform:perspective(1200px) rotateY(-3deg) rotateX(1deg);
  transition:transform .45s ease,box-shadow .45s ease,border-color .45s ease;
}
.growth-visual:hover{
  transform:perspective(1200px) rotateY(0) rotateX(0) translateY(-7px);
  border-color:rgba(74,157,248,.65);
  box-shadow:-18px 24px 0 rgba(74,157,248,.11),0 30px 90px rgba(0,0,0,.48);
}
.growth-visual:before{
  content:"";position:absolute;inset:-30% 40% 45% -15%;
  background:radial-gradient(circle,rgba(74,157,248,.14),transparent 65%);
  pointer-events:none;
}
.growth-head{display:flex;align-items:end;justify-content:space-between;gap:20px;position:relative;z-index:2;padding:4px 2px 15px;border-bottom:1px solid #2b2e33}
.growth-head span{font-size:.68rem;font-weight:900;letter-spacing:.13em;color:#858b95}
.growth-head strong{font-family:var(--display-font);font-size:2rem;line-height:1;color:var(--blue)}
.growth-chart{height:360px;position:relative;overflow:hidden}
.chart-grid{position:absolute;inset:18px 0 24px;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:100% 25%,20% 100%;mask-image:linear-gradient(to right,transparent,#000 12%,#000 90%,transparent)}
.growth-chart svg{position:absolute;inset:24px 4px 10px;width:calc(100% - 8px);height:calc(100% - 34px);overflow:visible}
.growth-line{stroke-dasharray:1000;stroke-dashoffset:1000;animation:drawGrowth 1.9s cubic-bezier(.2,.72,.25,1) .25s forwards}
.growth-area{opacity:0;animation:fadeGrowth .9s ease 1.25s forwards}
.growth-dot{fill:#fff;stroke:var(--blue);stroke-width:5;opacity:0;animation:dotIn .45s ease forwards}
.dot-1{animation-delay:1.15s}.dot-2{animation-delay:1.55s}.dot-3{animation-delay:1.92s}
.growth-badge{position:absolute;z-index:4;background:rgba(9,10,12,.9);border:1px solid #363b43;padding:8px 10px;min-width:92px;box-shadow:0 10px 25px rgba(0,0,0,.28);opacity:0;animation:badgeIn .5s ease forwards}
.growth-badge small{display:block;font-size:.52rem;font-weight:900;letter-spacing:.09em;color:#777f8b}.growth-badge b{font-family:var(--display-font);font-size:.92rem;color:#fff}.badge-one{left:22%;bottom:20%;animation-delay:1.2s}.badge-two{left:57%;top:35%;animation-delay:1.6s}.badge-three{right:1%;top:5%;border-color:rgba(74,157,248,.6);animation-delay:2s}.badge-three b{color:var(--blue)}
.growth-footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;color:#6f7580;font-size:.56rem;font-weight:900;letter-spacing:.08em}.growth-footer i{width:4px;height:4px;border-radius:50%;background:var(--red)}
@keyframes drawGrowth{to{stroke-dashoffset:0}}
@keyframes fadeGrowth{to{opacity:1}}
@keyframes dotIn{from{opacity:0;transform:scale(.3);transform-origin:center}to{opacity:1;transform:scale(1)}}
@keyframes badgeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* Interactions et micro-animations */
.btn,.nav-link,.footer-links a,.footer-cta{transition:transform .22s ease,color .22s ease,background-color .22s ease,border-color .22s ease,opacity .22s ease}
.btn:hover{transform:translateY(-3px)}
.about-card,.expertise-card,.price-card,.why-card,.browser-shot,.demo-front-panel,.demo-admin-panel,.process-step{
  transition:transform .32s cubic-bezier(.2,.7,.25,1),box-shadow .32s ease,border-color .32s ease,background-color .32s ease;
}
.about-card:hover{transform:translateY(-8px);box-shadow:0 18px 42px rgba(0,0,0,.12)}
.expertise-card:hover{background:#171717;transform:translateY(-7px)}
.price-card:hover{transform:translateY(-7px) scale(1.012);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.why-card:hover{transform:translateY(-6px);border-color:#505050;background:#141414}
.browser-shot:hover{transform:translateY(-7px) scale(1.012);box-shadow:22px 28px 0 rgba(74,157,248,.19)}
.demo-front-panel:hover,.demo-admin-panel:hover{border-color:#50545a}
.process-step:hover{transform:translateY(-5px)}
.about-card:hover .about-logo,.contact-logos img:hover,.footer-logo-pair img:hover{transform:scale(1.045)}
.about-logo,.contact-logos img,.footer-logo-pair img{transition:transform .28s ease}

/* Fade-in au scroll : classe injectée par app.js */
.motion-ready .reveal-on-scroll{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal-on-scroll.reveal-left{transform:translateX(-30px)}
.motion-ready .reveal-on-scroll.reveal-right{transform:translateX(30px)}
.motion-ready .reveal-on-scroll.is-visible{opacity:1;transform:none}

/* Footer — navigation complète */
.site-footer{padding:48px 0 22px}
.footer-logo-pair{gap:16px;margin-bottom:18px}
.footer-logo-pair img:first-child{width:118px;height:auto;object-fit:contain}
.footer-logo-pair img:last-child{width:175px;height:auto;object-fit:contain}
.footer-logo-pair span{height:34px;background:#3b3b3b}
.footer-tagline{max-width:350px;margin:0;color:#777;line-height:1.55;font-weight:700}
.footer-title{display:block;color:#fff!important;font-size:.7rem;letter-spacing:.09em;margin-bottom:13px}
.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{color:#8c8c8c;font-weight:700}.footer-links a:hover{color:#fff;transform:translateX(4px)}
.footer-contact{display:flex;flex-direction:column;gap:12px}.footer-contact>a:first-child{color:#a7a7a7}.footer-cta{display:inline-flex;width:max-content;background:var(--blue);color:#050505!important;padding:9px 12px;font-weight:900;text-transform:uppercase}.footer-cta:hover{background:#fff;transform:translateY(-2px)}
.footer-bottom a{color:#777}.footer-bottom a:hover{color:#fff}

@media(max-width:1199.98px){
  .hero-title{font-size:clamp(3.25rem,6.3vw,5.35rem)}
  .display-heading{font-size:clamp(2.45rem,4.7vw,4rem)}
  #realisations .display-heading,#pourquoi .display-heading,#faq .display-heading{font-size:clamp(2.35rem,4.3vw,3.65rem)}
  .brand-pair img:first-child{width:130px}.brand-pair .asmp-nav-logo{width:82px}
}
@media(max-width:991.98px){
  .display-heading,#realisations .display-heading,#pourquoi .display-heading,#faq .display-heading{font-size:clamp(2.45rem,7vw,3.8rem);max-width:720px}
  #apropos .display-heading{max-width:720px}
  .lead-copy{max-width:760px}
}
@media(max-width:767.98px){
  .brand-pair img:first-child{width:122px}.brand-pair .asmp-nav-logo{width:72px}
  .hero-title{font-size:clamp(2.85rem,14vw,4.4rem);line-height:.92}
  .display-heading,#realisations .display-heading,#pourquoi .display-heading,#faq .display-heading{font-size:clamp(2.35rem,11.5vw,3.55rem);line-height:.95}
  .footer-logo-pair img:first-child{width:105px}.footer-logo-pair img:last-child{width:155px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .motion-ready .reveal-on-scroll{opacity:1!important;transform:none!important}
}

/* =========================================================
   V3 — courbe épurée, contacts doubles, démo enrichie
   ========================================================= */
.growth-curve-only{padding:0;min-height:420px;display:flex;align-items:center;justify-content:center;background:transparent;border-color:#252a31;box-shadow:-24px 24px 0 rgba(74,157,248,.06)}
.growth-curve-only:before{inset:-15% 30% 30% -10%;opacity:.9}
.growth-curve-only .growth-chart{width:100%;height:420px}
.growth-curve-only .growth-chart svg{inset:20px 12px 10px;width:calc(100% - 24px);height:calc(100% - 30px)}

.mini-match-list{display:flex;flex-direction:column;gap:8px}
.mini-match-center{text-align:center;min-width:128px}
.mini-match-date{display:block;margin-bottom:3px;color:#777!important;font-size:.5rem!important;white-space:nowrap}
.mini-match-empty{background:#fff;border:1px dashed #cfd4dc;padding:18px;text-align:center;color:#888;font-size:.7rem;font-weight:800}
.mini-news-thumb{background-position:center;background-size:cover;background-repeat:no-repeat;transition:background-image .2s ease,transform .2s ease}
.mini-news-thumb.has-image{background-color:#ddd}

.fake-form select{display:block;width:100%;margin-top:5px;border:1px solid #cfd4dc;background:#fff;padding:10px;font:inherit;font-size:.78rem;color:#111;outline:none}
.fake-form select:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(74,157,248,.12)}
.fake-form input[type="file"]{font-size:.68rem;padding:8px;background:#fff}
.match-admin-toolbar{display:flex;gap:7px;margin:-2px 0 12px}
.demo-mini-btn{border:0;padding:8px 10px;font-weight:900;font-size:.64rem;text-transform:uppercase;transition:transform .18s ease,opacity .18s ease}
.demo-mini-btn:hover:not(:disabled){transform:translateY(-2px)}
.demo-mini-btn:disabled{opacity:.35;cursor:not-allowed}
.demo-mini-btn-add{background:#111;color:#fff}
.demo-mini-btn-delete{background:#ffe3e7;color:#b0001b}
.demo-help{display:block;margin-top:-6px;color:#8a8a8a;font-size:.58rem;line-height:1.4}

.contact-direct{gap:18px}
.contact-person{display:flex;flex-direction:column;gap:4px}
.contact-person + .contact-person{padding-top:16px;border-top:1px solid #292929}
.contact-direct .contact-person span{font-size:.62rem;font-weight:900;letter-spacing:.05em;color:#777}
.contact-direct .contact-person a{font-size:1rem}
.contact-direct .contact-person:nth-child(2) a{color:var(--blue)}
.contact-direct .contact-person:nth-child(2) a:hover{color:#fff}
.contact-note{color:#666;font-size:.62rem;line-height:1.5;font-weight:700}

@media(max-width:767.98px){
  .growth-curve-only{min-height:310px}.growth-curve-only .growth-chart{height:310px}
  .mini-match-center{min-width:90px}.mini-match-date{white-space:normal}
  .match-admin-toolbar{flex-wrap:wrap}
}

/* =========================================================
   V4 — rendu iPhone renforcé, animations + pages légales
   ========================================================= */
:root{
  --display-font:"Montserrat",Arial,Helvetica,sans-serif;
  --body-font:"Montserrat",Arial,Helvetica,sans-serif;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--body-font);font-synthesis:none;-webkit-font-smoothing:auto;text-rendering:optimizeLegibility}
.hero-title,.display-heading,.expertise-card h3,.price-name,.price-sub,.pricing-title,.why-card h3,.process-step h3,.mini-hero-title,.demo-admin-title{
  font-family:var(--display-font)!important;font-weight:900!important;font-synthesis:none;
}
.main-nav .nav-link,.btn,.section-kicker,.eyebrow,.footer-title{font-family:var(--body-font);font-weight:900}

/* Hero plus vivant */
.hero-section .eyebrow{animation:heroEyebrow .7s ease both .05s}
.hero-title{animation:heroTitleIn .85s cubic-bezier(.16,.8,.2,1) both .16s}
.hero-subtitle{animation:heroSubIn .7s ease both .38s}
.hero-section .btn{animation:heroSubIn .65s ease both .52s}
.hero-mini-grid{animation:heroSubIn .7s ease both .66s}
.hero-red-line{animation:redLineFloat 5.5s ease-in-out infinite alternate}
.growth-curve-only{animation:chartFloat 5.2s ease-in-out infinite}
.growth-curve-only .growth-line{animation:drawGrowth 1.9s cubic-bezier(.2,.72,.25,1) .25s forwards,linePulse 3.2s ease-in-out 2.2s infinite}
.growth-curve-only .growth-area{animation:fadeGrowth .9s ease 1.25s forwards,areaPulse 3.8s ease-in-out 2s infinite}
@keyframes heroEyebrow{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
@keyframes heroTitleIn{from{opacity:0;transform:translateY(34px) scale(.985)}to{opacity:1;transform:none}}
@keyframes heroSubIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes redLineFloat{0%{transform:rotate(-38deg) translate3d(0,0,0)}100%{transform:rotate(-38deg) translate3d(-24px,-12px,0)}}
@keyframes chartFloat{0%,100%{transform:perspective(1200px) rotateY(-3deg) rotateX(1deg) translateY(0)}50%{transform:perspective(1200px) rotateY(-1deg) rotateX(0) translateY(-12px)}}
@keyframes linePulse{0%,100%{filter:url(#lineGlow);opacity:1}50%{opacity:.74}}
@keyframes areaPulse{0%,100%{opacity:1}50%{opacity:.58}}

/* Survols plus présents */
.expertise-card,.price-card,.about-card,.why-card,.process-step,.browser-shot,.demo-front-panel,.demo-admin-panel{will-change:transform}
.expertise-card:hover .expertise-number,.why-card:hover b{transform:translateY(-5px) scale(1.08);text-shadow:0 0 22px rgba(74,157,248,.55)}
.expertise-number,.why-card b{display:inline-block;transition:transform .28s ease,text-shadow .28s ease}
.expertise-card:hover h3 span,.price-card:hover .price-name{color:var(--blue)}
.expertise-card h3 span,.price-name{transition:color .25s ease}
.price-card:hover .pill{transform:scale(1.045)}
.pill{transition:transform .25s ease,box-shadow .25s ease}
.price-card:hover .blue-pill{box-shadow:0 0 22px rgba(74,157,248,.32)}
.price-card:hover .red-pill{box-shadow:0 0 22px rgba(255,0,38,.28)}
.btn{position:relative;overflow:hidden}
.btn:after{content:"";position:absolute;inset:-40% auto -40% -40%;width:28%;background:rgba(255,255,255,.26);transform:skewX(-18deg) translateX(-250%);transition:transform .55s ease;pointer-events:none}
.btn:hover:after{transform:skewX(-18deg) translateX(620%)}
.about-card:hover .about-logo{filter:drop-shadow(0 0 16px rgba(74,157,248,.16))}
.browser-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.16) 48%,transparent 60%);transform:translateX(-120%);transition:transform .8s ease;pointer-events:none}
.browser-shot{position:relative;overflow:hidden}
.browser-shot:hover:after{transform:translateX(120%)}
.fake-form.active{animation:demoPaneIn .36s cubic-bezier(.2,.7,.25,1)}
@keyframes demoPaneIn{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}

/* Variantes de reveal */
.motion-ready .reveal-on-scroll.reveal-scale{transform:scale(.94);filter:blur(4px)}
.motion-ready .reveal-on-scroll.is-visible{filter:none}

/* Footer légal */
.footer-legal-links{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:flex-end}
.footer-legal-links a{color:#777}.footer-legal-links a:hover{color:#fff}

/* Bandeau cookies */
.cookie-banner{position:fixed;z-index:2000;left:20px;right:20px;bottom:18px;display:none;filter:drop-shadow(0 18px 45px rgba(0,0,0,.45))}
.cookie-banner.show{display:block;animation:cookieIn .45s cubic-bezier(.2,.75,.2,1)}
.cookie-banner-inner{max-width:1180px;margin:auto;background:#0b0b0b;border:1px solid #343434;border-left:5px solid var(--blue);padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cookie-banner b{font-size:.78rem;letter-spacing:.08em}.cookie-banner p{margin:5px 0 0;color:#a9a9a9;font-size:.76rem;line-height:1.55;max-width:760px}.cookie-banner a{color:var(--blue);text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex:0 0 auto}.cookie-btn{border:1px solid #555;background:transparent;color:#fff;padding:10px 15px;font-size:.72rem;font-weight:900;text-transform:uppercase;transition:.2s}.cookie-btn:hover{transform:translateY(-2px);border-color:#fff}.cookie-accept{background:var(--blue);border-color:var(--blue);color:#050505}.cookie-refuse:hover{background:#1b1b1b}
@keyframes cookieIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* Pages légales */
.legal-page{background:#f3f3f3;color:#111;min-height:100vh;padding-top:84px}
.legal-hero{background:#0b0b0b;color:#fff;padding:82px 0 66px;position:relative;overflow:hidden}
.legal-hero:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(74,157,248,.18);border-radius:50%;right:-130px;top:-150px}
.legal-title{font-family:var(--display-font);font-weight:900;text-transform:uppercase;letter-spacing:-.045em;font-size:clamp(2.8rem,7vw,5.5rem);line-height:.9;margin:0}
.legal-title span{color:var(--blue)}
.legal-content{padding:72px 0 90px}.legal-card{background:#fff;border:1px solid #d8d8d8;padding:30px;margin-bottom:20px;box-shadow:0 10px 30px rgba(0,0,0,.04)}
.legal-card h2{font-family:var(--display-font);font-weight:900;text-transform:uppercase;font-size:1.2rem;margin:0 0 14px}.legal-card h3{font-size:.93rem;font-weight:900;margin:20px 0 7px}.legal-card p,.legal-card li{font-size:.92rem;line-height:1.7;color:#333}.legal-card a{color:#176cca;text-decoration:underline}.legal-warning{border-left:5px solid var(--red);background:#fff0f2}.legal-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.legal-meta a{display:inline-flex;padding:9px 11px;border:1px solid #444;color:#fff;text-decoration:none;font-size:.72rem;font-weight:900;text-transform:uppercase}.legal-meta a:hover{background:#fff;color:#000}

@media(max-width:767.98px){
  .cookie-banner{left:10px;right:10px;bottom:10px}.cookie-banner-inner{align-items:stretch;flex-direction:column;gap:14px}.cookie-actions{width:100%}.cookie-btn{flex:1}
  .footer-legal-links{justify-content:flex-start}
  .legal-hero{padding:60px 0 48px}.legal-content{padding:44px 0 70px}.legal-card{padding:22px}
}
@media(prefers-reduced-motion:reduce){
  .hero-section .eyebrow,.hero-title,.hero-subtitle,.hero-section .btn,.hero-mini-grid,.hero-red-line,.growth-curve-only,.growth-curve-only .growth-line,.growth-curve-only .growth-area{animation:none!important}
}

/* =========================================================
   V6 — Safari iPhone : graisse harmonisée + verrou horizontal
   ========================================================= */

/* Empêche toute dérive latérale / rubber-band horizontal. */
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip !important;
  overscroll-behavior-x: none;
}
body {
  position: relative;
}
main, header, nav, section, footer {
  max-width: 100%;
  overflow-x: clip;
}
img, svg, video, canvas {
  max-width: 100%;
}
@supports not (overflow: clip) {
  html, body, main, header, nav, section, footer {
    overflow-x: hidden !important;
  }
}

@supports (-webkit-touch-callout: none) {
  html, body {
    overflow-x: hidden !important;
    overscroll-behavior-x: none;
  }
  body {
    touch-action: pan-y;
  }
  .hero-section,
  .hero-section .container-xl,
  .hero-red-line,
  .growth-visual,
  .growth-chart,
  .browser-shot,
  .cookie-banner {
    max-width: 100%;
  }
}



/* =========================================================
   V7 — TYPOGRAPHIE DETERMINISTE TOUS NAVIGATEURS
   Même webfont Montserrat sur Windows, macOS, Android et Safari iOS.
   Plus aucun recours à Arial Black / graisse synthétique / text-stroke.
   ========================================================= */
html,body{font-family:var(--body-font)!important}
.hero-title,.display-heading,.legal-title,.expertise-card h3,.price-name,.price-sub,.pricing-title,.why-card h3,.process-step h3,.mini-hero h3,.mini-news-card h4,.demo-panel-label,.fake-admin-head strong,.expertise-number,.hero-mini-grid b,.pill{
  font-family:var(--display-font)!important;
  font-weight:900!important;
  font-synthesis:none!important;
  -webkit-text-stroke:0!important;
  text-shadow:none;
}
.hero-title,.display-heading,.legal-title{letter-spacing:-.045em}
.faq-accordion .accordion-button{
  font-family:var(--body-font)!important;
  font-weight:700!important;
  font-synthesis:none!important;
  -webkit-text-stroke:0!important;
  letter-spacing:-.012em;
  line-height:1.25;
}
.main-nav .nav-link,.btn,.section-kicker,.eyebrow,.footer-title{font-family:var(--body-font)!important}


/* V8 — ajustements hero + offre 01 */
.hero-subtitle{margin-top:1.75rem;}
@media(max-width:767.98px){.hero-subtitle{margin-top:1.35rem;}}
