@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap");:root{font-family:Manrope,Arial,sans-serif;color-scheme:dark;--bg:#081020;--panel:#111c30;--panel2:#16243a;--fg:#f6f8ff;--muted:#a6b1c3;--edge:#29374d;--brand:#237dff;--accent:#43b5fa}:root[data-theme=light]{color-scheme:light;--bg:#f7f9fd;--panel2:#edf3fb;--fg:#111d30;--muted:#657189;--edge:#dce4ee;--brand:#0872ff;--accent:#0872ff;--head:#0a1424}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Manrope,Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}::selection{background:#247eff;color:white}.container{max-width:1310px;margin:auto;padding-left:28px;padding-right:28px}.section{padding-top:106px;padding-bottom:106px}.eyebrow{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase}.section-title{color:var(--head);font-size:clamp(31px,4.2vw,54px);letter-spacing:-2.2px;line-height:1.12;margin:16px 0 18px;max-width:770px}.muted{color:var(--muted);line-height:1.85}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:100px;padding:15px 23px;font-weight:800;font-size:13px;min-height:47px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--brand);color:white}.btn-secondary{border-color:#ffffff65;background:#ffffff14;color:white;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.btn-outline{border-color:var(--edge);background:transparent;color:var(--fg)}.header{position:-webkit-sticky;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--edge)}.nav-inner{height:84px;justify-content:space-between;gap:24px}.brand,.nav-inner{display:flex;align-items:center}.brand{border-radius:10px;padding:4px 8px;flex-shrink:0}.brand img{width:180px;height:auto;display:block}.nav-links{display:flex;align-items:center;gap:27px}.nav-links a{color:var(--fg);font-size:12px;font-weight:700;white-space:nowrap}.nav-links .active,.nav-links a:hover{color:var(--brand)}.nav-actions{gap:10px}.icon-btn,.nav-actions{display:flex;align-items:center}.icon-btn{justify-content:center;border:1px solid var(--edge);background:var(--panel2);color:var(--fg);width:41px;height:41px;border-radius:14px}.lang-wrap{position:relative}.lang-select{display:flex;align-items:center;gap:8px;background:var(--panel2);color:var(--fg);padding:11px 13px;font-size:12px;font-weight:800}.lang-menu,.lang-select{border:1px solid var(--edge);border-radius:14px}.lang-menu{position:absolute;right:0;top:calc(100% + 8px);padding:8px;background:var(--panel);min-width:164px;box-shadow:0 18px 40px #0004}.lang-menu button{width:100%;display:flex;gap:9px;align-items:center;background:transparent;border:0;text-align:left;padding:10px;color:var(--fg);border-radius:9px;font-size:13px}.lang-menu button:hover{background:var(--panel2)}.mobile-only{display:none}.hero{position:relative;min-height:715px;background:#040917;color:white;overflow:hidden;display:flex;align-items:center}.hero-photo{position:absolute;inset:0;background-image:linear-gradient(90deg,#040917 3%,#040917eb 31%,#0409176b 60%,#04091730),url(/images/hero-capteur.webp);background-position:50%,50%;background-size:cover;transform:scale(1.01)}.hero:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:150px;background:linear-gradient(transparent,#081020bb)}.hero-body{position:relative;z-index:2;padding-top:75px;padding-bottom:95px}.hero h1{font-size:clamp(42px,5.8vw,79px);line-height:1.08;letter-spacing:-3.8px;max-width:820px;margin:22px 0}.hero h1 em{font-style:normal;color:#4f9cff}.hero p{max-width:575px;color:#d5dfed;line-height:1.85;font-size:15px}.hero-buttons{gap:12px;margin-top:30px}.hero-bottom,.hero-buttons{display:flex;flex-wrap:wrap}.hero-bottom{gap:36px;margin-top:75px}.hero-stat{border-left:2px solid #428fff;padding-left:15px;font-size:12px;color:#dce4ee;max-width:145px}.hero-stat strong{display:block;font-size:14px;color:white}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.service-card{border:1px solid var(--edge);border-radius:20px;background:var(--panel);overflow:hidden;transition:transform .25s,border-color .25s}.service-card:hover{transform:translateY(-6px);border-color:var(--brand)}.service-img{height:175px;position:relative;overflow:hidden}.cover-img{width:100%;height:100%;object-fit:cover;display:block}.service-card-body{padding:19px 21px 23px}.service-card h3{font-size:16px;letter-spacing:-.4px;color:var(--head);margin:0 0 8px}.service-card p{font-size:12px;margin:0;min-height:58px;line-height:1.75;color:var(--muted)}.arrow-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:12px;font-weight:800;margin-top:14px}.about-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:75px;gap:75px;align-items:center}.about-media{position:relative;min-height:510px;display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.about-media img{height:100%;border-radius:22px;object-fit:cover}.about-media img:last-child{margin-top:46px;height:calc(100% - 46px)}.feature-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:17px;gap:17px;margin:28px 0}.feature{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:750}.feature svg{color:var(--brand)}.surface{background:var(--panel)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--edge);border-radius:30px;padding:9px 14px;font-size:11px;font-weight:800;background:var(--panel);color:var(--fg)}.filter.selected{background:var(--brand);color:white;border-color:var(--brand)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:26px}.project{background:var(--panel);border:1px solid var(--edge);border-radius:20px;overflow:hidden}.project-img{height:248px}.project-caption{padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.project-caption strong{font-size:14px}.project-caption span{font-size:10px;color:var(--accent);text-transform:uppercase;font-weight:800}.why-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;align-items:start}.process{display:grid;grid-gap:16px;gap:16px}.process-row{padding:22px 25px;border:1px solid var(--edge);border-radius:18px;background:var(--panel)}.process-row strong{display:block;margin-bottom:7px}.process-row p{margin:0;font-size:12px;color:var(--muted);line-height:1.6}.cta{background:radial-gradient(circle at 80% 20%,#126be0 0,transparent 39%),linear-gradient(115deg,#111a35,#061632 70%);color:white;border-radius:26px;padding:68px 80px;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:clamp(28px,3vw,43px);letter-spacing:-1.5px;line-height:1.15;max-width:690px;margin:0 0 14px}.cta p{color:#c3d1e6;line-height:1.7}.footer{background:#060c17;color:#e8eef9;padding-top:70px;margin-top:0}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .95fr 1.3fr;grid-gap:42px;gap:42px;padding-bottom:48px}.footer-logo{display:inline-flex;background:white;padding:6px;border-radius:8px}.footer-logo img{width:170px}.footer h4{margin:5px 0 20px;font-size:13px}.footer a,.footer p{font-size:12px;line-height:1.85;color:#aebbd0}.footer a:hover{color:#4ea2ff}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.footer .footer-brand p{max-width:280px}.socials{display:flex;gap:10px;margin-top:18px}.socials a{display:flex;align-items:center;justify-content:center;background:#17263d;width:35px;height:35px;border-radius:50%;color:white}.footer-bottom{border-top:1px solid #223046;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:20px;padding-bottom:23px;font-size:11px;color:#9eacc1}.wa-float{position:fixed;right:25px;bottom:25px;z-index:48;background:#21c063;color:white;border-radius:100px;display:flex;gap:10px;align-items:center;padding:14px 19px;font-weight:800;font-size:12px;box-shadow:0 10px 35px #0005}.page-hero{padding:96px 0 70px;background:radial-gradient(circle at 80% 30%,#1868c733,transparent 45%),var(--panel)}.page-hero h1{font-size:clamp(35px,5vw,65px);letter-spacing:-2.5px;line-height:1.08;max-width:820px;margin:17px 0}.page-hero p{max-width:690px;line-height:1.8}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:50px;gap:50px}.field{display:grid;grid-gap:9px;gap:9px;margin-bottom:17px}.field label{font-size:12px;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid var(--edge);border-radius:12px;padding:15px 14px;background:var(--panel);color:var(--fg);outline-offset:3px}.field textarea{min-height:150px;resize:vertical}.contact-info{border:1px solid var(--edge);border-radius:20px;padding:28px;background:var(--panel)}.contact-info a{overflow-wrap:anywhere}.info-line{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px;color:var(--fg);font-size:13px;line-height:1.7}.info-line svg{color:var(--brand);flex-shrink:0}.map-frame{width:100%;height:420px;border:0;border-radius:22px;background:var(--panel2)}.legal{max-width:800px;min-height:40vh}.legal p{line-height:2}.skip{position:absolute;left:-9999px;top:auto}.skip:focus{left:12px;top:10px;z-index:999;padding:12px;background:white;color:black}@media(max-width:1100px){.nav-links{gap:15px}.nav-inner{gap:11px}.brand img{width:135px}.nav-actions .nav-quote{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr 1fr;gap:45px}}@media(max-width:760px){.container{padding-left:20px;padding-right:20px}.section{padding-top:68px;padding-bottom:68px}.nav-inner{height:70px}.mobile-only{display:flex}.nav-links{position:absolute;top:70px;left:0;right:0;background:var(--panel);border-bottom:1px solid var(--edge);padding:22px;display:none;flex-direction:column;align-items:stretch;gap:19px}.nav-links.open{display:flex}.lang-select{padding:9px}.hero{min-height:660px}.hero h1{letter-spacing:-2.2px}.hero-body{padding-top:70px}.hero-bottom{margin-top:48px;gap:16px}.section-title{letter-spacing:-1.2px}.project-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.contact-grid,.why-grid{grid-template-columns:1fr;gap:38px}.about-media{min-height:350px}.cta{padding:43px 30px;flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.wa-float span{display:none}.wa-float{padding:14px}.project-img{height:180px}}@media(max-width:510px){.nav-actions{gap:5px}.brand img{width:116px}.icon-btn{width:36px;height:36px}.lang-select{gap:4px;padding:8px}.hero-photo{background-position:50%,65%}.project-grid,.service-grid{grid-template-columns:1fr}.service-img{height:210px}.project-img{height:240px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}.hero h1{font-size:42px}.hero-bottom{display:none}.about-media{min-height:290px}.section-heading{display:block}.cta h2{font-size:30px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.team-section{background:var(--panel)}.team-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:22px;gap:22px}.team-shot{position:relative;height:430px;margin:0;overflow:hidden;border-radius:23px;background:#081326;border:1px solid var(--edge)}.team-shot img{object-fit:cover;transition:transform .6s}.team-shot:hover img{transform:scale(1.035)}.team-shot figcaption{position:absolute;bottom:0;inset-inline:0;padding:45px 28px 24px;color:white;font-weight:800;background:linear-gradient(transparent,#020713de)}.team-grid .team-shot:nth-child(2) img{object-position:center 30%}.hero-photo{background-position:50%}.hero h1{max-width:730px}.hero p{max-width:520px}@media(max-width:760px){.team-grid{grid-template-columns:1fr}.team-shot{height:350px}.hero-photo{background-position:58%}.hero{background:#081020}.hero-photo:after{content:"";position:absolute;inset:0;background:#02081550}}.visitor-counter{display:inline-flex;gap:9px;align-items:center;color:#aebbd0;font-size:11px}.visitor-counter svg{color:#50a1ff}.visitor-counter strong{color:#eaf2ff;font-weight:800}:root{--bg:#0a1220;--panel:#101b2b;--panel2:#16263a;--fg:#ecf4ff;--edge:#293b53;--head:#fff;--brand:#0877ff;--accent:#3897ff}:root[data-theme=light]{--bg:#fff;--panel:#fff;--panel2:#edf5ff;--fg:#111b2d;--head:#0b1934;--muted:#5a6b83;--edge:#e0eaf5}.header{background:var(--panel);box-shadow:0 2px 12px #0b34720a}.nav-inner{height:76px}.brand{background:#fff}.luxury-hero{min-height:530px}.luxury-hero .hero-photo{background-image:linear-gradient(90deg,#020d24 4%,#051831e8 30%,#05234747 72%),url(/images/hero-capteur.webp);background-position:50%}.luxury-hero .hero-body{padding-top:64px;padding-bottom:58px}.luxury-hero h1{font-weight:800;font-size:clamp(44px,5.9vw,80px);max-width:690px;line-height:1.01}.luxury-hero p{max-width:565px;font-size:14px}.luxury-hero .hero-bottom{margin-top:34px;gap:22px}.luxury-hero .hero-stat{border:0;display:flex;align-items:center;gap:10px;max-width:210px}.hero-stat-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #32a6ff;border-radius:50%;font-size:27px;color:#31a6ff}.hero-stat strong{font-size:12px}.services-section{padding-top:52px;padding-bottom:46px}.section-heading{align-items:center}.section-heading .section-title{max-width:530px;font-size:clamp(28px,3.2vw,43px);margin:9px 0 10px}.section-intro{max-width:350px;font-size:12px}.service-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.service-card{border-radius:13px;box-shadow:0 7px 18px #172f5710}.service-img{height:142px;display:block}.project-img img,.school-collage img,.service-img img{transition:transform .65s cubic-bezier(.2,.75,.2,1)}.project:hover img,.school-collage>div:hover img,.service-card:hover img{transform:scale(1.06)}.service-card-body{padding:11px 13px 15px}.service-card p{min-height:0;font-size:10px;line-height:1.6}.service-label{display:flex;align-items:center;gap:7px;margin-bottom:8px}.service-label h3{font-size:12px;flex:1 1;margin:0}.service-icon{height:27px;width:27px;min-width:27px;border-radius:8px;color:#fff;place-items:center;font-size:17px}.service-arrow,.service-icon{background:#0877ff;display:grid}.service-arrow{color:white;border-radius:50%;height:24px;width:24px;place-items:center;flex-shrink:0}.icon-2,.icon-8{background:#f67825}.icon-3{background:#00a6a1}.icon-4{background:#7654d5}.icon-5{background:#12a66b}.school-wrap{padding:18px 0 40px}.school-showcase{display:grid;grid-template-columns:.9fr 1.2fr;grid-gap:30px;gap:30px;background:var(--panel2);padding:26px;border-radius:23px}.school-copy h2{font-size:clamp(29px,3.2vw,45px);letter-spacing:-1.9px;line-height:1.1;margin:11px 0;color:var(--head)}.school-copy p{font-size:12px;line-height:1.85;color:var(--muted)}.school-copy ul{padding:0;list-style:none;display:grid;grid-gap:10px;gap:10px;margin:20px 0}.school-copy li{font-size:12px;display:flex;align-items:center;gap:8px}.school-copy li svg{color:var(--brand)}.school-collage{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(3,120px);grid-gap:9px;gap:9px;min-width:0}.school-collage>div{position:relative;border-radius:13px;overflow:hidden}.school-collage>div:first-child{grid-row:span 3}.portfolio-section{padding-top:40px;padding-bottom:55px}.portfolio-section .section-heading{margin-bottom:19px}.project-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:20px}.project{border-radius:12px}.project-img{height:130px}.project-caption{display:grid;padding:10px 12px;grid-gap:4px;gap:4px}.project-caption strong{font-size:11px}.project-caption span{font-size:9px}.portfolio-disclaimer{font-size:11px;margin-top:22px}.filter{border-radius:9px}.surface,.team-section{background:var(--panel2)}.footer{padding-top:54px}.cta{border-radius:17px;padding:45px}.btn{border-radius:11px}.wa-float{border:1px solid #ffffff65}.project,.school-collage>div,.service-card,.team-shot{animation:rise-in .7s both}@keyframes rise-in{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1140px){.project-grid,.service-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.luxury-hero{min-height:600px}.luxury-hero .hero-photo{background-position:65%}.school-showcase{grid-template-columns:1fr}.school-collage{grid-template-rows:repeat(3,110px)}.project-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-img{height:145px}.project-img{height:135px}.school-copy h2{font-size:32px}.section-intro{display:none}}@media(max-width:480px){.luxury-hero h1{font-size:43px}.project-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-img{height:116px}.project-img{height:118px}.service-label{flex-wrap:wrap}.service-label h3{font-size:10px}.service-arrow{height:22px;width:22px}.school-showcase{padding:16px}.school-collage{grid-template-rows:repeat(3,80px)}.luxury-hero .hero-bottom{display:none}}@media(prefers-reduced-motion:reduce){.project,.school-collage>div,.service-card,.team-shot{animation:none}}.launch-splash{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;overflow:hidden;background:#f9fbff;opacity:1;pointer-events:all;transition:opacity .55s ease,visibility .55s ease}.launch-splash--leaving{opacity:0;visibility:hidden;pointer-events:none}.launch-splash__glow{position:absolute;width:min(110vw,1050px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(34,103,220,.1),rgba(250,252,255,0) 70%)}.launch-splash__content{position:relative;width:min(86vw,740px);display:flex;flex-direction:column;align-items:center;gap:clamp(24px,5vw,48px);animation:capteur-splash-in .65s ease-out both}.launch-splash__logo{width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 14px 24px rgba(14,30,90,.07))}.launch-splash__bar{display:block;overflow:hidden;width:clamp(84px,15vw,160px);height:3px;border-radius:10px;background:#e2e9f5}.launch-splash__bar>span{display:block;width:38%;height:100%;border-radius:10px;background:linear-gradient(90deg,#1748b9,#ff263e);animation:capteur-splash-progress 1.2s ease-in-out infinite}@keyframes capteur-splash-in{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes capteur-splash-progress{0%{transform:translateX(-110%)}to{transform:translateX(370%)}}@media(max-width:600px){.launch-splash__content{width:90vw;gap:28px}.launch-splash__bar{height:2px}}@media(prefers-reduced-motion:reduce){.launch-splash,.launch-splash__bar>span,.launch-splash__content{animation:none!important;transition:none!important}}