*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:"DM Sans",sans-serif;background:#efeeea;color:#222223;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
:root{--blanc:#efeeea;--marine:#13137f;--noir:#222223;--bleu:#0079f2;--m10:rgba(19,19,127,0.07);--m20:rgba(19,19,127,0.14);--n60:rgba(34,34,35,0.6);--n40:rgba(34,34,35,0.4);--b60:rgba(239,238,234,0.6);--b30:rgba(239,238,234,0.3);--b10:rgba(239,238,234,0.1);--ff:"Cormorant Garamond",serif;--T:0.25s ease;}

/* NAV DESKTOP */
#nav{position:fixed;top:0;left:0;right:0;z-index:9999;height:72px;background:var(--blanc);border-bottom:1px solid var(--m20);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 40px;transition:box-shadow var(--T);}
#nav.sh{box-shadow:0 2px 20px rgba(19,19,127,0.1);}
.ng{display:flex;align-items:center;gap:28px;}
.ng.r{justify-content:flex-end;}
.nb{font-family:"DM Sans",sans-serif;font-size:11px;font-weight:400;letter-spacing:0.13em;text-transform:uppercase;color:var(--noir);background:none;border:none;cursor:pointer;padding:4px 0;position:relative;transition:color var(--T);}
.nb::after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--marine);transition:width var(--T);}
.nb:hover{color:var(--marine);}
.nb:hover::after{width:100%;}
.nb.active{color:var(--marine);}
.nb.active::after{width:100%;}
.nl{cursor:pointer;display:flex;justify-content:center;align-items:center;}
.nl img{height:50px;width:auto;}
.ncta{font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;background:var(--bleu);color:var(--blanc);border:none;padding:9px 20px;cursor:pointer;transition:background var(--T);}
.ncta:hover{background:var(--marine);}
/* HAMBURGER - mobile only */
.ham-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:10001;}
.ham-btn span{display:block;width:24px;height:2px;background:var(--marine);transition:all 0.3s;}
.ham-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ham-btn.open span:nth-child(2){opacity:0;}
.ham-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mob-menu{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:var(--blanc);z-index:9998;flex-direction:column;align-items:center;justify-content:center;gap:0;border-top:1px solid var(--m20);}
.mob-menu.open{display:flex;}
.mob-menu button{font-family:"DM Sans",sans-serif;font-size:16px;font-weight:300;letter-spacing:0.12em;text-transform:uppercase;color:var(--noir);background:none;border:none;border-bottom:1px solid var(--m10);cursor:pointer;padding:20px 40px;width:100%;text-align:center;transition:all 0.2s;}
.mob-menu button:hover,.mob-menu button:active{background:var(--m10);color:var(--marine);}
.mob-menu .mcta{background:var(--bleu);color:var(--blanc);margin:20px 40px 0;width:calc(100% - 80px);border-radius:0;border-bottom:none;font-size:14px;font-weight:500;padding:16px;}
.mob-menu .mcta:hover{background:var(--marine);}

/* PAGES */
.page{display:none;}
.page.active{display:block;animation:fu 0.4s ease forwards;}
@keyframes fu{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}

/* BUTTONS */
.bd{display:inline-block;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;cursor:pointer;background:var(--marine);color:var(--blanc);border:none;padding:14px 36px;clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);transition:background var(--T);}
.bd:hover{background:var(--bleu);}
.bb{display:inline-block;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;cursor:pointer;background:var(--bleu);color:var(--blanc);border:none;padding:14px 36px;clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);transition:background var(--T);}
.bb:hover{background:var(--marine);}
.bg{display:inline-block;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;cursor:pointer;background:transparent;color:var(--marine);border:1.5px solid var(--marine);padding:13px 34px;transition:all var(--T);}
.bg:hover{background:var(--marine);color:var(--blanc);}
.bgw{display:inline-block;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:500;letter-spacing:0.13em;text-transform:uppercase;cursor:pointer;background:transparent;color:var(--blanc);border:1.5px solid var(--b30);padding:11px 24px;transition:all var(--T);}
.bgw:hover{background:var(--blanc);color:var(--marine);}

/* TYPO */
.ey{display:block;font-size:10px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;color:var(--bleu);margin-bottom:14px;}
.hxl{font-family:var(--ff);font-size:clamp(2.8rem,5.5vw,5rem);font-weight:300;line-height:1.06;color:var(--noir);}
.hlg{font-family:var(--ff);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:300;line-height:1.12;color:var(--noir);}
em{font-style:italic;color:var(--marine);}
.bt{font-size:14px;font-weight:300;color:var(--n60);line-height:1.9;}
.dv{width:40px;height:2px;background:var(--bleu);margin:18px 0 22px;}

