@charset "UTF-8";body.nav-active .col-logo .logo-dark{opacity:0!important}body.nav-active .col-logo .logo-light{opacity:1!important}body.nav-active .burger-container{transform:rotate(90deg)}body.nav-active .burger-container .burger .bar{transition:all .4s cubic-bezier(.4,.01,.165,.99);transition-delay:.2s}body.nav-active .burger-container .burger .bar.top-bar{transform:translateY(4px) rotate(45deg)!important}body.nav-active .burger-container .burger .bar.btm-bar{transform:translateY(3px) rotate(-45deg)!important}header{height:60px;left:0;position:fixed;right:0;width:100%;z-index:130}@media(min-width:992px){header{bottom:1rem}header,header .container{align-items:flex-end!important}}@media(max-width:991.98px){header{align-items:flex-start!important}}header .col-header{gap:0 1rem;transform-style:preserve-3d;z-index:20}@media(min-width:992px){header .col-header{align-items:flex-end!important;width:-moz-fit-content;width:fit-content}}@media(max-width:991.98px){header .col-header{align-items:flex-start!important;margin-top:5px;width:-moz-fit-content;width:fit-content}}header .nav-cluster{-webkit-backdrop-filter:blur(80px);backdrop-filter:blur(80px);background:#0009;border-radius:5px;display:flex;flex-shrink:0;overflow:hidden;position:relative;transition:background .5s ease,backdrop-filter .5s ease;will-change:width,height}@media(min-width:992px){header .nav-cluster{border:1px solid hsla(0,0%,42%,.2);height:60px}}@media(max-width:767.98px){header .nav-cluster{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0009;height:48px}}@media(max-width:991.98px){header .nav-cluster.is-open{border-radius:0!important}}@media(max-width:767.98px){header .nav-cluster.is-open{-webkit-backdrop-filter:blur(80px);backdrop-filter:blur(80px);background:#0009}}@media(min-width:992px){header .nav-cluster{align-items:flex-end;justify-content:space-between}}@media(max-width:991.98px){header .nav-cluster{align-items:flex-start}}header .nav-cluster .col-logo{align-items:center;background:#00000080;border-radius:5px;display:flex;flex-shrink:0;gap:1rem;height:48px;padding:0 .5rem 0 1rem;position:relative;z-index:2}@media(min-width:992px){header .nav-cluster .col-logo{margin:5px}}header .nav-cluster .col-logo .logo.link{height:18px;width:80px}header .nav-cluster .col-logo .logo.link .logo-dark,header .nav-cluster .col-logo .logo.link .logo-light{height:18px;left:0;position:absolute;right:0;transition:opacity .35s ease-in;width:80px}header .nav-cluster .col-logo .logo.link .logo-dark{opacity:0}header .nav-cluster .col-logo .logo.link .logo-light{opacity:1}header .nav-cluster .col-menu{align-items:center;flex-shrink:0;height:60px;opacity:1;padding:0 1rem 0 .5rem;position:relative;transition:opacity .4s ease;z-index:2}@media(min-width:992px){header .nav-cluster.is-open .col-menu{opacity:0;pointer-events:none}}header .nav-cluster .nav-panel{inset:0;opacity:0;position:absolute;visibility:hidden;z-index:1}header .nav-cluster .nav-panel .nav-panel-inner{color:var(--color-white);display:flex;flex-direction:column;gap:2rem;left:0;margin-left:auto;margin-right:auto;padding:2rem 1.5rem;position:absolute;right:0;width:100%}@media(min-width:576px){header .nav-cluster .nav-panel .nav-panel-inner{max-width:540px}}@media(min-width:768px){header .nav-cluster .nav-panel .nav-panel-inner{max-width:720px}}@media(min-width:992px){header .nav-cluster .nav-panel .nav-panel-inner{bottom:60px;max-width:960px;top:0}}@media(min-width:1200px){header .nav-cluster .nav-panel .nav-panel-inner{max-width:1140px}}@media(min-width:1400px){header .nav-cluster .nav-panel .nav-panel-inner{max-width:1320px}}@media(max-width:991.98px){header .nav-cluster .nav-panel .nav-panel-inner{bottom:0;top:60px}}header .nav-cluster .nav-panel .nav-section{display:flex;flex-direction:column}header .nav-cluster .nav-panel .nav-section-title{color:#fff6;font-size:.7rem;font-weight:500;letter-spacing:.12em;margin:0 0 .75rem;text-transform:uppercase}header .nav-cluster .nav-panel .nav-links{display:flex;flex-direction:column;gap:.35rem;list-style:none;margin:0;padding:0}header .nav-cluster .nav-panel .nav-links .nav-link-item a{color:var(--color-white);display:inline-block;font-size:1rem;font-weight:400;line-height:1.4;text-decoration:none;transition:opacity .3s ease}header .nav-cluster .nav-panel .nav-links .nav-link-item a:hover{opacity:.5}header .nav-cluster .nav-panel .nav-links .nav-link-item a.router-link-active{opacity:.4}header .nav-cluster .nav-panel .nav-footer{border-top:1px solid hsla(0,0%,100%,.1);display:flex;gap:1rem;margin-top:auto;padding-top:1.5rem}header .nav-cluster .nav-panel .nav-footer a{color:#fff6;font-size:.7rem;text-decoration:none;transition:color .3s ease}header .nav-cluster .nav-panel .nav-footer a:hover{color:var(--color-white)}@media(max-width:991.98px){header .col-menu .content-inner{animation:shine 10s ease-in-out infinite;background:linear-gradient(0deg,#05050d 0,#23106b);background-size:200% auto;height:100dvh;left:0;overflow-y:auto;padding:0 1rem;position:fixed!important;right:0;top:0;transform:translate(100%);width:calc(100vw - 2rem);z-index:0}}@keyframes shine{0%{background-position:100%}to{background-position:-100%}}@media(min-width:992px){header .col-menu ul{gap:0 1rem}}@media(max-width:991.98px){header .col-menu ul{gap:.3rem 0;padding-bottom:4rem}}header .col-menu ul li{cursor:pointer}@media(min-width:992px){header .col-menu ul li{font-size:90%}}@media(max-width:991.98px){header .col-menu ul li{font-size:2rem}}header .col-menu ul li a{color:var(--color-white)}@media(min-width:992px){header .col-menu ul li a{transition:color .25s ease-in}}header .col-menu ul li a .word-mask{filter:blur(10px) brightness(0);opacity:0;will-change:filter}header .col-menu.nav-responsive{height:100dvh;left:0;position:fixed;top:0;transform:translate(100%);transition:transform .6s cubic-bezier(.77,0,.175,1),visibility 0s linear .6s;visibility:hidden;width:100%;z-index:10}header .col-menu.nav-responsive.active{transform:translate(0);transition:transform .6s cubic-bezier(.77,0,.175,1),visibility 0s linear 0s;visibility:visible}@media(max-width:991.98px){header .col-menu .menu-navigation-secondary{gap:0 1rem;padding-bottom:4rem}}header .col-menu .menu-navigation-secondary a{opacity:0}header .col-menu .menu-navigation-secondary .frenchtech{width:1.875rem}header .col-menu .menu-navigation-secondary .instagram{height:1.875rem;width:1.875rem}header .col-menu .menu-navigation-secondary .instagram path{fill:var(--color-white)}header .col-burger-menu .burger-container{cursor:pointer;display:inline-block;transform:rotate(0);transition:all .3s cubic-bezier(.4,.01,.165,.99);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}header .col-burger-menu .burger-container .burger{height:.5rem;margin:0 auto;top:50%;width:1.125rem}header .col-burger-menu .burger-container .burger .bar{background:var(--color-white);display:block;height:1px;position:relative;transition:all .3s cubic-bezier(.4,.01,.165,.99);transition-delay:0s;width:100%}header .col-burger-menu .burger-container .burger .bar.top-bar{transform:translateY(0) rotate(0)}header .col-burger-menu .burger-container .burger .bar.btm-bar{transform:translateY(5px) rotate(0)}header.dark .logo-dark{opacity:1!important}header.dark .logo-light{opacity:0!important}@media(min-width:992px){header.dark .col-menu a{color:var(--color-dark)!important}}header.dark .menu-toggle{border-bottom:1px solid var(--color-dark);border-top:1px solid var(--color-dark)}header.dark .menu-toggle:after,header.dark .menu-toggle:before{background:var(--color-dark)}.nav-overlay{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0006;inset:0;opacity:0;position:fixed;visibility:hidden;z-index:40}.trigger-footer{height:1px}.footer{align-items:center;background:transparent;color:var(--color-white);display:flex;flex-direction:column;height:75vh;justify-content:center;padding:0;position:relative;z-index:0}@media(max-width:1199.98px){.footer{height:auto}}@media(min-height:1330px){.footer{height:55vh}}.footer .background-canvas{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:-1}.footer .footer-inner{display:flex;flex-direction:column;height:100%;width:100%}@media(max-width:767.98px){.footer-container{padding-bottom:5rem}}.footer-container a:not(.btn-round,.google-review),.footer-container p{color:var(--color-white);opacity:.3;transition:opacity .5s ease-in}.footer-container a{cursor:pointer;font-weight:400}@media(max-width:767.98px){.footer-container a{font-size:90%}}.footer-container a:hover{opacity:1}.footer-container li{line-height:1.3;margin-bottom:.3rem}.footer-container img{filter:grayscale(1)}@media(min-width:768px){.footer-container .container-top{padding:3rem 0}}@media(max-width:767.98px){.footer-container .container-top{padding-bottom:3rem;padding-top:3rem}}.footer-container .container-top:after,.footer-container .container-top:before{background:#2c284e47;content:"";height:1px;left:0;position:absolute;right:0;width:100%}.footer-container .container-top:before{top:0}.footer-container .container-top:after{bottom:0}@media(max-width:767.98px){.footer-container .container-top:after{display:none}}.infinity-text-container{pointer-events:none}.col-brand .logo-google-review img{width:12.5rem}.cta-contact{position:absolute;right:0;top:-5rem;width:-moz-max-content;width:max-content;z-index:2}@media(max-width:1199.98px){.cta-contact{top:3rem}}@media(max-width:767.98px){.cta-contact{right:.625rem;top:.625rem}}.cta-contact .btn-round{background:var(--color-white)}.cta-contact .btn-round>span{background:transparent}.cta-contact .btn-round>span .emoji{height:1.25rem;min-width:1.25rem;width:1.25rem}@media(max-width:991.98px){.footer-col-toggle{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.08);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:0;padding-bottom:.75rem}}.footer-col-chevron{display:none;font-size:2rem;font-weight:100;transform:rotate(45deg);transition:transform .3s ease}@media(max-width:991.98px){.footer-col-chevron{display:inline-block}.footer-col-chevron.is-open{transform:rotate(0)}.footer-col-list{margin-top:0;max-height:0;overflow:hidden;transition:max-height .35s ease}.footer-col-list.is-open{max-height:400px}}.footer-col-list li:first-child{margin-top:.5rem}@media(max-width:767.98px){.col-copyright{align-items:center;flex-direction:column;gap:.5rem;justify-content:center;text-align:center}}.col-copyright .copyright{font-size:.75rem;opacity:.7}.footer-legal{align-items:center;display:flex;gap:.5rem}.version-site{font-size:80%;margin:0;opacity:.4}:root{--contact-panel-width:80vw;--contact-left-width:38%;--contact-bg:#0a0a0a;--contact-text:var(--color-white);--contact-border:hsla(0,0%,100%,.1);--contact-input-border:hsla(0,0%,100%,.18);--contact-input-focus:hsla(0,0%,100%,.6);--contact-accent:#c96fe8}.modal-contact{background:var(--contact-bg)!important;border-radius:0;color:var(--contact-text);left:auto;overflow-y:auto;padding:0;right:0;width:var(--contact-panel-width)}@media(max-width:991.98px){.modal-contact{width:100vw}}.modal-contact .close-button{position:absolute;right:0;top:5px;z-index:10}.modal-contact .close-button:after,.modal-contact .close-button:before{background:var(--color-white)}.contact-panel-inner{min-height:100%}@media(max-width:767.98px){.contact-panel-inner{flex-direction:column}}.col-contact-left{background:#ffffff08;border-right:1px solid var(--contact-border);flex-shrink:0;padding:6rem 3rem 4rem;width:var(--contact-left-width)}@media(max-width:991.98px){.col-contact-left{padding:5rem 2rem 3rem;width:32%}}@media(max-width:767.98px){.col-contact-left{border-bottom:1px solid var(--contact-border);border-right:none;padding:5rem 1.5rem 2.5rem;width:100%}}.contact-label{margin-bottom:2rem}.contact-label .label{background:#c96fe826;border:1px solid rgba(201,111,232,.3);color:#e0a0f8}.contact-title{overflow:hidden}.contact-heading{color:var(--color-white);font-size:clamp(2.2rem,3.5vw,3.8rem);font-weight:700;line-height:1.05;margin:0}.contact-heading .char{display:inline-block;transform:translateY(110%)}.contact-info-link{color:#ffffff73;font-size:.875rem;text-decoration:none;transition:color .25s ease}.contact-info-link:hover{color:var(--color-white)}.contact-badges{flex-wrap:wrap}.contact-badges .contact-badges-frame{border:1px solid hsla(0,0%,100%,.12);border-radius:2px;height:45px;padding:.75rem}.contact-badges .contact-badge-link{align-items:center;display:flex}.contact-badges .contact-badge{height:28px;-o-object-fit:contain;object-fit:contain;width:auto}.contact-badges .contact-badge[src*=badge-collective]{height:auto;width:100px}.contact-badges .contact-badge-gray{filter:grayscale(1) brightness(1.8);opacity:.55;transition:filter .25s ease,opacity .25s ease}.contact-badges .contact-badge-gray:hover{filter:grayscale(0);opacity:1}.col-contact-right{flex:1;min-width:0;overflow-y:auto;padding:5rem 3.5rem 4rem}@media(max-width:991.98px){.col-contact-right{padding:5rem 2rem 3rem}}@media(max-width:767.98px){.col-contact-right{padding:2.5rem 1.5rem 3rem}}.contact-form{gap:2.5rem;height:100%}.form-services{border:none;margin:0;padding:0}.form-legend{color:#ffffffb3;font-size:.75rem;font-weight:500;letter-spacing:.08em;margin-bottom:1rem;text-transform:uppercase}.services-grid{display:grid;gap:.6rem;grid-template-columns:repeat(4,1fr)}@media(max-width:991.98px){.services-grid{grid-template-columns:repeat(2,1fr)}}.service-card{align-items:center;border:1px solid var(--contact-border);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;padding:1rem .75rem;text-align:center;transition:border-color .2s ease,background .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.service-card:hover{background:#ffffff0a;border-color:#ffffff4d}.service-card.is-active{background:#c96fe814;border-color:var(--contact-accent)}.service-card.is-active .service-icon{color:var(--contact-accent)}.service-card.is-active .service-label{color:var(--color-white)}.service-icon{color:#fff6;font-size:1.4rem;font-weight:200;transition:color .2s ease}.service-label{color:#ffffff80;font-size:.75rem;line-height:1.2;transition:color .2s ease}.form-fields{gap:5rem}@media(max-width:575.98px){.form-row{flex-direction:column}}.form-field{border-bottom:1px solid var(--contact-input-border);padding:1.4rem 0 .5rem;position:relative;transition:border-color 1s ease}.form-field:focus-within{border-bottom-color:var(--contact-input-focus)}.form-field input,.form-field textarea{background:transparent;border:none;caret-color:var(--contact-accent);color:var(--color-white);font-family:var(--font-primary);font-size:1rem;font-weight:300;height:100%;line-height:1.5;outline:none;padding:0;resize:none;width:100%}.form-field input::-moz-placeholder,.form-field textarea::-moz-placeholder{color:transparent}.form-field input::placeholder,.form-field textarea::placeholder{color:transparent}.form-field label{color:#ffffffb3;font-size:.85rem;left:0;line-height:1;pointer-events:none;position:absolute;top:1.4rem;transition:top .2s ease,font-size .2s ease,color .2s ease}.form-field.has-error{border-bottom-color:#ff6b6b}.form-field.has-error label{color:#ff6b6b}.form-field .field-error{bottom:-15px;color:#ff6b6b;display:block;font-size:.72rem;line-height:1;margin-top:.3rem;position:absolute}.form-field input:not(:-moz-placeholder)~label,.form-field textarea:not(:-moz-placeholder)~label{color:#ffffff80;font-size:.7rem;top:.25rem}.form-field input:focus~label,.form-field input:not(:placeholder-shown)~label,.form-field textarea:focus~label,.form-field textarea:not(:placeholder-shown)~label{color:#ffffff80;font-size:.7rem;top:.25rem}.form-field input:focus~label,.form-field textarea:focus~label{color:#c96fe8cc}.form-field-textarea{padding-top:1.6rem}.form-field-textarea textarea{min-height:100px}.form-captcha altcha-widget{--altcha-color-base:hsla(0,0%,100%,.04);--altcha-color-text:hsla(0,0%,100%,.7);--altcha-color-border:hsla(0,0%,100%,.15);--altcha-color-border-focus:rgba(201,111,232,.6);--altcha-color-footer-bg:transparent;--altcha-color-error-text:#ff6b6b;--altcha-color-active:#c96fe8;--altcha-max-width:100%;border-radius:5px;display:block;font-family:var(--font-primary);font-size:80%;width:-moz-fit-content;width:fit-content}.form-submit{display:flex;flex-direction:column;gap:1rem}.form-submit .btn.has-gradient{align-self:flex-start}.form-submit .btn.has-gradient:disabled{cursor:not-allowed;opacity:.4}.form-success{color:#4ade80}.form-error,.form-success{font-size:.875rem;margin:0}.form-error{color:#ff6b6b}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.mouse{align-items:center;background:var(--color-white);border-radius:50%;display:flex;height:.625rem;justify-content:center;left:0;opacity:0;pointer-events:none;position:fixed;top:0;transform-origin:center center;transition:opacity .3s ease;width:.625rem;will-change:transform;z-index:9999}.mouse.is-visible{opacity:1}.mouse .mouse-text{align-items:center;color:var(--color-black);display:flex;font-family:var(--font-primary);font-size:.5rem;font-weight:100;inset:0;justify-content:center;letter-spacing:.03em;line-height:1.2;opacity:0;pointer-events:none;position:absolute;text-align:center;transition:opacity .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.mouse .mouse-text span{display:block}.mouse.show-text .mouse-text{opacity:1}.mouse .mouse-arrow{align-items:center;color:var(--color-white);display:flex;font-size:.75rem;inset:0;justify-content:center;opacity:0;pointer-events:none;position:absolute;transform:scale(0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.mouse .mouse-arrow:before{content:"→"}.mouse.arrow-left .mouse-arrow:before{content:"←"}.mouse .mouse-close{align-items:center;color:var(--color-black);display:flex;font-size:.3rem;font-weight:100;justify-content:center;transform:scale(0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.mouse .loader,.mouse .mouse-close{inset:0;opacity:0;pointer-events:none;position:absolute}.mouse .loader{overflow:visible}.mouse .loader svg{animation:mouse-spin .8s linear infinite;height:3.5rem;left:50%;margin:-1.75rem 0 0 -1.75rem;position:absolute;top:50%;transform-origin:center;width:3.5rem}.mouse .loader .path{stroke:var(--color-highlight);stroke-dasharray:47 16;stroke-linecap:round}@keyframes mouse-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
