html{scroll-behavior:smooth;background-color:#0a0a0a;overscroll-behavior:none}*{margin:0;padding:0;box-sizing:border-box}:root{--color-dark: #0a0a0a;--color-light: #ffffff;--color-accent: #ff8a3c;--color-gray: #666;--color-border: #e5e5e5;--font-main: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--layout-width: 100%;--nav-height: 70px;--transition-speed: .3s;--project-fade-duration: 2s;--gutter: 1.5rem;--gutter-mobile: 1.5rem;--h2-size: 24px;--h2-weight: 300;--h2-line: 1.2;--h2-letter: .01em;--h2-mb: 1.5rem}@media(max-width:1023px)and (pointer:coarse){:root{--layout-width: 100% !important;--gutter: 1.5rem !important;--gutter-mobile: 1.5rem !important;--h2-size: 24px !important}section:not(.hero):not(.services-collage):not(.footer-bottom-section):not(.legal-section){padding:6rem 0}.footer-bottom-section{padding:1rem 0}.services-collage{padding:0!important}}@media(max-width:380px){:root{--h2-size: 20px !important;--gutter: 1.2rem !important;--gutter-mobile: 1.2rem !important}p{font-size:.95rem!important;margin-bottom:1.5rem}h2,.hero-title,.section-title,.services-title,.project-title,.cta h2{font-size:20px!important;letter-spacing:.005em!important}}@media(min-width:768px)and (max-width:900px){:root{--layout-width: 1200px;--gutter: 2rem;--gutter-mobile: 2rem;--h2-size: 28px}}@media(min-width:901px)and (max-width:1400px){:root{--layout-width: 1200px;--gutter: 5rem;--h2-size: 28px}}@media(min-width:1401px){:root{--layout-width: 1400px;--gutter: 3rem;--h2-size: 30px}}@media(min-width:1920px){:root{--layout-width: 1600px;--gutter: 4rem}}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{font-family:var(--font-main);line-height:1.6;color:var(--color-dark);background-color:#0a0a0a;overscroll-behavior:none}.site-wrapper{width:100%;max-width:1440px;margin:0 auto;overflow-x:hidden}a{color:inherit}img{max-width:100%;height:auto}section:not(.hero):not(.services-collage):not(.footer-bottom-section):not(.legal-section){padding:6rem 0}@media(min-width:768px)and (max-width:1024px){section:not(.hero):not(.services-collage):not(.footer-bottom-section):not(.legal-section){padding:5rem 0}}.services-collage{padding:96px 0!important}@media(max-width:900px){.services-collage{padding:0!important}}.footer-bottom-section{padding:1rem 0}.container,.hero-inner,.about-inner,.services-inner,.projects-inner,.projects-header,.footer-content,.footer-bottom{max-width:var(--layout-width);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}h2,.hero-title,.section-title,.services-title,.project-title,.cta h2{font-size:var(--h2-size)!important;font-weight:var(--h2-weight)!important;line-height:var(--h2-line)!important;letter-spacing:var(--h2-letter)!important;margin-bottom:var(--h2-mb)!important}p{font-size:1.1rem;margin-bottom:2.5rem}@media(min-width:768px)and (max-width:1024px){p{font-size:1.05rem;margin-bottom:2rem}}p:last-child{margin-bottom:0}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease-out,transform .7s ease-out;will-change:opacity,transform}.reveal.visible{opacity:1;transform:translateY(0)}.reveal[data-delay="100"]{transition-delay:.1s}.reveal[data-delay="200"]{transition-delay:.2s}.reveal[data-delay="300"]{transition-delay:.3s}.reveal[data-delay="400"]{transition-delay:.4s}.reveal[data-delay="500"]{transition-delay:.5s}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.hero-cta,.btn-appel,.project-link,.social-links a,.social-links-mobile a{transition:all var(--transition-speed)}.hero-cta,.btn-appel,.project-link{box-shadow:0 4px 20px #0000001a}.hero-cta:hover,.btn-appel:hover,.project-link:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000026}@media(hover:none)and (pointer:coarse){.hero-cta:hover,.btn-appel:hover,.project-link:hover{transform:none}}@media(max-width:767px),(max-width:1023px)and (pointer:coarse){.hero-cta,.btn-appel,.project-link,.cta-btn,.btn{display:flex!important;width:fit-content!important;margin-left:0!important;margin-right:auto!important}}@media(min-width:667px)and (max-width:960px)and (orientation:landscape)and (max-height:450px){:root{--gutter: 2rem;--h2-size: 22px}section:not(.hero):not(.services-collage):not(.footer-bottom-section):not(.legal-section){padding:3rem 0}.services-collage{padding:0!important}p{font-size:.95rem;margin-bottom:1.25rem;line-height:1.5}.expertise-item p{font-size:1.1rem!important;line-height:1.8!important}.hero-cta,.btn-appel,.project-link,.btn-expertise,.cta-btn,.btn{font-size:.85rem!important;padding:.95rem 2.6rem!important;letter-spacing:.18em!important;width:fit-content!important;margin-left:0!important;margin-right:auto!important}.hero-inner,.hero-content,.about-inner,.about-container,.services-inner,.services-container,.expertise-inner,.projects-inner,.projects-header,.contact-inner,.cta-inner,.faq-inner,.news-inner,.footer-content,.footer-container,.nav-container,.container{max-width:90%!important;margin:0 auto!important}.footer-bottom{background:transparent;max-width:100%!important;margin:0 auto!important;padding:1rem 2rem;text-align:center;color:#0a0a0a;font-size:.85rem}h2,.hero-title,.section-title,.services-title{font-size:20px!important;margin-bottom:1rem!important}h1.visually-hidden{font-size:2.5rem;line-height:1.1}}h1,.hero .hero-title{font-size:30px!important;font-weight:600!important;line-height:1.15!important}@media(min-width:700px)and (max-width:900px)and (orientation:portrait)and (pointer:coarse){.hero-inner,.hero-content,.about-inner,.about-container,.services-inner,.services-container,.expertise-inner,.projects-inner,.projects-header,.contact-inner,.cta-inner,.faq-inner,.news-inner,.footer-content,.footer-container,.nav-container,.container{max-width:90%!important;margin:0 auto!important}}.services-header{max-width:640px;margin-bottom:3rem}.services-header h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:600;color:#fff;margin-bottom:1rem;letter-spacing:-.01em}.local-links{padding:6rem 0;border-top:1px solid rgba(255,255,255,.06)}.links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.link-card{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff05;text-decoration:none;transition:border-color .2s,background .2s}.link-card:hover{border-color:#ff8a3c4d;background:#ff8a3c0a}.link-card-title{font-size:.9rem;color:#ffffffbf;font-weight:500}.link-card-arrow{font-size:1rem;color:#ff8a3c;flex-shrink:0}@media(max-width:900px),(max-width:1023px)and (pointer:coarse){.local-links{padding:4rem 0}.links-grid{grid-template-columns:1fr}}.legal-page{background:#000001;color:#fff;min-height:100vh;padding-top:calc(var(--nav-height, 70px) + 2rem);padding-bottom:2.5rem}.legal-page .container{max-width:85%;margin:0 auto}.breadcrumb{margin-bottom:1rem}.breadcrumb ol{display:flex;align-items:center;gap:.4rem;list-style:none;padding:0;margin:0;flex-wrap:wrap}.breadcrumb li{font-size:.78rem;color:#fff6}.breadcrumb a{color:#ffffff80;text-decoration:none;transition:color .2s}.breadcrumb a:hover,.breadcrumb .breadcrumb-current{color:#ff7a2f}.breadcrumb .breadcrumb-sep{color:#fff3;font-size:.7rem}.legal-page section{padding:0}.legal-page h1{font-size:2.2rem;font-weight:600;letter-spacing:-.02em;margin-bottom:1.5rem}.legal-page .legal-section{margin-bottom:1rem}.legal-page h2{font-size:1.1rem;font-weight:600;margin-bottom:.6rem;color:#fff;letter-spacing:-.01em}.legal-page p{font-size:.9rem;line-height:1.7;margin-bottom:.6rem;color:#ffffffd9}.legal-page strong{color:#fff;font-weight:600}.legal-link{color:#ff7a2f;text-decoration:none;transition:opacity .2s}.legal-link:hover{opacity:.8;text-decoration:underline}.last-update{margin-top:2rem;text-align:center;font-size:.8rem;opacity:.5;font-style:italic}@media(max-width:768px){.legal-page{padding-top:calc(var(--nav-height, 70px) + 1rem);padding-bottom:1.5rem}.legal-page h1{font-size:1.6rem;margin-bottom:1rem}.legal-page h2{font-size:1rem;margin-bottom:.5rem}.legal-page p{font-size:.9rem}.legal-page .legal-section{margin-bottom:2rem}}