/* LAYOUT */
.wrap{max-width:1140px;margin:0 auto;padding:0 40px;}
.sec{padding:80px 0;}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:var(--blanc);padding-top:72px;}
.hgb{position:absolute;inset:0;background-image:linear-gradient(var(--m10) 1px,transparent 1px),linear-gradient(90deg,var(--m10) 1px,transparent 1px);background-size:60px 60px;}
.hgl{position:absolute;top:-100px;right:-80px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(0,121,242,0.06) 0%,transparent 70%);pointer-events:none;}
.hwrap{position:relative;z-index:2;width:100%;max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;padding:0 40px;}
.hc{max-width:760px;}
.hvbox{position:relative;width:380px;aspect-ratio:4/5;background:var(--marine);overflow:hidden;opacity:0;transform:translateY(20px);animation:ri 0.9s ease 0.6s forwards;}
.hvbox::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(239,238,234,0.03) 0,rgba(239,238,234,0.03) 1px,transparent 1px,transparent 36px);}
.hvbox .vbl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--ff);font-size:12rem;font-weight:300;color:rgba(239,238,234,0.08);letter-spacing:-0.1em;user-select:none;}
.hvbox .vbadge{position:absolute;bottom:24px;right:24px;background:var(--bleu);width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;}
.hvbox .vbadge .yr{font-family:var(--ff);font-size:1.4rem;font-weight:300;color:var(--blanc);line-height:1;}
.hvbox .vbadge .bl{font-size:8px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(239,238,234,0.55);}
.hc .hxl{margin-bottom:20px;}
.hc .bt{max-width:520px;margin-bottom:36px;}
.hbtns{display:flex;gap:12px;flex-wrap:wrap;}
.rv{opacity:0;transform:translateY(20px);}
.rv.r1{animation:ri 0.9s ease 0.1s forwards;}
.rv.r2{animation:ri 0.9s ease 0.3s forwards;}
.rv.r3{animation:ri 0.9s ease 0.5s forwards;}
.rv.r4{animation:ri 0.9s ease 0.7s forwards;}
.rv.r5{animation:ri 0.9s ease 0.9s forwards;}
@keyframes ri{to{opacity:1;transform:translateY(0);}}

/* PHOTOS */
.photo-banner{width:100%;height:520px;object-fit:cover;object-position:center 30%;display:block;}
.photo-banner.bottom{object-position:center bottom;}
.photo-natural{width:100%;height:auto;display:block;}
.photo-sm{width:100%;height:400px;object-fit:cover;object-position:center;display:block;}

/* STATS */
.sbar{background:var(--marine);padding:40px 0;}
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1140px;margin:0 auto;padding:0 40px;}
.sit{text-align:center;border-right:1px solid var(--b10);padding:0 20px;}
.sit:last-child{border-right:none;}
.sn{font-family:var(--ff);font-size:3rem;font-weight:300;color:var(--blanc);line-height:1;}
.sn sup{font-size:1.2rem;color:var(--bleu);}
.sl{font-size:10px;font-weight:300;letter-spacing:0.2em;text-transform:uppercase;color:var(--b60);margin-top:6px;}

/* 2 COL */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.vpts{display:flex;flex-direction:column;gap:28px;}
.vpt{display:flex;gap:16px;align-items:flex-start;}
.vic{width:36px;height:36px;flex-shrink:0;border:1px solid var(--m20);display:flex;align-items:center;justify-content:center;color:var(--marine);font-family:var(--ff);font-size:14px;font-weight:500;}
.vpt h4{font-size:13px;font-weight:500;color:var(--noir);margin-bottom:4px;}
.vpt p{font-size:12px;font-weight:300;color:var(--n60);line-height:1.8;}

