/* Généré par build.py — ne pas éditer à la main.
   Chrome commun aux 12 pages, extrait d'about.html. */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/Inter.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/InterTight.woff2) format('woff2')}
@font-face{font-family:'Inter Fallback';src:local('Helvetica Neue'),local('Arial');size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}
@font-face{font-family:'Inter Tight Fallback';src:local('Helvetica Neue'),local('Arial');size-adjust:101%;ascent-override:96%;descent-override:24%;line-gap-override:0%}

        *{margin:0;padding:0;box-sizing:border-box}
        html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
        @media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
        body{font-family:'Inter','Inter Fallback',-apple-system,BlinkMacSystemFont,sans-serif;background:#f5f2ec;color:#0a0a0a;font-size:16px;line-height:1.5;overflow-x:hidden;}
        a{color:inherit;text-decoration:none}
        img{max-width:100%;display:block}
        .eyebrow{font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;opacity:.55}
        .skip-link{position:absolute;top:-60px;left:12px;background:#0a0a0a;color:#f5f2ec;padding:.6rem 1rem;font-size:.85rem;z-index:10000;transition:top .2s;border-radius:2px}
        .skip-link:focus{top:12px}
        .scroll-progress{position:fixed;top:0;left:0;height:2px;width:0;background:#0a0a0a;z-index:150;transition:width .1s linear}
        #nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.5rem 2rem;transition:padding .3s,background .3s,color .3s,border-color .3s;background:transparent;border-bottom:1px solid transparent;color:#f5f2ec}
        #nav.scrolled{padding:1rem 2rem;background:rgba(245,242,236,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom-color:rgba(10,10,10,.06);color:#0a0a0a}
        #nav.scrolled.on-dark{background:#0a0a0a;border-bottom-color:rgba(245,242,236,.08);color:#f5f2ec}
        main{display:block;min-height:100vh;position:relative;z-index:1;background:#f5f2ec}
        footer{position:relative;z-index:0}
        .nav-inner{max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;position:relative}
        .nav-logo{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-weight:600;font-size:1.45rem;letter-spacing:-.02em;color:inherit;transition:opacity .2s;display:inline-flex;align-items:center;gap:.6rem;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap}
        .nav-logo-mark{width:auto;height:3em;flex-shrink:0;transition:filter .35s ease,transform .5s cubic-bezier(.2,.7,.2,1);filter:invert(1)}
        #nav.on-light .nav-logo-mark,#nav:not(.on-dark).scrolled .nav-logo-mark{filter:none}
        .nav-logo:hover .nav-logo-mark{transform:scale(1.04)}
        .nav-logo:hover{opacity:.65}
        .nav-links{display:flex;align-items:center;gap:2.25rem;list-style:none}
        .nav-links a{font-size:.88rem;font-weight:500;color:inherit;transition:opacity .2s;position:relative}
        .nav-links a:hover{opacity:.6}
        .nav-links a.active::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;opacity:.6}
        .nav-right{display:flex;align-items:center;gap:1.5rem}
        .lang-switcher{display:flex;gap:.1rem;font-size:.78rem;font-weight:500;color:inherit;align-items:center}
        .lang-btn{background:none;border:none;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;padding:.25rem .45rem;cursor:pointer;opacity:.5;transition:opacity .2s;letter-spacing:.05em;min-width:1.9rem;text-align:center}
        .lang-btn.active{opacity:1}
        .lang-btn:hover{opacity:.85}
        .lang-sep{opacity:.3;display:inline-flex;align-items:center;height:1em;line-height:1}
        .nav-cta{font-size:.88rem;font-weight:500;color:inherit;border-bottom:1px solid currentColor;padding-bottom:2px;transition:opacity .2s;display:inline-flex;align-items:center;gap:.5rem;min-width:9.5rem;justify-content:flex-end;white-space:nowrap}
        .nav-cta:hover{opacity:.7}
        .nav-cta .dot{width:7px;height:7px;background:#8ab05c;border-radius:50%;display:inline-block;animation:pulseDot 2.2s ease-in-out infinite}
        @keyframes pulseDot{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}
        .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px;color:inherit}
        .hamburger span{width:22px;height:1.5px;background:currentColor;transition:all .3s}
        .hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
        .hamburger.open span:nth-child(2){opacity:0}
        .hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
        .mobile-menu{position:fixed;inset:0;background:#0a0a0a;color:#f5f2ec;z-index:99;padding:6rem 1.75rem 2rem;display:flex;flex-direction:column;justify-content:space-between;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .4s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
        .mobile-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}
        .mobile-menu nav{display:flex;flex-direction:column}
        .mobile-menu a{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-size:2.4rem;font-weight:500;letter-spacing:-.03em;line-height:1.1;display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;border-bottom:1px solid rgba(245,242,236,.08);color:#f5f2ec;opacity:0;transform:translateY(12px);transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
        .mobile-menu a::after{content:'\2192';font-size:1.25rem;opacity:.35;transition:opacity .3s,transform .3s}
        .mobile-menu a:last-of-type{border-bottom:0}
        .mobile-menu.open a{opacity:1;transform:translateY(0)}
        .mobile-menu.open a:nth-child(1){transition-delay:.12s}
        .mobile-menu.open a:nth-child(2){transition-delay:.18s}
        .mobile-menu.open a:nth-child(3){transition-delay:.24s}
        .mobile-menu.open a:nth-child(4){transition-delay:.30s}
        .mobile-menu-cta{margin-top:1.75rem!important;display:inline-flex!important;align-items:center;justify-content:flex-start!important;gap:.6rem;padding:1rem 1.5rem!important;background:#f5f2ec;color:#0a0a0a!important;border-radius:2px;font-size:.95rem!important;font-weight:500!important;align-self:flex-start;border-bottom:0!important;letter-spacing:0!important;line-height:1!important}
        .mobile-menu-cta::after{display:none!important}
        .mobile-menu-wa{margin-top:1rem!important;display:inline-flex!important;align-items:center;justify-content:flex-start!important;gap:.7rem;padding:.85rem 1.3rem!important;background:transparent;color:#f5f2ec!important;border:1px solid rgba(245,242,236,.15)!important;border-radius:2px;font-size:.9rem!important;font-weight:500!important;align-self:flex-start;border-bottom:1px solid rgba(245,242,236,.15)!important;letter-spacing:0!important;line-height:1!important;transition:background .3s,border-color .3s}
        .mobile-menu-wa:hover{background:rgba(245,242,236,.05);border-color:rgba(245,242,236,.3)!important}
        .mobile-menu-wa::after{display:none!important}
        .mobile-menu-wa svg{opacity:.85}
        .mobile-menu-bottom{display:flex;flex-direction:column;gap:1.5rem;padding-top:1rem;border-top:1px solid rgba(245,242,236,.08)}
        .mobile-menu-lang{display:flex;gap:.2rem;font-size:.85rem;font-weight:500}
        .mobile-menu-lang button{background:none;border:none;color:#f5f2ec;font:inherit;padding:.3rem .55rem;cursor:pointer;opacity:.4;letter-spacing:.05em}
        .mobile-menu-lang button.active{opacity:1}
        .mobile-menu-lang .sep{opacity:.25;padding:.3rem 0}
        .mobile-menu-footer{font-size:.8rem;opacity:.5;display:flex;justify-content:space-between;gap:1rem}
        .page-hero{min-height:80vh;padding:11rem 2rem 5rem;background:#0a0a0a;color:#f5f2ec;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
        .page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(70vw 70vw at 12% 0%,rgba(138,132,120,.13),transparent 62%);margin:0 auto;width:100%;position:relative;z-index:1}
        .page-hero-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:5rem;gap:2rem;flex-wrap:wrap}
        .page-hero-meta .eyebrow{color:#f5f2ec;opacity:.5}
        .page-hero-meta-right{text-align:right;font-size:.8rem;line-height:1.5;opacity:.55;font-variant-numeric:tabular-nums}
        .page-display{font-size:clamp(2rem,6.8vw,7.2rem);font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-weight:500;letter-spacing:-.04em;line-height:1.02;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
        .page-display em{font-style:normal;color:#8a8478}
        .page-hero-footer{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-top:5rem;padding-top:2rem;border-top:1px solid rgba(245,242,236,.12)}
        .page-hero-footer-text{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-size:clamp(1.05rem,1.35vw,1.35rem);line-height:1.35;font-weight:500;letter-spacing:-.015em;max-width:48ch;opacity:.88}
        section{padding:8rem 2rem}
        .container{max-width:1600px;margin:0 auto}
        .section-header{display:grid;grid-template-columns:1fr 2fr;gap:4rem;margin-bottom:5rem;align-items:start}
        .section-title{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-size:clamp(1.7rem,3.3vw,3.2rem);font-weight:500;letter-spacing:-.03em;line-height:1.05;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
        .final-cta{background:#0a0a0a;color:#f5f2ec;padding:11rem 2rem;text-align:center;position:relative;overflow:hidden}
        .final-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(70vw 70vw at 12% 0%,rgba(138,132,120,.13),transparent 62%);margin:0 auto;position:relative;z-index:1}
        .final-cta .eyebrow{color:#8a8478;margin-bottom:2rem}
        .final-cta h2{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-size:clamp(1.85rem,5vw,4.8rem);font-weight:500;letter-spacing:-.03em;line-height:1.05;margin-bottom:3rem;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual}
        .final-cta h2 em{font-style:normal;color:#8a8478}
        .final-cta .cta-link{font-family:'Inter Tight','Inter Tight Fallback',sans-serif;font-size:clamp(1.3rem,2vw,1.9rem);font-weight:500;letter-spacing:-.015em;border-bottom:1px solid rgba(245,242,236,.3);padding-bottom:.35rem;display:inline-block;transition:border-color .3s}
        .final-cta .cta-link:hover{border-color:#f5f2ec}
        footer{background:#0a0a0a;color:#f5f2ec;padding:3rem 2rem 2rem;border-top:1px solid rgba(245,242,236,.1)}
        .footer-inner{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;font-size:.82rem;opacity:.7}
        .footer-nav{display:flex;gap:2rem;flex-wrap:wrap}
        .footer-nav a{transition:opacity .2s;position:relative}
        .footer-nav a::after{content:'';position:absolute;left:0;bottom:-2px;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s}
        .footer-nav a:hover::after{transform:scaleX(1);transform-origin:left}
        .reveal{opacity:0;transform:translateY(28px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
        .reveal.in{opacity:1;transform:translateY(0)}
        a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}
        @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
        @media(max-width:1024px){
            .section-header{grid-template-columns:1fr;gap:2.5rem}
}
        @media(max-width:700px){
            #nav{padding:1.1rem 1.25rem}
            .page-display{font-size:clamp(1.75rem,7vw,2.6rem)}
            .nav-links,.nav-cta,.lang-switcher{display:none}
            .hamburger{display:flex}
            section{padding:5rem 1.25rem}
            .page-hero{padding:7rem 1.25rem 3rem;min-height:auto}
            .page-hero-footer{grid-template-columns:1fr;gap:1.5rem;margin-top:3rem}
            .footer-inner{flex-direction:column;align-items:flex-start}
}
        .wa-float{position:fixed;right:1.5rem;bottom:1.5rem;z-index:95;width:54px;height:54px;border-radius:50%;background:#0a0a0a;color:#f5f2ec;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px -10px rgba(0,0,0,.45),0 0 0 1px rgba(245,242,236,.06) inset;transition:transform .4s cubic-bezier(.2,.7,.2,1),background .3s,color .3s}
        .wa-float:hover{background:#f5f2ec;color:#0a0a0a;transform:translateY(-3px) scale(1.04)}
        .wa-float svg{width:24px;height:24px}
        .wa-float::before{content:'';position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle,rgba(138,176,92,.35) 0%,transparent 70%);opacity:0;animation:waPulse 2.8s cubic-bezier(.4,0,.2,1) infinite}
        @keyframes waPulse{0%{opacity:.6;transform:scale(.9)}70%{opacity:0;transform:scale(1.35)}100%{opacity:0;transform:scale(1.35)}}