:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#198754;--accent-bg:#1987541a;--accent-border:#19875480;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--bs-primary:#198754;--bs-primary-rgb:25, 135, 84;--bs-link-color:#198754;--bs-link-hover-color:#146c43;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}.btn-primary{--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:25, 135, 84;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-outline-primary{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25, 135, 84;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-disabled-color:#198754;--bs-btn-disabled-border-color:#198754}#mainNav,#mainNav.navbar-shrink{background-color:#14532d}#mainNav .navbar-brand,#mainNav .navbar-nav .nav-item .nav-link.active,#mainNav .navbar-nav .nav-item .nav-link:hover{color:#86efac}#mainNav .navbar-brand img{width:auto;max-width:65vw;height:2.5rem}#mainNav .navbar-toggler{background-color:#198754;border-color:#198754}@media (width>=992px){#mainNav .navbar-brand img{max-width:15rem;height:3.25rem}#mainNav.navbar-shrink .navbar-brand img{height:2.75rem}}.bg-light{background-color:#f3f8f4!important}header.masthead{background-blend-mode:multiply;background-color:#14532d8c}section#contact{background-color:#14532d}section#contact form#contactForm .form-control:focus{border-color:#86efac}#activites .portfolio-item{background-color:#fff;border-radius:.5rem;height:100%;overflow:hidden;box-shadow:0 .5rem 1.5rem #14532d1a}#activites .portfolio-link{aspect-ratio:4/3;display:block;position:relative;overflow:hidden}#activites .portfolio-link>img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .3s;display:block}#activites .portfolio-link:hover>img{transform:scale(1.04)}#activites .portfolio-hover{color:#fff;opacity:0;background:#198754b8;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:absolute;inset:0}#activites .portfolio-link:hover .portfolio-hover,#activites .portfolio-link:focus-visible .portfolio-hover{opacity:1}#activites .portfolio-caption{text-align:center;padding:1.25rem}#activites .portfolio-caption-heading{font-size:1.15rem;font-weight:700}#references .reference-card{min-height:150px;padding:1.25rem;transition:transform .2s,box-shadow .2s;box-shadow:0 .35rem 1.25rem #14532d14;border-color:#dce9df!important}#references .reference-card:hover{transform:translateY(-3px);box-shadow:0 .6rem 1.5rem #14532d24}#references .reference-logo{object-fit:contain;object-position:center;width:100%;height:105px;display:block}@media (width<=767.98px){body{overflow-x:hidden}#mainNav{padding:.6rem 0}#mainNav .navbar-brand{min-width:0;margin-right:.25rem}#mainNav .navbar-brand img{max-width:55vw;height:2rem}#mainNav .navbar-toggler{flex-shrink:0;padding:.55rem .65rem}header.masthead{padding:8rem 0 4rem}header.masthead .masthead-subheading{font-size:1.15rem;line-height:1.5}header.masthead .masthead-heading{overflow-wrap:anywhere;font-size:clamp(2rem,9vw,3rem);line-height:1.1}header.masthead .btn-xl,#contact .btn-xl{padding:.9rem 1.1rem;font-size:.95rem}.page-section{padding:3.5rem 0}.page-section h2.section-heading{font-size:1.7rem;line-height:1.2}.page-section h3.section-subheading{margin-bottom:2rem;font-size:1rem;line-height:1.5}#valeurs .fa-stack{font-size:3rem}#references .reference-card{min-height:120px;padding:.75rem}#references .reference-logo{height:80px}#contact .row.text-center{row-gap:1.25rem}#contact .row.text-center a{overflow-wrap:anywhere}#contact .form-control{font-size:1rem}.footer .row>div{text-align:center!important}.portfolio-modal .modal-dialog{width:calc(100% - 1rem);max-width:none;margin:.5rem auto}.portfolio-modal .modal-content{padding:4rem .5rem 2rem}.portfolio-modal .modal-content h2{font-size:2rem;line-height:1.15}.portfolio-modal .modal-body>.btn,.portfolio-modal .modal-body>button{white-space:normal;width:100%;display:block;margin:.75rem 0!important}}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.home-page{--ekolong-green:#155b45;--ekolong-green-dark:#103d32;--ekolong-lime:#c3d86a;--ekolong-ink:#172923;--ekolong-muted:#66746e;--ekolong-paper:#f5f7f4;--ekolong-line:#e4eae5;width:100%;color:var(--ekolong-ink);text-align:left;background:#fff;font-family:Montserrat,Segoe UI,sans-serif;overflow:hidden}.home-page *,.home-page :before,.home-page :after{box-sizing:border-box}.home-page p{color:var(--ekolong-muted)}.home-page a{transition:color .18s,background-color .18s,border-color .18s,transform .18s,box-shadow .18s}.home-page a:focus-visible,.home-page button:focus-visible,.home-page input:focus-visible,.home-page textarea:focus-visible{outline:3px solid var(--ekolong-lime);outline-offset:3px}.home-page #mainNav,.home-page #mainNav.navbar-shrink{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;padding:.65rem 0;box-shadow:0 5px 24px #103d3217}.home-page #mainNav .container{min-height:3.4rem}.home-page #mainNav .navbar-brand{margin-right:2rem}.home-page #mainNav .navbar-brand img{width:auto;max-width:15rem;height:2.75rem;display:block}.home-page #mainNav .navbar-nav{align-items:center;gap:.2rem}.home-page #mainNav .navbar-nav .nav-item{margin:0}.home-page #mainNav .navbar-nav .nav-item .nav-link{color:#43574f;letter-spacing:.035em;padding:.65rem .7rem;font-size:.72rem;font-weight:700}.home-page #mainNav .navbar-nav .nav-item .nav-link:hover,.home-page #mainNav .navbar-nav .nav-item .nav-link.active{color:var(--ekolong-green)}.home-page #mainNav .navbar-nav .nav-item:last-child .nav-link{background:var(--ekolong-green);color:#fff;border-radius:999px;margin-left:.35rem;padding:.7rem 1.1rem}.home-page #mainNav .navbar-nav .nav-item:last-child .nav-link:hover{background:var(--ekolong-green-dark);color:#fff}.home-page #mainNav .navbar-toggler{background:var(--ekolong-green);color:#fff;border:0;border-radius:.6rem;padding:.55rem .8rem;font-weight:700}.home-page header.masthead{color:#fff;text-align:left;background:linear-gradient(90deg,#09241de8 0%,#09241db8 49%,#09241d29 100%),linear-gradient(#0000 50%,#09241d4d),url(/assets/img/newbg.jpg) 50%/cover no-repeat;align-items:center;min-height:min(760px,92svh);padding:9rem 0 6rem;display:flex;position:relative}.home-page header.masthead .container{z-index:1;position:relative}.home-page header.masthead .masthead-subheading{color:var(--ekolong-lime);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:1.25rem;font-family:Montserrat,Segoe UI,sans-serif;font-size:.78rem;font-style:normal;font-weight:700;line-height:1.5;display:flex}.home-page header.masthead .masthead-subheading:before{background:var(--ekolong-lime);content:"";width:2rem;height:2px}.home-page header.masthead .masthead-heading{color:#fff;letter-spacing:-.055em;text-transform:none;max-width:850px;margin:0 0 1.25rem;font-family:Montserrat,Segoe UI,sans-serif;font-size:clamp(2.7rem,6.2vw,5.4rem);font-weight:700;line-height:1.04}.home-page .masthead-description{color:#ffffffd1;max-width:590px;margin-bottom:2rem;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.8}.home-page .masthead-actions{flex-wrap:wrap;align-items:center;gap:1.3rem;display:flex}.home-page .btn-primary{--bs-btn-bg:var(--ekolong-green);--bs-btn-border-color:var(--ekolong-green);--bs-btn-hover-bg:var(--ekolong-green-dark);--bs-btn-hover-border-color:var(--ekolong-green-dark);--bs-btn-active-bg:var(--ekolong-green-dark);--bs-btn-active-border-color:var(--ekolong-green-dark)}.home-page .btn-xl{letter-spacing:.055em;text-transform:uppercase;border-radius:999px;padding:1rem 1.5rem;font-family:Montserrat,Segoe UI,sans-serif;font-size:.78rem;font-weight:700}.home-page .hero-contact-link{color:#fff;font-size:.92rem;font-weight:600;text-decoration:none}.home-page .hero-contact-link:hover{color:var(--ekolong-lime)}.home-page .page-section{padding:6.5rem 0}.home-page section[id]{scroll-margin-top:5.5rem}.home-page .section-intro{max-width:760px;margin:0 auto 3rem}.home-page .section-kicker{color:var(--ekolong-green);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.75rem;font-size:.72rem;font-weight:700;display:inline-block}.home-page .page-section h2.section-heading{color:var(--ekolong-ink);letter-spacing:-.045em;margin:0 0 .9rem;font-family:Montserrat,Segoe UI,sans-serif;font-size:clamp(2rem,3.4vw,2.8rem);font-weight:700;line-height:1.15}.home-page .page-section h3.section-subheading{color:var(--ekolong-muted);margin:0 auto;font-family:Montserrat,Segoe UI,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:1.8}.home-page #apropos{background:#fff}.home-page .about-panel{border:1px solid var(--ekolong-line);background:#fff;border-radius:1.25rem;grid-template-columns:1.1fr .9fr;display:grid;overflow:hidden;box-shadow:0 18px 55px #103d3212}.home-page .about-copy{align-items:center;padding:clamp(1.5rem,5vw,3.5rem);display:flex}.home-page .about-copy p,.home-page .about-commitment p{margin:0;font-size:1rem;line-height:1.9}.home-page .about-commitment{background:var(--ekolong-paper);align-items:flex-start;gap:1rem;padding:clamp(1.5rem,4vw,2.75rem);display:flex}.home-page .commitment-icon,.home-page .contact-icon,.home-page .value-icon{color:var(--ekolong-green);background:#155b4517;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.home-page .commitment-icon{width:2.8rem;height:2.8rem;font-size:1.1rem}.home-page .about-commitment h4{color:var(--ekolong-ink);letter-spacing:.04em;margin:0 0 .7rem;font-size:.85rem;font-weight:700}.home-page #activites,.home-page #marques,.home-page section#contact{background:var(--ekolong-paper)!important}.home-page #activites .portfolio-item{background:#fff;border:1px solid #103d3212;border-radius:1rem;height:100%;transition:transform .22s,box-shadow .22s;overflow:hidden;box-shadow:0 10px 34px #103d320f}.home-page #activites .portfolio-item:hover{transform:translateY(-6px);box-shadow:0 18px 42px #103d3221}.home-page #activites .portfolio-link{aspect-ratio:1.5}.home-page #activites .portfolio-hover{background:#103d32b8}.home-page #activites .portfolio-hover-content i{border:1px solid #ffffffb3;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;font-size:1.15rem;display:grid}.home-page #activites .portfolio-caption{text-align:left;padding:1.4rem 1.3rem 1.5rem}.home-page #activites .portfolio-caption-heading{color:var(--ekolong-ink);margin-bottom:.45rem;font-size:1.07rem;font-weight:700}.home-page #activites .portfolio-caption-heading .text-primary{color:var(--ekolong-green)!important}.home-page #activites .portfolio-caption-subheading{font-size:.8rem;color:var(--ekolong-muted)!important}.home-page #valeurs{background:#fff}.home-page .value-card{border:1px solid var(--ekolong-line);background:#fff;border-radius:1rem;height:100%;padding:1.7rem 1rem 1.4rem;transition:transform .2s,border-color .2s,box-shadow .2s}.home-page .value-card:hover{border-color:#155b4547;transform:translateY(-4px);box-shadow:0 12px 30px #103d3214}.home-page .value-icon{width:3.5rem;height:3.5rem;margin-bottom:1rem;font-size:1.25rem}.home-page .value-card h4{color:var(--ekolong-ink);margin:0;font-size:.9rem;font-weight:700}.home-page #marques .marque-card,.home-page #references .reference-card{min-height:125px;transition:transform .2s,box-shadow .2s;box-shadow:0 5px 18px #103d3209;border:1px solid var(--ekolong-line)!important;border-radius:.85rem!important}.home-page #marques .marque-card:hover,.home-page #references .reference-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #103d3217}.home-page #marques .marque-logo{object-fit:contain;filter:grayscale(.15);max-width:150px;height:60px;transition:filter .2s}.home-page #marques .marque-card:hover .marque-logo{filter:grayscale(0)}.home-page #references .reference-logo{height:92px}.home-page section#contact{color:var(--ekolong-ink);background-image:none}.home-page #contact .section-intro{max-width:680px}.home-page #contact .contact-details{margin-bottom:2rem}.home-page .contact-card{border:1px solid var(--ekolong-line);text-align:center;background:#fff;border-radius:.95rem;height:100%;min-height:178px;padding:1.35rem 1.1rem}.home-page .contact-icon{width:2.7rem;height:2.7rem;margin-bottom:.8rem;font-size:1rem}.home-page .contact-card h4{color:var(--ekolong-ink);margin-bottom:.45rem;font-size:.82rem;font-weight:700}.home-page .contact-card p,.home-page .contact-card a{color:var(--ekolong-muted);overflow-wrap:anywhere;margin:0;font-size:.78rem;line-height:1.65;text-decoration:none}.home-page .contact-card a:hover{color:var(--ekolong-green)}.home-page .contact-form-shell{border:1px solid var(--ekolong-line);background:#fff;border-radius:1.2rem;max-width:900px;margin:0 auto;padding:clamp(1.4rem,4vw,2.7rem);box-shadow:0 16px 44px #103d320f}.home-page .contact-form-heading{text-align:center;margin-bottom:1.5rem}.home-page .contact-form-heading h3{color:var(--ekolong-ink);margin-bottom:.45rem;font-size:1.2rem;font-weight:700}.home-page .contact-form-heading p{margin:0;font-size:.88rem}.home-page #contact form#contactForm .form-group{margin-bottom:1rem}.home-page #contact form#contactForm .form-control{border:1px solid var(--ekolong-line);min-height:3.5rem;color:var(--ekolong-ink);box-shadow:none;background:#fbfcfb;border-radius:.65rem;padding:.95rem 1rem;font-family:Montserrat,Segoe UI,sans-serif;font-size:.9rem;font-weight:400}.home-page #contact form#contactForm textarea.form-control{resize:vertical;min-height:10rem}.home-page #contact form#contactForm .form-control:focus{border-color:var(--ekolong-green);background:#fff;box-shadow:0 0 0 .2rem #155b451f}.home-page #contact form#contactForm .form-control::placeholder{color:#89958f;font-weight:400}.home-page .footer{background:var(--ekolong-green-dark);color:#ffffffc4;font-family:Montserrat,Segoe UI,sans-serif;font-size:.8rem;padding:2rem 0!important}.home-page .footer .row{row-gap:.8rem}.home-page .footer em{color:#fff;font-style:normal;font-weight:600}.home-page .footer a{color:#ffffffc4!important}.home-page .footer a:hover{color:var(--ekolong-lime)!important}.home-page .footer>.container>.mt-3{border-top:1px solid #ffffff24;padding-top:1rem}.home-page .portfolio-modal .modal-content{border:0;border-radius:1rem}.home-page .portfolio-modal .modal-content h2{color:var(--ekolong-ink);font-family:Montserrat,Segoe UI,sans-serif;font-weight:700}.home-page .portfolio-modal .modal-body ul{color:var(--ekolong-muted);padding-left:1.2rem;line-height:1.8}@media (width<=991.98px){.home-page #mainNav .navbar-collapse{padding:.5rem 0 .8rem}.home-page #mainNav .navbar-nav{align-items:stretch}.home-page #mainNav .navbar-nav .nav-item:last-child .nav-link{text-align:center;margin:.3rem 0 0}.home-page header.masthead{background-position:62%;min-height:690px}.home-page .about-panel{grid-template-columns:1fr}}@media (width<=767.98px){.home-page #mainNav{padding:.55rem 0}.home-page #mainNav .navbar-brand img{max-width:58vw;height:2.2rem}.home-page header.masthead{background:linear-gradient(90deg,#09241de0,#09241d8c),url(/assets/img/newbg.jpg) 59%/cover no-repeat;min-height:650px;padding:8rem 0 4.5rem}.home-page header.masthead .masthead-subheading{letter-spacing:.12em;font-size:.68rem}.home-page header.masthead .masthead-heading{font-size:clamp(2.45rem,11vw,4rem);line-height:1.08}.home-page .masthead-actions{flex-direction:column;align-items:flex-start;gap:1rem}.home-page .page-section{padding:4.5rem 0}.home-page .section-intro{margin-bottom:2rem}.home-page .page-section h2.section-heading{font-size:2rem}.home-page .page-section h3.section-subheading{font-size:.92rem}.home-page .about-copy,.home-page .about-commitment{padding:1.5rem}.home-page #activites .portfolio-link{aspect-ratio:1.55}.home-page #marques .marque-card,.home-page #references .reference-card{min-height:110px;padding:.85rem!important}.home-page #references .reference-logo{height:75px}.home-page .contact-card{min-height:155px}.home-page .footer .row>div{text-align:center!important}}@media (prefers-reduced-motion:reduce){.home-page *,.home-page :before,.home-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