/* NEXT CONF */
.ncs{background:var(--marine);padding:80px 0;position:relative;overflow:hidden;}
.ncs::before{content:"";position:absolute;top:-60px;right:8%;width:360px;height:360px;border-radius:50%;border:1px solid var(--b10);pointer-events:none;}
.nci{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;max-width:1140px;margin:0 auto;padding:0 40px;}
.chip{display:inline-block;background:var(--bleu);color:var(--blanc);font-size:9px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;padding:5px 12px;margin-bottom:18px;}
.mr{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:28px;}
.mi{display:flex;align-items:center;gap:8px;}
.mico{width:28px;height:28px;border:1px solid var(--b30);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;}
.mt{font-size:12px;font-weight:300;color:var(--b60);}
.mt strong{color:var(--blanc);display:block;font-weight:500;}
.cdw{display:flex;flex-direction:column;gap:10px;align-items:flex-end;}
.cdl{font-size:9px;letter-spacing:0.25em;text-transform:uppercase;color:var(--b30);}
.cdb{display:flex;gap:8px;}
.cbox{background:rgba(0,0,0,0.3);border:1px solid var(--b10);text-align:center;padding:14px 16px;min-width:66px;}
.cn{font-family:var(--ff);font-size:2.2rem;font-weight:300;color:var(--blanc);line-height:1;display:block;}
.cu{font-size:8px;letter-spacing:0.2em;text-transform:uppercase;color:var(--b30);display:block;margin-top:4px;}

/* WHY */
.wg{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--m20);}
.wi{background:var(--blanc);padding:40px;border-left:3px solid transparent;transition:background var(--T),border-left-color var(--T);}
.wi:hover{background:var(--m10);border-left-color:var(--bleu);}
.wn{font-family:var(--ff);font-size:3.5rem;font-weight:300;color:var(--m20);line-height:1;margin-bottom:12px;}
.wi h3{font-family:var(--ff);font-size:1.25rem;font-weight:400;color:var(--marine);margin-bottom:10px;}
.wi p{font-size:13px;font-weight:300;color:var(--n60);line-height:1.85;}

/* CTA BAND */
.ctab{background:var(--noir);padding:80px 0;text-align:center;}

/* CONF HERO */
.chero{background:var(--marine);padding:100px 0 70px;position:relative;overflow:hidden;}
.chero::after{content:"";position:absolute;right:5%;top:50%;transform:translateY(-50%);width:400px;height:400px;border-radius:50%;border:1px solid var(--b10);pointer-events:none;}

/* PROGRAMME */
.pg{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(5,auto);grid-auto-flow:column;gap:2px;background:var(--m20);}
.pi{background:var(--blanc);padding:28px 32px;border-left:3px solid transparent;transition:background var(--T),border-left-color var(--T);}
.pi:hover{background:var(--m10);border-left-color:var(--bleu);}
.pt2{font-size:10px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--bleu);margin-bottom:8px;}
.ps{font-family:var(--ff);font-size:1.1rem;font-weight:400;color:var(--marine);margin-bottom:5px;line-height:1.3;}
.psp{font-size:12px;font-weight:300;color:var(--n40);}

/* DR PHOTO - parfaitement rond */
.dr-circle{
  width:180px;height:180px;
  border-radius:50%;
  overflow:hidden;
  flex-shrink:0;
  border:4px solid var(--m20);
  background:var(--m10);
}
.dr-circle img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
}

/* SPEAKER CARD */
.speaker-card{display:flex;gap:40px;align-items:flex-start;margin-top:40px;background:var(--blanc);padding:48px;max-width:760px;}
.speaker-info h3{font-family:var(--ff);font-size:1.6rem;font-weight:400;color:var(--noir);margin-bottom:4px;}
.speaker-info .trole{font-size:10px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--bleu);margin-bottom:16px;display:block;}

/* TARIF */
.tarsec{background:var(--noir);padding:80px 0;}
.tc-single{background:var(--marine);padding:50px;max-width:560px;margin:50px auto 0;text-align:center;}
.tname{font-family:var(--ff);font-size:2rem;font-weight:300;color:var(--blanc);margin-bottom:8px;}
.tdesc{font-size:13px;font-weight:300;color:rgba(239,238,234,0.5);line-height:1.7;margin-bottom:28px;}
.tpr{display:flex;align-items:baseline;gap:6px;justify-content:center;margin-bottom:28px;}
.tamt{font-family:var(--ff);font-size:5rem;font-weight:300;color:var(--blanc);line-height:1;}
.tcur{font-size:1rem;color:rgba(239,238,234,0.45);font-weight:300;}
.tfl{list-style:none;margin-bottom:36px;text-align:left;max-width:360px;margin-left:auto;margin-right:auto;}
.tfl li{font-size:13px;font-weight:300;color:rgba(239,238,234,0.7);padding:8px 0;border-bottom:1px solid rgba(239,238,234,0.07);display:flex;align-items:center;gap:10px;}
.tfl li::before{content:"—";color:var(--bleu);font-size:10px;}
.tbtn{background:var(--bleu);color:var(--blanc);border:none;padding:16px 52px;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;cursor:pointer;transition:background var(--T);clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);}
.tbtn:hover{background:rgba(0,121,242,0.8);}

