
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');
:root{--paper:#fbfaf7;--white:#fff;--ink:#151515;--muted:#65656a;--line:rgba(21,21,21,.2);--red:#ef3038;--font-title:"Helvetica Neue",Helvetica,Arial,sans-serif;--font-text:"Manrope","Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
html.intro-locked,html.intro-locked body{overflow:hidden}
body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:var(--font-text)}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}

.intro-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;width:100%;border:0;padding:0;cursor:pointer;background:#fff}
.intro-logo-slot{position:fixed;top:14px;left:clamp(24px,4vw,68px);width:152px;height:54px;transform:translate3d(calc(50vw - clamp(24px,4vw,68px) - 76px),calc(50vh - 41px),0) scale(2.83);transform-origin:center;transition:transform 1.35s cubic-bezier(.77,0,.18,1);will-change:transform}
.intro-logo{display:block;width:152px;height:auto}
.intro-instruction{position:absolute;bottom:5vh;color:#777;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;opacity:0;animation:intro-hint .6s ease 1.1s forwards}
.intro-moving{pointer-events:none;animation:intro-background 1.4s ease forwards}
.intro-moving .intro-logo-slot{transform:none}
.intro-moving .intro-instruction{opacity:0!important;animation:none}
@keyframes intro-hint{to{opacity:.72}}
@keyframes intro-background{0%,68%{background:rgba(255,255,255,1)}100%{background:rgba(255,255,255,0)}}

.site-header{position:fixed;z-index:100;top:0;left:0;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:82px;padding:14px clamp(24px,4vw,68px);border-bottom:1px solid rgba(21,21,21,.08);background:rgba(251,250,247,.92);backdrop-filter:blur(14px)}
.brand img{display:block;width:152px;height:auto}
.site-header nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,38px);font-size:13px;font-weight:560}
.site-header nav>a:not(.header-cta){transition:color .2s ease}
.site-header nav>a:not(.header-cta):hover{color:var(--red)}
.header-cta{border-radius:999px;padding:12px 20px;background:var(--red);color:#fff;box-shadow:0 8px 22px rgba(239,48,56,.16);transition:transform .25s ease,box-shadow .25s ease}
.header-cta:hover{color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(239,48,56,.24)}

.story{--photo-top:0%;--photo-left:45%;--photo-width:55%;--photo-height:100%;--photo-radius:30px;--shade-opacity:0;--story-title-opacity:0;--story-title-shift:28px;--intro-opacity:1;--photo-scale:1.04;position:relative;height:245vh;background:var(--paper)}
.story-sticky{position:sticky;top:0;height:100vh;min-height:650px;overflow:hidden}
.story-intro{position:absolute;z-index:2;top:50%;left:clamp(24px,6vw,96px);width:37%;opacity:var(--intro-opacity);transform:translateY(-44%);pointer-events:none}
.eyebrow{margin:0;color:var(--red);font-size:11px;font-weight:650;letter-spacing:.18em;text-transform:uppercase}
.story-intro h1,.story-title h2,.section-heading h2,.solutions-heading h2,.universe-heading h3,.editorial-copy h3,.continuity-words span,.final-cta h2,.seo-page h1,.ltoa-legal h1{font-family:var(--font-title);font-weight:500}
.story-intro h1,.section-heading h2,.solutions-heading h2,.final-cta h2{margin:0;letter-spacing:-.035em}
.story-intro h1{max-width:9.1ch;margin-top:30px;color:var(--red);font-size:clamp(53px,5.65vw,94px);line-height:.91}
.story-intro h1 span{display:block}
.story-lead{max-width:36ch;margin:30px 0 0;color:var(--muted);font-size:clamp(15px,1.25vw,19px);line-height:1.55}
.story-photo{position:absolute;z-index:1;top:var(--photo-top);left:var(--photo-left);width:var(--photo-width);height:var(--photo-height);overflow:hidden;border-radius:var(--photo-radius) 0 0 var(--photo-radius);background:#ddd;will-change:top,left,width,height,border-radius}
.story-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 47%;transform:scale(var(--photo-scale));will-change:transform}
.story-shade{position:absolute;inset:0;background:#0d1012;opacity:var(--shade-opacity)}
.story-title{position:absolute;z-index:2;top:50%;left:50%;width:min(1050px,84vw);color:#fff;text-align:center;opacity:var(--story-title-opacity);transform:translate(-50%,calc(-50% + var(--story-title-shift)))}
.story-title p{margin:0 0 24px;color:rgba(255,255,255,.76);font-size:11px;font-weight:650;letter-spacing:.18em;text-transform:uppercase}
.story-title h2{margin:0;color:#fff;font-size:clamp(58px,7.4vw,118px);font-weight:500;letter-spacing:-.065em;line-height:.9}
.story-title span{display:block;max-width:600px;margin:32px auto 0;color:rgba(255,255,255,.8);font-size:clamp(15px,1.2vw,19px);line-height:1.55}
.scroll-cue{position:absolute;z-index:5;bottom:24px;left:50%;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.82);font-size:9px;font-weight:650;letter-spacing:.16em;text-transform:uppercase;transform:translateX(-50%);mix-blend-mode:difference}
.scroll-cue span{width:18px;height:26px;border:1px solid currentColor;border-radius:999px}
.scroll-cue span:after{content:"";display:block;width:2px;height:5px;margin:5px auto 0;border-radius:2px;background:currentColor;animation:scroll-dot 1.4s ease infinite}
@keyframes scroll-dot{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(8px)}}

.section-shell{padding-right:clamp(24px,6vw,96px);padding-left:clamp(24px,6vw,96px)}
.proof{padding-top:clamp(95px,11vw,170px);padding-bottom:clamp(100px,12vw,180px);background:var(--white)}
.section-heading h2,.solutions-heading h2{max-width:1380px;margin-top:32px;font-size:clamp(50px,6.15vw,96px);line-height:.96}
.section-heading h2>span,.solutions-heading h2>span,.final-cta h2>span{display:block;white-space:nowrap}
.proof .section-heading h2,.solutions-heading h2{display:grid;row-gap:clamp(7px,.65vw,12px)}
.proof .section-heading{text-align:center}
.proof .section-heading h2{max-width:1400px;margin-right:auto;margin-left:auto}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(70px,8vw,120px)}
.proof-grid article{display:flex;min-height:215px;flex-direction:column;align-items:center;justify-content:space-between;padding:28px clamp(24px,3vw,48px);text-align:center}
.proof-grid article+article{border-left:1px solid var(--line)}
.proof-grid strong{color:var(--red);font-size:clamp(24px,2.5vw,39px);font-weight:520;letter-spacing:-.04em}
.proof-grid p{max-width:23ch;margin:52px 0 0;color:var(--muted);font-size:15px;line-height:1.55}

.solutions{background:var(--paper)}
.solutions-heading{padding-top:clamp(95px,11vw,170px);padding-bottom:clamp(100px,12vw,180px)}
.solution-universe{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,8vw,150px);padding-top:clamp(80px,9vw,135px);padding-bottom:clamp(90px,10vw,155px);background:var(--white)}
.universe-heading{display:grid;grid-template-columns:50px 1fr;gap:18px;align-content:start}
.universe-heading>span{padding-top:11px;color:var(--red);font-size:12px;font-weight:650;letter-spacing:.14em}
.universe-heading h3{margin:0;font-size:clamp(48px,6vw,93px);font-weight:470;letter-spacing:-.065em;line-height:.94}
.universe-heading p{max-width:32ch;margin:28px 0 0;color:var(--muted);font-size:16px;line-height:1.55}
.solution-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.solution-list a{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:84px;border-bottom:1px solid var(--line);font-size:clamp(18px,1.8vw,28px);font-weight:500;letter-spacing:-.025em;transition:padding .32s cubic-bezier(.22,1,.36,1),color .25s ease}
.solution-list a:before{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.solution-list a:hover{padding-right:12px;padding-left:12px;color:var(--red)}
.solution-list a:hover:before{transform:scaleX(1)}
.solution-list b{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(239,48,56,.32);border-radius:50%;color:var(--red);font-family:Arial,sans-serif;font-size:18px;font-weight:400;transition:transform .3s ease,background .3s ease,color .3s ease}
.solution-list a:hover b{background:var(--red);color:#fff;transform:translate(3px,-3px)}

.editorial-interlude{--interlude-progress:0;--image-shift:54px;--image-scale:.97;--copy-shift:42px;--copy-opacity:0;--line-progress:0%;position:relative;height:126vh;min-height:900px;overflow:clip;background:var(--paper)}
.editorial-stage{position:sticky;top:82px;display:flex;height:calc(100vh - 82px);min-height:650px;align-items:center;justify-content:center;gap:clamp(44px,7vw,118px);overflow:hidden;padding:clamp(40px,5vw,78px) clamp(24px,5vw,80px)}
.editorial-number{position:absolute;z-index:0;top:50%;left:clamp(18px,3vw,52px);color:rgba(239,48,56,.055);font-size:clamp(250px,34vw,590px);font-weight:520;letter-spacing:-.09em;line-height:.7;transform:translateY(-50%);pointer-events:none}
.editorial-visual{position:relative;z-index:1;flex:0 0 auto;margin:0;overflow:hidden;background:transparent;box-shadow:none;transform:translate3d(0,var(--image-shift),0) scale(var(--image-scale));transform-origin:center;will-change:transform}
.editorial-format-portrait{width:min(38vw,535px);height:min(74vh,820px);aspect-ratio:1444/2200}
.editorial-format-landscape{width:min(57vw,970px);height:auto;aspect-ratio:16/9}
.editorial-visual img{display:block;width:100%;height:100%;object-fit:cover}
.editorial-fit-contain img{object-fit:contain}
.editorial-visual figcaption{position:absolute;right:12px;bottom:10px;padding:6px 8px;background:rgba(16,16,16,.64);color:rgba(255,255,255,.82);font-size:8px;letter-spacing:.08em}
.editorial-copy{position:relative;z-index:2;width:min(39vw,610px);opacity:var(--copy-opacity);transform:translate3d(var(--copy-shift),0,0);will-change:transform,opacity}
.editorial-rule{display:block;width:var(--line-progress);height:1px;margin-bottom:30px;background:var(--red)}
.editorial-copy>p{margin:0;color:var(--red);font-size:10px;font-weight:650;letter-spacing:.18em;text-transform:uppercase}
.editorial-copy h3{max-width:15ch;margin:28px 0 0;font-size:clamp(40px,4.55vw,72px);font-weight:470;letter-spacing:-.06em;line-height:.96}
.editorial-copy-professionnels h3{max-width:16.5ch}
.editorial-copy-associations{width:min(43vw,690px)}
.editorial-copy-associations h3{max-width:18.5ch;font-size:clamp(38px,4vw,64px);font-weight:620;letter-spacing:-.052em;line-height:.98}
.editorial-copy strong{display:block;max-width:39ch;margin-top:30px;color:var(--muted);font-size:15px;font-weight:430;line-height:1.62}
.editorial-right .editorial-stage{flex-direction:row-reverse}
.editorial-right .editorial-copy{transform:translate3d(calc(0px - var(--copy-shift)),0,0)}
.editorial-right .editorial-number{right:clamp(18px,3vw,52px);left:auto}
.editorial-right .editorial-rule{margin-left:auto}

.continuity{--manifesto-opacity:0;--manifesto-a:82px;--manifesto-b:-82px;--kicker-left:50vw;--kicker-top:50vh;--kicker-translate:-50%;--kicker-scale:1;position:relative;height:172vh;overflow:clip;background:#111;color:#fff}
.continuity-stage{position:sticky;top:0;height:100vh;min-height:650px;overflow:hidden;padding:clamp(74px,8vw,120px) clamp(24px,6vw,96px)}
.continuity-kicker{position:absolute;z-index:2;top:var(--kicker-top);left:var(--kicker-left);width:min(880px,86vw);margin:0;color:#fff;font-size:clamp(29px,3.45vw,53px);font-weight:600;letter-spacing:-.035em;line-height:1.12;text-align:center;transform:translate(var(--kicker-translate),var(--kicker-translate)) scale(var(--kicker-scale));transform-origin:left top;will-change:top,left,transform}
.continuity-words{margin-top:clamp(112px,12vw,170px)}
.continuity-words span{display:block;color:#fff;font-size:clamp(70px,12.5vw,200px);font-weight:470;letter-spacing:-.075em;line-height:.76;opacity:var(--manifesto-opacity);will-change:transform,opacity}
.continuity-words span:nth-child(1),.continuity-words span:nth-child(3){transform:translateX(var(--manifesto-a))}
.continuity-words span:nth-child(2){color:var(--red);text-align:right;transform:translateX(var(--manifesto-b))}

.commitments{padding-top:clamp(105px,12vw,180px);padding-bottom:clamp(110px,13vw,190px);background:var(--white)}
.commitment-grid{display:grid;grid-template-columns:repeat(2,1fr);margin-top:clamp(75px,8vw,125px);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.commitment-grid article{min-height:300px;padding:clamp(30px,4vw,62px);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.commitment-grid span{color:var(--red);font-size:12px;font-weight:650;letter-spacing:.15em}
.commitment-grid h3{max-width:16ch;margin:58px 0 18px;font-size:clamp(25px,2.5vw,39px);font-weight:520;letter-spacing:-.045em;line-height:1.02}
.commitment-grid p{max-width:45ch;margin:0;color:var(--muted);font-size:15px;line-height:1.6}
.final-cta{min-height:78vh;padding:clamp(90px,10vw,150px) clamp(24px,6vw,96px);background:var(--red);color:#fff}
.final-cta .eyebrow{color:rgba(255,255,255,.74)}
.final-cta h2{max-width:1450px;margin-top:34px;font-size:clamp(54px,7.1vw,112px);line-height:.92}
.final-cta>div{display:flex;gap:12px;margin-top:58px}
.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;padding:0 23px;font-size:14px;font-weight:650}
.button-light{background:#fff;color:var(--red)}
.button-outline{border-color:rgba(255,255,255,.55);color:#fff}
footer{display:grid;grid-template-columns:190px 1fr 1fr;gap:36px 60px;align-items:start;padding:55px clamp(24px,6vw,96px);background:#111;color:#fff}
footer>img{width:160px;filter:brightness(0) invert(1)}
.footer-contact,.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:11px;font-size:12px;color:rgba(255,255,255,.72)}
.footer-contact strong,.footer-links strong{margin-bottom:6px;color:#fff;font-size:13px}
.footer-contact a:hover,.footer-links a:hover{color:#fff}
footer>p{grid-column:1/-1;margin:0;color:rgba(255,255,255,.44);font-size:10px}
[data-reveal]{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}
[data-reveal].is-visible{opacity:1;transform:none}

.seo-page{min-height:100vh;background:var(--paper)}
.seo-header{display:flex;align-items:center;justify-content:space-between;min-height:82px;padding:14px clamp(24px,4vw,68px);border-bottom:1px solid var(--line);background:#fff;font-size:13px;font-weight:600}
.seo-header img{display:block;width:152px}
.seo-page>section{padding:clamp(90px,12vw,180px) clamp(24px,8vw,125px)}
.seo-page h1{max-width:12ch;margin:30px 0;color:var(--red);font-size:clamp(58px,8vw,122px);font-weight:470;letter-spacing:-.07em;line-height:.9}
.seo-page>section>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:clamp(17px,1.4vw,21px);line-height:1.6}
.seo-note{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;max-width:900px;margin-top:90px;border-top:1px solid var(--line);padding-top:34px}
.seo-note strong{font-size:18px}.seo-note span{color:var(--muted);line-height:1.6}
.legal-content{display:grid;gap:22px;max-width:850px;margin-top:70px;border-top:1px solid var(--line);padding-top:36px}
.legal-content p{margin:0;color:var(--muted);font-size:16px;line-height:1.75}
.legal-sections{display:grid;gap:46px;max-width:900px;margin-top:70px;border-top:1px solid var(--line);padding-top:42px}
.legal-sections section{padding-bottom:42px;border-bottom:1px solid rgba(21,21,21,.12)}
.legal-sections h2{margin:0 0 22px;font-size:clamp(25px,3vw,38px);font-weight:520;letter-spacing:-.04em}
.legal-sections p{margin:0;color:var(--muted);font-size:16px;line-height:1.78}
.legal-sections p+p{margin-top:15px}

@media(max-width:900px){
  .section-heading h2>span,.solutions-heading h2>span,.final-cta h2>span{white-space:normal}
  .site-header nav>a:not(.header-cta){display:none}
  .story{--photo-top:44%;--photo-left:14%;--photo-width:86%;--photo-height:56%}
  .story-sticky{height:100svh;height:100dvh}
  .story-intro{top:16%;left:clamp(24px,6vw,54px);width:calc(100% - clamp(48px,12vw,108px));transform:none}
  .story-intro h1{max-width:9.4ch;font-size:clamp(50px,9.2vw,76px)}
  .story-lead{display:block;max-width:34ch;margin-top:22px;font-size:15px}
  .story-photo{border-radius:24px 0 0}
  .proof-grid,.solution-universe,.commitment-grid{grid-template-columns:1fr}
  .proof-grid article{min-height:170px;padding:34px 0}
  .proof-grid article+article{border-top:1px solid var(--line);border-left:0}
  .solution-universe{gap:65px}
  .editorial-interlude{height:auto;min-height:0}
  .editorial-stage,.editorial-right .editorial-stage{position:relative;top:0;height:auto;min-height:0;flex-direction:column;align-items:flex-start;gap:52px;padding-top:100px;padding-bottom:100px}
  .editorial-visual,.editorial-right .editorial-visual{width:min(100%,760px);height:auto;transform:none}
  .editorial-format-portrait,.editorial-right .editorial-format-portrait{width:min(82vw,520px);aspect-ratio:1444/2200}
  .editorial-format-landscape,.editorial-right .editorial-format-landscape{width:100%;aspect-ratio:1354/761}
  .editorial-copy,.editorial-right .editorial-copy{width:min(100%,620px);opacity:1;transform:none}
  .editorial-number{top:84px;font-size:260px;transform:none}
  .editorial-copy h3{font-size:clamp(44px,10vw,72px)}
  .editorial-copy-associations{width:min(100%,690px)}
  .editorial-copy-associations h3{font-size:clamp(40px,8.5vw,62px)}
  .editorial-rule{width:100%}
  .commitment-grid article{min-height:250px}
}
@media(min-width:901px) and (max-width:1180px){
  .site-header nav{gap:18px}
  .story-intro{left:48px;width:38%}
  .story-intro h1{font-size:clamp(54px,6.7vw,76px)}
  .story-lead{font-size:15px}
  .proof-grid article{padding-right:26px;padding-left:26px}
  .section-heading h2,.solutions-heading h2{font-size:clamp(56px,6.5vw,78px)}
  .solution-universe{grid-template-columns:.78fr 1.22fr;gap:50px}
  .universe-heading{grid-template-columns:42px 1fr;gap:10px}
  .universe-heading h3{font-size:clamp(48px,5.8vw,68px)}
  .editorial-stage{gap:50px;padding-right:44px;padding-left:44px}
  .editorial-format-portrait{width:min(40vw,455px)}
  .editorial-format-landscape{width:min(55vw,690px)}
  .editorial-copy h3{font-size:clamp(39px,4.5vw,57px)}
  .editorial-copy-associations h3{font-size:clamp(36px,4vw,51px)}
  .continuity-words span{font-size:clamp(92px,13vw,154px)}
  .final-cta h2{font-size:clamp(66px,7.8vw,92px)}
}
@media(min-width:601px) and (max-width:900px){
  .site-header{padding-right:32px;padding-left:32px}
  .brand img{width:140px}
  .story{height:225vh}
  .story-title{width:min(720px,86vw)}
  .story-title h2{font-size:clamp(62px,9.2vw,84px)}
  .story-title span{max-width:540px}
  .section-shell{padding-right:clamp(36px,7vw,64px);padding-left:clamp(36px,7vw,64px)}
  .section-heading h2,.solutions-heading h2{font-size:clamp(52px,8.2vw,72px)}
  .solution-universe{gap:54px}
  .universe-heading h3{font-size:clamp(54px,9vw,72px)}
  .solution-list a{font-size:clamp(21px,3.1vw,27px)}
  .editorial-stage,.editorial-right .editorial-stage{padding-right:clamp(36px,7vw,64px);padding-left:clamp(36px,7vw,64px)}
  .editorial-copy h3{font-size:clamp(48px,7.4vw,64px)}
  .editorial-copy-associations h3{max-width:19ch;font-size:clamp(42px,6.7vw,58px)}
  .continuity{height:148vh}
  .continuity-stage{height:100svh;height:100dvh}
  .continuity-kicker{font-size:clamp(30px,4.8vw,42px)}
  .continuity-words{margin-top:clamp(150px,20vw,190px)}
  .continuity-words span{font-size:clamp(84px,16vw,132px);line-height:.82}
  .final-cta{min-height:auto}
  .final-cta h2{font-size:clamp(58px,9vw,78px)}
  footer{grid-template-columns:160px 1fr 1fr;gap:34px}
}
@media(max-width:700px){.seo-note{grid-template-columns:1fr}}
@media(max-width:600px){
  .site-header{display:grid;grid-template-columns:1fr auto;min-height:104px;padding:9px 18px 8px}
  .brand{display:flex;align-items:center}
  .brand img{width:116px}
  .site-header nav{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr) auto;width:100%;gap:4px;align-items:center}
  .site-header nav>a:not(.header-cta){display:block;padding:7px 2px;color:#4f4f53;font-size:9px;font-weight:650;text-align:center;white-space:nowrap}
  .intro-logo-slot{top:18px;left:24px;width:122px;height:36px;transform:translate3d(calc(50vw - 85px),calc(50vh - 36px),0) scale(2.65)}
  .intro-logo{width:122px}
  .header-cta{display:flex;min-height:34px;align-items:center;justify-content:center;padding:8px 11px;font-size:9px;line-height:1;text-align:center;white-space:nowrap}
  .story{height:200vh}
  .story-sticky{min-height:520px}
  .story-intro{top:18%;left:20px;width:calc(100% - 40px)}
  .story-intro h1{max-width:none;margin-top:17px;font-size:clamp(26px,7.7vw,34px);font-weight:540;line-height:1.02}
  .story-intro h1 span{white-space:nowrap}
  .story-intro .eyebrow{font-size:9px;letter-spacing:.13em}
  .story-lead{display:none}
  .story-photo{border-radius:20px 0 0}
  .story-title{width:calc(100vw - 36px)}
  .story-title p{margin-bottom:18px;font-size:9px}
  .story-title h2{font-size:clamp(43px,13vw,62px);line-height:.92}
  .story-title span{margin-top:22px;font-size:14px}
  .scroll-cue{display:none}
  .section-shell{padding-right:20px;padding-left:20px}
  .proof,.solutions-heading,.commitments{padding-top:82px;padding-bottom:88px}
  .section-heading h2,.solutions-heading h2{margin-top:22px;font-size:clamp(40px,11.7vw,56px);line-height:.98}
  .proof-grid{margin-top:54px}
  .universe-heading{grid-template-columns:38px 1fr;gap:8px}
  .solution-universe{gap:48px;padding-top:72px;padding-bottom:82px}
  .universe-heading h3{font-size:clamp(41px,12vw,56px)}
  .universe-heading p{margin-top:18px;font-size:15px}
  .solution-list a{min-height:74px;font-size:18px}
  .solution-list a span{max-width:calc(100% - 50px)}
  .editorial-stage,.editorial-right .editorial-stage{padding-top:82px;padding-bottom:82px}
  .editorial-number{top:52px;font-size:190px}
  .editorial-format-portrait,.editorial-right .editorial-format-portrait{width:min(88vw,430px)}
  .editorial-copy h3{max-width:none;font-size:clamp(38px,10.7vw,48px);line-height:1}
  .editorial-copy-professionnels h3{max-width:none}
  .editorial-copy-associations h3{max-width:none;font-size:clamp(34px,9.2vw,43px);font-weight:650;line-height:1.03}
  .editorial-copy strong{font-size:14px}
  .continuity{height:140vh}
  .continuity-stage{height:100svh;height:100dvh;min-height:520px;padding-right:20px;padding-left:20px}
  .continuity-kicker{width:calc(100vw - 40px);font-size:clamp(22px,6.5vw,30px);line-height:1.16}
  .continuity-words{margin-top:clamp(122px,28vw,155px)}
  .continuity-words span{font-size:clamp(57px,18.2vw,84px);line-height:.88}
  .commitment-grid{margin-top:58px}
  .commitment-grid article{min-height:220px;padding:28px 24px}
  .commitment-grid h3{margin-top:40px}
  .final-cta{min-height:auto;padding:84px 20px}
  .final-cta h2{margin-top:25px;font-size:clamp(43px,11.8vw,58px);line-height:.96}
  .final-cta>div{flex-direction:column;align-items:stretch}
  footer{grid-template-columns:1fr;padding:46px 20px}
}
@media(max-width:380px){
  .site-header{padding-right:12px;padding-left:12px}
  .brand img{width:108px}
  .site-header nav>a:not(.header-cta){font-size:8px}
  .header-cta{padding-right:8px;padding-left:8px;font-size:8px}
  .story-intro{left:16px;width:calc(100% - 32px)}
  .story-intro h1{font-size:clamp(24px,7.5vw,28px)}
}

/* v1.6 — portable, Mac et tablettes : conserver tout le contenu dans le viewport */
@media (min-width:901px) and (max-width:1500px), (min-width:901px) and (max-height:900px){
  .editorial-stage{gap:clamp(28px,3vw,48px);padding-right:clamp(28px,3.6vw,54px);padding-left:clamp(28px,3.6vw,54px)}
  .editorial-format-landscape{width:min(51vw,780px)}
  .editorial-format-portrait{width:min(34vw,430px);height:min(68vh,710px)}
  .editorial-copy{width:min(40vw,570px)}
  .editorial-copy h3{font-size:clamp(38px,4.05vw,61px)}
  .editorial-copy-associations{width:min(42vw,620px)}
  .editorial-copy-associations h3{max-width:19ch;font-size:clamp(34px,3.65vw,54px)}
  .editorial-copy strong{max-width:43ch;margin-top:22px;font-size:14px}
  .continuity-stage{padding-top:clamp(54px,6vh,78px);padding-bottom:clamp(40px,5vh,64px)}
  .continuity-words{margin-top:clamp(86px,11vh,118px)}
  .continuity-words span{font-size:clamp(74px,10.5vw,154px);line-height:.75}
}
@media (min-width:901px) and (max-height:760px){
  .editorial-interlude{min-height:720px}
  .editorial-stage{min-height:560px}
  .editorial-format-landscape{width:min(47vw,700px)}
  .editorial-copy h3{font-size:clamp(34px,3.7vw,53px)}
  .continuity{height:155vh}
  .continuity-stage{min-height:560px;padding-top:50px}
  .continuity-words{margin-top:76px}
  .continuity-words span{font-size:clamp(68px,9.3vw,132px);line-height:.73}
}
@media (max-width:900px){
  .continuity-stage{display:flex;flex-direction:column;justify-content:flex-start}
  .continuity-words{width:100%;margin-top:clamp(126px,20vh,170px)}
  .continuity-words span{font-size:clamp(60px,14.5vw,116px);line-height:.84}
}
@media (max-width:600px){
  .continuity-words{margin-top:clamp(118px,21vh,148px)}
  .continuity-words span{font-size:clamp(55px,17vw,76px);line-height:.9}
}

/* Page équipe, volontairement sobre tant que les portraits ne sont pas fournis */
.team-page>section{padding-top:clamp(75px,9vw,125px)}
.team-page h1{max-width:none}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,46px);margin-top:clamp(65px,8vw,110px)}
.team-grid article{min-width:0}
.team-photo-placeholder{position:relative;display:grid;place-items:center;aspect-ratio:4/5;background:linear-gradient(145deg,#f0efeb,#faf9f6);border:1px solid rgba(21,21,21,.1);overflow:hidden}
.team-photo-placeholder:before{content:"";width:35%;aspect-ratio:1;border-radius:50%;background:rgba(239,48,56,.08)}
.team-photo-placeholder span{position:absolute;color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.14em;text-transform:uppercase}
.team-grid h2{margin:24px 0 0;font-family:var(--font-title);font-size:clamp(27px,2.5vw,39px);font-weight:520;letter-spacing:-.04em}
.team-grid article>p{margin:8px 0 0;color:var(--muted);font-size:14px}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.team-grid{grid-template-columns:1fr}.team-page>section{padding-top:62px}}
@media(max-width:380px){
  .solution-list a{font-size:16px}
  .continuity-words span{font-size:56px}
}
@media(hover:none){
  .solution-list a:hover{padding-right:0;padding-left:0;color:inherit}
  .solution-list a:hover:before{transform:scaleX(0)}
  .solution-list a:hover b{background:transparent;color:var(--red);transform:none}
  .header-cta:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .intro-overlay{display:none}
  [data-reveal]{opacity:1;transform:none;transition:none}
  .story{height:auto}.story-sticky{position:relative}
  .story-photo{left:0;width:100%;border-radius:0}
  .story-intro{display:none}.story-shade{opacity:.6}
  .story-title{opacity:1;transform:translate(-50%,-50%)}
  .editorial-interlude{height:auto;min-height:0}
  .editorial-stage{position:relative;top:0;height:auto}
  .editorial-visual,.editorial-copy{opacity:1;transform:none}
  .editorial-rule{width:100%}
  .continuity-words span{opacity:1;transform:none!important}
}

/* WordPress: rendu autonome et anti-flash avant le premier calcul */
html.ltoa-exact-loading,
html.ltoa-exact-loading body,
.ltoa-exact-body{margin:0!important;background:#fff!important}
.ltoa-exact-body{min-width:320px}
.ltoa-exact-body #wpadminbar{display:none!important}
.ltoa-exact-body.admin-bar{margin-top:0!important}
.ltoa-exact-body .intro-overlay{background:#fff!important}

/* Pages juridiques incluses dans le même habillage */
.ltoa-legal{--red:#ef3038;--ink:#151515;--muted:#65656a;max-width:1100px;margin:auto;padding:70px 28px 110px;color:var(--ink);font-family:var(--font-text)}
.ltoa-legal *{box-sizing:border-box}
.ltoa-legal header{display:flex;align-items:center;justify-content:space-between;margin-bottom:90px}
.ltoa-legal header img{width:152px}
.ltoa-legal a{color:var(--red);text-decoration:none}
.ltoa-legal header a{color:inherit;font-size:13px}
.ltoa-legal .eyebrow{color:var(--red);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.ltoa-legal h1{max-width:12ch;margin:28px 0;color:var(--red);font-size:clamp(52px,8vw,110px);font-weight:470;letter-spacing:-.07em;line-height:.9}
.ltoa-legal .intro{max-width:780px;font-size:20px;line-height:1.6}
.ltoa-legal .sections{display:grid;gap:42px;max-width:900px;margin-top:70px;border-top:1px solid rgba(0,0,0,.18);padding-top:42px}
.ltoa-legal section{padding-bottom:38px;border-bottom:1px solid rgba(0,0,0,.11)}
.ltoa-legal h2{margin:0 0 20px;font-size:clamp(25px,3vw,38px);font-weight:520;letter-spacing:-.04em}
.ltoa-legal section p{margin:0;color:var(--muted);font-size:16px;line-height:1.78}
.ltoa-legal section p+p{margin-top:15px}
@media(max-width:600px){
  .ltoa-legal{padding-top:35px}
  .ltoa-legal header{margin-bottom:60px}
  .ltoa-legal header img{width:125px}
}