/* SERVICES */
.sg{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--m20);margin-top:50px;}
.si2{background:var(--blanc);padding:48px 40px;transition:background var(--T);}
.si2:hover{background:var(--m10);}
.snum{font-family:var(--ff);font-size:3.8rem;font-weight:300;color:var(--m20);line-height:1;margin-bottom:14px;}
.si2 h3{font-family:var(--ff);font-size:1.35rem;font-weight:400;color:var(--marine);margin-bottom:12px;}
.si2 p{font-size:13px;font-weight:300;color:var(--n60);line-height:1.9;}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--m20);margin-top:40px;}
.pstep{background:var(--blanc);padding:32px 28px;position:relative;transition:background var(--T);}
.pstep:hover{background:rgba(239,238,234,0.7);}
.pstep::after{content:"→";position:absolute;right:-10px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--m20);z-index:2;}
.pstep:last-child::after{display:none;}
.pnum{font-family:var(--ff);font-size:2.5rem;font-weight:300;color:var(--m20);line-height:1;margin-bottom:10px;}
.pstep h4{font-size:13px;font-weight:500;color:var(--marine);margin-bottom:8px;}
.pstep p{font-size:12px;font-weight:300;color:var(--n60);line-height:1.75;}

/* APROPOS */
.vbox{position:relative;aspect-ratio:4/5;background:var(--marine);overflow:hidden;}
.vbox::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(239,238,234,0.03) 0,rgba(239,238,234,0.03) 1px,transparent 1px,transparent 36px);}
.vbl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--ff);font-size:12rem;font-weight:300;color:rgba(239,238,234,0.08);letter-spacing:-0.1em;user-select:none;}
.vbadge{position:absolute;bottom:24px;right:24px;background:var(--bleu);width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;}
.vbadge .yr{font-family:var(--ff);font-size:1.4rem;font-weight:300;color:var(--blanc);line-height:1;}
.vbadge .bl{font-size:8px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(239,238,234,0.55);}
.apg{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--m20);}
.api{background:var(--blanc);padding:40px;transition:background var(--T);}
.api:hover{background:rgba(239,238,234,0.6);}
.apn{font-family:var(--ff);font-size:3.5rem;font-weight:300;color:var(--m20);line-height:1;margin-bottom:12px;}
.api h3{font-family:var(--ff);font-size:1.25rem;font-weight:400;color:var(--marine);margin-bottom:10px;}
.api p{font-size:13px;font-weight:300;color:var(--n60);line-height:1.85;}
.tmg{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--m20);}
.tmc{background:var(--blanc);padding:48px 40px;transition:background var(--T);}
.tmc:hover{background:var(--m10);}
.tav{width:80px;height:80px;background:var(--marine);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--ff);font-size:1.6rem;font-weight:300;color:var(--blanc);margin-bottom:20px;}
.tmc h3{font-family:var(--ff);font-size:1.5rem;font-weight:400;color:var(--noir);margin-bottom:4px;}
.trole{font-size:10px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--bleu);margin-bottom:16px;display:block;}
.tmc p{font-size:13px;font-weight:300;color:var(--n60);line-height:1.85;}
.tmc p+p{margin-top:12px;}

/* FORMULAIRES */
.form-page-wrap{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;align-items:start;margin-top:60px;}
.form-info{}
.fi-item{padding:18px 0;border-bottom:1px solid var(--m20);}
.fi-label{font-size:10px;font-weight:500;letter-spacing:0.25em;text-transform:uppercase;color:var(--bleu);margin-bottom:6px;}
.fi-value{font-family:var(--ff);font-size:1.15rem;font-weight:300;color:var(--noir);}
.fi-note{margin-top:24px;padding:20px 24px;background:var(--m10);border-left:3px solid var(--marine);}
.fi-note p{font-size:13px;font-weight:300;color:var(--n60);line-height:1.8;}
.fi-quote{margin-top:20px;padding:20px 24px;background:var(--marine);}
.fi-quote p{font-family:var(--ff);font-size:1.1rem;font-weight:300;font-style:italic;line-height:1.6;color:var(--blanc);}
.form-wrap{background:var(--blanc);}
/* Netlify form fields */
form.netlify-form .fg{display:flex;flex-direction:column;gap:6px;margin-bottom:22px;}
form.netlify-form .fg label{font-size:10px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--n40);}
form.netlify-form .fg input,
form.netlify-form .fg select,
form.netlify-form .fg textarea{background:transparent;border:none;border-bottom:1.5px solid var(--m20);padding:10px 0;font-family:"DM Sans",sans-serif;font-size:14px;font-weight:300;color:var(--noir);outline:none;transition:border-color var(--T);width:100%;border-radius:0;-webkit-appearance:none;}
form.netlify-form .fg input:focus,
form.netlify-form .fg select:focus,
form.netlify-form .fg textarea:focus{border-bottom-color:var(--bleu);}
form.netlify-form .fg textarea{border:1.5px solid var(--m20)!important;padding:12px 14px!important;resize:vertical;height:130px;}
form.netlify-form .fg textarea:focus{border-color:var(--bleu)!important;}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.form-submit{background:var(--marine);color:var(--blanc);border:none;padding:14px 40px;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;cursor:pointer;transition:background var(--T);clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);}
.form-submit:hover{background:var(--bleu);}
.form-title{font-family:var(--ff);font-size:1.6rem;font-weight:300;color:var(--marine);margin-bottom:28px;padding-bottom:16px;border-bottom:2px solid var(--marine);}

/* LEGAL */
.lb2{margin-bottom:36px;}
.lb2 h3{font-family:var(--ff);font-size:1.15rem;font-weight:400;color:var(--marine);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--m20);}
.lb2 p,.lb2 li{font-size:13px;font-weight:300;color:var(--n60);line-height:1.85;}
.lb2 ul{list-style:none;}
.lb2 ul li{padding:3px 0;}
.lb2 ul li::before{content:"— ";color:var(--bleu);}

/* FOOTER */
.sf{background:var(--blanc);padding:50px 0 28px;border-top:1px solid var(--m20);}
.fi{max-width:1140px;margin:0 auto;padding:0 40px;}
.ft{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid var(--m20);margin-bottom:24px;}
.ft img{height:40px;width:auto;opacity:0.9;}
.fnav{display:flex;gap:28px;flex-wrap:wrap;}
.fnav button{font-family:"DM Sans",sans-serif;font-size:10px;font-weight:300;letter-spacing:0.14em;text-transform:uppercase;color:rgba(34,34,35,0.45);background:none;border:none;cursor:pointer;transition:color var(--T);}
.fnav button:hover{color:var(--bleu);}
.fb{display:flex;align-items:center;justify-content:space-between;}
.fcpy{font-size:11px;font-weight:300;color:rgba(34,34,35,0.4);}
.flb{font-family:"DM Sans",sans-serif;font-size:11px;font-weight:300;color:rgba(34,34,35,0.4);background:none;border:none;cursor:pointer;transition:color var(--T);}
.flb:hover{color:var(--bleu);}

/* RESPONSIVE */
@media(max-width:900px){
  /* NAV MOBILE */
  #nav{padding:0 16px;height:60px;grid-template-columns:auto 1fr auto;}
  .nl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
  .ng{display:none;}
  .nl img{height:42px;}
  .ham-btn{display:flex;}
  .ncta{display:none;}
  .wrap{padding:0 20px;}
  .hwrap{grid-template-columns:1fr;padding:0 20px;}
  .hvbox{display:none;}
  .hc{margin-left:0;padding:0;}
  .sgrid{grid-template-columns:repeat(2,1fr);padding:0 20px;}
  .two-col,.nci,.tmg,.form-page-wrap,.sec-2col{grid-template-columns:1fr;gap:40px;}
  .wg,.pg,.sg,.apg{grid-template-columns:1fr;}
  .pg{grid-template-rows:none;grid-auto-flow:row;}
  .pgrid{grid-template-columns:1fr 1fr;}
  .pstep::after{display:none;}
  .ft,.fb{flex-direction:column;gap:20px;text-align:center;}
  .cdw{align-items:flex-start;}
  .fr2{grid-template-columns:1fr;}
  .photo-banner{height:280px;}
  .photo-sm{height:220px;}
  .speaker-card{flex-direction:column;align-items:center;text-align:center;padding:32px 24px;gap:24px;}
  .speaker-info{width:100%;text-align:center;}
  .sec{padding:50px 0;}
}

/* ===== AJOUTS POUR VERSION MULTI-PAGES ===== */
/* Liens stylés comme les anciens boutons de navigation */
.ng a.nb, .ng a.ncta { text-decoration:none; display:inline-block; }
.fnav a { font-family:"DM Sans",sans-serif; font-size:10px; font-weight:300; letter-spacing:0.14em; text-transform:uppercase; color:rgba(34,34,35,0.45); text-decoration:none; transition:color var(--T); }
.fnav a:hover { color:var(--bleu); }
a.flb { font-size:11px; font-weight:300; color:rgba(34,34,35,0.4); text-decoration:none; transition:color var(--T); }
a.flb:hover { color:var(--bleu); }
.mob-menu a { font-family:"DM Sans",sans-serif; font-size:16px; font-weight:300; letter-spacing:0.12em; text-transform:uppercase; color:var(--noir); text-decoration:none; border-bottom:1px solid var(--m10); padding:20px 40px; width:100%; text-align:center; transition:all 0.2s; display:block; }
.mob-menu a:hover, .mob-menu a:active { background:var(--m10); color:var(--marine); }
.mob-menu a.mcta { background:var(--bleu); color:var(--blanc); margin:20px 40px 0; width:calc(100% - 80px); border-bottom:none; font-size:14px; font-weight:500; padding:16px; }
.mob-menu a.mcta:hover { background:var(--marine); }
/* Boutons-liens (.bd, .bb, .bg, .bgw, .tbtn) */
a.bd, a.bb, a.bg, a.bgw, a.tbtn { text-decoration:none; }

/* ===== CORRECTIONS TYPOGRAPHIE (SEO h2/h3 cohérents avec ancien design h3/h4) ===== */

/* Page accueil — section "Notre positionnement" : h3 doivent ressembler aux anciens h4 */
.vpt h3{font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;color:var(--noir);margin-bottom:4px;letter-spacing:0;text-transform:none;}

/* Page services — grille "01-06" : les h2 doivent ressembler aux anciens h3 */
.si2 h2{font-family:var(--ff);font-size:1.35rem;font-weight:400;color:var(--marine);margin-bottom:12px;letter-spacing:0;text-transform:none;line-height:1.2;}

/* Page services — étapes "Cadrage du projet etc" : h3 doivent ressembler aux anciens h4 */
.pstep h3{font-family:"DM Sans",sans-serif;font-size:13px;font-weight:500;color:var(--marine);margin-bottom:8px;letter-spacing:0;text-transform:none;}

/* Page mentions légales — h2 doivent ressembler aux anciens h3 */
.lb2 h2{font-family:var(--ff);font-size:1.15rem;font-weight:400;color:var(--marine);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--m20);letter-spacing:0;text-transform:none;}

/* ===== CORRECTIONS NAVIGATION (soulignement parasite des liens <a>) ===== */

/* Forcer no-underline sur TOUS les liens du site (ils étaient des <button> avant) */
a{text-decoration:none;color:inherit;}

/* Re-styler explicitement les liens de la nav pour qu'ils ressemblent aux anciens boutons */
nav#nav a.nb{
  font-family:"DM Sans",sans-serif;
  font-size:11px;
  font-weight:400;
  letter-spacing:0.13em;
  text-transform:uppercase;
  color:var(--noir);
  background:none;
  border:none;
  cursor:pointer;
  padding:4px 0;
  position:relative;
  transition:color var(--T);
  text-decoration:none !important;
  display:inline-block;
}
nav#nav a.nb:hover{color:var(--marine);}
nav#nav a.nb:hover::after{width:100%;}
nav#nav a.nb.active{color:var(--marine);}
nav#nav a.nb.active::after{width:100%;}

/* CTA bouton bleu */
nav#nav a.ncta{
  font-family:"DM Sans",sans-serif;
  font-size:11px;
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
  background:var(--bleu);
  color:var(--blanc);
  border:none;
  padding:9px 20px;
  cursor:pointer;
  transition:background var(--T);
  text-decoration:none !important;
  display:inline-block;
}
nav#nav a.ncta:hover{background:var(--marine);}

/* Menu mobile : aucun soulignement non plus */
.mob-menu a{text-decoration:none !important;}

/* Footer liens : aucun soulignement */
.fnav a, a.flb{text-decoration:none !important;}
